diff --git a/common/config/rush/pnpm-lock.yaml b/common/config/rush/pnpm-lock.yaml index 05462e1a289a..1eed72b84fcc 100644 --- a/common/config/rush/pnpm-lock.yaml +++ b/common/config/rush/pnpm-lock.yaml @@ -3034,7 +3034,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: @@ -3274,7 +3274,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: @@ -3415,7 +3415,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: @@ -9344,7 +9344,7 @@ packages: dev: false file:projects/ai-text-analytics.tgz: - resolution: {integrity: sha512-V1NlOFf8Wnqlap0NTRGTlOKmC4mSJwMHJ+VEXvv+fzwH/G/cnCEBgumjG5iykPHAGOjHril1iyXbs8oDv/JOSA==, tarball: file:projects/ai-text-analytics.tgz} + resolution: {integrity: sha512-I99Oz+cBO61S5+NIWAXD4SFRrwAr7vPyMT5ATznLAdTHMBaeLR+xGASQ5iLbm0nDdnAKROioQwdrppKL1zn5gw==, tarball: file:projects/ai-text-analytics.tgz} name: '@rush-temp/ai-text-analytics' version: 0.0.0 dependencies: @@ -11044,7 +11044,7 @@ packages: dev: false file:projects/arm-eventgrid.tgz: - resolution: {integrity: sha512-/09YtHZ3Rh0PhOzZ2RekHu9/MosORc7V4XRjdRcv75XckUvafH+uG788k0BZihPXavZ8j7YvUPBqMNZvjlKTQw==, tarball: file:projects/arm-eventgrid.tgz} + resolution: {integrity: sha512-0vEf7jW0UiW2yE+nRLujQUdyDxSobbhULSwYRnAgLVMN/h9xmFeQcb8IG9Ds2G4IqbDnca+uYLyy9BVFvzTMlg==, tarball: file:projects/arm-eventgrid.tgz} name: '@rush-temp/arm-eventgrid' version: 0.0.0 dependencies: @@ -12912,7 +12912,7 @@ packages: dev: false file:projects/arm-recoveryservices-siterecovery.tgz: - resolution: {integrity: sha512-LT0awpC3WGb/VIxik67iD4xCFtB2kW9mWWuf5jo4MSxx8YwPpBvULd5zy9gFkEspxtyxSAlVoPaModQ6ru3VSA==, tarball: file:projects/arm-recoveryservices-siterecovery.tgz} + resolution: {integrity: sha512-exEcFE+Ku5bmqx2a5ywuNoSlOJN6DrVBpXWLPdjAuPEwhr2NL5jGAf0hKw28X1oUeqqSDAxBr3tzkC2MNKLg7Q==, tarball: file:projects/arm-recoveryservices-siterecovery.tgz} name: '@rush-temp/arm-recoveryservices-siterecovery' version: 0.0.0 dependencies: @@ -12920,22 +12920,22 @@ packages: '@azure/core-lro': 2.2.4 '@azure/identity': 2.0.4 '@microsoft/api-extractor': 7.18.11 - '@rollup/plugin-commonjs': 11.0.2_rollup@1.32.1 - '@rollup/plugin-json': 4.1.0_rollup@1.32.1 - '@rollup/plugin-multi-entry': 3.0.1_rollup@1.32.1 - '@rollup/plugin-node-resolve': 8.4.0_rollup@1.32.1 + '@rollup/plugin-commonjs': 21.1.0_rollup@2.73.0 + '@rollup/plugin-json': 4.1.0_rollup@2.73.0 + '@rollup/plugin-multi-entry': 4.1.0_rollup@2.73.0 + '@rollup/plugin-node-resolve': 13.3.0_rollup@2.73.0 cross-env: 7.0.3 mkdirp: 1.0.4 mocha: 7.2.0 rimraf: 3.0.2 - rollup: 1.32.1 - rollup-plugin-sourcemaps: 0.4.2_rollup@1.32.1 + rollup: 2.73.0 + rollup-plugin-sourcemaps: 0.6.3_rollup@2.73.0 tslib: 2.4.0 typescript: 4.2.4 uglify-js: 3.15.5 transitivePeerDependencies: + - '@types/node' - debug - - encoding - supports-color dev: false @@ -13373,7 +13373,7 @@ packages: dev: false file:projects/arm-securityinsight.tgz: - resolution: {integrity: sha512-7gsp4KOCne09k9AHVpEjIEF1IV65n1mjboYFyt7gupl7GXx7J970B4+YPA2Q9iMt45MhrcJNR/3DYf4p7GiTNg==, tarball: file:projects/arm-securityinsight.tgz} + resolution: {integrity: sha512-W5eHlYwGGF4L6CVtJTOdm3qD6ptIzX177kAx0F1g1KjwVQbqXyZTO0n1NcYLKYT1Jw8Oz2wsXgBEq3eDA1ppbQ==, tarball: file:projects/arm-securityinsight.tgz} name: '@rush-temp/arm-securityinsight' version: 0.0.0 dependencies: diff --git a/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/CHANGELOG.md b/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/CHANGELOG.md index 26d2af4b7cc0..cf91e16613d2 100644 --- a/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/CHANGELOG.md +++ b/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/CHANGELOG.md @@ -1,5 +1,22 @@ # Release History +## 4.1.0 (2022-05-20) + +**Features** + + - Interface VMwareCbtNicDetails has a new optional parameter testIPAddress + - Interface VMwareCbtNicDetails has a new optional parameter testIPAddressType + - Interface VMwareCbtNicDetails has a new optional parameter testNetworkId + - Interface VMwareCbtNicDetails has a new optional parameter testSubnetName + - Interface VMwareCbtNicInput has a new optional parameter testStaticIPAddress + - Interface VMwareCbtNicInput has a new optional parameter testSubnetName + - Interface VMwareCbtUpdateDiskInput has a new optional parameter isOSDisk + - Type Alias VMwareCbtEnableMigrationInput has a new parameter testNetworkId + - Type Alias VMwareCbtEnableMigrationInput has a new parameter testSubnetName + - Type Alias VMwareCbtTestMigrateInput has a new parameter vmNics + - Type Alias VMwareCbtUpdateMigrationItemInput has a new parameter testNetworkId + + ## 4.0.0 (2022-01-20) The package of @azure/arm-recoveryservices-siterecovery is using our next generation design principles since version 4.0.0, which contains breaking changes. diff --git a/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/README.md b/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/README.md index a4f4cd0427c7..f455755d0110 100644 --- a/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/README.md +++ b/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/README.md @@ -16,6 +16,8 @@ This package contains an isomorphic SDK (runs both in Node.js and in browsers) f - [LTS versions of Node.js](https://nodejs.org/about/releases/) - Latest versions of Safari, Chrome, Edge and Firefox. +See our [support policy](https://github.com/Azure/azure-sdk-for-js/blob/main/SUPPORT.md) for more details. + ### Prerequisites - An [Azure subscription][azure_sub]. @@ -49,8 +51,17 @@ For more information about how to create an Azure AD Application check out [this ```javascript const { SiteRecoveryManagementClient } = require("@azure/arm-recoveryservices-siterecovery"); const { DefaultAzureCredential } = require("@azure/identity"); +// For client-side applications running in the browser, use InteractiveBrowserCredential instead of DefaultAzureCredential. See https://aka.ms/azsdk/js/identity/examples for more details. + const subscriptionId = "00000000-0000-0000-0000-000000000000"; const client = new SiteRecoveryManagementClient(new DefaultAzureCredential(), subscriptionId); + +// For client-side applications running in the browser, use this code instead: +// const credential = new InteractiveBrowserCredential({ +// tenantId: "", +// clientId: "" +// }); +// const client = new SiteRecoveryManagementClient(credential, subscriptionId); ``` diff --git a/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/_meta.json b/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/_meta.json index ca0400ff9859..d49f9319f371 100644 --- a/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/_meta.json +++ b/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/_meta.json @@ -1,7 +1,8 @@ { - "commit": "f9a6cb686bcc0f1b23761db19f2491c5c4df95cb", + "commit": "248a62f5161d21387197f76576410f010db8d493", "readme": "specification/recoveryservicessiterecovery/resource-manager/readme.md", - "autorest_command": "autorest --version=3.7.3 --typescript --modelerfour.lenient-model-deduplication --head-as-boolean=true --license-header=MICROSOFT_MIT_NO_VERSION --generate-test --typescript-sdks-folder=D:\\mydev\\azure-sdk-for-js ../azure-rest-api-specs/specification/recoveryservicessiterecovery/resource-manager/readme.md --use=@autorest/typescript@6.0.0-alpha.16.20220114.1", + "autorest_command": "autorest --version=3.7.3 --typescript --modelerfour.lenient-model-deduplication --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/recoveryservicessiterecovery/resource-manager/readme.md --use=@autorest/typescript@6.0.0-alpha.19.20220425.1", "repository_url": "https://github.com/Azure/azure-rest-api-specs.git", - "use": "@autorest/typescript@6.0.0-alpha.16.20220114.1" + "release_tool": "@azure-tools/js-sdk-release-tools@2.3.0", + "use": "@autorest/typescript@6.0.0-alpha.19.20220425.1" } \ No newline at end of file diff --git a/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/api-extractor.json b/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/api-extractor.json index e50d71af3ac4..ec30fed98c5d 100644 --- a/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/api-extractor.json +++ b/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/api-extractor.json @@ -1,18 +1,31 @@ { "$schema": "https://developer.microsoft.com/json-schemas/api-extractor/v7/api-extractor.schema.json", "mainEntryPointFilePath": "./dist-esm/src/index.d.ts", - "docModel": { "enabled": true }, - "apiReport": { "enabled": true, "reportFolder": "./review" }, + "docModel": { + "enabled": true + }, + "apiReport": { + "enabled": true, + "reportFolder": "./review" + }, "dtsRollup": { "enabled": true, "untrimmedFilePath": "", "publicTrimmedFilePath": "./types/arm-recoveryservices-siterecovery.d.ts" }, "messages": { - "tsdocMessageReporting": { "default": { "logLevel": "none" } }, + "tsdocMessageReporting": { + "default": { + "logLevel": "none" + } + }, "extractorMessageReporting": { - "ae-missing-release-tag": { "logLevel": "none" }, - "ae-unresolved-link": { "logLevel": "none" } + "ae-missing-release-tag": { + "logLevel": "none" + }, + "ae-unresolved-link": { + "logLevel": "none" + } } } -} +} \ No newline at end of file diff --git a/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/package.json b/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/package.json index ddb9d7fbcf99..8217adf922e5 100644 --- a/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/package.json +++ b/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/package.json @@ -3,7 +3,7 @@ "sdk-type": "mgmt", "author": "Microsoft Corporation", "description": "A generated SDK for SiteRecoveryManagementClient.", - "version": "4.0.0", + "version": "4.1.0", "engines": { "node": ">=12.0.0" }, @@ -11,9 +11,9 @@ "@azure/core-lro": "^2.2.0", "@azure/abort-controller": "^1.0.0", "@azure/core-paging": "^1.2.0", - "@azure/core-client": "^1.0.0", + "@azure/core-client": "^1.5.0", "@azure/core-auth": "^1.3.0", - "@azure/core-rest-pipeline": "^1.1.0", + "@azure/core-rest-pipeline": "^1.8.0", "tslib": "^2.2.0" }, "keywords": [ @@ -29,20 +29,22 @@ "types": "./types/arm-recoveryservices-siterecovery.d.ts", "devDependencies": { "@microsoft/api-extractor": "7.18.11", - "@rollup/plugin-commonjs": "11.0.2", - "@rollup/plugin-json": "^4.0.0", - "@rollup/plugin-multi-entry": "^3.0.0", - "@rollup/plugin-node-resolve": "^8.0.0", + "@rollup/plugin-commonjs": "^21.0.1", + "@rollup/plugin-json": "^4.1.0", + "@rollup/plugin-multi-entry": "^4.1.0", + "@rollup/plugin-node-resolve": "^13.1.3", "mkdirp": "^1.0.4", - "rollup": "^1.16.3", - "rollup-plugin-sourcemaps": "^0.4.2", + "rollup": "^2.66.1", + "rollup-plugin-sourcemaps": "^0.6.3", "typescript": "~4.2.0", "uglify-js": "^3.4.9", "rimraf": "^3.0.0", "@azure/identity": "^2.0.1", - "@azure-tools/test-recorder": "^1.0.0", + "@azure-tools/test-recorder": "^2.0.0", + "@azure-tools/test-credential": "^1.0.0", "mocha": "^7.1.1", - "cross-env": "^7.0.2" + "cross-env": "^7.0.2", + "@azure/dev-tool": "^1.0.0" }, "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery", "repository": { @@ -93,7 +95,7 @@ "unit-test:node": "cross-env TEST_MODE=playback npm run integration-test:node", "unit-test:browser": "echo skipped", "integration-test": "npm run integration-test:node && npm run integration-test:browser", - "integration-test:node": "mocha -r esm --require ts-node/register --timeout 1200000 --full-trace test/*.ts --reporter ../../../common/tools/mocha-multi-reporter.js", + "integration-test:node": "dev-tool run test:node-ts-input -- --timeout 1200000 'test/*.ts'", "integration-test:browser": "echo skipped", "docs": "echo skipped" }, @@ -101,10 +103,10 @@ "//metadata": { "constantPaths": [ { - "path": "src/SiteRecoveryManagementClient.ts", + "path": "src/siteRecoveryManagementClient.ts", "prefix": "packageDetails" } ] }, "autoPublish": true -} +} \ No newline at end of file diff --git a/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/review/arm-recoveryservices-siterecovery.api.md b/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/review/arm-recoveryservices-siterecovery.api.md index 8a8d70b21d85..a1ea65644573 100644 --- a/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/review/arm-recoveryservices-siterecovery.api.md +++ b/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/review/arm-recoveryservices-siterecovery.api.md @@ -6918,11 +6918,11 @@ export type VMwareCbtContainerCreationInput = ReplicationProviderSpecificContain // @public export type VMwareCbtContainerMappingInput = ReplicationProviderSpecificContainerMappingInput & { instanceType: "VMwareCbt"; - keyVaultId: string; - keyVaultUri: string; + keyVaultId?: string; + keyVaultUri?: string; storageAccountId: string; - storageAccountSasSecretName: string; - serviceBusConnectionStringSecretName: string; + storageAccountSasSecretName?: string; + serviceBusConnectionStringSecretName?: string; targetLocation: string; }; @@ -6949,7 +6949,9 @@ export type VMwareCbtEnableMigrationInput = EnableMigrationProviderSpecificInput targetVmSize?: string; targetResourceGroupId: string; targetNetworkId: string; + testNetworkId?: string; targetSubnetName?: string; + testSubnetName?: string; targetAvailabilitySetId?: string; targetAvailabilityZone?: string; targetProximityPlacementGroupId?: string; @@ -7040,6 +7042,10 @@ export interface VMwareCbtNicDetails { targetIPAddressType?: EthernetAddressType; targetNicName?: string; targetSubnetName?: string; + testIPAddress?: string; + testIPAddressType?: EthernetAddressType; + testNetworkId?: string; + testSubnetName?: string; } // @public @@ -7050,6 +7056,8 @@ export interface VMwareCbtNicInput { targetNicName?: string; targetStaticIPAddress?: string; targetSubnetName?: string; + testStaticIPAddress?: string; + testSubnetName?: string; } // @public @@ -7106,11 +7114,13 @@ export type VMwareCbtTestMigrateInput = TestMigrateProviderSpecificInput & { instanceType: "VMwareCbt"; recoveryPointId: string; networkId: string; + vmNics?: VMwareCbtNicInput[]; }; // @public export interface VMwareCbtUpdateDiskInput { diskId: string; + isOSDisk?: string; targetDiskName?: string; } @@ -7125,6 +7135,7 @@ export type VMwareCbtUpdateMigrationItemInput = UpdateMigrationItemProviderSpeci targetProximityPlacementGroupId?: string; targetBootDiagnosticsStorageAccountId?: string; targetNetworkId?: string; + testNetworkId?: string; vmNics?: VMwareCbtNicInput[]; vmDisks?: VMwareCbtUpdateDiskInput[]; licenseType?: LicenseType; diff --git a/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/rollup.config.js b/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/rollup.config.js index 9be1955eb7f1..3f89d7309da5 100644 --- a/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/rollup.config.js +++ b/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/rollup.config.js @@ -14,62 +14,14 @@ import json from "@rollup/plugin-json"; import nodeBuiltins from "builtin-modules"; -/** - * Gets the proper configuration needed for rollup's commonJS plugin for @opentelemetry/api. - * - * NOTE: this manual configuration is only needed because OpenTelemetry uses an - * __exportStar downleveled helper function to declare its exports which confuses - * rollup's automatic discovery mechanism. - * - * @returns an object reference that can be `...`'d into your cjs() configuration. - */ -export function openTelemetryCommonJs() { - const namedExports = {}; - - for (const key of [ - "@opentelemetry/api", - "@azure/core-tracing/node_modules/@opentelemetry/api" - ]) { - namedExports[key] = [ - "SpanKind", - "TraceFlags", - "getSpan", - "setSpan", - "SpanStatusCode", - "getSpanContext", - "setSpanContext" - ]; - } - - const releasedOpenTelemetryVersions = ["0.10.2", "1.0.0-rc.0"]; - - for (const version of releasedOpenTelemetryVersions) { - namedExports[ - // working around a limitation in the rollup common.js plugin - it's not able to resolve these modules so the named exports listed above will not get applied. We have to drill down to the actual path. - `../../../common/temp/node_modules/.pnpm/@opentelemetry/api@${version}/node_modules/@opentelemetry/api/build/src/index.js` - ] = [ - "SpanKind", - "TraceFlags", - "getSpan", - "setSpan", - "StatusCode", - "CanonicalCode", - "getSpanContext", - "setSpanContext" - ]; - } - - return namedExports; -} - // #region Warning Handler /** - * A function that can determine whether a rollupwarning should be ignored. If + * A function that can determine whether a rollup warning should be ignored. If * the function returns `true`, then the warning will not be displayed. */ -function ignoreNiseSinonEvalWarnings(warning) { +function ignoreNiseSinonEval(warning) { return ( warning.code === "EVAL" && warning.id && @@ -78,17 +30,14 @@ function ignoreNiseSinonEvalWarnings(warning) { ); } -function ignoreChaiCircularDependencyWarnings(warning) { +function ignoreChaiCircularDependency(warning) { return ( warning.code === "CIRCULAR_DEPENDENCY" && warning.importer && warning.importer.includes("node_modules/chai") === true ); } -const warningInhibitors = [ - ignoreChaiCircularDependencyWarnings, - ignoreNiseSinonEvalWarnings -]; +const warningInhibitors = [ignoreChaiCircularDependency, ignoreNiseSinonEval]; /** * Construct a warning handler for the shared rollup configuration @@ -122,22 +71,7 @@ function makeBrowserTestConfig() { nodeResolve({ mainFields: ["module", "browser"] }), - cjs({ - namedExports: { - // Chai's strange internal architecture makes it impossible to statically - // analyze its exports. - chai: [ - "version", - "use", - "util", - "config", - "expect", - "should", - "assert" - ], - ...openTelemetryCommonJs() - } - }), + cjs(), json(), sourcemaps() //viz({ filename: "dist-test/browser-stats.html", sourcemap: true }) @@ -173,7 +107,7 @@ export function makeConfig(pkg, options) { ], output: { file: "dist/index.js", format: "cjs", sourcemap: true }, preserveSymlinks: false, - plugins: [sourcemaps(), nodeResolve(), cjs()] + plugins: [sourcemaps(), nodeResolve()] }; const config = [baseConfig]; diff --git a/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/src/models/index.ts b/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/src/models/index.ts index b6b5eda2337b..0230af97ebe0 100644 --- a/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/src/models/index.ts +++ b/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/src/models/index.ts @@ -5057,6 +5057,14 @@ export interface VMwareCbtNicDetails { targetIPAddressType?: EthernetAddressType; /** Target subnet name. */ targetSubnetName?: string; + /** Source network Id. */ + testNetworkId?: string; + /** Test subnet name. */ + testSubnetName?: string; + /** The test IP address. */ + testIPAddress?: string; + /** The test IP address type. */ + testIPAddressType?: EthernetAddressType; /** Target NIC name. */ targetNicName?: string; /** A value indicating whether this NIC is selected for migration. */ @@ -5077,6 +5085,10 @@ export interface VMwareCbtNicInput { isSelectedForMigration?: string; /** Target NIC name. */ targetNicName?: string; + /** The test subnet name. */ + testSubnetName?: string; + /** The test static IP address. */ + testStaticIPAddress?: string; } /** VMwareCbt disk input for update. */ @@ -5085,6 +5097,8 @@ export interface VMwareCbtUpdateDiskInput { diskId: string; /** The target disk name. */ targetDiskName?: string; + /** A value indicating whether the disk is the OS disk. */ + isOSDisk?: string; } /** Implements the Alert class. */ @@ -5919,8 +5933,12 @@ export type VMwareCbtEnableMigrationInput = EnableMigrationProviderSpecificInput targetResourceGroupId: string; /** The target network ARM Id. */ targetNetworkId: string; + /** The selected test network ARM Id. */ + testNetworkId?: string; /** The target subnet name. */ targetSubnetName?: string; + /** The selected test subnet name. */ + testSubnetName?: string; /** The target availability set ARM Id. */ targetAvailabilitySetId?: string; /** The target availability zone. */ @@ -5961,6 +5979,8 @@ export type VMwareCbtUpdateMigrationItemInput = UpdateMigrationItemProviderSpeci targetBootDiagnosticsStorageAccountId?: string; /** The target network ARM Id. */ targetNetworkId?: string; + /** The test network ARM Id. */ + testNetworkId?: string; /** The list of NIC details. */ vmNics?: VMwareCbtNicInput[]; /** The list of disk update properties. */ @@ -6003,6 +6023,8 @@ export type VMwareCbtTestMigrateInput = TestMigrateProviderSpecificInput & { recoveryPointId: string; /** The test network Id. */ networkId: string; + /** The list of NIC details. */ + vmNics?: VMwareCbtNicInput[]; }; /** Single Host fabric provider specific VM settings. */ @@ -7698,15 +7720,15 @@ export type VMwareCbtContainerMappingInput = ReplicationProviderSpecificContaine /** Polymorphic discriminator, which specifies the different types this object can be */ instanceType: "VMwareCbt"; /** The target key vault ARM Id. */ - keyVaultId: string; + keyVaultId?: string; /** The target key vault URL. */ - keyVaultUri: string; + keyVaultUri?: string; /** The storage account ARM Id. */ storageAccountId: string; /** The secret name of the storage account. */ - storageAccountSasSecretName: string; + storageAccountSasSecretName?: string; /** The secret name of the service bus connection string. */ - serviceBusConnectionStringSecretName: string; + serviceBusConnectionStringSecretName?: string; /** The target location. */ targetLocation: string; }; diff --git a/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/src/models/mappers.ts b/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/src/models/mappers.ts index 56a122bc57ff..e3975e33aa7d 100644 --- a/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/src/models/mappers.ts +++ b/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/src/models/mappers.ts @@ -12000,6 +12000,30 @@ export const VMwareCbtNicDetails: coreClient.CompositeMapper = { name: "String" } }, + testNetworkId: { + serializedName: "testNetworkId", + type: { + name: "String" + } + }, + testSubnetName: { + serializedName: "testSubnetName", + type: { + name: "String" + } + }, + testIPAddress: { + serializedName: "testIPAddress", + type: { + name: "String" + } + }, + testIPAddressType: { + serializedName: "testIPAddressType", + type: { + name: "String" + } + }, targetNicName: { serializedName: "targetNicName", type: { @@ -12058,6 +12082,18 @@ export const VMwareCbtNicInput: coreClient.CompositeMapper = { type: { name: "String" } + }, + testSubnetName: { + serializedName: "testSubnetName", + type: { + name: "String" + } + }, + testStaticIPAddress: { + serializedName: "testStaticIPAddress", + type: { + name: "String" + } } } } @@ -12080,6 +12116,12 @@ export const VMwareCbtUpdateDiskInput: coreClient.CompositeMapper = { type: { name: "String" } + }, + isOSDisk: { + serializedName: "isOSDisk", + type: { + name: "String" + } } } } @@ -14130,12 +14172,24 @@ export const VMwareCbtEnableMigrationInput: coreClient.CompositeMapper = { name: "String" } }, + testNetworkId: { + serializedName: "testNetworkId", + type: { + name: "String" + } + }, targetSubnetName: { serializedName: "targetSubnetName", type: { name: "String" } }, + testSubnetName: { + serializedName: "testSubnetName", + type: { + name: "String" + } + }, targetAvailabilitySetId: { serializedName: "targetAvailabilitySetId", type: { @@ -14256,6 +14310,12 @@ export const VMwareCbtUpdateMigrationItemInput: coreClient.CompositeMapper = { name: "String" } }, + testNetworkId: { + serializedName: "testNetworkId", + type: { + name: "String" + } + }, vmNics: { serializedName: "vmNics", type: { @@ -14388,6 +14448,18 @@ export const VMwareCbtTestMigrateInput: coreClient.CompositeMapper = { type: { name: "String" } + }, + vmNics: { + serializedName: "vmNics", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "VMwareCbtNicInput" + } + } + } } } } @@ -19014,14 +19086,12 @@ export const VMwareCbtContainerMappingInput: coreClient.CompositeMapper = { ...ReplicationProviderSpecificContainerMappingInput.type.modelProperties, keyVaultId: { serializedName: "keyVaultId", - required: true, type: { name: "String" } }, keyVaultUri: { serializedName: "keyVaultUri", - required: true, type: { name: "String" } @@ -19035,14 +19105,12 @@ export const VMwareCbtContainerMappingInput: coreClient.CompositeMapper = { }, storageAccountSasSecretName: { serializedName: "storageAccountSasSecretName", - required: true, type: { name: "String" } }, serviceBusConnectionStringSecretName: { serializedName: "serviceBusConnectionStringSecretName", - required: true, type: { name: "String" } diff --git a/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/src/models/parameters.ts b/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/src/models/parameters.ts index 0ba73dafd91e..09c1427dd062 100644 --- a/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/src/models/parameters.ts +++ b/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/src/models/parameters.ts @@ -90,7 +90,7 @@ export const $host: OperationURLParameter = { export const apiVersion: OperationQueryParameter = { parameterPath: "apiVersion", mapper: { - defaultValue: "2021-11-01", + defaultValue: "2022-03-01", isConstant: true, serializedName: "api-version", type: { diff --git a/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/src/operations/replicationFabrics.ts b/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/src/operations/replicationFabrics.ts index 71fd3482115c..03523e90b0ca 100644 --- a/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/src/operations/replicationFabrics.ts +++ b/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/src/operations/replicationFabrics.ts @@ -178,10 +178,12 @@ export class ReplicationFabricsImpl implements ReplicationFabrics { { fabricName, input, options }, createOperationSpec ); - return new LroEngine(lro, { + const poller = new LroEngine(lro, { resumeFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); + await poller.poll(); + return poller; } /** @@ -252,10 +254,12 @@ export class ReplicationFabricsImpl implements ReplicationFabrics { { fabricName, options }, purgeOperationSpec ); - return new LroEngine(lro, { + const poller = new LroEngine(lro, { resumeFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); + await poller.poll(); + return poller; } /** @@ -329,10 +333,12 @@ export class ReplicationFabricsImpl implements ReplicationFabrics { { fabricName, options }, checkConsistencyOperationSpec ); - return new LroEngine(lro, { + const poller = new LroEngine(lro, { resumeFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); + await poller.poll(); + return poller; } /** @@ -401,10 +407,12 @@ export class ReplicationFabricsImpl implements ReplicationFabrics { { fabricName, options }, migrateToAadOperationSpec ); - return new LroEngine(lro, { + const poller = new LroEngine(lro, { resumeFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); + await poller.poll(); + return poller; } /** @@ -480,10 +488,12 @@ export class ReplicationFabricsImpl implements ReplicationFabrics { { fabricName, failoverProcessServerRequest, options }, reassociateGatewayOperationSpec ); - return new LroEngine(lro, { + const poller = new LroEngine(lro, { resumeFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); + await poller.poll(); + return poller; } /** @@ -558,10 +568,12 @@ export class ReplicationFabricsImpl implements ReplicationFabrics { { fabricName, options }, deleteOperationSpec ); - return new LroEngine(lro, { + const poller = new LroEngine(lro, { resumeFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); + await poller.poll(); + return poller; } /** @@ -637,10 +649,12 @@ export class ReplicationFabricsImpl implements ReplicationFabrics { { fabricName, renewCertificate, options }, renewCertificateOperationSpec ); - return new LroEngine(lro, { + const poller = new LroEngine(lro, { resumeFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); + await poller.poll(); + return poller; } /** diff --git a/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/src/operations/replicationJobs.ts b/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/src/operations/replicationJobs.ts index 03dfd0576800..9637476553fe 100644 --- a/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/src/operations/replicationJobs.ts +++ b/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/src/operations/replicationJobs.ts @@ -172,10 +172,12 @@ export class ReplicationJobsImpl implements ReplicationJobs { { jobName, options }, cancelOperationSpec ); - return new LroEngine(lro, { + const poller = new LroEngine(lro, { resumeFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); + await poller.poll(); + return poller; } /** @@ -249,10 +251,12 @@ export class ReplicationJobsImpl implements ReplicationJobs { { jobName, options }, restartOperationSpec ); - return new LroEngine(lro, { + const poller = new LroEngine(lro, { resumeFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); + await poller.poll(); + return poller; } /** @@ -328,10 +332,12 @@ export class ReplicationJobsImpl implements ReplicationJobs { { jobName, resumeJobParams, options }, resumeOperationSpec ); - return new LroEngine(lro, { + const poller = new LroEngine(lro, { resumeFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); + await poller.poll(); + return poller; } /** @@ -407,10 +413,12 @@ export class ReplicationJobsImpl implements ReplicationJobs { { jobQueryParameter, options }, exportOperationSpec ); - return new LroEngine(lro, { + const poller = new LroEngine(lro, { resumeFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); + await poller.poll(); + return poller; } /** diff --git a/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/src/operations/replicationMigrationItems.ts b/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/src/operations/replicationMigrationItems.ts index a7da8dce794d..55931534f426 100644 --- a/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/src/operations/replicationMigrationItems.ts +++ b/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/src/operations/replicationMigrationItems.ts @@ -282,10 +282,12 @@ export class ReplicationMigrationItemsImpl }, createOperationSpec ); - return new LroEngine(lro, { + const poller = new LroEngine(lro, { resumeFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); + await poller.poll(); + return poller; } /** @@ -370,10 +372,12 @@ export class ReplicationMigrationItemsImpl { fabricName, protectionContainerName, migrationItemName, options }, deleteOperationSpec ); - return new LroEngine(lro, { + const poller = new LroEngine(lro, { resumeFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); + await poller.poll(); + return poller; } /** @@ -468,10 +472,12 @@ export class ReplicationMigrationItemsImpl }, updateOperationSpec ); - return new LroEngine(lro, { + const poller = new LroEngine(lro, { resumeFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); + await poller.poll(); + return poller; } /** @@ -569,10 +575,12 @@ export class ReplicationMigrationItemsImpl }, migrateOperationSpec ); - return new LroEngine(lro, { + const poller = new LroEngine(lro, { resumeFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); + await poller.poll(); + return poller; } /** @@ -670,10 +678,12 @@ export class ReplicationMigrationItemsImpl }, resyncOperationSpec ); - return new LroEngine(lro, { + const poller = new LroEngine(lro, { resumeFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); + await poller.poll(); + return poller; } /** @@ -771,10 +781,12 @@ export class ReplicationMigrationItemsImpl }, testMigrateOperationSpec ); - return new LroEngine(lro, { + const poller = new LroEngine(lro, { resumeFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); + await poller.poll(); + return poller; } /** @@ -872,10 +884,12 @@ export class ReplicationMigrationItemsImpl }, testMigrateCleanupOperationSpec ); - return new LroEngine(lro, { + const poller = new LroEngine(lro, { resumeFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); + await poller.poll(); + return poller; } /** diff --git a/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/src/operations/replicationNetworkMappings.ts b/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/src/operations/replicationNetworkMappings.ts index 284949057fe1..e45d1d397fcc 100644 --- a/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/src/operations/replicationNetworkMappings.ts +++ b/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/src/operations/replicationNetworkMappings.ts @@ -262,10 +262,12 @@ export class ReplicationNetworkMappingsImpl { fabricName, networkName, networkMappingName, input, options }, createOperationSpec ); - return new LroEngine(lro, { + const poller = new LroEngine(lro, { resumeFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); + await poller.poll(); + return poller; } /** @@ -350,10 +352,12 @@ export class ReplicationNetworkMappingsImpl { fabricName, networkName, networkMappingName, options }, deleteOperationSpec ); - return new LroEngine(lro, { + const poller = new LroEngine(lro, { resumeFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); + await poller.poll(); + return poller; } /** @@ -442,10 +446,12 @@ export class ReplicationNetworkMappingsImpl { fabricName, networkName, networkMappingName, input, options }, updateOperationSpec ); - return new LroEngine(lro, { + const poller = new LroEngine(lro, { resumeFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); + await poller.poll(); + return poller; } /** diff --git a/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/src/operations/replicationPolicies.ts b/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/src/operations/replicationPolicies.ts index 55f28417fcf8..61e6a14ff95d 100644 --- a/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/src/operations/replicationPolicies.ts +++ b/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/src/operations/replicationPolicies.ts @@ -171,10 +171,12 @@ export class ReplicationPoliciesImpl implements ReplicationPolicies { { policyName, input, options }, createOperationSpec ); - return new LroEngine(lro, { + const poller = new LroEngine(lro, { resumeFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); + await poller.poll(); + return poller; } /** @@ -245,10 +247,12 @@ export class ReplicationPoliciesImpl implements ReplicationPolicies { { policyName, options }, deleteOperationSpec ); - return new LroEngine(lro, { + const poller = new LroEngine(lro, { resumeFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); + await poller.poll(); + return poller; } /** @@ -324,10 +328,12 @@ export class ReplicationPoliciesImpl implements ReplicationPolicies { { policyName, input, options }, updateOperationSpec ); - return new LroEngine(lro, { + const poller = new LroEngine(lro, { resumeFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); + await poller.poll(); + return poller; } /** diff --git a/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/src/operations/replicationProtectedItems.ts b/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/src/operations/replicationProtectedItems.ts index 69630843f861..6041dfaf468c 100644 --- a/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/src/operations/replicationProtectedItems.ts +++ b/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/src/operations/replicationProtectedItems.ts @@ -319,10 +319,12 @@ export class ReplicationProtectedItemsImpl }, createOperationSpec ); - return new LroEngine(lro, { + const poller = new LroEngine(lro, { resumeFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); + await poller.poll(); + return poller; } /** @@ -414,10 +416,12 @@ export class ReplicationProtectedItemsImpl }, purgeOperationSpec ); - return new LroEngine(lro, { + const poller = new LroEngine(lro, { resumeFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); + await poller.poll(); + return poller; } /** @@ -514,10 +518,12 @@ export class ReplicationProtectedItemsImpl }, updateOperationSpec ); - return new LroEngine(lro, { + const poller = new LroEngine(lro, { resumeFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); + await poller.poll(); + return poller; } /** @@ -615,10 +621,12 @@ export class ReplicationProtectedItemsImpl }, addDisksOperationSpec ); - return new LroEngine(lro, { + const poller = new LroEngine(lro, { resumeFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); + await poller.poll(); + return poller; } /** @@ -716,10 +724,12 @@ export class ReplicationProtectedItemsImpl }, applyRecoveryPointOperationSpec ); - return new LroEngine(lro, { + const poller = new LroEngine(lro, { resumeFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); + await poller.poll(); + return poller; } /** @@ -814,10 +824,12 @@ export class ReplicationProtectedItemsImpl }, failoverCancelOperationSpec ); - return new LroEngine(lro, { + const poller = new LroEngine(lro, { resumeFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); + await poller.poll(); + return poller; } /** @@ -909,10 +921,12 @@ export class ReplicationProtectedItemsImpl }, failoverCommitOperationSpec ); - return new LroEngine(lro, { + const poller = new LroEngine(lro, { resumeFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); + await poller.poll(); + return poller; } /** @@ -1007,10 +1021,12 @@ export class ReplicationProtectedItemsImpl }, plannedFailoverOperationSpec ); - return new LroEngine(lro, { + const poller = new LroEngine(lro, { resumeFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); + await poller.poll(); + return poller; } /** @@ -1104,10 +1120,12 @@ export class ReplicationProtectedItemsImpl }, deleteOperationSpec ); - return new LroEngine(lro, { + const poller = new LroEngine(lro, { resumeFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); + await poller.poll(); + return poller; } /** @@ -1206,10 +1224,12 @@ export class ReplicationProtectedItemsImpl }, removeDisksOperationSpec ); - return new LroEngine(lro, { + const poller = new LroEngine(lro, { resumeFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); + await poller.poll(); + return poller; } /** @@ -1305,10 +1325,12 @@ export class ReplicationProtectedItemsImpl }, repairReplicationOperationSpec ); - return new LroEngine(lro, { + const poller = new LroEngine(lro, { resumeFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); + await poller.poll(); + return poller; } /** @@ -1404,10 +1426,12 @@ export class ReplicationProtectedItemsImpl }, reprotectOperationSpec ); - return new LroEngine(lro, { + const poller = new LroEngine(lro, { resumeFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); + await poller.poll(); + return poller; } /** @@ -1505,10 +1529,12 @@ export class ReplicationProtectedItemsImpl }, resolveHealthErrorsOperationSpec ); - return new LroEngine(lro, { + const poller = new LroEngine(lro, { resumeFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); + await poller.poll(); + return poller; } /** @@ -1606,11 +1632,13 @@ export class ReplicationProtectedItemsImpl }, switchProviderOperationSpec ); - return new LroEngine(lro, { + const poller = new LroEngine(lro, { resumeFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs, lroResourceLocationConfig: "azure-async-operation" }); + await poller.poll(); + return poller; } /** @@ -1708,10 +1736,12 @@ export class ReplicationProtectedItemsImpl }, testFailoverOperationSpec ); - return new LroEngine(lro, { + const poller = new LroEngine(lro, { resumeFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); + await poller.poll(); + return poller; } /** @@ -1809,10 +1839,12 @@ export class ReplicationProtectedItemsImpl }, testFailoverCleanupOperationSpec ); - return new LroEngine(lro, { + const poller = new LroEngine(lro, { resumeFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); + await poller.poll(); + return poller; } /** @@ -1910,10 +1942,12 @@ export class ReplicationProtectedItemsImpl }, unplannedFailoverOperationSpec ); - return new LroEngine(lro, { + const poller = new LroEngine(lro, { resumeFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); + await poller.poll(); + return poller; } /** @@ -2011,10 +2045,12 @@ export class ReplicationProtectedItemsImpl }, updateApplianceOperationSpec ); - return new LroEngine(lro, { + const poller = new LroEngine(lro, { resumeFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); + await poller.poll(); + return poller; } /** @@ -2116,10 +2152,12 @@ export class ReplicationProtectedItemsImpl }, updateMobilityServiceOperationSpec ); - return new LroEngine(lro, { + const poller = new LroEngine(lro, { resumeFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); + await poller.poll(); + return poller; } /** diff --git a/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/src/operations/replicationProtectionContainerMappings.ts b/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/src/operations/replicationProtectionContainerMappings.ts index 667dc832fc2e..ad581a5cf3cb 100644 --- a/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/src/operations/replicationProtectionContainerMappings.ts +++ b/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/src/operations/replicationProtectionContainerMappings.ts @@ -272,10 +272,12 @@ export class ReplicationProtectionContainerMappingsImpl }, createOperationSpec ); - return new LroEngine(lro, { + const poller = new LroEngine(lro, { resumeFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); + await poller.poll(); + return poller; } /** @@ -360,10 +362,12 @@ export class ReplicationProtectionContainerMappingsImpl { fabricName, protectionContainerName, mappingName, options }, purgeOperationSpec ); - return new LroEngine(lro, { + const poller = new LroEngine(lro, { resumeFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); + await poller.poll(); + return poller; } /** @@ -458,10 +462,12 @@ export class ReplicationProtectionContainerMappingsImpl }, updateOperationSpec ); - return new LroEngine(lro, { + const poller = new LroEngine(lro, { resumeFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); + await poller.poll(); + return poller; } /** @@ -554,10 +560,12 @@ export class ReplicationProtectionContainerMappingsImpl }, deleteOperationSpec ); - return new LroEngine(lro, { + const poller = new LroEngine(lro, { resumeFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); + await poller.poll(); + return poller; } /** diff --git a/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/src/operations/replicationProtectionContainers.ts b/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/src/operations/replicationProtectionContainers.ts index f9681733f6db..9647498f6b22 100644 --- a/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/src/operations/replicationProtectionContainers.ts +++ b/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/src/operations/replicationProtectionContainers.ts @@ -241,10 +241,12 @@ export class ReplicationProtectionContainersImpl { fabricName, protectionContainerName, creationInput, options }, createOperationSpec ); - return new LroEngine(lro, { + const poller = new LroEngine(lro, { resumeFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); + await poller.poll(); + return poller; } /** @@ -338,10 +340,12 @@ export class ReplicationProtectionContainersImpl }, discoverProtectableItemOperationSpec ); - return new LroEngine(lro, { + const poller = new LroEngine(lro, { resumeFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); + await poller.poll(); + return poller; } /** @@ -421,10 +425,12 @@ export class ReplicationProtectionContainersImpl { fabricName, protectionContainerName, options }, deleteOperationSpec ); - return new LroEngine(lro, { + const poller = new LroEngine(lro, { resumeFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); + await poller.poll(); + return poller; } /** @@ -510,10 +516,12 @@ export class ReplicationProtectionContainersImpl { fabricName, protectionContainerName, switchInput, options }, switchProtectionOperationSpec ); - return new LroEngine(lro, { + const poller = new LroEngine(lro, { resumeFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); + await poller.poll(); + return poller; } /** diff --git a/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/src/operations/replicationRecoveryPlans.ts b/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/src/operations/replicationRecoveryPlans.ts index 701bc8866a3b..527ceae5190e 100644 --- a/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/src/operations/replicationRecoveryPlans.ts +++ b/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/src/operations/replicationRecoveryPlans.ts @@ -189,10 +189,12 @@ export class ReplicationRecoveryPlansImpl implements ReplicationRecoveryPlans { { recoveryPlanName, input, options }, createOperationSpec ); - return new LroEngine(lro, { + const poller = new LroEngine(lro, { resumeFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); + await poller.poll(); + return poller; } /** @@ -263,10 +265,12 @@ export class ReplicationRecoveryPlansImpl implements ReplicationRecoveryPlans { { recoveryPlanName, options }, deleteOperationSpec ); - return new LroEngine(lro, { + const poller = new LroEngine(lro, { resumeFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); + await poller.poll(); + return poller; } /** @@ -342,10 +346,12 @@ export class ReplicationRecoveryPlansImpl implements ReplicationRecoveryPlans { { recoveryPlanName, input, options }, updateOperationSpec ); - return new LroEngine(lro, { + const poller = new LroEngine(lro, { resumeFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); + await poller.poll(); + return poller; } /** @@ -421,10 +427,12 @@ export class ReplicationRecoveryPlansImpl implements ReplicationRecoveryPlans { { recoveryPlanName, options }, failoverCancelOperationSpec ); - return new LroEngine(lro, { + const poller = new LroEngine(lro, { resumeFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); + await poller.poll(); + return poller; } /** @@ -498,10 +506,12 @@ export class ReplicationRecoveryPlansImpl implements ReplicationRecoveryPlans { { recoveryPlanName, options }, failoverCommitOperationSpec ); - return new LroEngine(lro, { + const poller = new LroEngine(lro, { resumeFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); + await poller.poll(); + return poller; } /** @@ -577,10 +587,12 @@ export class ReplicationRecoveryPlansImpl implements ReplicationRecoveryPlans { { recoveryPlanName, input, options }, plannedFailoverOperationSpec ); - return new LroEngine(lro, { + const poller = new LroEngine(lro, { resumeFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); + await poller.poll(); + return poller; } /** @@ -660,10 +672,12 @@ export class ReplicationRecoveryPlansImpl implements ReplicationRecoveryPlans { { recoveryPlanName, options }, reprotectOperationSpec ); - return new LroEngine(lro, { + const poller = new LroEngine(lro, { resumeFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); + await poller.poll(); + return poller; } /** @@ -739,10 +753,12 @@ export class ReplicationRecoveryPlansImpl implements ReplicationRecoveryPlans { { recoveryPlanName, input, options }, testFailoverOperationSpec ); - return new LroEngine(lro, { + const poller = new LroEngine(lro, { resumeFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); + await poller.poll(); + return poller; } /** @@ -824,10 +840,12 @@ export class ReplicationRecoveryPlansImpl implements ReplicationRecoveryPlans { { recoveryPlanName, input, options }, testFailoverCleanupOperationSpec ); - return new LroEngine(lro, { + const poller = new LroEngine(lro, { resumeFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); + await poller.poll(); + return poller; } /** @@ -909,10 +927,12 @@ export class ReplicationRecoveryPlansImpl implements ReplicationRecoveryPlans { { recoveryPlanName, input, options }, unplannedFailoverOperationSpec ); - return new LroEngine(lro, { + const poller = new LroEngine(lro, { resumeFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); + await poller.poll(); + return poller; } /** diff --git a/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/src/operations/replicationRecoveryServicesProviders.ts b/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/src/operations/replicationRecoveryServicesProviders.ts index d0996c242520..7efded5f17dd 100644 --- a/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/src/operations/replicationRecoveryServicesProviders.ts +++ b/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/src/operations/replicationRecoveryServicesProviders.ts @@ -240,10 +240,12 @@ export class ReplicationRecoveryServicesProvidersImpl { fabricName, providerName, addProviderInput, options }, createOperationSpec ); - return new LroEngine(lro, { + const poller = new LroEngine(lro, { resumeFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); + await poller.poll(); + return poller; } /** @@ -323,10 +325,12 @@ export class ReplicationRecoveryServicesProvidersImpl { fabricName, providerName, options }, purgeOperationSpec ); - return new LroEngine(lro, { + const poller = new LroEngine(lro, { resumeFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); + await poller.poll(); + return poller; } /** @@ -406,10 +410,12 @@ export class ReplicationRecoveryServicesProvidersImpl { fabricName, providerName, options }, refreshProviderOperationSpec ); - return new LroEngine(lro, { + const poller = new LroEngine(lro, { resumeFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); + await poller.poll(); + return poller; } /** @@ -486,10 +492,12 @@ export class ReplicationRecoveryServicesProvidersImpl { fabricName, providerName, options }, deleteOperationSpec ); - return new LroEngine(lro, { + const poller = new LroEngine(lro, { resumeFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); + await poller.poll(); + return poller; } /** diff --git a/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/src/operations/replicationStorageClassificationMappings.ts b/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/src/operations/replicationStorageClassificationMappings.ts index 2091faebcd8a..c18fc025caca 100644 --- a/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/src/operations/replicationStorageClassificationMappings.ts +++ b/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/src/operations/replicationStorageClassificationMappings.ts @@ -274,10 +274,12 @@ export class ReplicationStorageClassificationMappingsImpl }, createOperationSpec ); - return new LroEngine(lro, { + const poller = new LroEngine(lro, { resumeFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); + await poller.poll(); + return poller; } /** @@ -367,10 +369,12 @@ export class ReplicationStorageClassificationMappingsImpl }, deleteOperationSpec ); - return new LroEngine(lro, { + const poller = new LroEngine(lro, { resumeFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); + await poller.poll(); + return poller; } /** diff --git a/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/src/operations/replicationVaultHealth.ts b/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/src/operations/replicationVaultHealth.ts index d760dcf6c23c..06b1c0695579 100644 --- a/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/src/operations/replicationVaultHealth.ts +++ b/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/src/operations/replicationVaultHealth.ts @@ -94,10 +94,12 @@ export class ReplicationVaultHealthImpl implements ReplicationVaultHealth { }; const lro = new LroImpl(sendOperation, { options }, refreshOperationSpec); - return new LroEngine(lro, { + const poller = new LroEngine(lro, { resumeFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); + await poller.poll(); + return poller; } /** diff --git a/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/src/operations/replicationVaultSetting.ts b/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/src/operations/replicationVaultSetting.ts index d11b81225584..03ed1b0c8076 100644 --- a/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/src/operations/replicationVaultSetting.ts +++ b/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/src/operations/replicationVaultSetting.ts @@ -167,10 +167,12 @@ export class ReplicationVaultSettingImpl implements ReplicationVaultSetting { { vaultSettingName, input, options }, createOperationSpec ); - return new LroEngine(lro, { + const poller = new LroEngine(lro, { resumeFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); + await poller.poll(); + return poller; } /** diff --git a/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/src/operations/replicationvCenters.ts b/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/src/operations/replicationvCenters.ts index a541ea6d1778..e633be46999a 100644 --- a/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/src/operations/replicationvCenters.ts +++ b/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/src/operations/replicationvCenters.ts @@ -237,10 +237,12 @@ export class ReplicationvCentersImpl implements ReplicationvCenters { { fabricName, vcenterName, addVCenterRequest, options }, createOperationSpec ); - return new LroEngine(lro, { + const poller = new LroEngine(lro, { resumeFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); + await poller.poll(); + return poller; } /** @@ -320,10 +322,12 @@ export class ReplicationvCentersImpl implements ReplicationvCenters { { fabricName, vcenterName, options }, deleteOperationSpec ); - return new LroEngine(lro, { + const poller = new LroEngine(lro, { resumeFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); + await poller.poll(); + return poller; } /** @@ -403,10 +407,12 @@ export class ReplicationvCentersImpl implements ReplicationvCenters { { fabricName, vcenterName, updateVCenterRequest, options }, updateOperationSpec ); - return new LroEngine(lro, { + const poller = new LroEngine(lro, { resumeFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); + await poller.poll(); + return poller; } /** diff --git a/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/src/siteRecoveryManagementClient.ts b/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/src/siteRecoveryManagementClient.ts index 162b19bfcad3..863eba501df6 100644 --- a/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/src/siteRecoveryManagementClient.ts +++ b/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/src/siteRecoveryManagementClient.ts @@ -7,6 +7,12 @@ */ import * as coreClient from "@azure/core-client"; +import * as coreRestPipeline from "@azure/core-rest-pipeline"; +import { + PipelineRequest, + PipelineResponse, + SendRequest +} from "@azure/core-rest-pipeline"; import * as coreAuth from "@azure/core-auth"; import { OperationsImpl, @@ -115,7 +121,7 @@ export class SiteRecoveryManagementClient extends coreClient.ServiceClient { credential: credentials }; - const packageDetails = `azsdk-js-arm-recoveryservices-siterecovery/4.0.0`; + const packageDetails = `azsdk-js-arm-recoveryservices-siterecovery/4.1.0`; const userAgentPrefix = options.userAgentOptions && options.userAgentOptions.userAgentPrefix ? `${options.userAgentOptions.userAgentPrefix} ${packageDetails}` @@ -130,9 +136,33 @@ export class SiteRecoveryManagementClient extends coreClient.ServiceClient { userAgentOptions: { userAgentPrefix }, - baseUri: options.endpoint || "https://management.azure.com" + baseUri: + options.endpoint ?? options.baseUri ?? "https://management.azure.com" }; super(optionsWithDefaults); + + if (options?.pipeline && options.pipeline.getOrderedPolicies().length > 0) { + const pipelinePolicies: coreRestPipeline.PipelinePolicy[] = options.pipeline.getOrderedPolicies(); + const bearerTokenAuthenticationPolicyFound = pipelinePolicies.some( + (pipelinePolicy) => + pipelinePolicy.name === + coreRestPipeline.bearerTokenAuthenticationPolicyName + ); + if (!bearerTokenAuthenticationPolicyFound) { + this.pipeline.removePolicy({ + name: coreRestPipeline.bearerTokenAuthenticationPolicyName + }); + this.pipeline.addPolicy( + coreRestPipeline.bearerTokenAuthenticationPolicy({ + scopes: `${optionsWithDefaults.baseUri}/.default`, + challengeCallbacks: { + authorizeRequestOnChallenge: + coreClient.authorizeRequestOnClaimChallenge + } + }) + ); + } + } // Parameter assignments this.resourceGroupName = resourceGroupName; this.subscriptionId = subscriptionId; @@ -140,7 +170,7 @@ export class SiteRecoveryManagementClient extends coreClient.ServiceClient { // Assigning values to Constant parameters this.$host = options.$host || "https://management.azure.com"; - this.apiVersion = options.apiVersion || "2021-11-01"; + this.apiVersion = options.apiVersion || "2022-03-01"; this.operations = new OperationsImpl(this); this.replicationAlertSettings = new ReplicationAlertSettingsImpl(this); this.replicationAppliances = new ReplicationAppliancesImpl(this); @@ -187,6 +217,35 @@ export class SiteRecoveryManagementClient extends coreClient.ServiceClient { ); this.replicationVaultHealth = new ReplicationVaultHealthImpl(this); this.replicationVaultSetting = new ReplicationVaultSettingImpl(this); + this.addCustomApiVersionPolicy(options.apiVersion); + } + + /** A function that adds a policy that sets the api-version (or equivalent) to reflect the library version. */ + private addCustomApiVersionPolicy(apiVersion?: string) { + if (!apiVersion) { + return; + } + const apiVersionPolicy = { + name: "CustomApiVersionPolicy", + async sendRequest( + request: PipelineRequest, + next: SendRequest + ): Promise { + const param = request.url.split("?"); + if (param.length > 1) { + const newParams = param[1].split("&").map((item) => { + if (item.indexOf("api-version") > -1) { + return item.replace(/(?<==).*$/, apiVersion); + } else { + return item; + } + }); + request.url = param[0] + "?" + newParams.join("&"); + } + return next(request); + } + }; + this.pipeline.addPolicy(apiVersionPolicy); } operations: Operations; diff --git a/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/test/sampleTest.ts b/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/test/sampleTest.ts index 7ed89b043e1b..25aeb3ebcc36 100644 --- a/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/test/sampleTest.ts +++ b/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/test/sampleTest.ts @@ -7,35 +7,30 @@ */ import { - env, - record, - RecorderEnvironmentSetup, - Recorder + Recorder, + RecorderStartOptions, + env } from "@azure-tools/test-recorder"; -import * as assert from "assert"; +import { assert } from "chai"; +import { Context } from "mocha"; -const recorderEnvSetup: RecorderEnvironmentSetup = { - replaceableVariables: { - AZURE_CLIENT_ID: "azure_client_id", - AZURE_CLIENT_SECRET: "azure_client_secret", - AZURE_TENANT_ID: "88888888-8888-8888-8888-888888888888", - SUBSCRIPTION_ID: "azure_subscription_id" - }, - customizationsOnRecordings: [ - (recording: any): any => - recording.replace( - /"access_token":"[^"]*"/g, - `"access_token":"access_token"` - ) - ], - queryParametersToSkip: [] +const replaceableVariables: Record = { + AZURE_CLIENT_ID: "azure_client_id", + AZURE_CLIENT_SECRET: "azure_client_secret", + AZURE_TENANT_ID: "88888888-8888-8888-8888-888888888888", + SUBSCRIPTION_ID: "azure_subscription_id" +}; + +const recorderOptions: RecorderStartOptions = { + envSetupForPlayback: replaceableVariables }; describe("My test", () => { let recorder: Recorder; - beforeEach(async function() { - recorder = record(this, recorderEnvSetup); + beforeEach(async function(this: Context) { + recorder = new Recorder(this.currentTest); + await recorder.start(recorderOptions); }); afterEach(async function() { diff --git a/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/tsconfig.json b/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/tsconfig.json index 6e3251194117..3e6ae96443f3 100644 --- a/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/tsconfig.json +++ b/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/tsconfig.json @@ -9,11 +9,19 @@ "esModuleInterop": true, "allowSyntheticDefaultImports": true, "forceConsistentCasingInFileNames": true, - "lib": ["es6", "dom"], + "lib": [ + "es6", + "dom" + ], "declaration": true, "outDir": "./dist-esm", "importHelpers": true }, - "include": ["./src/**/*.ts", "./test/**/*.ts"], - "exclude": ["node_modules"] -} + "include": [ + "./src/**/*.ts", + "./test/**/*.ts" + ], + "exclude": [ + "node_modules" + ] +} \ No newline at end of file diff --git a/sdk/recoveryservicessiterecovery/ci.mgmt.yml b/sdk/recoveryservicessiterecovery/ci.mgmt.yml index 164470c8c336..2911b9599d87 100644 --- a/sdk/recoveryservicessiterecovery/ci.mgmt.yml +++ b/sdk/recoveryservicessiterecovery/ci.mgmt.yml @@ -1,5 +1,5 @@ # NOTE: Please refer to https://aka.ms/azsdk/engsys/ci-yaml before editing this file. - + trigger: branches: include: @@ -10,6 +10,7 @@ trigger: include: - sdk/recoveryservicessiterecovery/ci.mgmt.yml - sdk/recoveryservicessiterecovery/arm-recoveryservicessiterecovery/ + - sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery pr: branches: include: @@ -23,11 +24,11 @@ pr: include: - sdk/recoveryservicessiterecovery/ci.mgmt.yml - sdk/recoveryservicessiterecovery/arm-recoveryservicessiterecovery/ - + - sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery extends: template: /eng/pipelines/templates/stages/archetype-sdk-client.yml parameters: ServiceDirectory: recoveryservicessiterecovery Artifacts: - name: azure-arm-recoveryservices-siterecovery - safeName: azurearmrecoveryservicessiterecovery \ No newline at end of file + safeName: azurearmrecoveryservicessiterecovery