<commit_before># Azure Deployment Manager

> see https://aka.ms/autorest

This is the AutoRest configuration file for Deployment Manager.


---
## Getting Started
To build the SDK for Deployment Manager, simply [Install AutoRest](https://aka.ms/autorest/install) and in this folder, run:

> `autorest`

To see additional help and options, run:

> `autorest --help`
---

## Configuration


### Basic Information
These are the global settings for the DeploymentManager API.

``` yaml
openapi-type: arm
tag: package-2019-11-01-preview
```

### Tag: package-2019-11-01-preview

These settings apply only when `package-2019-11-01-preview` is specified on the command line.

``` yaml $(tag) == 'package-2019-11-01-preview'
input-file:
- Microsoft.DeploymentManager/preview/2019-11-01-preview/deploymentmanager.json
directive:
  - suppress: EnumInsteadOfBoolean
    reason:  The boolean properties in the specification are actually boolean values in the Deployment Manager application model.
    from: deploymentmanager.json
  - suppress: TrackedResourceListByImmediateParent
    reason: Not available during preview.
  - suppress: TrackedResourcePatchOperation
    reason: Not available at this time.
    from: deploymentmanager.json
  - suppress: TrackedResourceListBySubscription
    reason: Not available at this time.
    from: deploymentmanager.json
  - suppress: TrackedResourceListByResourceGroup
    reason: Not available at this time.
    from: deploymentmanager.json
  - suppress: PageableOperation
    reason: List operations returns a static list of supported operations for each API version and does not need paging.
    from: deploymentmanager.json
  - suppress: TrackedResourceGetOperation
    reason: The rollout resource has a get operation. The request and response types are separated for clarity.
    where: $.definitions.RolloutRequest
  - suppress: DescriptionAndTitleMissing
    reason: Common types warning.
    where: $.definitions.Resource
  - suppress: AvoidNestedProperties
    reason: Nesting had to be avoided to have the autogenerated classes compose the required polymorphic 'properties' property in the StepResource.
    where: $.definitions.StepResource.properties.properties
```

### Tag: package-2018-09-01-preview

These settings apply only when `package-2018-09-01-preview` is specified on the command line.

``` yaml $(tag) == 'package-2018-09-01-preview'
input-file:
- Microsoft.DeploymentManager/preview/2018-09-01-preview/deploymentmanager.json
directive:
  - suppress: EnumInsteadOfBoolean
    reason:  The boolean properties in the specification are actually boolean values in the Deployment Manager application model.
    from: deploymentmanager.json
  - suppress: TrackedResourceListByImmediateParent
    reason: Not available during preview.
  - suppress: TrackedResourcePatchOperation
    reason: Not available at this time.
    from: deploymentmanager.json
  - suppress: TrackedResourceListBySubscription
    reason: Not available at this time.
    from: deploymentmanager.json
  - suppress: TrackedResourceListByResourceGroup
    reason: Not available at this time.
    from: deploymentmanager.json
  - suppress: TrackedResourceGetOperation
    reason: The rollout resource has a get operation. The request and response types are separated for clarity.
    where: $.definitions.RolloutRequest
  - suppress: DescriptionAndTitleMissing
    reason: Common types warning.
    where: $.definitions.Resource
  - suppress: AvoidNestedProperties
    reason: Nesting had to be avoided to have the autogenerated classes compose the required polymorphic 'properties' property in the StepResource.
    where: $.definitions.StepResource.properties.properties
```

---
# Code Generation


## Swagger to SDK
This section describes what SDK should be generated by the automatic system.
This is not used by Autorest itself.

``` yaml $(swagger-to-sdk)
swagger-to-sdk:
  - repo: azure-sdk-for-net
  - repo: azure-sdk-for-python
  - repo: azure-sdk-for-java
  - repo: azure-sdk-for-go
  - repo: azure-sdk-for-js
  - repo: azure-sdk-for-node
  - repo: azure-sdk-for-ruby
    after_scripts:
      - bundle install && rake arm:regen_all_profiles['azure_mgmt_deploymentmanager']
```

## C#
These settings apply only when `--csharp` is specified on the command line.
Please also specify `--csharp-sdks-folder=<path to "SDKs" directory of your azure-sdk-for-net clone>`.

``` yaml $(csharp)
csharp:
  azure-arm: true
  license-header: MICROSOFT_MIT_NO_VERSION
  namespace: Microsoft.Azure.Management.DeploymentManager
  payload-flattening-threshold: 2
  output-folder: $(csharp-sdks-folder)/deploymentmanager/Microsoft.Azure.Management.DeploymentManager/src/Generated
  clear-output-folder: true
```


## Python

These settings apply only when `--python` is specified on the command line.
Please also specify `--python-sdks-folder=<path to the root directory of your azure-sdk-for-python clone>`.
Use `--python-mode=update` if you already have a setup.py and just want to update the code itself.

``` yaml $(python)
python-mode: create
python:
  azure-arm: true
  license-header: MICROSOFT_MIT_NO_VERSION
  payload-flattening-threshold: 2
  namespace: azure.mgmt.deploymentmanager
  package-name: azure-mgmt-deploymentmanager
  package-version: 0.9.1
  clear-output-folder: true
  override-client-name: DeploymentManagerClient
```
``` yaml $(python) && $(python-mode) == 'update'
python:
  no-namespace-folders: true
  output-folder: $(python-sdks-folder)/deploymentmanager/azure-mgmt-deploymentmanager/azure/mgmt/deploymentmanager
```
``` yaml $(python) && $(python-mode) == 'create'
python:
  basic-setup-py: true
  output-folder: $(python-sdks-folder)/deploymentmanager/azure-mgmt-deploymentmanager
```

## Go

See configuration in [readme.go.md](./readme.go.md)

## Java

These settings apply only when `--java` is specified on the command line.
Please also specify `--azure-libraries-for-java-folder=<path to the root directory of your azure-libraries-for-java clone>`.

``` yaml $(java)
azure-arm: true
fluent: true
namespace: com.microsoft.azure.management.deploymentmanager
license-header: MICROSOFT_MIT_NO_CODEGEN
payload-flattening-threshold: 2
output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-deploymentmanager
```

### Java multi-api

``` yaml $(java) && $(multiapi)
batch:
  - tag: package-2019-11-01-preview
```

### Tag: package-2019-11-01-preview and java

These settings apply only when `--tag=package-2019-11-01-preview --java` is specified on the command line.
Please also specify `--azure-libraries-for-java=<path to the root directory of your azure-sdk-for-java clone>`.

``` yaml $(tag) == 'package-2019-11-01-preview' && $(java) && $(multiapi)
java:
  namespace: com.microsoft.azure.management.deploymentmanager.v2019-11-01-preview
  output-folder: $(azure-libraries-for-java-folder)/sdk/deploymentmanager/mgmt-v2019-11-01-preview
regenerate-manager: true
generate-interface: true
```

## Multi-API/Profile support for AutoRest v3 generators <commit_msg>Deployment Manager: fix java namespace error (#7962)<commit_after># Azure Deployment Manager

> see https://aka.ms/autorest

This is the AutoRest configuration file for Deployment Manager.


---
## Getting Started
To build the SDK for Deployment Manager, simply [Install AutoRest](https://aka.ms/autorest/install) and in this folder, run:

> `autorest`

To see additional help and options, run:

> `autorest --help`
---

## Configuration


### Basic Information
These are the global settings for the DeploymentManager API.

``` yaml
openapi-type: arm
tag: package-2019-11-01-preview
```

### Tag: package-2019-11-01-preview

These settings apply only when `package-2019-11-01-preview` is specified on the command line.

``` yaml $(tag) == 'package-2019-11-01-preview'
input-file:
- Microsoft.DeploymentManager/preview/2019-11-01-preview/deploymentmanager.json
directive:
  - suppress: EnumInsteadOfBoolean
    reason:  The boolean properties in the specification are actually boolean values in the Deployment Manager application model.
    from: deploymentmanager.json
  - suppress: TrackedResourceListByImmediateParent
    reason: Not available during preview.
  - suppress: TrackedResourcePatchOperation
    reason: Not available at this time.
    from: deploymentmanager.json
  - suppress: TrackedResourceListBySubscription
    reason: Not available at this time.
    from: deploymentmanager.json
  - suppress: TrackedResourceListByResourceGroup
    reason: Not available at this time.
    from: deploymentmanager.json
  - suppress: PageableOperation
    reason: List operations returns a static list of supported operations for each API version and does not need paging.
    from: deploymentmanager.json
  - suppress: TrackedResourceGetOperation
    reason: The rollout resource has a get operation. The request and response types are separated for clarity.
    where: $.definitions.RolloutRequest
  - suppress: DescriptionAndTitleMissing
    reason: Common types warning.
    where: $.definitions.Resource
  - suppress: AvoidNestedProperties
    reason: Nesting had to be avoided to have the autogenerated classes compose the required polymorphic 'properties' property in the StepResource.
    where: $.definitions.StepResource.properties.properties
```

### Tag: package-2018-09-01-preview

These settings apply only when `package-2018-09-01-preview` is specified on the command line.

``` yaml $(tag) == 'package-2018-09-01-preview'
input-file:
- Microsoft.DeploymentManager/preview/2018-09-01-preview/deploymentmanager.json
directive:
  - suppress: EnumInsteadOfBoolean
    reason:  The boolean properties in the specification are actually boolean values in the Deployment Manager application model.
    from: deploymentmanager.json
  - suppress: TrackedResourceListByImmediateParent
    reason: Not available during preview.
  - suppress: TrackedResourcePatchOperation
    reason: Not available at this time.
    from: deploymentmanager.json
  - suppress: TrackedResourceListBySubscription
    reason: Not available at this time.
    from: deploymentmanager.json
  - suppress: TrackedResourceListByResourceGroup
    reason: Not available at this time.
    from: deploymentmanager.json
  - suppress: TrackedResourceGetOperation
    reason: The rollout resource has a get operation. The request and response types are separated for clarity.
    where: $.definitions.RolloutRequest
  - suppress: DescriptionAndTitleMissing
    reason: Common types warning.
    where: $.definitions.Resource
  - suppress: AvoidNestedProperties
    reason: Nesting had to be avoided to have the autogenerated classes compose the required polymorphic 'properties' property in the StepResource.
    where: $.definitions.StepResource.properties.properties
```

---
# Code Generation


## Swagger to SDK
This section describes what SDK should be generated by the automatic system.
This is not used by Autorest itself.

``` yaml $(swagger-to-sdk)
swagger-to-sdk:
  - repo: azure-sdk-for-net
  - repo: azure-sdk-for-python
  - repo: azure-sdk-for-java
  - repo: azure-sdk-for-go
  - repo: azure-sdk-for-js
  - repo: azure-sdk-for-node
  - repo: azure-sdk-for-ruby
    after_scripts:
      - bundle install && rake arm:regen_all_profiles['azure_mgmt_deploymentmanager']
```

## C#
These settings apply only when `--csharp` is specified on the command line.
Please also specify `--csharp-sdks-folder=<path to "SDKs" directory of your azure-sdk-for-net clone>`.

``` yaml $(csharp)
csharp:
  azure-arm: true
  license-header: MICROSOFT_MIT_NO_VERSION
  namespace: Microsoft.Azure.Management.DeploymentManager
  payload-flattening-threshold: 2
  output-folder: $(csharp-sdks-folder)/deploymentmanager/Microsoft.Azure.Management.DeploymentManager/src/Generated
  clear-output-folder: true
```


## Python

These settings apply only when `--python` is specified on the command line.
Please also specify `--python-sdks-folder=<path to the root directory of your azure-sdk-for-python clone>`.
Use `--python-mode=update` if you already have a setup.py and just want to update the code itself.

``` yaml $(python)
python-mode: create
python:
  azure-arm: true
  license-header: MICROSOFT_MIT_NO_VERSION
  payload-flattening-threshold: 2
  namespace: azure.mgmt.deploymentmanager
  package-name: azure-mgmt-deploymentmanager
  package-version: 0.9.1
  clear-output-folder: true
  override-client-name: DeploymentManagerClient
```
``` yaml $(python) && $(python-mode) == 'update'
python:
  no-namespace-folders: true
  output-folder: $(python-sdks-folder)/deploymentmanager/azure-mgmt-deploymentmanager/azure/mgmt/deploymentmanager
```
``` yaml $(python) && $(python-mode) == 'create'
python:
  basic-setup-py: true
  output-folder: $(python-sdks-folder)/deploymentmanager/azure-mgmt-deploymentmanager
```

## Go

See configuration in [readme.go.md](./readme.go.md)

## Java

These settings apply only when `--java` is specified on the command line.
Please also specify `--azure-libraries-for-java-folder=<path to the root directory of your azure-libraries-for-java clone>`.

``` yaml $(java)
azure-arm: true
fluent: true
namespace: com.microsoft.azure.management.deploymentmanager
license-header: MICROSOFT_MIT_NO_CODEGEN
payload-flattening-threshold: 2
output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-deploymentmanager
```

### Java multi-api

``` yaml $(java) && $(multiapi)
batch:
  - tag: package-2019-11-01-preview
```

### Tag: package-2019-11-01-preview and java

These settings apply only when `--tag=package-2019-11-01-preview --java` is specified on the command line.
Please also specify `--azure-libraries-for-java=<path to the root directory of your azure-sdk-for-java clone>`.

``` yaml $(tag) == 'package-2019-11-01-preview' && $(java) && $(multiapi)
java:
  namespace: com.microsoft.azure.management.deploymentmanager.v2019_11_01_preview
  output-folder: $(azure-libraries-for-java-folder)/sdk/deploymentmanager/mgmt-v2019_11_01_preview
regenerate-manager: true
generate-interface: true
```

## Multi-API/Profile support for AutoRest v3 generators 
{'fraction_non_alphanumeric': 0.10217004624688723, 'fraction_numerical': 0.018356456776947704, 'mean_word_length': 4.383378016085791, 'pattern_counts': {'":': 0, '<': 11, '<?xml version=': 0, '>': 17, 'https://': 4, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '3137155', 'n_tokens_mistral': 4300, 'n_tokens_neox': 4003, 'n_words': 1226}