Skip to content

Commit

Permalink
Microsoft.Migrate - Split the existing readme(s) into separate files …
Browse files Browse the repository at this point in the history
…based on service (#30705)

* Split the existing readme(s) into separate files based on service

* Updated the input-file path in readme files

* Updated the input-file path in readme files for 2023-05-01-preview

* Fix Avocado errors

* Add common readme files

* Updated the packages' names

* Updated readme

* Minor fix in input file path

* Try fixing sdk-go failure

* Try fixing migrationdiscovery SDK go failure

* SDK go fix

* Fixes for SDK builds

* Added readme.java.md files

* FIx

* Remove readme.nodejs.md

* Remove multiapi usage

* java settings

* Fix Python SDK build

* fix java settings

* service-name for Java

---------

Co-authored-by: xiaofeicao <[email protected]>
  • Loading branch information
srilipta-swain and XiaofeiCao authored Nov 4, 2024
1 parent 03bc5a3 commit c68421b
Show file tree
Hide file tree
Showing 20 changed files with 672 additions and 0 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
## Go

These settings apply only when `--go` is specified on the command line.

``` yaml $(go) && !$(track2)
go:
license-header: MICROSOFT_MIT_NO_VERSION
clear-output-folder: true
namespace: migrationassessment
```
``` yaml $(go) && $(track2)
license-header: MICROSOFT_MIT_NO_VERSION
module-name: sdk/resourcemanager/migrationassessment/armmigrationassessment
module: github.com/Azure/azure-sdk-for-go/$(module-name)
output-folder: $(go-sdk-folder)/$(module-name)
azure-arm: true
modelerfour:
lenient-model-deduplication: true
```
### Tag: package-2018-02 and go
These settings apply only when `--tag=package-2018-02 --go` is specified on the command line.
Please also specify `--go-sdk-folder=<path to the root directory of your azure-sdk-for-go clone>`.

``` yaml $(tag)=='package-2018-02' && $(go)
output-folder: $(go-sdk-folder)/services/$(namespace)/mgmt/2018-02-02/$(namespace)
```
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
## Java

These settings apply only when `--java` is specified on the command line.

``` yaml $(java)
client-flattened-annotation-target: disabled
uuid-as-string: true
service-name: Migration Assessment
```
Original file line number Diff line number Diff line change
@@ -0,0 +1,151 @@
# Azure Migrate

> see https://aka.ms/autorest
This is the AutoRest configuration file for Azure Migrate - Assessment.

---

## Getting Started

To build the SDK for Migrate, 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 API.

``` yaml
openapi-type: arm
tag: package-preview-2023-09
```
### Tag: package-preview-2023-09
These settings apply only when `--tag=package-preview-2023-09` is specified on the command line.

```yaml $(tag) == 'package-preview-2023-09'
input-file:
- preview/2023-09-09-preview/migrate.json
suppressions:
- code: AvoidAdditionalProperties
reason: Migrate feature is widely adopted and requires additionalProperties for these swagger properties.
- code: ProvisioningStateMustBeReadOnly
reason: The current swagger version only modifies the resources which do not have Provisioning states as readOnly and not introducing any new Resources, These are incorrectly flagged for previous versions.
- code: UnSupportedPatchProperties
reason: There is no patch operation that is introduced in this swagger version where it is not readOnly. This is incorrectly flagged for previous versions.
```

### Tag: package-preview-2023-05

These settings apply only when `--tag=package-preview-2023-05` is specified on the command line.

```yaml $(tag) == 'package-preview-2023-05'
input-file:
- preview/2023-05-01-preview/migrate.json
suppressions:
- code: AvoidAdditionalProperties
reason: Migrate feature is widely adopted and requires additionalProperties for these swagger properties.
- code: ProvisioningStateMustBeReadOnly
reason: The current swagger version only modifies the resources which do not have Provisioning states as readOnly and not introducing any new Resources, These are incorrectly flagged for previous versions.
- code: UnSupportedPatchProperties
reason: There is no patch operation that is introduced in this swagger version where it is not readOnly. This is incorrectly flagged for previous versions.
```

### Tag: package-preview-2023-04

These settings apply only when `--tag=package-preview-2023-04` is specified on the command line.

```yaml $(tag) == 'package-preview-2023-04'
input-file:
- preview/2023-04-01-preview/migrate.json
```

### Tag: package-2023-03

These settings apply only when `--tag=package-2023-03` is specified on the command line.

```yaml $(tag) == 'package-2023-03'
input-file:
- stable/2023-03-15/migrate.json
```

### Tag: package-2019-10

These settings apply only when `--tag=package-2019-10` is specified on the command line.

``` yaml $(tag) == 'package-2019-10'
input-file:
- stable/2019-10-01/migrate.json
```

### Tag: package-2018-02

These settings apply only when `--tag=package-2018-02` is specified on the command line.

``` yaml $(tag) == 'package-2018-02'
input-file:
- stable/2018-02-02/migrate.json
```

### Tag: package-preview-2017-11

These settings apply only when `--tag=package-preview-2017-11` is specified on the command line.

``` yaml $(tag) == 'package-preview-2017-11'
input-file:
- preview/2017-11-11-preview/migrate.json
```

## Suppression

``` yaml
directive:
- suppress: DefinitionsPropertiesNamesCamelCase
from: migrate.json
where: $.definitions.AssessedMachineProperties.properties.monthlyStandardSSDStorageCost
reason: SSD is short form.
- suppress: DefinitionsPropertiesNamesCamelCase
from: migrate.json
where: $.definitions.AssessmentProperties.properties.monthlyStandardSSDStorageCost
reason: SSD is short form.
```

# 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-track2
- repo: azure-sdk-for-go
- repo: azure-sdk-for-python
- repo: azure-sdk-for-js
- repo: azure-sdk-for-node
- repo: azure-resource-manager-schemas
- repo: azure-powershell
```

## Go

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

## Python

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

## Java

See configuration in [readme.java.md](./readme.java.md)
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
## 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>`.

``` yaml $(python)
azure-arm: true
license-header: MICROSOFT_MIT_NO_VERSION
package-name: azure-mgmt-migrationassessment
namespace: azure.mgmt.migrationassessment
package-version: 1.0.0b1
clear-output-folder: true
```
``` yaml $(python)
no-namespace-folders: true
output-folder: $(python-sdks-folder)/migrate/azure-mgmt-migrationassessment/azure/mgmt/migrationassessment
```
``` yaml $(python)
modelerfour:
flatten-models: false
lenient-model-deduplication: true
```
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
## TypeScript

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

``` yaml $(typescript)
typescript:
azure-arm: true
package-name: "@azure/arm-migrationassessment"
output-folder: "$(typescript-sdks-folder)/sdk/migrate/arm-migrationassessment"
generate-metadata: true
```
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
## Go

These settings apply only when `--go` is specified on the command line.

``` yaml $(go) && !$(track2)
go:
license-header: MICROSOFT_MIT_NO_VERSION
clear-output-folder: true
namespace: migrationhub
```
``` yaml $(go) && $(track2)
license-header: MICROSOFT_MIT_NO_VERSION
module-name: sdk/resourcemanager/migrationhub/armmigrationhub
module: github.com/Azure/azure-sdk-for-go/$(module-name)
output-folder: $(go-sdk-folder)/$(module-name)
azure-arm: true
```
### Tag: package-2020-05 and go
These settings apply only when `--tag=package-2020-05 --go` is specified on the command line.
Please also specify `--go-sdk-folder=<path to the root directory of your azure-sdk-for-go clone>`.

``` yaml $(tag)=='package-2020-05' && $(go)
output-folder: $(go-sdk-folder)/services/$(namespace)/mgmt/2020-05-01/$(namespace)
```
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
## Java

These settings apply only when `--java` is specified on the command line.

``` yaml $(java)
client-flattened-annotation-target: disabled
uuid-as-string: true
service-name: Migration Hub
```
Original file line number Diff line number Diff line change
@@ -0,0 +1,78 @@
# Azure Migrate

> see https://aka.ms/autorest
This is the AutoRest configuration file for Azure Migrate - Migration.

---

## Getting Started

To build the SDK for Migrate, 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 API.

``` yaml
openapi-type: arm
tag: package-2023-01
```
### Tag: package-2020-05
These settings apply only when `--tag=package-2020-05` is specified on the command line.

``` yaml $(tag) == 'package-2020-05'
input-file:
- stable/2020-05-01/hubmigrate.json
```

### Tag: package-2023-01

These settings apply only when `--tag=package-2023-01` is specified on the command line.

``` yaml $(tag) == 'package-2023-01'
input-file:
- stable/2023-01-01/hubmigrate.json
```

# 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-track2
- repo: azure-sdk-for-go
- repo: azure-sdk-for-python
- repo: azure-sdk-for-js
- repo: azure-sdk-for-node
- repo: azure-resource-manager-schemas
- repo: azure-powershell
```

## Go

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

## Python

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

## Java

See configuration in [readme.java.md](./readme.java.md)
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
## 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>`.

``` yaml $(python)
azure-arm: true
license-header: MICROSOFT_MIT_NO_VERSION
package-name: azure-mgmt-migrationhub
namespace: azure.mgmt.migrationhub
package-version: 1.0.0b1
clear-output-folder: true
```
``` yaml $(python)
no-namespace-folders: true
output-folder: $(python-sdks-folder)/migrate/azure-mgmt-migrationhub/azure/mgmt/migrationhub
```
``` yaml $(python)
modelerfour:
flatten-models: false
```
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
## TypeScript

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

``` yaml $(typescript)
typescript:
azure-arm: true
package-name: "@azure/arm-migrationhub"
output-folder: "$(typescript-sdks-folder)/sdk/migrate/arm-migrationhub"
generate-metadata: true
```
Loading

0 comments on commit c68421b

Please sign in to comment.