This is the AutoRest configuration file for Azure VMware Solution.
To build the SDK for Azure VMware Solution, simply Install AutoRest and in this folder, run:
autorest
To see additional help and options, run:
autorest --help
These are the global settings for the VMware Solution API.
openapi-type: arm
tag: package-2023-03-01
These settings apply only when --tag=package-2023-03-01
is specified on the command line.
input-file:
- Microsoft.AVS/stable/2023-03-01/vmware.json
These settings apply only when --tag=package-2022-05-01
is specified on the command line.
input-file:
- Microsoft.AVS/stable/2022-05-01/vmware.json
These settings apply only when --tag=package-2021-12-01
is specified on the command line.
input-file:
- Microsoft.AVS/stable/2021-12-01/vmware.json
These settings apply only when --tag=package-2021-06-01
is specified on the command line.
input-file:
- Microsoft.AVS/stable/2021-06-01/vmware.json
These settings apply only when --tag=package-2021-01-01-preview
is specified on the command line.
input-file:
- Microsoft.AVS/preview/2021-01-01-preview/vmware.json
These settings apply only when --tag=package-2020-07-17-preview
is specified on the command line.
input-file:
- Microsoft.AVS/preview/2020-07-17-preview/vmware.json
These settings apply only when --tag=package-2020-03-20
is specified on the command line.
input-file:
- Microsoft.AVS/stable/2020-03-20/vmware.json
This section describes what SDK should be generated by the automatic system. This is not used by Autorest itself.
swagger-to-sdk:
- repo: azure-sdk-for-js
- repo: azure-sdk-for-python-track2
- repo: azure-sdk-for-net
- repo: azure-sdk-for-go
- repo: azure-sdk-for-java
- repo: azure-resource-manager-schemas
- repo: azure-powershell
directive:
- suppress: pathresourceprovidernamepascalcase
reason: Microsoft.AVS was chosen over Microsoft.AzureVMwareSolution
from:
- vmware.json
- suppress: TrackedResourceListByImmediateParent
reason: list by immediate parent operations are defined
from: vmware.json
- suppress: TrackedResourceListByResourceGroup
reason: the PrivateClouds_List operation is by resource group
from: vmware.json
- suppress: EnumInsteadOfBoolean
reason: standard property for Operation
from: vmware.json
where: $.definitions.Operation.properties.isDataAction
- suppress: EnumInsteadOfBoolean
reason: standard property for MetricSpecification
from: vmware.json
where: $.definitions.MetricSpecification.properties.fillGapWithZero
- suppress: AvoidNestedProperties
reason: x-ms-client-flatten not needed for Operation
from: vmware.json
where: $.definitions.Operation.properties.properties
- suppress: RequiredReadOnlySystemData
reason: systemData is not in this API version
from: vmware.json
- suppress: EnumInsteadOfBoolean
reason: standard property defined by Geneva Metrics
from: vmware.json
where: $.definitions.MetricDimension.properties.toBeExportedForShoebox
- suppress: ParametersOrder
reason: Breaking change to update the parameters order
from: vmware.json
where:
- $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AVS/privateClouds/{privateCloudName}/workloadNetworks/default/dhcpConfigurations/{dhcpId}"].get
- $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AVS/privateClouds/{privateCloudName}/workloadNetworks/default/portMirroringProfiles/{portMirroringId}"].delete
- $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AVS/privateClouds/{privateCloudName}/workloadNetworks/default/vmGroups/{vmGroupId}"].delete
- $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AVS/privateClouds/{privateCloudName}/workloadNetworks/default/dnsServices/{dnsServiceId}"].delete
- $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AVS/privateClouds/{privateCloudName}/workloadNetworks/default/dnsZones/{dnsZoneId}"].delete
- $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AVS/privateClouds/{privateCloudName}/workloadNetworks/default/publicIPs/{publicIPId}"].delete
suppressions:
- code: pathresourceprovidernamepascalcase
reason: Microsoft.AVS was chosen over Microsoft.AzureVMwareSolution
from: vmware.json
- code: ParametersOrder
reason: Breaking change to update the parameters order
from: vmware.json
where:
- $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AVS/privateClouds/{privateCloudName}/workloadNetworks/default/dhcpConfigurations/{dhcpId}"].get
- $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AVS/privateClouds/{privateCloudName}/workloadNetworks/default/portMirroringProfiles/{portMirroringId}"].delete
- $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AVS/privateClouds/{privateCloudName}/workloadNetworks/default/vmGroups/{vmGroupId}"].delete
- $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AVS/privateClouds/{privateCloudName}/workloadNetworks/default/dnsServices/{dnsServiceId}"].delete
- $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AVS/privateClouds/{privateCloudName}/workloadNetworks/default/dnsZones/{dnsZoneId}"].delete
- $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AVS/privateClouds/{privateCloudName}/workloadNetworks/default/publicIPs/{publicIPId}"].delete
- code: ConsistentPatchProperties
reason: The properties are consistent for the discriminator hierarchy.
from: vmware.json
# where:
# - $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AVS/privateClouds/{privateCloudName}/clusters/{clusterName}/placementPolicies/{placementPolicyName}"].patch
# - $.definitions.PlacementPolicyUpdate.properties.vmMembers
# - $.definitions.PlacementPolicyUpdate.properties.hostMembers
# - $.definitions.PlacementPolicyUpdate.properties.affinityStrength
# - $.definitions.PlacementPolicyUpdate.properties.azureHybridBenefitType
- code: DefinitionsPropertiesNamesCamelCase
reason: Breaking change to update existing property names
from: vmware.json
where:
- $.definitions.Circuit.properties.expressRouteID
- $.definitions.Circuit.properties.expressRoutePrivatePeeringID
- $.definitions.IdentitySource.properties.baseUserDN
- $.definitions.IdentitySource.properties.baseGroupDN
- $.definitions.WorkloadNetworkPublicIPProperties.properties.numberOfPublicIPs
- $.definitions.WorkloadNetworkPublicIPProperties.properties.publicIPBlock
- $.definitions.WorkloadNetworkPublicIPProperties.properties.numberOfPublicIPs
- code: ArmResourcePropertiesBag
reason: Breaking change to update existing property names
from: vmware.json
where:
- $.definitions.PlacementPolicy
- code: DeleteOperationAsyncResponseValidation
reason: x-ms-long-running-operation-options does not need to be set if you follow ARM guidelines
# https://azure.github.io/autorest/extensions/#x-ms-long-running-operation-options
from: vmware.json
- code: PatchSkuProperty
reason: sku can not be updated
from: vmware.json
# where:
# - $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AVS/privateClouds/{privateCloudName}"].patch
# - $.definitions.PrivateCloudUpdate
# - $.definitions.ClusterUpdate
- code: LroPatch202
reason: Breaking change to add response
from: vmware.json
# where:
# - $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AVS/privateClouds/{privateCloudName}"].patch
# - $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AVS/privateClouds/{privateCloudName}/clusters/{clusterName}"].patch
- code: UnSupportedPatchProperties
reason: Breaking change to remove name or type properties
from: vmware.json
# where:
# - $ $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AVS/privateClouds/{privateCloudName}/workloadNetworks/default/segments/{segmentId}"].patch
- code: XmsLongRunningOperationOptions
reason: This option is designed for cases where the server does NOT follow ARM guidelines
# https://azure.github.io/autorest/extensions/#x-ms-long-running-operation-options
from: vmware.json
# just warnings
# - code: IgnoredPropertyNextToRef
# - code: LroLocationHeader
# from: vmware.json
See configuration in readme.typescript.md
See configuration in readme.python.md
See configuration in readme.csharp.md
See configuration in readme.go.md
See configuration in readme.java.md