Skip to content

Latest commit

 

History

History
335 lines (249 loc) · 11.2 KB

File metadata and controls

335 lines (249 loc) · 11.2 KB

KeyVault

see https://aka.ms/autorest

This is the AutoRest configuration file for KeyVault.


Getting Started

To build the SDK for KeyVault, simply Install AutoRest 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 KeyVault API.

openapi-type: arm
tag: package-2023-07

Tag: package-preview-2024-04

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

input-file:
  - Microsoft.KeyVault/preview/2024-04-01-preview/common.json
  - Microsoft.KeyVault/preview/2024-04-01-preview/keys.json
  - Microsoft.KeyVault/preview/2024-04-01-preview/keysManagedHsm.json
  - Microsoft.KeyVault/preview/2024-04-01-preview/keyvault.json
  - Microsoft.KeyVault/preview/2024-04-01-preview/managedHsm.json
  - Microsoft.KeyVault/preview/2024-04-01-preview/providers.json
  - Microsoft.KeyVault/preview/2024-04-01-preview/secrets.json

Tag: package-2023-07

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

input-file:
  - Microsoft.KeyVault/stable/2023-07-01/common.json
  - Microsoft.KeyVault/stable/2023-07-01/keys.json
  - Microsoft.KeyVault/stable/2023-07-01/keysManagedHsm.json
  - Microsoft.KeyVault/stable/2023-07-01/keyvault.json
  - Microsoft.KeyVault/stable/2023-07-01/managedHsm.json
  - Microsoft.KeyVault/stable/2023-07-01/providers.json
  - Microsoft.KeyVault/stable/2023-07-01/secrets.json

Tag: package-2023-02

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

input-file:
  - Microsoft.KeyVault/stable/2023-02-01/common.json
  - Microsoft.KeyVault/stable/2023-02-01/keys.json
  - Microsoft.KeyVault/stable/2023-02-01/keysManagedHsm.json
  - Microsoft.KeyVault/stable/2023-02-01/keyvault.json
  - Microsoft.KeyVault/stable/2023-02-01/managedHsm.json
  - Microsoft.KeyVault/stable/2023-02-01/providers.json
  - Microsoft.KeyVault/stable/2023-02-01/secrets.json

Tag: package-2022-11

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

input-file:
  - Microsoft.KeyVault/stable/2022-11-01/common.json
  - Microsoft.KeyVault/stable/2022-11-01/keys.json
  - Microsoft.KeyVault/stable/2022-11-01/keyvault.json
  - Microsoft.KeyVault/stable/2022-11-01/managedHsm.json
  - Microsoft.KeyVault/stable/2022-11-01/keysManagedHsm.json
  - Microsoft.KeyVault/stable/2022-11-01/providers.json
  - Microsoft.KeyVault/stable/2022-11-01/secrets.json

Tag: package-preview-2022-02

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

input-file:
  - Microsoft.KeyVault/preview/2022-02-01-preview/common.json
  - Microsoft.KeyVault/preview/2022-02-01-preview/keys.json
  - Microsoft.KeyVault/preview/2022-02-01-preview/keyvault.json
  - Microsoft.KeyVault/preview/2022-02-01-preview/managedHsm.json
  - Microsoft.KeyVault/preview/2022-02-01-preview/providers.json
  - Microsoft.KeyVault/preview/2022-02-01-preview/secrets.json

Tag: package-2022-07

These settings apply only when --tag=package-2022-07 is specified on the command line.

input-file:
  - Microsoft.KeyVault/stable/2022-07-01/common.json
  - Microsoft.KeyVault/stable/2022-07-01/keys.json
  - Microsoft.KeyVault/stable/2022-07-01/keyvault.json
  - Microsoft.KeyVault/stable/2022-07-01/managedHsm.json
  - Microsoft.KeyVault/stable/2022-07-01/providers.json
  - Microsoft.KeyVault/stable/2022-07-01/secrets.json

Tag: package-preview-2021-11

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

input-file:
  - Microsoft.KeyVault/preview/2021-11-01-preview/common.json
  - Microsoft.KeyVault/preview/2021-11-01-preview/keys.json
  - Microsoft.KeyVault/preview/2021-11-01-preview/keyvault.json
  - Microsoft.KeyVault/preview/2021-11-01-preview/managedHsm.json
  - Microsoft.KeyVault/preview/2021-11-01-preview/providers.json
  - Microsoft.KeyVault/preview/2021-11-01-preview/secrets.json

Tag: package-2021-10

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

input-file:
  - Microsoft.KeyVault/stable/2021-10-01/common.json
  - Microsoft.KeyVault/stable/2021-10-01/keys.json
  - Microsoft.KeyVault/stable/2021-10-01/keyvault.json
  - Microsoft.KeyVault/stable/2021-10-01/managedHsm.json
  - Microsoft.KeyVault/stable/2021-10-01/providers.json
  - Microsoft.KeyVault/stable/2021-10-01/secrets.json

Tag: package-preview-2021-06

These settings apply only when --tag=package-preview-2021-06 is specified on the command line.

input-file:
  - Microsoft.KeyVault/preview/2021-06-01-preview/common.json
  - Microsoft.KeyVault/preview/2021-06-01-preview/keys.json
  - Microsoft.KeyVault/preview/2021-06-01-preview/keyvault.json
  - Microsoft.KeyVault/preview/2021-06-01-preview/managedHsm.json
  - Microsoft.KeyVault/preview/2021-06-01-preview/providers.json
  - Microsoft.KeyVault/preview/2021-06-01-preview/secrets.json

Tag: package-preview-2021-04

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

input-file:
  - Microsoft.KeyVault/preview/2021-04-01-preview/common.json
  - Microsoft.KeyVault/preview/2021-04-01-preview/keyvault.json
  - Microsoft.KeyVault/preview/2021-04-01-preview/managedHsm.json
  - Microsoft.KeyVault/preview/2021-04-01-preview/providers.json

Tag: package-preview-2021-04-full

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

input-file:
  - Microsoft.KeyVault/preview/2021-04-01-preview/common.json
  - Microsoft.KeyVault/preview/2021-04-01-preview/keyvault.json
  - Microsoft.KeyVault/preview/2021-04-01-preview/managedHsm.json
  - Microsoft.KeyVault/preview/2021-04-01-preview/providers.json
  - Microsoft.KeyVault/preview/2021-04-01-preview/keys.json
  - Microsoft.KeyVault/preview/2021-04-01-preview/secrets.json

Tag: package-preview-2020-04

These settings apply only when --tag=package-preview-2020-04 is specified on the command line. This tag is for the development of preview features related to managed HSM of Azure CLI and PowerShell.

input-file:
  - Microsoft.KeyVault/stable/2019-09-01/keyvault.json
  - Microsoft.KeyVault/stable/2019-09-01/providers.json
  - Microsoft.KeyVault/preview/2020-04-01-preview/managedHsm.json

Tag: package-preview-2020-04-full

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

input-file:
  - Microsoft.KeyVault/preview/2020-04-01-preview/keys.json
  - Microsoft.KeyVault/preview/2020-04-01-preview/keyvault.json
  - Microsoft.KeyVault/preview/2020-04-01-preview/providers.json
  - Microsoft.KeyVault/preview/2020-04-01-preview/secrets.json
  - Microsoft.KeyVault/preview/2020-04-01-preview/managedHsm.json

Tag: package-2019-09

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

input-file:
- Microsoft.KeyVault/stable/2019-09-01/keyvault.json
- Microsoft.KeyVault/stable/2019-09-01/providers.json
- Microsoft.KeyVault/stable/2019-09-01/keys.json

Tag: package-2018-02-14-preview

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

input-file:
- Microsoft.KeyVault/preview/2018-02-14-preview/keyvault.json
- Microsoft.KeyVault/preview/2018-02-14-preview/providers.json

Tag: package-2018-02

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

input-file:
- Microsoft.KeyVault/stable/2018-02-14/keyvault.json
- Microsoft.KeyVault/stable/2018-02-14/providers.json

Tag: package-2016-10

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

input-file:
- Microsoft.KeyVault/stable/2016-10-01/keyvault.json
- Microsoft.KeyVault/stable/2016-10-01/providers.json

Tag: package-2015-06

These settings apply only when --tag=package-2015-06 is specified on the command line.

input-file:
- Microsoft.KeyVault/stable/2015-06-01/keyvault.json

Tag: profile-hybrid-2020-09-01

These settings apply only when --tag=profile-hybrid-2020-09-01 is specified on the command line. Creating this tag to pick proper resources from the hybrid profile.

input-file:
- Microsoft.KeyVault/stable/2019-09-01/keyvault.json
- Microsoft.KeyVault/stable/2019-09-01/providers.json
- Microsoft.KeyVault/stable/2019-09-01/secrets.json

Suppression

directive:
- suppress:
    - R3026 # The 'PrivateEndpointConnection' and 'PrivateLinkResource' sub-resources don't define PATCH as per Network Team's specification.
    - R3025 # The 'PrivateLinkResource' is only accessible via List operation; does not define GET as per Network Team's specification.
    - R4015 # The 'MHSMPrivateEndpointConnection' sub-resource doesn't define List as per Network Team's specification.
    - R2005 # The 'ManagedHsms_PurgeDeleted' operation should not return a mix of 202 and syncronous return types (200, 201, 204) as directed by SDK team.
    - R4009 # Vault object is the only one that need to be tracked with SystemData

- suppress: DefinitionsPropertiesNamesCamelCase
  where: 
    - $.definitions.ManagedHsmKeyProperties.properties.release_policy
  from: keysManagedHsm.json
  reason: This is to keep compatibility with existing data plane property. The 'release_policy' property for KeyCreateParameters does not support camelCase.

- suppress: INVALID_REQUEST_PARAMETER
  from: keyvault.json
  reason: The Vaults_List API endpoint only supports version 2015-11-01.
- suppress: OBJECT_MISSING_REQUIRED_PROPERTY
  from: keyvault.json
  reason: The Vaults_List API endpoint only supports version 2015-11-01.

Code Generation

Swagger to SDK

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-net-track2
  - repo: azure-sdk-for-python
  - repo: azure-sdk-for-java
  - repo: azure-sdk-for-go
  - repo: azure-sdk-for-node
  - repo: azure-sdk-for-js
  - repo: azure-sdk-for-ruby
    after_scripts:
      - bundle install && rake arm:regen_all_profiles['azure_mgmt_key_vault']
  - repo: azure-resource-manager-schemas
  - repo: azure-powershell

Go

See configuration in readme.go.md

Python

See configuration in readme.python.md

Java

See configuration in readme.java.md