diff --git a/specs/apimanagement/examples/terraform/basic.yaml b/specs/apimanagement/examples/terraform/basic.yaml new file mode 100644 index 00000000..29823b57 --- /dev/null +++ b/specs/apimanagement/examples/terraform/basic.yaml @@ -0,0 +1,15 @@ +--- !ruby/object:Provider::Azure::Example +resource: azurerm_api_management +prerequisites: + - !ruby/object:Provider::Azure::ExampleReference + product: resourcegroup + example: basic +properties: + name: <%= get_resource_name('apiManagement', 'api-mgmt-name') -%> + location: <%= get_location() -%> + resource_group_name: ${azurerm_resource_group.<%= resource_id_hint -%>.name} + publisher_name: publisher + publisher_email: publisher@email.com + sku: + name: Developer + capacity: 1 \ No newline at end of file diff --git a/specs/apimanagementapi/examples/terraform/basic.yaml b/specs/apimanagementapi/examples/terraform/basic.yaml new file mode 100644 index 00000000..fc77877e --- /dev/null +++ b/specs/apimanagementapi/examples/terraform/basic.yaml @@ -0,0 +1,17 @@ +--- !ruby/object:Provider::Azure::Example +resource: azurerm_api_management_api +prerequisites: + - !ruby/object:Provider::Azure::ExampleReference + product: resourcegroup + example: basic + - !ruby/object:Provider::Azure::ExampleReference + product: apimanagement + example: basic +properties: + name: <%= get_resource_name('apiManagementApi', 'api-name') -%> + resource_group_name: ${azurerm_resource_group.<%= resource_id_hint -%>.name} + api_management_name: ${azurerm_api_management.<%= resource_id_hint -%>.name} + display_name: apitest + path: apitest + protocols: ["https"] + revision: 1 \ No newline at end of file diff --git a/specs/apimanagementapirelease/ansible.yaml b/specs/apimanagementapirelease/ansible.yaml index b9c12d60..23d94ea5 100644 --- a/specs/apimanagementapirelease/ansible.yaml +++ b/specs/apimanagementapirelease/ansible.yaml @@ -2,5 +2,5 @@ author: audevbot version_added: "2.9" overrides: !ruby/object:Overrides::ResourceOverrides - ApiRelease: !ruby/object:Provider::Azure::Ansible::ResourceOverride + ApiManagementApiRelease: !ruby/object:Provider::Azure::Ansible::ResourceOverride examples: [] diff --git a/specs/apimanagementapirelease/api.yaml b/specs/apimanagementapirelease/api.yaml index ae68b6f8..107a0e4c 100644 --- a/specs/apimanagementapirelease/api.yaml +++ b/specs/apimanagementapirelease/api.yaml @@ -8,18 +8,18 @@ scopes: - NotUsedInAzure objects: - !ruby/object:Api::Resource - name: ApiRelease + name: ApiManagementApiRelease api_name: ApiManagement base_url: NotUsedInAzure azure_sdk_definition: !ruby/object:Api::Azure::SDKDefinition provider_name: Microsoft.ApiManagement go_client_namespace: apimanagement - go_client: apiReleaseClient + go_client: apiManagement.ApiReleaseClient python_client_namespace: azure.mgmt.apimanagement python_client: ApiManagementClient.api_release create: !ruby/object:Api::Azure::SDKOperationDefinition - go_func_name: CreateOrUpdate + go_func_name: Create python_func_name: create_or_update request: 'resourceGroupName': !ruby/object:Api::Azure::SDKTypeDefinition::StringObject @@ -32,7 +32,7 @@ objects: go_variable_name: serviceName python_parameter_name: service_name python_variable_name: service_name - 'apiId': !ruby/object:Api::Azure::SDKTypeDefinition::StringObject + 'apiName': !ruby/object:Api::Azure::SDKTypeDefinition::StringObject id_portion: apis go_variable_name: apiID python_parameter_name: api_id @@ -77,7 +77,7 @@ objects: go_variable_name: serviceName python_parameter_name: service_name python_variable_name: service_name - 'apiId': !ruby/object:Api::Azure::SDKTypeDefinition::StringObject + 'apiName': !ruby/object:Api::Azure::SDKTypeDefinition::StringObject id_portion: apis go_variable_name: apiID python_parameter_name: api_id @@ -108,6 +108,9 @@ objects: '/properties/notes': !ruby/object:Api::Azure::SDKTypeDefinition::StringObject applicable_to: [go] go_field_name: Notes + 'ifMatch': !ruby/object:Api::Azure::SDKTypeDefinition::StringObject + id_portion: null + go_variable_name: '""' delete: !ruby/object:Api::Azure::SDKOperationDefinition go_func_name: Delete python_func_name: delete @@ -122,7 +125,7 @@ objects: go_variable_name: serviceName python_parameter_name: service_name python_variable_name: service_name - 'apiId': !ruby/object:Api::Azure::SDKTypeDefinition::StringObject + 'apiName': !ruby/object:Api::Azure::SDKTypeDefinition::StringObject id_portion: apis go_variable_name: apiID python_parameter_name: api_id @@ -132,6 +135,9 @@ objects: go_variable_name: releaseID python_parameter_name: release_id python_variable_name: release_id + 'ifMatch': !ruby/object:Api::Azure::SDKTypeDefinition::StringObject + id_portion: null + go_variable_name: '""' read: !ruby/object:Api::Azure::SDKOperationDefinition go_func_name: Get python_func_name: get @@ -146,7 +152,7 @@ objects: go_variable_name: serviceName python_parameter_name: service_name python_variable_name: service_name - 'apiId': !ruby/object:Api::Azure::SDKTypeDefinition::StringObject + 'apiName': !ruby/object:Api::Azure::SDKTypeDefinition::StringObject id_portion: apis go_variable_name: apiID python_parameter_name: api_id @@ -208,7 +214,7 @@ objects: go_variable_name: serviceName python_parameter_name: service_name python_variable_name: service_name - 'apiId': !ruby/object:Api::Azure::SDKTypeDefinition::StringObject + 'apiName': !ruby/object:Api::Azure::SDKTypeDefinition::StringObject id_portion: apis go_variable_name: apiID python_parameter_name: api_id @@ -232,12 +238,12 @@ objects: sample_value: 'myService' azure_sdk_references: ['serviceName'] - !ruby/object:Api::Type::String - name: 'apiId' + name: 'apiName' description: 'API identifier. Must be unique in the current API Management service instance.' required: true input: true sample_value: 'myApi' - azure_sdk_references: ['apiId'] + azure_sdk_references: ['apiName'] - !ruby/object:Api::Type::String name: 'releaseId' description: 'Release identifier within an API. Must be unique in the current API Management service instance.' @@ -286,4 +292,4 @@ objects: description: 'Resource type for API Management resource.' input: true output: true - azure_sdk_references: ['/type'] \ No newline at end of file + azure_sdk_references: ['/type'] diff --git a/specs/apimanagementapirelease/examples/ansible/apimanagement_service_apis_releases_delete.yml b/specs/apimanagementapirelease/examples/ansible/apimanagement_service_apis_releases_delete.yml index 15bda30a..d70f0ed2 100644 --- a/specs/apimanagementapirelease/examples/ansible/apimanagement_service_apis_releases_delete.yml +++ b/specs/apimanagementapirelease/examples/ansible/apimanagement_service_apis_releases_delete.yml @@ -8,4 +8,3 @@ task: !ruby/object:Provider::Ansible::Task api_id: myApi release_id: myRelease state: absent - \ No newline at end of file diff --git a/specs/apimanagementapirelease/examples/terraform/basic.yaml b/specs/apimanagementapirelease/examples/terraform/basic.yaml new file mode 100644 index 00000000..1bfd5586 --- /dev/null +++ b/specs/apimanagementapirelease/examples/terraform/basic.yaml @@ -0,0 +1,18 @@ +--- !ruby/object:Provider::Azure::Example +resource: azurerm_api_management_api_release +prerequisites: + - !ruby/object:Provider::Azure::ExampleReference + product: resourcegroup + example: basic + - !ruby/object:Provider::Azure::ExampleReference + product: apimanagement + example: basic + - !ruby/object:Provider::Azure::ExampleReference + product: apimanagementapi + example: basic +properties: + resource_group_name: ${azurerm_resource_group.<%= resource_id_hint -%>.name} + api_name: ${azurerm_api_management_api.<%= resource_id_hint -%>.name} + api_management_name: ${azurerm_api_management.<%= resource_id_hint -%>.name} + api_id: ${azurerm_api_management_api.<%= resource_id_hint -%>.id} + notes: test release \ No newline at end of file diff --git a/specs/apimanagementapirelease/terraform.yaml b/specs/apimanagementapirelease/terraform.yaml index 94823401..8442c7d9 100644 --- a/specs/apimanagementapirelease/terraform.yaml +++ b/specs/apimanagementapirelease/terraform.yaml @@ -1,4 +1,75 @@ --- !ruby/object:Provider::Azure::Terraform::Config overrides: !ruby/object:Overrides::ResourceOverrides - ApiRelease: !ruby/object:Provider::Azure::Terraform::ResourceOverride - properties: {} + ApiManagementApiRelease: !ruby/object:Provider::Azure::Terraform::ResourceOverride + azure_sdk_definition: !ruby/object:Api::Azure::SDKDefinitionOverride + create: !ruby/object:Api::Azure::SDKOperationDefinitionOverride + request: + '/': !ruby/object:Api::Azure::SDKTypeDefinitionOverride + go_type_name: APIReleaseContract + '/properties': !ruby/object:Api::Azure::SDKTypeDefinitionOverride + go_field_name: APIReleaseContractProperties + go_type_name: APIReleaseContractProperties + '/properties/apiId': !ruby/object:Api::Azure::SDKTypeDefinitionOverride + go_field_name: APIID + update: !ruby/object:Api::Azure::SDKOperationDefinitionOverride + request: + '/': !ruby/object:Api::Azure::SDKTypeDefinitionOverride + go_type_name: APIReleaseContract + '/properties': !ruby/object:Api::Azure::SDKTypeDefinitionOverride + go_field_name: APIReleaseContractProperties + go_type_name: APIReleaseContractProperties + '/properties/apiId': !ruby/object:Api::Azure::SDKTypeDefinitionOverride + go_field_name: APIID + read: !ruby/object:Api::Azure::SDKOperationDefinitionOverride + response: + '/properties': !ruby/object:Api::Azure::SDKTypeDefinitionOverride + go_field_name: APIReleaseContractProperties + go_type_name: APIReleaseContractProperties + '/properties/apiId': !ruby/object:Api::Azure::SDKTypeDefinitionOverride + go_field_name: APIID + properties: + resourceGroup: !ruby/object:Provider::Azure::Terraform::PropertyOverride + name: resourceGroupName + serviceName: !ruby/object:Overrides::Terraform::PropertyOverride + name: apiManagementName + validation: !ruby/object:Provider::Terraform::Validation + function: validate.ApiManagementServiceName + apiName: !ruby/object:Overrides::Terraform::PropertyOverride + validation: !ruby/object:Provider::Terraform::Validation + function: validate.ApiManagementChildName + releaseId: !ruby/object:Provider::Azure::Terraform::PropertyOverride + exclude: true + createdDateTime: !ruby/object:Provider::Azure::Terraform::PropertyOverride + exclude: true + updatedDateTime: !ruby/object:Provider::Azure::Terraform::PropertyOverride + exclude: true + id: !ruby/object:Provider::Azure::Terraform::PropertyOverride + exclude: true + name: !ruby/object:Provider::Azure::Terraform::PropertyOverride + exclude: true + type: !ruby/object:Provider::Azure::Terraform::PropertyOverride + exclude: true + acctests: + - !ruby/object:Provider::Azure::Terraform::AccTestDefinition + name: basic + steps: [basic] + document_examples: + - !ruby/object:Provider::Azure::Terraform::DocumentExampleReference + title: Example Usage + example_name: basic + resource_name_hints: + resourceGroups: example-rg + location: West US + service: api-mgmt-name + apis: api-name +datasources: !ruby/object:Overrides::ResourceOverrides + ApiManagementApiRelease: !ruby/object:Provider::Azure::Terraform::ResourceOverride + properties: + resourceGroupName: !ruby/object:Provider::Azure::Terraform::PropertyOverride + description: The Name of the Resource Group where the App Service exists. + acctests: + - !ruby/object:Provider::Azure::Terraform::AccTestDefinition + name: basic + steps: [basic] + datasource_example_outputs: + api_release_id: id \ No newline at end of file