diff --git a/common/config/rush/pnpm-lock.yaml b/common/config/rush/pnpm-lock.yaml index 7e1753ee59b7..60d15baa8b4d 100644 --- a/common/config/rush/pnpm-lock.yaml +++ b/common/config/rush/pnpm-lock.yaml @@ -3007,7 +3007,7 @@ packages: dev: false /array-flatten/1.1.1: - resolution: {integrity: sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=} + resolution: {integrity: sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==} dev: false /array-includes/3.1.5: @@ -3262,7 +3262,7 @@ packages: dev: false /buffer-equal-constant-time/1.0.1: - resolution: {integrity: sha1-+OcRMvf/5uAaXJaXpMbz5I1cyBk=} + resolution: {integrity: sha512-zRpUiDwd/xk6ADqPMATG8vc9VPrkck7T07OIx0gnjmJAnHnTVXNQG3vfvWNuiZIkwu9KrKdA1iJKfsfTVxE6NA==} dev: false /buffer-from/1.1.2: @@ -3412,7 +3412,7 @@ packages: dev: false /charenc/0.0.2: - resolution: {integrity: sha1-wKHS86cJLgN3S/qD8UwPxXkKhmc=} + resolution: {integrity: sha512-yrLQ/yVUFXkzg7EDQsPieE/53+0RlaWTs+wBrvW36cyilJ2SaDWfl4Yj7MtLTXleV9uEKefbAGUPv2/iWSooRA==} dev: false /check-error/1.0.2: @@ -3546,7 +3546,7 @@ packages: dev: false /concat-map/0.0.1: - resolution: {integrity: sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=} + resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} dev: false /concurrently/6.5.1: @@ -3609,7 +3609,7 @@ packages: dev: false /cookie-signature/1.0.6: - resolution: {integrity: sha1-4wOogrNCzD7oylE6eZmXNNqzriw=} + resolution: {integrity: sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==} dev: false /cookie/0.4.2: @@ -3711,7 +3711,7 @@ packages: dev: false /crypt/0.0.2: - resolution: {integrity: sha1-iNf/fsDfuG9xPch7u0LQRNPmxBs=} + resolution: {integrity: sha512-mCxBlsHFYh9C+HVpiEacem8FEBnMXgU9gy4zmNC+SXAZNB/1idgp/aulFJ4FgCi7GPEVbfyng092GqL2k2rmow==} dev: false /csv-parse/5.3.0: @@ -3965,7 +3965,7 @@ packages: dependencies: semver: 7.3.7 shelljs: 0.8.5 - typescript: 4.9.0-dev.20220908 + typescript: 4.9.0-dev.20220909 dev: false /ecdsa-sig-formatter/1.0.11: @@ -3975,11 +3975,11 @@ packages: dev: false /edge-launcher/1.2.2: - resolution: {integrity: sha1-60Cq+9Bnpup27/+rBke81VCbN7I=} + resolution: {integrity: sha512-JcD5WBi3BHZXXVSSeEhl6sYO8g5cuynk/hifBzds2Bp4JdzCGLNMHgMCKu5DvrO1yatMgF0goFsxXRGus0yh1g==} dev: false /ee-first/1.1.1: - resolution: {integrity: sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=} + resolution: {integrity: sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==} dev: false /electron-to-chromium/1.4.243: @@ -4863,7 +4863,7 @@ packages: dev: false /fresh/0.5.2: - resolution: {integrity: sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=} + resolution: {integrity: sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==} engines: {node: '>= 0.6'} dev: false @@ -5003,7 +5003,7 @@ packages: dev: false /github-from-package/0.0.0: - resolution: {integrity: sha1-l/tdlr/eiXMxPyDoKI75oWf6ZM4=} + resolution: {integrity: sha512-SyHy3T1v2NUXn29OsWdxmK6RwHD+vkj3v8en8AOBZ1wBQ/hCAQ5bAQTD02kW4W9tUp/3Qh6J8r9EvntiyCmOOw==} dev: false /glob-parent/5.1.2: @@ -6396,7 +6396,7 @@ packages: dev: false /media-typer/0.3.0: - resolution: {integrity: sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=} + resolution: {integrity: sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==} engines: {node: '>= 0.6'} dev: false @@ -6406,7 +6406,7 @@ packages: dev: false /merge-descriptors/1.0.1: - resolution: {integrity: sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=} + resolution: {integrity: sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==} dev: false /merge-source-map/1.1.0: @@ -6827,7 +6827,7 @@ packages: dev: false /noms/0.0.0: - resolution: {integrity: sha1-2o69nzr51nYJGbJ9nNyAkqczKFk=} + resolution: {integrity: sha512-lNDU9VJaOPxUmXcLb+HQFeUgQQPtMI24Gt6hgfuMHRJgMRHMF/qZ4HJD3GDru4sSw9IQl2jPjAYnQrdIeLbwow==} dependencies: inherits: 2.0.4 readable-stream: 1.0.34 @@ -8893,8 +8893,8 @@ packages: hasBin: true dev: false - /typescript/4.9.0-dev.20220908: - resolution: {integrity: sha512-Z9NXScMcNmiTv94f0G5PzGn4/Hk31hZySa87XP05BQpYYD5NlaDzQh4POK+z5/5GhNtT56Z+JKbqK9DJxZuA+g==} + /typescript/4.9.0-dev.20220909: + resolution: {integrity: sha512-SC8F8fq2cOklfv72ROBl+qxx6HqRCTbMnj3pQp1rTUeTMLWOBym0a8YAcy7/nu/R+U7wuReUeFhZxhcItvfDCA==} engines: {node: '>=4.2.0'} hasBin: true dev: false @@ -9017,7 +9017,7 @@ packages: dev: false /utils-merge/1.0.1: - resolution: {integrity: sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=} + resolution: {integrity: sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==} engines: {node: '>= 0.4.0'} dev: false @@ -9672,18 +9672,18 @@ packages: dev: false file:projects/ai-language-conversations.tgz: - resolution: {integrity: sha512-tSn2rgmr/xcqw7jnSZbSWSF+1SNXmfKqDWr0sqCXx5W7WPASEX2lEwTRtf8j2DJUufZePBY8uLssWHeQuFeIyg==, tarball: file:projects/ai-language-conversations.tgz} + resolution: {integrity: sha512-060vIpSA1oWfoWH37LVC/Xxf/SV76wcra1q7mXaVezsJpIDJUJa9D1dV5oHABF5dF775YtmxS2DJMzGuZ3P7WQ==, tarball: file:projects/ai-language-conversations.tgz} name: '@rush-temp/ai-language-conversations' version: 0.0.0 dependencies: '@azure/core-tracing': 1.0.0 '@azure/identity': 2.1.0 '@microsoft/api-extractor': 7.18.11 - '@rollup/plugin-commonjs': 21.1.0_rollup@2.77.2 - '@rollup/plugin-json': 4.1.0_rollup@2.77.2 - '@rollup/plugin-multi-entry': 4.1.0_rollup@2.77.2 - '@rollup/plugin-node-resolve': 13.3.0_rollup@2.77.2 - '@types/chai': 4.3.1 + '@rollup/plugin-commonjs': 21.1.0_rollup@2.79.0 + '@rollup/plugin-json': 4.1.0_rollup@2.79.0 + '@rollup/plugin-multi-entry': 4.1.0_rollup@2.79.0 + '@rollup/plugin-node-resolve': 13.3.0_rollup@2.79.0 + '@types/chai': 4.3.3 '@types/chai-as-promised': 7.1.5 '@types/mocha': 7.0.2 '@types/node': 12.20.55 @@ -9692,7 +9692,7 @@ packages: chai-as-promised: 7.1.1_chai@4.3.6 cross-env: 7.0.3 dotenv: 8.6.0 - eslint: 8.20.0 + eslint: 8.23.0 karma: 6.4.0 karma-chrome-launcher: 3.1.1 karma-coverage: 2.2.0 @@ -9711,14 +9711,14 @@ packages: nyc: 15.1.0 prettier: 2.7.1 rimraf: 3.0.2 - rollup: 2.77.2 - rollup-plugin-sourcemaps: 0.6.3_33537704779d09e8a7b3ae8d1134dd59 + rollup: 2.79.0 + rollup-plugin-sourcemaps: 0.6.3_7b3c4ab1624c114eb4563c11d2337405 sinon: 9.2.4 source-map-support: 0.5.21 ts-node: 10.9.1_8a48dd0e78344f824d84cc558db9572d tslib: 2.4.0 typescript: 4.2.4 - uglify-js: 3.16.3 + uglify-js: 3.17.0 transitivePeerDependencies: - '@swc/core' - '@swc/wasm' @@ -13201,7 +13201,7 @@ packages: dev: false file:projects/arm-netapp.tgz: - resolution: {integrity: sha512-EPHnT+1w7lyMqXjfVQMIHkiegYLu81MUFSYfzo1THH93ZU33i1rTJMIfnaeSpeLzD9uW+w2fZ0D31AbpesJlVQ==, tarball: file:projects/arm-netapp.tgz} + resolution: {integrity: sha512-xn8mGLL6+0BPZnDB8qLESbE+v6PImxQz502Rye+jiOipk/Xfo0zCiFF74wEbatX2PHxF0zK97L/8H96dEFNcLA==, tarball: file:projects/arm-netapp.tgz} name: '@rush-temp/arm-netapp' version: 0.0.0 dependencies: @@ -13220,7 +13220,7 @@ packages: rollup: 2.79.0 rollup-plugin-sourcemaps: 0.6.3_rollup@2.79.0 tslib: 2.4.0 - typescript: 4.6.4 + typescript: 4.2.4 uglify-js: 3.17.0 transitivePeerDependencies: - '@types/node' @@ -15543,7 +15543,7 @@ packages: dev: false file:projects/communication-phone-numbers.tgz: - resolution: {integrity: sha512-osnZl91uMMWayN1XrwdWls3VZh3hSU9fgqFAbIFOWEZkJEjezplNl4u5doYFiDm8IzV9Alb0vBc471YgYvSFLQ==, tarball: file:projects/communication-phone-numbers.tgz} + resolution: {integrity: sha512-nMmCk5M62xzqtm8VvCRk8RbT9XOtajridf8FXmLu1ZNU41R0BRfKHgqr5eekE5/Iz02Tm5nSuAGhHHr1rmqMWA==, tarball: file:projects/communication-phone-numbers.tgz} name: '@rush-temp/communication-phone-numbers' version: 0.0.0 dependencies: @@ -15584,7 +15584,6 @@ packages: transitivePeerDependencies: - bufferutil - debug - - encoding - supports-color - utf-8-validate dev: false @@ -15803,7 +15802,7 @@ packages: dev: false file:projects/core-amqp.tgz: - resolution: {integrity: sha512-Onvt6vPrPaZEf90OHVyaCxFzQSohcwkz58OoqG8Rcpb4pLkZwls7qdJQyAO61+jCJkZeY8iaYHpdoTxnj+Hshg==, tarball: file:projects/core-amqp.tgz} + resolution: {integrity: sha512-hQ7a/W0DQbiJ93BlBeEY+Z6G1nYYHhKk/cZ6feHwSvKOdzM7Z8l2+/9PeDQBMlprQwvW1vXkERfBbWMHDHliHw==, tarball: file:projects/core-amqp.tgz} name: '@rush-temp/core-amqp' version: 0.0.0 dependencies: @@ -15987,7 +15986,7 @@ packages: dev: false file:projects/core-http.tgz: - resolution: {integrity: sha512-n1MOXXGJ5ZJfkShfEAqkkkVTWCbRzcOn+MGzyOGzZ8wqDw3hsyL3w9sqDyqymIA1DmtMXCBJxJ/spOxENVBBew==, tarball: file:projects/core-http.tgz} + resolution: {integrity: sha512-N01s8G0U7FDaKX51dr+TKxoqjN/sW/9yvfa1WPb+krcdlYj/HTvhfmWzSf0IymbgYWqbBkorNyHqRanOMySLBA==, tarball: file:projects/core-http.tgz} name: '@rush-temp/core-http' version: 0.0.0 dependencies: @@ -16218,7 +16217,7 @@ packages: dev: false file:projects/core-util.tgz: - resolution: {integrity: sha512-hL2vBQoDHtG9XCEdlCpW2qoOVMXqjFypJzzjBvQj76z337AOC3CvEea/xQZfSpAW2VgphZ5U1s4XPiCKZVFJ0w==, tarball: file:projects/core-util.tgz} + resolution: {integrity: sha512-RKM0GDesu6KF9ayCTbGSyTDl2ZwGPCw9AVd1y8oJNiyaBMFTicuF4El4sA3IYnJm1hPibOiM8iOcHCoB8jROBw==, tarball: file:projects/core-util.tgz} name: '@rush-temp/core-util' version: 0.0.0 dependencies: @@ -17497,7 +17496,7 @@ packages: dev: false file:projects/notification-hubs.tgz: - resolution: {integrity: sha512-pM3qNUPMTfbbBTiCRbNCyLQuv+fwXQUatA+7CjGcA+2R2V7Lj9rKUq4/Aln35/KWR5mVSl42ImeTI0p/VLR4QA==, tarball: file:projects/notification-hubs.tgz} + resolution: {integrity: sha512-IHSdEsxUG9Gqd5maRhWOJfwMI+8q4w6VYRT0pyLFoHo1rMEWHAJsfyI6v4SmKeHkg9m3HdYalufH5DcQmvFEOA==, tarball: file:projects/notification-hubs.tgz} name: '@rush-temp/notification-hubs' version: 0.0.0 dependencies: @@ -18394,7 +18393,7 @@ packages: dev: false file:projects/service-bus.tgz: - resolution: {integrity: sha512-U7DwKgY1xyAPPDh/QIPh9c6CcBHKD0m627nJXFJPgIHQYHCPY2IDCAi0RVopcuiXi66bo7byyLMyf3H4F4E2Bw==, tarball: file:projects/service-bus.tgz} + resolution: {integrity: sha512-5VgwoUB3AmYKIodvL03LdVoXrd2KdciBVAoY166XP8fr8VIDjbFQcAgNNrmTZ2cZgOq/ec1EXCLL8eFOKENMYg==, tarball: file:projects/service-bus.tgz} name: '@rush-temp/service-bus' version: 0.0.0 dependencies: diff --git a/sdk/netapp/arm-netapp/CHANGELOG.md b/sdk/netapp/arm-netapp/CHANGELOG.md index 8875162413ab..d89b7631403d 100644 --- a/sdk/netapp/arm-netapp/CHANGELOG.md +++ b/sdk/netapp/arm-netapp/CHANGELOG.md @@ -1,15 +1,52 @@ # Release History + +## 17.0.0 (2022-09-10) + +**Features** -## 16.1.1 (Unreleased) - -### Features Added - -### Breaking Changes - -### Bugs Fixed + - Added operation Accounts.beginRenewCredentials + - Added operation Accounts.beginRenewCredentialsAndWait + - Added operation NetAppResource.queryRegionInfo + - Added Interface AccountsRenewCredentialsOptionalParams + - Added Interface EncryptionIdentity + - Added Interface Identity + - Added Interface KeyVaultProperties + - Added Interface NetAppResourceQueryRegionInfoOptionalParams + - Added Interface RegionInfo + - Added Interface RegionInfoAvailabilityZoneMappingsItem + - Added Interface RelocateVolumeRequest + - Added Interface UserAssignedIdentity + - Added Type Alias IdentityType + - Added Type Alias KeySource + - Added Type Alias KeyVaultStatus + - Added Type Alias NetAppResourceQueryRegionInfoResponse + - Added Type Alias RegionStorageToNetworkProximity + - Added Type Alias SmbAccessBasedEnumeration + - Added Type Alias SmbNonBrowsable + - Interface AccountEncryption has a new optional parameter identity + - Interface AccountEncryption has a new optional parameter keyVaultProperties + - Interface NetAppAccount has a new optional parameter disableShowmount + - Interface NetAppAccount has a new optional parameter identity + - Interface NetAppAccountPatch has a new optional parameter disableShowmount + - Interface Volume has a new optional parameter deleteBaseSnapshot + - Interface Volume has a new optional parameter smbAccessBasedEnumeration + - Interface Volume has a new optional parameter smbNonBrowsable + - Interface VolumeGroupVolumeProperties has a new optional parameter deleteBaseSnapshot + - Interface VolumeGroupVolumeProperties has a new optional parameter smbAccessBasedEnumeration + - Interface VolumeGroupVolumeProperties has a new optional parameter smbNonBrowsable + - Interface VolumesRelocateOptionalParams has a new optional parameter body + - Added Enum KnownIdentityType + - Added Enum KnownKeySource + - Added Enum KnownKeyVaultStatus + - Added Enum KnownRegionStorageToNetworkProximity + - Added Enum KnownSmbAccessBasedEnumeration + - Added Enum KnownSmbNonBrowsable -### Other Changes +**Breaking Changes** + - Interface Vault no longer has parameter location + + ## 16.1.0 (2022-07-21) **Features** diff --git a/sdk/netapp/arm-netapp/_meta.json b/sdk/netapp/arm-netapp/_meta.json index 7cf9e5ff12c1..65841cace2b5 100644 --- a/sdk/netapp/arm-netapp/_meta.json +++ b/sdk/netapp/arm-netapp/_meta.json @@ -1,8 +1,8 @@ { - "commit": "ca5d9600e4950afdae3c23c71d9407b6aa3fce63", + "commit": "ecd835ab6299f26895f288b77ab6855ac2c51722", "readme": "specification/netapp/resource-manager/readme.md", - "autorest_command": "autorest --version=3.7.3 --typescript --modelerfour.lenient-model-deduplication --azure-arm --head-as-boolean=true --license-header=MICROSOFT_MIT_NO_VERSION --generate-test --typescript-sdks-folder=D:\\Git\\azure-sdk-for-js ..\\azure-rest-api-specs\\specification\\netapp\\resource-manager\\readme.md --use=@autorest/typescript@6.0.0-rc.1.20220720.1 --generate-sample=true", + "autorest_command": "autorest --version=3.8.4 --typescript --modelerfour.lenient-model-deduplication --azure-arm --head-as-boolean=true --license-header=MICROSOFT_MIT_NO_VERSION --generate-test --typescript-sdks-folder=/mnt/vss/_work/1/s/azure-sdk-for-js ../azure-rest-api-specs/specification/netapp/resource-manager/readme.md --use=@autorest/typescript@6.0.0-rc.1", "repository_url": "https://github.com/Azure/azure-rest-api-specs.git", - "release_tool": "@azure-tools/js-sdk-release-tools@2.4.0", - "use": "@autorest/typescript@6.0.0-rc.1.20220720.1" + "release_tool": "@azure-tools/js-sdk-release-tools@2.4.2", + "use": "@autorest/typescript@6.0.0-rc.1" } \ No newline at end of file diff --git a/sdk/netapp/arm-netapp/package.json b/sdk/netapp/arm-netapp/package.json index ca6b82fcac78..c7ed50185330 100644 --- a/sdk/netapp/arm-netapp/package.json +++ b/sdk/netapp/arm-netapp/package.json @@ -3,7 +3,7 @@ "sdk-type": "mgmt", "author": "Microsoft Corporation", "description": "A generated SDK for NetAppManagementClient.", - "version": "16.1.1", + "version": "17.0.0", "engines": { "node": ">=12.0.0" }, @@ -36,7 +36,7 @@ "mkdirp": "^1.0.4", "rollup": "^2.66.1", "rollup-plugin-sourcemaps": "^0.6.3", - "typescript": "~4.6.0", + "typescript": "~4.2.0", "uglify-js": "^3.4.9", "rimraf": "^3.0.0", "@azure/identity": "^2.0.1", @@ -109,13 +109,5 @@ } ] }, - "autoPublish": true, - "//sampleConfiguration": { - "productName": "", - "productSlugs": [ - "azure" - ], - "disableDocsMs": true, - "apiRefLink": "https://docs.microsoft.com/javascript/api/@azure/arm-netapp?view=azure-node-preview" - } -} + "autoPublish": true +} \ No newline at end of file diff --git a/sdk/netapp/arm-netapp/review/arm-netapp.api.md b/sdk/netapp/arm-netapp/review/arm-netapp.api.md index af48f755b890..93108e795d99 100644 --- a/sdk/netapp/arm-netapp/review/arm-netapp.api.md +++ b/sdk/netapp/arm-netapp/review/arm-netapp.api.md @@ -40,7 +40,9 @@ export type AccountBackupsListResponse = BackupsList; // @public export interface AccountEncryption { - keySource?: string; + identity?: EncryptionIdentity; + keySource?: KeySource; + keyVaultProperties?: KeyVaultProperties; } // @public @@ -49,6 +51,8 @@ export interface Accounts { beginCreateOrUpdateAndWait(resourceGroupName: string, accountName: string, body: NetAppAccount, options?: AccountsCreateOrUpdateOptionalParams): Promise; beginDelete(resourceGroupName: string, accountName: string, options?: AccountsDeleteOptionalParams): Promise, void>>; beginDeleteAndWait(resourceGroupName: string, accountName: string, options?: AccountsDeleteOptionalParams): Promise; + beginRenewCredentials(resourceGroupName: string, accountName: string, options?: AccountsRenewCredentialsOptionalParams): Promise, void>>; + beginRenewCredentialsAndWait(resourceGroupName: string, accountName: string, options?: AccountsRenewCredentialsOptionalParams): Promise; beginUpdate(resourceGroupName: string, accountName: string, body: NetAppAccountPatch, options?: AccountsUpdateOptionalParams): Promise, AccountsUpdateResponse>>; beginUpdateAndWait(resourceGroupName: string, accountName: string, body: NetAppAccountPatch, options?: AccountsUpdateOptionalParams): Promise; get(resourceGroupName: string, accountName: string, options?: AccountsGetOptionalParams): Promise; @@ -106,6 +110,12 @@ export interface AccountsListOptionalParams extends coreClient.OperationOptions // @public export type AccountsListResponse = NetAppAccountList; +// @public +export interface AccountsRenewCredentialsOptionalParams extends coreClient.OperationOptions { + resumeFrom?: string; + updateIntervalInMs?: number; +} + // @public export interface AccountsUpdateOptionalParams extends coreClient.OperationOptions { resumeFrom?: string; @@ -467,6 +477,12 @@ export interface Dimension { // @public export type EnableSubvolumes = string; +// @public +export interface EncryptionIdentity { + readonly principalId?: string; + userAssignedIdentity?: string; +} + // @public export type EncryptionKeySource = string; @@ -508,9 +524,37 @@ export interface HourlySchedule { usedBytes?: number; } +// @public +export interface Identity { + readonly principalId?: string; + readonly tenantId?: string; + type: IdentityType; + userAssignedIdentities?: { + [propertyName: string]: UserAssignedIdentity; + }; +} + +// @public +export type IdentityType = string; + // @public export type InAvailabilityReasonType = string; +// @public +export type KeySource = string; + +// @public +export interface KeyVaultProperties { + keyName: string; + readonly keyVaultId?: string; + keyVaultResourceId: string; + keyVaultUri: string; + readonly status?: KeyVaultStatus; +} + +// @public +export type KeyVaultStatus = string; + // @public export enum KnownActiveDirectoryStatus { Created = "Created", @@ -591,12 +635,35 @@ export enum KnownEndpointType { Src = "src" } +// @public +export enum KnownIdentityType { + None = "None", + SystemAssigned = "SystemAssigned", + SystemAssignedUserAssigned = "SystemAssigned,UserAssigned", + UserAssigned = "UserAssigned" +} + // @public export enum KnownInAvailabilityReasonType { AlreadyExists = "AlreadyExists", Invalid = "Invalid" } +// @public +export enum KnownKeySource { + MicrosoftKeyVault = "Microsoft.KeyVault", + MicrosoftNetApp = "Microsoft.NetApp" +} + +// @public +export enum KnownKeyVaultStatus { + Created = "Created", + Deleted = "Deleted", + Error = "Error", + InUse = "InUse", + Updating = "Updating" +} + // @public export enum KnownMetricAggregationType { Average = "Average" @@ -621,6 +688,14 @@ export enum KnownQosType { Manual = "Manual" } +// @public +export enum KnownRegionStorageToNetworkProximity { + Default = "Default", + T1 = "T1", + T1AndT2 = "T1AndT2", + T2 = "T2" +} + // @public export enum KnownRelationshipStatus { Idle = "Idle", @@ -648,6 +723,18 @@ export enum KnownServiceLevel { Ultra = "Ultra" } +// @public +export enum KnownSmbAccessBasedEnumeration { + Disabled = "Disabled", + Enabled = "Enabled" +} + +// @public +export enum KnownSmbNonBrowsable { + Disabled = "Disabled", + Enabled = "Enabled" +} + // @public export enum KnownType { DefaultGroupQuota = "DefaultGroupQuota", @@ -742,8 +829,10 @@ export interface MountTargetProperties { // @public export interface NetAppAccount extends TrackedResource { activeDirectories?: ActiveDirectory[]; + readonly disableShowmount?: boolean; encryption?: AccountEncryption; readonly etag?: string; + identity?: Identity; readonly provisioningState?: string; } @@ -756,6 +845,7 @@ export interface NetAppAccountList { // @public export interface NetAppAccountPatch { activeDirectories?: ActiveDirectory[]; + readonly disableShowmount?: boolean; encryption?: AccountEncryption; readonly id?: string; location?: string; @@ -820,6 +910,7 @@ export interface NetAppResource { checkFilePathAvailability(location: string, name: string, subnetId: string, options?: NetAppResourceCheckFilePathAvailabilityOptionalParams): Promise; checkNameAvailability(location: string, name: string, resourceGroup: string, typeParam: CheckNameResourceTypes, options?: NetAppResourceCheckNameAvailabilityOptionalParams): Promise; checkQuotaAvailability(location: string, name: string, resourceGroup: string, typeParam: CheckQuotaNameResourceTypes, options?: NetAppResourceCheckQuotaAvailabilityOptionalParams): Promise; + queryRegionInfo(location: string, options?: NetAppResourceQueryRegionInfoOptionalParams): Promise; } // @public @@ -843,6 +934,13 @@ export interface NetAppResourceCheckQuotaAvailabilityOptionalParams extends core // @public export type NetAppResourceCheckQuotaAvailabilityResponse = CheckAvailabilityResponse; +// @public +export interface NetAppResourceQueryRegionInfoOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type NetAppResourceQueryRegionInfoResponse = RegionInfo; + // @public export interface NetAppResourceQuotaLimits { get(location: string, quotaLimitName: string, options?: NetAppResourceQuotaLimitsGetOptionalParams): Promise; @@ -989,9 +1087,29 @@ export interface ReestablishReplicationRequest { sourceVolumeId?: string; } +// @public +export interface RegionInfo { + availabilityZoneMappings?: RegionInfoAvailabilityZoneMappingsItem[]; + storageToNetworkProximity?: RegionStorageToNetworkProximity; +} + +// @public (undocumented) +export interface RegionInfoAvailabilityZoneMappingsItem { + availabilityZone?: string; + isAvailable?: boolean; +} + +// @public +export type RegionStorageToNetworkProximity = string; + // @public export type RelationshipStatus = string; +// @public +export interface RelocateVolumeRequest { + creationToken?: string; +} + // @public export interface Replication { endpointType?: EndpointType; @@ -1065,6 +1183,12 @@ export interface ServiceSpecification { metricSpecifications?: MetricSpecification[]; } +// @public +export type SmbAccessBasedEnumeration = string; + +// @public +export type SmbNonBrowsable = string; + // @public export interface Snapshot { readonly created?: Date; @@ -1392,10 +1516,15 @@ export interface TrackedResource extends Resource { // @public export type Type = string; +// @public +export interface UserAssignedIdentity { + readonly clientId?: string; + readonly principalId?: string; +} + // @public export interface Vault { readonly id?: string; - location: string; readonly name?: string; readonly type?: string; vaultName?: string; @@ -1431,6 +1560,7 @@ export interface Volume extends TrackedResource { dataProtection?: VolumePropertiesDataProtection; defaultGroupQuotaInKiBs?: number; defaultUserQuotaInKiBs?: number; + deleteBaseSnapshot?: boolean; enableSubvolumes?: EnableSubvolumes; readonly encrypted?: boolean; encryptionKeySource?: EncryptionKeySource; @@ -1452,8 +1582,10 @@ export interface Volume extends TrackedResource { proximityPlacementGroup?: string; securityStyle?: SecurityStyle; serviceLevel?: ServiceLevel; + smbAccessBasedEnumeration?: SmbAccessBasedEnumeration; smbContinuouslyAvailable?: boolean; smbEncryption?: boolean; + smbNonBrowsable?: SmbNonBrowsable; snapshotDirectoryVisible?: boolean; snapshotId?: string; readonly storageToNetworkProximity?: VolumeStorageToNetworkProximity; @@ -1571,6 +1703,7 @@ export interface VolumeGroupVolumeProperties { dataProtection?: VolumePropertiesDataProtection; defaultGroupQuotaInKiBs?: number; defaultUserQuotaInKiBs?: number; + deleteBaseSnapshot?: boolean; enableSubvolumes?: EnableSubvolumes; readonly encrypted?: boolean; encryptionKeySource?: EncryptionKeySource; @@ -1593,8 +1726,10 @@ export interface VolumeGroupVolumeProperties { proximityPlacementGroup?: string; securityStyle?: SecurityStyle; serviceLevel?: ServiceLevel; + smbAccessBasedEnumeration?: SmbAccessBasedEnumeration; smbContinuouslyAvailable?: boolean; smbEncryption?: boolean; + smbNonBrowsable?: SmbNonBrowsable; snapshotDirectoryVisible?: boolean; snapshotId?: string; readonly storageToNetworkProximity?: VolumeStorageToNetworkProximity; @@ -1878,6 +2013,7 @@ export interface VolumesReInitializeReplicationOptionalParams extends coreClient // @public export interface VolumesRelocateOptionalParams extends coreClient.OperationOptions { + body?: RelocateVolumeRequest; resumeFrom?: string; updateIntervalInMs?: number; } diff --git a/sdk/netapp/arm-netapp/src/models/index.ts b/sdk/netapp/arm-netapp/src/models/index.ts index 2c7e7db15881..ef110ad9f350 100644 --- a/sdk/netapp/arm-netapp/src/models/index.ts +++ b/sdk/netapp/arm-netapp/src/models/index.ts @@ -182,6 +182,21 @@ export interface SystemData { lastModifiedAt?: Date; } +/** Provides region specific information. */ +export interface RegionInfo { + /** Provides storage to network proximity information in the region. */ + storageToNetworkProximity?: RegionStorageToNetworkProximity; + /** Provides logical availability zone mappings for the subscription for a region. */ + availabilityZoneMappings?: RegionInfoAvailabilityZoneMappingsItem[]; +} + +export interface RegionInfoAvailabilityZoneMappingsItem { + /** Logical availability zone. */ + availabilityZone?: string; + /** Available availability zone */ + isAvailable?: boolean; +} + /** List of NetApp account resources */ export interface NetAppAccountList { /** Multiple NetApp accounts */ @@ -256,8 +271,75 @@ export interface LdapSearchScopeOpt { /** Encryption settings */ export interface AccountEncryption { - /** Encryption Key Source. Possible values are: 'Microsoft.NetApp'. */ - keySource?: string; + /** The encryption keySource (provider). Possible values (case-insensitive): Microsoft.NetApp, Microsoft.KeyVault */ + keySource?: KeySource; + /** Properties provided by KeVault. Applicable if keySource is 'Microsoft.KeyVault'. */ + keyVaultProperties?: KeyVaultProperties; + /** Identity used to authenticate to KeyVault. Applicable if keySource is 'Microsoft.KeyVault'. */ + identity?: EncryptionIdentity; +} + +/** Properties of key vault. */ +export interface KeyVaultProperties { + /** + * UUID v4 used to identify the Azure Key Vault configuration + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly keyVaultId?: string; + /** The Uri of KeyVault. */ + keyVaultUri: string; + /** The name of KeyVault key. */ + keyName: string; + /** The resource ID of KeyVault. */ + keyVaultResourceId: string; + /** + * Status of the KeyVault connection. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly status?: KeyVaultStatus; +} + +/** Identity used to authenticate with key vault. */ +export interface EncryptionIdentity { + /** + * The principal ID (object ID) of the identity used to authenticate with key vault. Read-only. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly principalId?: string; + /** The ARM resource identifier of the user assigned identity used to authenticate with key vault. Applicable if identity.type has 'UserAssigned'. It should match key of identity.userAssignedIdentities. */ + userAssignedIdentity?: string; +} + +/** Identity for the resource. */ +export interface Identity { + /** + * The principal ID of resource identity. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly principalId?: string; + /** + * The tenant ID of resource. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly tenantId?: string; + /** The identity type. */ + type: IdentityType; + /** Gets or sets a list of key value pairs that describe the set of User Assigned identities that will be used with this storage account. The key is the ARM resource identifier of the identity. Only 1 User Assigned identity is permitted here. */ + userAssignedIdentities?: { [propertyName: string]: UserAssignedIdentity }; +} + +/** UserAssignedIdentity for the resource. */ +export interface UserAssignedIdentity { + /** + * The principal ID of the identity. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly principalId?: string; + /** + * The client ID of the identity. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly clientId?: string; } /** NetApp account patch resource */ @@ -290,6 +372,11 @@ export interface NetAppAccountPatch { activeDirectories?: ActiveDirectory[]; /** Encryption settings */ encryption?: AccountEncryption; + /** + * Shows the status of disableShowmount for all volumes under the subscription, null equals false + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly disableShowmount?: boolean; } /** An error response from the service. */ @@ -482,7 +569,7 @@ export interface VolumePatch { tags?: { [propertyName: string]: string }; /** The service level of the file system */ serviceLevel?: ServiceLevel; - /** Maximum storage quota allowed for a file system in bytes. This is a soft quota used for alerting only. Minimum size is 100 GiB. Upper limit is 100TiB. Specified in bytes. */ + /** Maximum storage quota allowed for a file system in bytes. This is a soft quota used for alerting only. Minimum size is 100 GiB. Upper limit is 100TiB, 500Tib for LargeVolume. Specified in bytes. */ usageThreshold?: number; /** Set of export policy rules */ exportPolicy?: VolumePatchPropertiesExportPolicy; @@ -580,6 +667,12 @@ export interface PoolChangeRequest { newPoolResourceId: string; } +/** Relocate volume request */ +export interface RelocateVolumeRequest { + /** New creation token for the volume that controls the mount point name */ + creationToken?: string; +} + /** List of Snapshots */ export interface SnapshotsList { /** A list of Snapshots */ @@ -1015,8 +1108,6 @@ export interface VaultList { /** Vault information */ export interface Vault { - /** Resource location */ - location: string; /** * Resource Id * NOTE: This property will not be serialized. It can only be populated by the server. @@ -1144,7 +1235,7 @@ export interface VolumeGroupVolumeProperties { creationToken: string; /** The service level of the file system */ serviceLevel?: ServiceLevel; - /** Maximum storage quota allowed for a file system in bytes. This is a soft quota used for alerting only. Minimum size is 100 GiB. Upper limit is 100TiB. Specified in bytes. */ + /** Maximum storage quota allowed for a file system in bytes. This is a soft quota used for alerting only. Minimum size is 500 GiB. Upper limit is 100TiB, 500Tib for LargeVolume. Specified in bytes. */ usageThreshold: number; /** Set of export policy rules */ exportPolicy?: VolumePropertiesExportPolicy; @@ -1157,6 +1248,8 @@ export interface VolumeGroupVolumeProperties { readonly provisioningState?: string; /** UUID v4 or resource identifier used to identify the Snapshot. */ snapshotId?: string; + /** If enabled (true) the snapshot the volume was created from will be automatically deleted after the volume create operation has finished. Defaults to false */ + deleteBaseSnapshot?: boolean; /** UUID v4 or resource identifier used to identify the Backup. */ backupId?: string; /** @@ -1197,6 +1290,10 @@ export interface VolumeGroupVolumeProperties { securityStyle?: SecurityStyle; /** Enables encryption for in-flight smb3 data. Only applicable for SMB/DualProtocol volume. To be used with swagger version 2020-08-01 or later */ smbEncryption?: boolean; + /** Enables access based enumeration share property for SMB Shares. Only applicable for SMB/DualProtocol volume */ + smbAccessBasedEnumeration?: SmbAccessBasedEnumeration; + /** Enables non browsable property for SMB Shares. Only applicable for SMB/DualProtocol volume */ + smbNonBrowsable?: SmbNonBrowsable; /** Enables continuously available share property for smb volume. Only applicable for SMB volume */ smbContinuouslyAvailable?: boolean; /** Maximum throughput in MiB/s that can be achieved by this volume and this will be accepted as input only for manual qosType volume */ @@ -1512,6 +1609,8 @@ export interface NetAppAccount extends TrackedResource { * NOTE: This property will not be serialized. It can only be populated by the server. */ readonly etag?: string; + /** The identity of the resource. */ + identity?: Identity; /** * Azure lifecycle management * NOTE: This property will not be serialized. It can only be populated by the server. @@ -1521,6 +1620,11 @@ export interface NetAppAccount extends TrackedResource { activeDirectories?: ActiveDirectory[]; /** Encryption settings */ encryption?: AccountEncryption; + /** + * Shows the status of disableShowmount for all volumes under the subscription, null equals false + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly disableShowmount?: boolean; } /** Capacity pool resource */ @@ -1580,7 +1684,7 @@ export interface Volume extends TrackedResource { creationToken: string; /** The service level of the file system */ serviceLevel?: ServiceLevel; - /** Maximum storage quota allowed for a file system in bytes. This is a soft quota used for alerting only. Minimum size is 100 GiB. Upper limit is 100TiB. Specified in bytes. */ + /** Maximum storage quota allowed for a file system in bytes. This is a soft quota used for alerting only. Minimum size is 500 GiB. Upper limit is 100TiB, 500Tib for LargeVolume. Specified in bytes. */ usageThreshold: number; /** Set of export policy rules */ exportPolicy?: VolumePropertiesExportPolicy; @@ -1593,6 +1697,8 @@ export interface Volume extends TrackedResource { readonly provisioningState?: string; /** UUID v4 or resource identifier used to identify the Snapshot. */ snapshotId?: string; + /** If enabled (true) the snapshot the volume was created from will be automatically deleted after the volume create operation has finished. Defaults to false */ + deleteBaseSnapshot?: boolean; /** UUID v4 or resource identifier used to identify the Backup. */ backupId?: string; /** @@ -1633,6 +1739,10 @@ export interface Volume extends TrackedResource { securityStyle?: SecurityStyle; /** Enables encryption for in-flight smb3 data. Only applicable for SMB/DualProtocol volume. To be used with swagger version 2020-08-01 or later */ smbEncryption?: boolean; + /** Enables access based enumeration share property for SMB Shares. Only applicable for SMB/DualProtocol volume */ + smbAccessBasedEnumeration?: SmbAccessBasedEnumeration; + /** Enables non browsable property for SMB Shares. Only applicable for SMB/DualProtocol volume */ + smbNonBrowsable?: SmbNonBrowsable; /** Enables continuously available share property for smb volume. Only applicable for SMB volume */ smbContinuouslyAvailable?: boolean; /** Maximum throughput in MiB/s that can be achieved by this volume and this will be accepted as input only for manual qosType volume */ @@ -1875,6 +1985,30 @@ export enum KnownCreatedByType { */ export type CreatedByType = string; +/** Known values of {@link RegionStorageToNetworkProximity} that the service accepts. */ +export enum KnownRegionStorageToNetworkProximity { + /** Basic network connectivity. */ + Default = "Default", + /** Standard T1 network connectivity. */ + T1 = "T1", + /** Standard T2 network connectivity. */ + T2 = "T2", + /** Standard T1 and T2 network connectivity. */ + T1AndT2 = "T1AndT2" +} + +/** + * Defines values for RegionStorageToNetworkProximity. \ + * {@link KnownRegionStorageToNetworkProximity} can be used interchangeably with RegionStorageToNetworkProximity, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Default**: Basic network connectivity. \ + * **T1**: Standard T1 network connectivity. \ + * **T2**: Standard T2 network connectivity. \ + * **T1AndT2**: Standard T1 and T2 network connectivity. + */ +export type RegionStorageToNetworkProximity = string; + /** Known values of {@link ActiveDirectoryStatus} that the service accepts. */ export enum KnownActiveDirectoryStatus { /** Active Directory created but not in use */ @@ -1902,6 +2036,75 @@ export enum KnownActiveDirectoryStatus { */ export type ActiveDirectoryStatus = string; +/** Known values of {@link KeySource} that the service accepts. */ +export enum KnownKeySource { + /** Microsoft-managed key encryption */ + MicrosoftNetApp = "Microsoft.NetApp", + /** Customer-managed key encryption */ + MicrosoftKeyVault = "Microsoft.KeyVault" +} + +/** + * Defines values for KeySource. \ + * {@link KnownKeySource} can be used interchangeably with KeySource, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Microsoft.NetApp**: Microsoft-managed key encryption \ + * **Microsoft.KeyVault**: Customer-managed key encryption + */ +export type KeySource = string; + +/** Known values of {@link KeyVaultStatus} that the service accepts. */ +export enum KnownKeyVaultStatus { + /** KeyVault connection created but not in use */ + Created = "Created", + /** KeyVault connection in use by SMB Volume */ + InUse = "InUse", + /** KeyVault connection Deleted */ + Deleted = "Deleted", + /** Error with the KeyVault connection */ + Error = "Error", + /** KeyVault connection Updating */ + Updating = "Updating" +} + +/** + * Defines values for KeyVaultStatus. \ + * {@link KnownKeyVaultStatus} can be used interchangeably with KeyVaultStatus, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Created**: KeyVault connection created but not in use \ + * **InUse**: KeyVault connection in use by SMB Volume \ + * **Deleted**: KeyVault connection Deleted \ + * **Error**: Error with the KeyVault connection \ + * **Updating**: KeyVault connection Updating + */ +export type KeyVaultStatus = string; + +/** Known values of {@link IdentityType} that the service accepts. */ +export enum KnownIdentityType { + /** None */ + None = "None", + /** SystemAssigned */ + SystemAssigned = "SystemAssigned", + /** UserAssigned */ + UserAssigned = "UserAssigned", + /** SystemAssignedUserAssigned */ + SystemAssignedUserAssigned = "SystemAssigned,UserAssigned" +} + +/** + * Defines values for IdentityType. \ + * {@link KnownIdentityType} can be used interchangeably with IdentityType, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **None** \ + * **SystemAssigned** \ + * **UserAssigned** \ + * **SystemAssigned,UserAssigned** + */ +export type IdentityType = string; + /** Known values of {@link ServiceLevel} that the service accepts. */ export enum KnownServiceLevel { /** Standard service level */ @@ -2076,6 +2279,42 @@ export enum KnownSecurityStyle { */ export type SecurityStyle = string; +/** Known values of {@link SmbAccessBasedEnumeration} that the service accepts. */ +export enum KnownSmbAccessBasedEnumeration { + /** smbAccessBasedEnumeration share setting is disabled */ + Disabled = "Disabled", + /** smbAccessBasedEnumeration share setting is enabled */ + Enabled = "Enabled" +} + +/** + * Defines values for SmbAccessBasedEnumeration. \ + * {@link KnownSmbAccessBasedEnumeration} can be used interchangeably with SmbAccessBasedEnumeration, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Disabled**: smbAccessBasedEnumeration share setting is disabled \ + * **Enabled**: smbAccessBasedEnumeration share setting is enabled + */ +export type SmbAccessBasedEnumeration = string; + +/** Known values of {@link SmbNonBrowsable} that the service accepts. */ +export enum KnownSmbNonBrowsable { + /** smbNonBrowsable share setting is disabled */ + Disabled = "Disabled", + /** smbNonBrowsable share setting is enabled */ + Enabled = "Enabled" +} + +/** + * Defines values for SmbNonBrowsable. \ + * {@link KnownSmbNonBrowsable} can be used interchangeably with SmbNonBrowsable, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Disabled**: smbNonBrowsable share setting is disabled \ + * **Enabled**: smbNonBrowsable share setting is enabled + */ +export type SmbNonBrowsable = string; + /** Known values of {@link EncryptionKeySource} that the service accepts. */ export enum KnownEncryptionKeySource { /** Microsoft-managed key encryption */ @@ -2263,6 +2502,13 @@ export interface NetAppResourceCheckQuotaAvailabilityOptionalParams /** Contains response data for the checkQuotaAvailability operation. */ export type NetAppResourceCheckQuotaAvailabilityResponse = CheckAvailabilityResponse; +/** Optional parameters. */ +export interface NetAppResourceQueryRegionInfoOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the queryRegionInfo operation. */ +export type NetAppResourceQueryRegionInfoResponse = RegionInfo; + /** Optional parameters. */ export interface NetAppResourceQuotaLimitsListOptionalParams extends coreClient.OperationOptions {} @@ -2331,6 +2577,15 @@ export interface AccountsUpdateOptionalParams /** Contains response data for the update operation. */ export type AccountsUpdateResponse = NetAppAccount; +/** Optional parameters. */ +export interface AccountsRenewCredentialsOptionalParams + extends coreClient.OperationOptions { + /** Delay to wait until next poll, in milliseconds. */ + updateIntervalInMs?: number; + /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */ + resumeFrom?: string; +} + /** Optional parameters. */ export interface AccountsListBySubscriptionNextOptionalParams extends coreClient.OperationOptions {} @@ -2543,6 +2798,8 @@ export interface VolumesPoolChangeOptionalParams /** Optional parameters. */ export interface VolumesRelocateOptionalParams extends coreClient.OperationOptions { + /** Relocate volume request */ + body?: RelocateVolumeRequest; /** Delay to wait until next poll, in milliseconds. */ updateIntervalInMs?: number; /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */ diff --git a/sdk/netapp/arm-netapp/src/models/mappers.ts b/sdk/netapp/arm-netapp/src/models/mappers.ts index eb77a0d99f49..3f9e0fd73597 100644 --- a/sdk/netapp/arm-netapp/src/models/mappers.ts +++ b/sdk/netapp/arm-netapp/src/models/mappers.ts @@ -506,6 +506,54 @@ export const SystemData: coreClient.CompositeMapper = { } }; +export const RegionInfo: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "RegionInfo", + modelProperties: { + storageToNetworkProximity: { + serializedName: "storageToNetworkProximity", + type: { + name: "String" + } + }, + availabilityZoneMappings: { + serializedName: "availabilityZoneMappings", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "RegionInfoAvailabilityZoneMappingsItem" + } + } + } + } + } + } +}; + +export const RegionInfoAvailabilityZoneMappingsItem: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "RegionInfoAvailabilityZoneMappingsItem", + modelProperties: { + availabilityZone: { + serializedName: "availabilityZone", + type: { + name: "String" + } + }, + isAvailable: { + serializedName: "isAvailable", + type: { + name: "Boolean" + } + } + } + } +}; + export const NetAppAccountList: coreClient.CompositeMapper = { type: { name: "Composite", @@ -766,10 +814,160 @@ export const AccountEncryption: coreClient.CompositeMapper = { className: "AccountEncryption", modelProperties: { keySource: { + defaultValue: "Microsoft.NetApp", serializedName: "keySource", type: { name: "String" } + }, + keyVaultProperties: { + serializedName: "keyVaultProperties", + type: { + name: "Composite", + className: "KeyVaultProperties" + } + }, + identity: { + serializedName: "identity", + type: { + name: "Composite", + className: "EncryptionIdentity" + } + } + } + } +}; + +export const KeyVaultProperties: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "KeyVaultProperties", + modelProperties: { + keyVaultId: { + constraints: { + Pattern: new RegExp( + "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" + ), + MaxLength: 36, + MinLength: 36 + }, + serializedName: "keyVaultId", + readOnly: true, + type: { + name: "String" + } + }, + keyVaultUri: { + serializedName: "keyVaultUri", + required: true, + type: { + name: "String" + } + }, + keyName: { + serializedName: "keyName", + required: true, + type: { + name: "String" + } + }, + keyVaultResourceId: { + serializedName: "keyVaultResourceId", + required: true, + type: { + name: "String" + } + }, + status: { + serializedName: "status", + readOnly: true, + type: { + name: "String" + } + } + } + } +}; + +export const EncryptionIdentity: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "EncryptionIdentity", + modelProperties: { + principalId: { + serializedName: "principalId", + readOnly: true, + type: { + name: "String" + } + }, + userAssignedIdentity: { + serializedName: "userAssignedIdentity", + type: { + name: "String" + } + } + } + } +}; + +export const Identity: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "Identity", + modelProperties: { + principalId: { + serializedName: "principalId", + readOnly: true, + type: { + name: "String" + } + }, + tenantId: { + serializedName: "tenantId", + readOnly: true, + type: { + name: "String" + } + }, + type: { + serializedName: "type", + required: true, + type: { + name: "String" + } + }, + userAssignedIdentities: { + serializedName: "userAssignedIdentities", + type: { + name: "Dictionary", + value: { + type: { name: "Composite", className: "UserAssignedIdentity" } + } + } + } + } + } +}; + +export const UserAssignedIdentity: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "UserAssignedIdentity", + modelProperties: { + principalId: { + serializedName: "principalId", + readOnly: true, + type: { + name: "String" + } + }, + clientId: { + serializedName: "clientId", + readOnly: true, + type: { + name: "String" + } } } } @@ -839,6 +1037,14 @@ export const NetAppAccountPatch: coreClient.CompositeMapper = { name: "Composite", className: "AccountEncryption" } + }, + disableShowmount: { + serializedName: "properties.disableShowmount", + readOnly: true, + nullable: true, + type: { + name: "Boolean" + } } } } @@ -1365,7 +1571,7 @@ export const VolumePatch: coreClient.CompositeMapper = { usageThreshold: { defaultValue: 107374182400, constraints: { - InclusiveMaximum: 109951162777600, + InclusiveMaximum: 549755813888000, InclusiveMinimum: 107374182400 }, serializedName: "properties.usageThreshold", @@ -1659,6 +1865,21 @@ export const PoolChangeRequest: coreClient.CompositeMapper = { } }; +export const RelocateVolumeRequest: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "RelocateVolumeRequest", + modelProperties: { + creationToken: { + serializedName: "creationToken", + type: { + name: "String" + } + } + } + } +}; + export const SnapshotsList: coreClient.CompositeMapper = { type: { name: "Composite", @@ -2611,13 +2832,6 @@ export const Vault: coreClient.CompositeMapper = { name: "Composite", className: "Vault", modelProperties: { - location: { - serializedName: "location", - required: true, - type: { - name: "String" - } - }, id: { serializedName: "id", readOnly: true, @@ -2902,7 +3116,7 @@ export const VolumeGroupVolumeProperties: coreClient.CompositeMapper = { usageThreshold: { defaultValue: 107374182400, constraints: { - InclusiveMaximum: 109951162777600, + InclusiveMaximum: 549755813888000, InclusiveMinimum: 107374182400 }, serializedName: "properties.usageThreshold", @@ -2937,27 +3151,19 @@ export const VolumeGroupVolumeProperties: coreClient.CompositeMapper = { } }, snapshotId: { - constraints: { - Pattern: new RegExp( - "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}|(\\\\?([^\\/]*[\\/])*)([^\\/]+)$" - ), - MaxLength: 36, - MinLength: 36 - }, serializedName: "properties.snapshotId", nullable: true, type: { name: "String" } }, + deleteBaseSnapshot: { + serializedName: "properties.deleteBaseSnapshot", + type: { + name: "Boolean" + } + }, backupId: { - constraints: { - Pattern: new RegExp( - "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}|(\\\\?([^\\/]*[\\/])*)([^\\/]+)$" - ), - MaxLength: 36, - MinLength: 36 - }, serializedName: "properties.backupId", nullable: true, type: { @@ -3066,6 +3272,18 @@ export const VolumeGroupVolumeProperties: coreClient.CompositeMapper = { name: "Boolean" } }, + smbAccessBasedEnumeration: { + serializedName: "properties.smbAccessBasedEnumeration", + type: { + name: "String" + } + }, + smbNonBrowsable: { + serializedName: "properties.smbNonBrowsable", + type: { + name: "String" + } + }, smbContinuouslyAvailable: { defaultValue: false, serializedName: "properties.smbContinuouslyAvailable", @@ -3806,6 +4024,13 @@ export const NetAppAccount: coreClient.CompositeMapper = { name: "String" } }, + identity: { + serializedName: "identity", + type: { + name: "Composite", + className: "Identity" + } + }, provisioningState: { serializedName: "properties.provisioningState", readOnly: true, @@ -3831,6 +4056,14 @@ export const NetAppAccount: coreClient.CompositeMapper = { name: "Composite", className: "AccountEncryption" } + }, + disableShowmount: { + serializedName: "properties.disableShowmount", + readOnly: true, + nullable: true, + type: { + name: "Boolean" + } } } } @@ -3989,7 +4222,7 @@ export const Volume: coreClient.CompositeMapper = { usageThreshold: { defaultValue: 107374182400, constraints: { - InclusiveMaximum: 109951162777600, + InclusiveMaximum: 549755813888000, InclusiveMinimum: 107374182400 }, serializedName: "properties.usageThreshold", @@ -4024,27 +4257,19 @@ export const Volume: coreClient.CompositeMapper = { } }, snapshotId: { - constraints: { - Pattern: new RegExp( - "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}|(\\\\?([^\\/]*[\\/])*)([^\\/]+)$" - ), - MaxLength: 36, - MinLength: 36 - }, serializedName: "properties.snapshotId", nullable: true, type: { name: "String" } }, + deleteBaseSnapshot: { + serializedName: "properties.deleteBaseSnapshot", + type: { + name: "Boolean" + } + }, backupId: { - constraints: { - Pattern: new RegExp( - "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}|(\\\\?([^\\/]*[\\/])*)([^\\/]+)$" - ), - MaxLength: 36, - MinLength: 36 - }, serializedName: "properties.backupId", nullable: true, type: { @@ -4153,6 +4378,18 @@ export const Volume: coreClient.CompositeMapper = { name: "Boolean" } }, + smbAccessBasedEnumeration: { + serializedName: "properties.smbAccessBasedEnumeration", + type: { + name: "String" + } + }, + smbNonBrowsable: { + serializedName: "properties.smbNonBrowsable", + type: { + name: "String" + } + }, smbContinuouslyAvailable: { defaultValue: false, serializedName: "properties.smbContinuouslyAvailable", diff --git a/sdk/netapp/arm-netapp/src/models/parameters.ts b/sdk/netapp/arm-netapp/src/models/parameters.ts index 70a59a80c140..d06af6ee5649 100644 --- a/sdk/netapp/arm-netapp/src/models/parameters.ts +++ b/sdk/netapp/arm-netapp/src/models/parameters.ts @@ -26,6 +26,7 @@ import { ReestablishReplicationRequest as ReestablishReplicationRequestMapper, AuthorizeRequest as AuthorizeRequestMapper, PoolChangeRequest as PoolChangeRequestMapper, + RelocateVolumeRequest as RelocateVolumeRequestMapper, Snapshot as SnapshotMapper, SnapshotRestoreFiles as SnapshotRestoreFilesMapper, SnapshotPolicy as SnapshotPolicyMapper, @@ -68,7 +69,7 @@ export const $host: OperationURLParameter = { export const apiVersion: OperationQueryParameter = { parameterPath: "apiVersion", mapper: { - defaultValue: "2022-03-01", + defaultValue: "2022-05-01", isConstant: true, serializedName: "api-version", type: { @@ -298,6 +299,11 @@ export const body13: OperationParameter = { mapper: PoolChangeRequestMapper }; +export const body14: OperationParameter = { + parameterPath: ["options", "body"], + mapper: RelocateVolumeRequestMapper +}; + export const snapshotName: OperationURLParameter = { parameterPath: "snapshotName", mapper: { @@ -309,12 +315,12 @@ export const snapshotName: OperationURLParameter = { } }; -export const body14: OperationParameter = { +export const body15: OperationParameter = { parameterPath: "body", mapper: SnapshotMapper }; -export const body15: OperationParameter = { +export const body16: OperationParameter = { parameterPath: "body", mapper: { serializedName: "body", @@ -326,7 +332,7 @@ export const body15: OperationParameter = { } }; -export const body16: OperationParameter = { +export const body17: OperationParameter = { parameterPath: "body", mapper: SnapshotRestoreFilesMapper }; @@ -342,12 +348,12 @@ export const snapshotPolicyName: OperationURLParameter = { } }; -export const body17: OperationParameter = { +export const body18: OperationParameter = { parameterPath: "body", mapper: SnapshotPolicyMapper }; -export const body18: OperationParameter = { +export const body19: OperationParameter = { parameterPath: "body", mapper: SnapshotPolicyPatchMapper }; @@ -363,12 +369,12 @@ export const backupName: OperationURLParameter = { } }; -export const body19: OperationParameter = { +export const body20: OperationParameter = { parameterPath: "body", mapper: BackupMapper }; -export const body20: OperationParameter = { +export const body21: OperationParameter = { parameterPath: ["options", "body"], mapper: BackupPatchMapper }; @@ -384,12 +390,12 @@ export const backupPolicyName: OperationURLParameter = { } }; -export const body21: OperationParameter = { +export const body22: OperationParameter = { parameterPath: "body", mapper: BackupPolicyMapper }; -export const body22: OperationParameter = { +export const body23: OperationParameter = { parameterPath: "body", mapper: BackupPolicyPatchMapper }; @@ -405,12 +411,12 @@ export const volumeQuotaRuleName: OperationURLParameter = { } }; -export const body23: OperationParameter = { +export const body24: OperationParameter = { parameterPath: "body", mapper: VolumeQuotaRuleMapper }; -export const body24: OperationParameter = { +export const body25: OperationParameter = { parameterPath: "body", mapper: VolumeQuotaRulePatchMapper }; @@ -431,7 +437,7 @@ export const volumeGroupName: OperationURLParameter = { } }; -export const body25: OperationParameter = { +export const body26: OperationParameter = { parameterPath: "body", mapper: VolumeGroupDetailsMapper }; @@ -452,12 +458,12 @@ export const subvolumeName: OperationURLParameter = { } }; -export const body26: OperationParameter = { +export const body27: OperationParameter = { parameterPath: "body", mapper: SubvolumeInfoMapper }; -export const body27: OperationParameter = { +export const body28: OperationParameter = { parameterPath: "body", mapper: SubvolumePatchRequestMapper }; diff --git a/sdk/netapp/arm-netapp/src/netAppManagementClient.ts b/sdk/netapp/arm-netapp/src/netAppManagementClient.ts index 3c1868e6b203..01da34d766f8 100644 --- a/sdk/netapp/arm-netapp/src/netAppManagementClient.ts +++ b/sdk/netapp/arm-netapp/src/netAppManagementClient.ts @@ -83,7 +83,7 @@ export class NetAppManagementClient extends coreClient.ServiceClient { credential: credentials }; - const packageDetails = `azsdk-js-arm-netapp/16.1.1`; + const packageDetails = `azsdk-js-arm-netapp/17.0.0`; const userAgentPrefix = options.userAgentOptions && options.userAgentOptions.userAgentPrefix ? `${options.userAgentOptions.userAgentPrefix} ${packageDetails}` @@ -103,41 +103,34 @@ export class NetAppManagementClient extends coreClient.ServiceClient { }; super(optionsWithDefaults); - let bearerTokenAuthenticationPolicyFound: boolean = false; if (options?.pipeline && options.pipeline.getOrderedPolicies().length > 0) { const pipelinePolicies: coreRestPipeline.PipelinePolicy[] = options.pipeline.getOrderedPolicies(); - bearerTokenAuthenticationPolicyFound = pipelinePolicies.some( + const bearerTokenAuthenticationPolicyFound = pipelinePolicies.some( (pipelinePolicy) => pipelinePolicy.name === coreRestPipeline.bearerTokenAuthenticationPolicyName ); - } - if ( - !options || - !options.pipeline || - options.pipeline.getOrderedPolicies().length == 0 || - !bearerTokenAuthenticationPolicyFound - ) { - this.pipeline.removePolicy({ - name: coreRestPipeline.bearerTokenAuthenticationPolicyName - }); - this.pipeline.addPolicy( - coreRestPipeline.bearerTokenAuthenticationPolicy({ - credential: credentials, - scopes: `${optionsWithDefaults.credentialScopes}`, - challengeCallbacks: { - authorizeRequestOnChallenge: - coreClient.authorizeRequestOnClaimChallenge - } - }) - ); + if (!bearerTokenAuthenticationPolicyFound) { + this.pipeline.removePolicy({ + name: coreRestPipeline.bearerTokenAuthenticationPolicyName + }); + this.pipeline.addPolicy( + coreRestPipeline.bearerTokenAuthenticationPolicy({ + scopes: `${optionsWithDefaults.baseUri}/.default`, + challengeCallbacks: { + authorizeRequestOnChallenge: + coreClient.authorizeRequestOnClaimChallenge + } + }) + ); + } } // Parameter assignments this.subscriptionId = subscriptionId; // Assigning values to Constant parameters this.$host = options.$host || "https://management.azure.com"; - this.apiVersion = options.apiVersion || "2022-03-01"; + this.apiVersion = options.apiVersion || "2022-05-01"; this.operations = new OperationsImpl(this); this.netAppResource = new NetAppResourceImpl(this); this.netAppResourceQuotaLimits = new NetAppResourceQuotaLimitsImpl(this); diff --git a/sdk/netapp/arm-netapp/src/operations/accounts.ts b/sdk/netapp/arm-netapp/src/operations/accounts.ts index c13ad986a2a1..46be208bb5ec 100644 --- a/sdk/netapp/arm-netapp/src/operations/accounts.ts +++ b/sdk/netapp/arm-netapp/src/operations/accounts.ts @@ -30,6 +30,7 @@ import { NetAppAccountPatch, AccountsUpdateOptionalParams, AccountsUpdateResponse, + AccountsRenewCredentialsOptionalParams, AccountsListBySubscriptionNextResponse, AccountsListNextResponse } from "../models"; @@ -453,6 +454,93 @@ export class AccountsImpl implements Accounts { return poller.pollUntilDone(); } + /** + * Renew identity credentials that are used to authenticate to key vault, for customer-managed key + * encryption. If encryption.identity.principalId does not match identity.principalId, running this + * operation will fix it. + * @param resourceGroupName The name of the resource group. + * @param accountName The name of the NetApp account + * @param options The options parameters. + */ + async beginRenewCredentials( + resourceGroupName: string, + accountName: string, + options?: AccountsRenewCredentialsOptionalParams + ): Promise, void>> { + const directSendOperation = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ): Promise => { + return this.client.sendOperationRequest(args, spec); + }; + const sendOperation = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ) => { + let currentRawResponse: + | coreClient.FullOperationResponse + | undefined = undefined; + const providedCallback = args.options?.onResponse; + const callback: coreClient.RawResponseCallback = ( + rawResponse: coreClient.FullOperationResponse, + flatResponse: unknown + ) => { + currentRawResponse = rawResponse; + providedCallback?.(rawResponse, flatResponse); + }; + const updatedArgs = { + ...args, + options: { + ...args.options, + onResponse: callback + } + }; + const flatResponse = await directSendOperation(updatedArgs, spec); + return { + flatResponse, + rawResponse: { + statusCode: currentRawResponse!.status, + body: currentRawResponse!.parsedBody, + headers: currentRawResponse!.headers.toJSON() + } + }; + }; + + const lro = new LroImpl( + sendOperation, + { resourceGroupName, accountName, options }, + renewCredentialsOperationSpec + ); + const poller = new LroEngine(lro, { + resumeFrom: options?.resumeFrom, + intervalInMs: options?.updateIntervalInMs, + lroResourceLocationConfig: "azure-async-operation" + }); + await poller.poll(); + return poller; + } + + /** + * Renew identity credentials that are used to authenticate to key vault, for customer-managed key + * encryption. If encryption.identity.principalId does not match identity.principalId, running this + * operation will fix it. + * @param resourceGroupName The name of the resource group. + * @param accountName The name of the NetApp account + * @param options The options parameters. + */ + async beginRenewCredentialsAndWait( + resourceGroupName: string, + accountName: string, + options?: AccountsRenewCredentialsOptionalParams + ): Promise { + const poller = await this.beginRenewCredentials( + resourceGroupName, + accountName, + options + ); + return poller.pollUntilDone(); + } + /** * ListBySubscriptionNext * @param nextLink The nextLink from the previous successful call to the ListBySubscription method. @@ -620,6 +708,19 @@ const updateOperationSpec: coreClient.OperationSpec = { mediaType: "json", serializer }; +const renewCredentialsOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/renewCredentials", + httpMethod: "POST", + responses: { 200: {}, 201: {}, 202: {}, 204: {}, default: {} }, + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.accountName + ], + serializer +}; const listBySubscriptionNextOperationSpec: coreClient.OperationSpec = { path: "{nextLink}", httpMethod: "GET", diff --git a/sdk/netapp/arm-netapp/src/operations/backupPolicies.ts b/sdk/netapp/arm-netapp/src/operations/backupPolicies.ts index bcf53ebc5b27..cb833029ece6 100644 --- a/sdk/netapp/arm-netapp/src/operations/backupPolicies.ts +++ b/sdk/netapp/arm-netapp/src/operations/backupPolicies.ts @@ -472,7 +472,7 @@ const createOperationSpec: coreClient.OperationSpec = { }, default: {} }, - requestBody: Parameters.body21, + requestBody: Parameters.body22, queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, @@ -504,7 +504,7 @@ const updateOperationSpec: coreClient.OperationSpec = { }, default: {} }, - requestBody: Parameters.body22, + requestBody: Parameters.body23, queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, diff --git a/sdk/netapp/arm-netapp/src/operations/backups.ts b/sdk/netapp/arm-netapp/src/operations/backups.ts index 2ce0f4e5fe23..433768af36ff 100644 --- a/sdk/netapp/arm-netapp/src/operations/backups.ts +++ b/sdk/netapp/arm-netapp/src/operations/backups.ts @@ -649,7 +649,7 @@ const createOperationSpec: coreClient.OperationSpec = { }, default: {} }, - requestBody: Parameters.body19, + requestBody: Parameters.body20, queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, @@ -683,7 +683,7 @@ const updateOperationSpec: coreClient.OperationSpec = { }, default: {} }, - requestBody: Parameters.body20, + requestBody: Parameters.body21, queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, diff --git a/sdk/netapp/arm-netapp/src/operations/netAppResource.ts b/sdk/netapp/arm-netapp/src/operations/netAppResource.ts index 770dfb59b84b..a871345467d4 100644 --- a/sdk/netapp/arm-netapp/src/operations/netAppResource.ts +++ b/sdk/netapp/arm-netapp/src/operations/netAppResource.ts @@ -19,7 +19,9 @@ import { NetAppResourceCheckFilePathAvailabilityResponse, CheckQuotaNameResourceTypes, NetAppResourceCheckQuotaAvailabilityOptionalParams, - NetAppResourceCheckQuotaAvailabilityResponse + NetAppResourceCheckQuotaAvailabilityResponse, + NetAppResourceQueryRegionInfoOptionalParams, + NetAppResourceQueryRegionInfoResponse } from "../models"; /** Class containing NetAppResource operations. */ @@ -95,6 +97,21 @@ export class NetAppResourceImpl implements NetAppResource { checkQuotaAvailabilityOperationSpec ); } + + /** + * Provides storage to network proximity and logical zone mapping information. + * @param location The location + * @param options The options parameters. + */ + queryRegionInfo( + location: string, + options?: NetAppResourceQueryRegionInfoOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { location, options }, + queryRegionInfoOperationSpec + ); + } } // Operation Specifications const serializer = coreClient.createSerializer(Mappers, /* isXml */ false); @@ -179,3 +196,22 @@ const checkQuotaAvailabilityOperationSpec: coreClient.OperationSpec = { mediaType: "json", serializer }; +const queryRegionInfoOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/providers/Microsoft.NetApp/locations/{location}/regionInfo", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.RegionInfo + }, + default: {} + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.location + ], + headerParameters: [Parameters.accept], + serializer +}; diff --git a/sdk/netapp/arm-netapp/src/operations/snapshotPolicies.ts b/sdk/netapp/arm-netapp/src/operations/snapshotPolicies.ts index 3b23b48ca056..4c07f2e99a82 100644 --- a/sdk/netapp/arm-netapp/src/operations/snapshotPolicies.ts +++ b/sdk/netapp/arm-netapp/src/operations/snapshotPolicies.ts @@ -410,7 +410,7 @@ const createOperationSpec: coreClient.OperationSpec = { }, default: {} }, - requestBody: Parameters.body17, + requestBody: Parameters.body18, queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, @@ -442,7 +442,7 @@ const updateOperationSpec: coreClient.OperationSpec = { }, default: {} }, - requestBody: Parameters.body18, + requestBody: Parameters.body19, queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, diff --git a/sdk/netapp/arm-netapp/src/operations/snapshots.ts b/sdk/netapp/arm-netapp/src/operations/snapshots.ts index c363ac82d6a2..733aeef0295f 100644 --- a/sdk/netapp/arm-netapp/src/operations/snapshots.ts +++ b/sdk/netapp/arm-netapp/src/operations/snapshots.ts @@ -683,7 +683,7 @@ const createOperationSpec: coreClient.OperationSpec = { }, default: {} }, - requestBody: Parameters.body14, + requestBody: Parameters.body15, queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, @@ -717,7 +717,7 @@ const updateOperationSpec: coreClient.OperationSpec = { }, default: {} }, - requestBody: Parameters.body15, + requestBody: Parameters.body16, queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, @@ -754,7 +754,7 @@ const restoreFilesOperationSpec: coreClient.OperationSpec = { "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/capacityPools/{poolName}/volumes/{volumeName}/snapshots/{snapshotName}/restoreFiles", httpMethod: "POST", responses: { 200: {}, 201: {}, 202: {}, 204: {}, default: {} }, - requestBody: Parameters.body16, + requestBody: Parameters.body17, queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, diff --git a/sdk/netapp/arm-netapp/src/operations/subvolumes.ts b/sdk/netapp/arm-netapp/src/operations/subvolumes.ts index 760bad5689b7..ccc3efd57f2e 100644 --- a/sdk/netapp/arm-netapp/src/operations/subvolumes.ts +++ b/sdk/netapp/arm-netapp/src/operations/subvolumes.ts @@ -729,7 +729,7 @@ const createOperationSpec: coreClient.OperationSpec = { }, default: {} }, - requestBody: Parameters.body26, + requestBody: Parameters.body27, queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, @@ -763,7 +763,7 @@ const updateOperationSpec: coreClient.OperationSpec = { }, default: {} }, - requestBody: Parameters.body27, + requestBody: Parameters.body28, queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, diff --git a/sdk/netapp/arm-netapp/src/operations/volumeGroups.ts b/sdk/netapp/arm-netapp/src/operations/volumeGroups.ts index f9b9bf15acc4..f36f45f7b61b 100644 --- a/sdk/netapp/arm-netapp/src/operations/volumeGroups.ts +++ b/sdk/netapp/arm-netapp/src/operations/volumeGroups.ts @@ -382,7 +382,7 @@ const createOperationSpec: coreClient.OperationSpec = { }, default: {} }, - requestBody: Parameters.body25, + requestBody: Parameters.body26, queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, diff --git a/sdk/netapp/arm-netapp/src/operations/volumeQuotaRules.ts b/sdk/netapp/arm-netapp/src/operations/volumeQuotaRules.ts index 89d7250e371a..9d620c3dae50 100644 --- a/sdk/netapp/arm-netapp/src/operations/volumeQuotaRules.ts +++ b/sdk/netapp/arm-netapp/src/operations/volumeQuotaRules.ts @@ -572,7 +572,7 @@ const createOperationSpec: coreClient.OperationSpec = { }, default: {} }, - requestBody: Parameters.body23, + requestBody: Parameters.body24, queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, @@ -606,7 +606,7 @@ const updateOperationSpec: coreClient.OperationSpec = { }, default: {} }, - requestBody: Parameters.body24, + requestBody: Parameters.body25, queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, diff --git a/sdk/netapp/arm-netapp/src/operations/volumes.ts b/sdk/netapp/arm-netapp/src/operations/volumes.ts index 2588706a0044..c259ca1cad02 100644 --- a/sdk/netapp/arm-netapp/src/operations/volumes.ts +++ b/sdk/netapp/arm-netapp/src/operations/volumes.ts @@ -2097,6 +2097,7 @@ const relocateOperationSpec: coreClient.OperationSpec = { "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/capacityPools/{poolName}/volumes/{volumeName}/relocate", httpMethod: "POST", responses: { 200: {}, 201: {}, 202: {}, 204: {}, default: {} }, + requestBody: Parameters.body14, queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, @@ -2106,6 +2107,8 @@ const relocateOperationSpec: coreClient.OperationSpec = { Parameters.poolName, Parameters.volumeName ], + headerParameters: [Parameters.contentType], + mediaType: "json", serializer }; const finalizeRelocationOperationSpec: coreClient.OperationSpec = { diff --git a/sdk/netapp/arm-netapp/src/operationsInterfaces/accounts.ts b/sdk/netapp/arm-netapp/src/operationsInterfaces/accounts.ts index 735eab31552d..3cf733e97a43 100644 --- a/sdk/netapp/arm-netapp/src/operationsInterfaces/accounts.ts +++ b/sdk/netapp/arm-netapp/src/operationsInterfaces/accounts.ts @@ -19,7 +19,8 @@ import { AccountsDeleteOptionalParams, NetAppAccountPatch, AccountsUpdateOptionalParams, - AccountsUpdateResponse + AccountsUpdateResponse, + AccountsRenewCredentialsOptionalParams } from "../models"; /// @@ -136,4 +137,30 @@ export interface Accounts { body: NetAppAccountPatch, options?: AccountsUpdateOptionalParams ): Promise; + /** + * Renew identity credentials that are used to authenticate to key vault, for customer-managed key + * encryption. If encryption.identity.principalId does not match identity.principalId, running this + * operation will fix it. + * @param resourceGroupName The name of the resource group. + * @param accountName The name of the NetApp account + * @param options The options parameters. + */ + beginRenewCredentials( + resourceGroupName: string, + accountName: string, + options?: AccountsRenewCredentialsOptionalParams + ): Promise, void>>; + /** + * Renew identity credentials that are used to authenticate to key vault, for customer-managed key + * encryption. If encryption.identity.principalId does not match identity.principalId, running this + * operation will fix it. + * @param resourceGroupName The name of the resource group. + * @param accountName The name of the NetApp account + * @param options The options parameters. + */ + beginRenewCredentialsAndWait( + resourceGroupName: string, + accountName: string, + options?: AccountsRenewCredentialsOptionalParams + ): Promise; } diff --git a/sdk/netapp/arm-netapp/src/operationsInterfaces/netAppResource.ts b/sdk/netapp/arm-netapp/src/operationsInterfaces/netAppResource.ts index 64b6993303bf..4bf44f7316df 100644 --- a/sdk/netapp/arm-netapp/src/operationsInterfaces/netAppResource.ts +++ b/sdk/netapp/arm-netapp/src/operationsInterfaces/netAppResource.ts @@ -14,7 +14,9 @@ import { NetAppResourceCheckFilePathAvailabilityResponse, CheckQuotaNameResourceTypes, NetAppResourceCheckQuotaAvailabilityOptionalParams, - NetAppResourceCheckQuotaAvailabilityResponse + NetAppResourceCheckQuotaAvailabilityResponse, + NetAppResourceQueryRegionInfoOptionalParams, + NetAppResourceQueryRegionInfoResponse } from "../models"; /** Interface representing a NetAppResource. */ @@ -63,4 +65,13 @@ export interface NetAppResource { typeParam: CheckQuotaNameResourceTypes, options?: NetAppResourceCheckQuotaAvailabilityOptionalParams ): Promise; + /** + * Provides storage to network proximity and logical zone mapping information. + * @param location The location + * @param options The options parameters. + */ + queryRegionInfo( + location: string, + options?: NetAppResourceQueryRegionInfoOptionalParams + ): Promise; } diff --git a/sdk/netapp/arm-netapp/tsconfig.json b/sdk/netapp/arm-netapp/tsconfig.json index 1772b5822344..3e6ae96443f3 100644 --- a/sdk/netapp/arm-netapp/tsconfig.json +++ b/sdk/netapp/arm-netapp/tsconfig.json @@ -15,17 +15,11 @@ ], "declaration": true, "outDir": "./dist-esm", - "importHelpers": true, - "paths": { - "@azure/arm-netapp": [ - "./src/index" - ] - } + "importHelpers": true }, "include": [ "./src/**/*.ts", - "./test/**/*.ts", - "samples-dev/**/*.ts" + "./test/**/*.ts" ], "exclude": [ "node_modules"