From ff9da4dbeb144779abad1342dffd4f2b0a80a1c0 Mon Sep 17 00:00:00 2001 From: SDKAuto Date: Wed, 5 Jan 2022 09:11:10 +0000 Subject: [PATCH] CodeGen from PR 16870 in Azure/azure-rest-api-specs Track2 modify readme.go.md (#16870) --- common/config/rush/pnpm-lock.yaml | 131 +- rush.json | 5 + .../arm-azurestackhci/CHANGELOG.md | 11 + .../{LICENSE.txt => LICENSE} | 4 +- sdk/azurestackhci/arm-azurestackhci/README.md | 149 +-- .../arm-azurestackhci/_meta.json | 7 + .../arm-azurestackhci/api-extractor.json | 18 + .../arm-azurestackhci/package.json | 95 +- .../review/arm-azurestackhci.api.md | 650 ++++++++++ .../arm-azurestackhci/rollup.config.js | 211 ++- .../src/azureStackHCIClient.ts | 115 +- .../src/azureStackHCIClientContext.ts | 68 - .../arm-azurestackhci/src/index.ts | 12 + .../arm-azurestackhci/src/lroImpl.ts | 34 + .../src/models/clustersMappers.ts | 23 - .../arm-azurestackhci/src/models/index.ts | 1141 +++++++++++------ .../arm-azurestackhci/src/models/mappers.ts | 874 +++++++++---- .../src/models/operationsMappers.ts | 16 - .../src/models/parameters.ts | 147 ++- .../src/operations/arcSettings.ts | 394 ++++++ .../src/operations/clusters.ts | 588 ++++----- .../src/operations/extensions.ts | 672 ++++++++++ .../arm-azurestackhci/src/operations/index.ts | 12 +- .../src/operations/operations.ts | 75 +- .../src/operationsInterfaces/arcSettings.ts | 89 ++ .../src/operationsInterfaces/clusters.ts | 91 ++ .../src/operationsInterfaces/extensions.ts | 162 +++ .../src/operationsInterfaces/index.ts | 12 + .../src/operationsInterfaces/operations.ts | 21 + .../arm-azurestackhci/test/sampleTest.ts | 48 + .../arm-azurestackhci/tsconfig.json | 6 +- sdk/azurestackhci/ci.yml | 29 + 32 files changed, 4566 insertions(+), 1344 deletions(-) create mode 100644 sdk/azurestackhci/arm-azurestackhci/CHANGELOG.md rename sdk/azurestackhci/arm-azurestackhci/{LICENSE.txt => LICENSE} (96%) create mode 100644 sdk/azurestackhci/arm-azurestackhci/_meta.json create mode 100644 sdk/azurestackhci/arm-azurestackhci/api-extractor.json create mode 100644 sdk/azurestackhci/arm-azurestackhci/review/arm-azurestackhci.api.md delete mode 100644 sdk/azurestackhci/arm-azurestackhci/src/azureStackHCIClientContext.ts create mode 100644 sdk/azurestackhci/arm-azurestackhci/src/index.ts create mode 100644 sdk/azurestackhci/arm-azurestackhci/src/lroImpl.ts delete mode 100644 sdk/azurestackhci/arm-azurestackhci/src/models/clustersMappers.ts delete mode 100644 sdk/azurestackhci/arm-azurestackhci/src/models/operationsMappers.ts create mode 100644 sdk/azurestackhci/arm-azurestackhci/src/operations/arcSettings.ts create mode 100644 sdk/azurestackhci/arm-azurestackhci/src/operations/extensions.ts create mode 100644 sdk/azurestackhci/arm-azurestackhci/src/operationsInterfaces/arcSettings.ts create mode 100644 sdk/azurestackhci/arm-azurestackhci/src/operationsInterfaces/clusters.ts create mode 100644 sdk/azurestackhci/arm-azurestackhci/src/operationsInterfaces/extensions.ts create mode 100644 sdk/azurestackhci/arm-azurestackhci/src/operationsInterfaces/index.ts create mode 100644 sdk/azurestackhci/arm-azurestackhci/src/operationsInterfaces/operations.ts create mode 100644 sdk/azurestackhci/arm-azurestackhci/test/sampleTest.ts create mode 100644 sdk/azurestackhci/ci.yml diff --git a/common/config/rush/pnpm-lock.yaml b/common/config/rush/pnpm-lock.yaml index 694e81b4a476..2fcee3b2217f 100644 --- a/common/config/rush/pnpm-lock.yaml +++ b/common/config/rush/pnpm-lock.yaml @@ -17,6 +17,7 @@ specifiers: '@rush-temp/arm-attestation': file:./projects/arm-attestation.tgz '@rush-temp/arm-authorization': file:./projects/arm-authorization.tgz '@rush-temp/arm-azurestack': file:./projects/arm-azurestack.tgz + '@rush-temp/arm-azurestackhci': file:./projects/arm-azurestackhci.tgz '@rush-temp/arm-batch': file:./projects/arm-batch.tgz '@rush-temp/arm-billing': file:./projects/arm-billing.tgz '@rush-temp/arm-botservice': file:./projects/arm-botservice.tgz @@ -198,6 +199,7 @@ dependencies: '@rush-temp/arm-attestation': file:projects/arm-attestation.tgz '@rush-temp/arm-authorization': file:projects/arm-authorization.tgz '@rush-temp/arm-azurestack': file:projects/arm-azurestack.tgz + '@rush-temp/arm-azurestackhci': file:projects/arm-azurestackhci.tgz '@rush-temp/arm-batch': file:projects/arm-batch.tgz '@rush-temp/arm-billing': file:projects/arm-billing.tgz '@rush-temp/arm-botservice': file:projects/arm-botservice.tgz @@ -6977,7 +6979,7 @@ packages: hasBin: true dev: false - /ts-node/10.4.0_276ff2ad8f60608417677a4691c0f835: + /ts-node/10.4.0_28670484a221c7e896c5d6b821a5cbb7: resolution: {integrity: sha512-g0FlPvvCXSIO1JDF6S232P5jPYqBkRL9qly81ZgAOSU7rwI0stphCgd2kLiCrU9DjQCrJMWEqcNSjQL02s6d8A==} hasBin: true peerDependencies: @@ -7003,11 +7005,11 @@ packages: create-require: 1.1.1 diff: 4.0.2 make-error: 1.3.6 - typescript: 4.2.4 + typescript: 4.4.4 yn: 3.1.1 dev: false - /ts-node/10.4.0_54d7f9b57c83a5c5120be11b085b9de6: + /ts-node/10.4.0_f9f9f28f986ed7ad377c75abc9f416f4: resolution: {integrity: sha512-g0FlPvvCXSIO1JDF6S232P5jPYqBkRL9qly81ZgAOSU7rwI0stphCgd2kLiCrU9DjQCrJMWEqcNSjQL02s6d8A==} hasBin: true peerDependencies: @@ -7033,7 +7035,7 @@ packages: create-require: 1.1.1 diff: 4.0.2 make-error: 1.3.6 - typescript: 4.4.4 + typescript: 4.2.4 yn: 3.1.1 dev: false @@ -7629,7 +7631,7 @@ packages: prettier: 2.5.1 rimraf: 3.0.2 rollup: 1.32.1 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 transitivePeerDependencies: @@ -7857,7 +7859,7 @@ packages: rollup: 1.32.1 sinon: 9.2.4 source-map-support: 0.5.21 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 transitivePeerDependencies: @@ -7908,7 +7910,7 @@ packages: rollup: 1.32.1 sinon: 9.2.4 source-map-support: 0.5.21 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 transitivePeerDependencies: @@ -7965,7 +7967,7 @@ packages: rollup-plugin-sourcemaps: 0.4.2_rollup@1.32.1 rollup-plugin-terser: 5.3.1_rollup@1.32.1 sinon: 9.2.4 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 uglify-js: 3.14.5 @@ -8143,6 +8145,27 @@ packages: uglify-js: 3.14.5 dev: false + file:projects/arm-azurestackhci.tgz: + resolution: {integrity: sha512-fS7YNoGtj+meNXuUKFvQds/Ug+ZLwwjH742j9eUfULcEgcTzKZv747pSGTQzPT+V9xT+psO6E4d/zHdLfdsQEw==, tarball: file:projects/arm-azurestackhci.tgz} + name: '@rush-temp/arm-azurestackhci' + version: 0.0.0 + dependencies: + '@microsoft/api-extractor': 7.19.2 + '@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 + 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 + tslib: 2.3.1 + typescript: 4.2.4 + uglify-js: 3.14.5 + dev: false + file:projects/arm-batch.tgz: resolution: {integrity: sha512-3Icocw0QnB8/JYmiR/jIr/2A2XhYvFbte2ah1d8s7Mx4Bb23RCnZjTREPQinlGgdpuNSUL0va2ixFwyXTRCiBA==, tarball: file:projects/arm-batch.tgz} name: '@rush-temp/arm-batch' @@ -9487,7 +9510,7 @@ packages: rollup: 1.32.1 safe-buffer: 5.2.1 source-map-support: 0.5.21 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 util: 0.12.4 @@ -9982,7 +10005,7 @@ packages: dev: false file:projects/core-amqp.tgz: - resolution: {integrity: sha512-jmyXvDp5FyZIlqp1zATESQp6qO2NqjKSfY5o9ojPsKN/g9WJ45RL4jfy+cD5u8C2t9jSDTsCoL+jbiLptpkDLA==, tarball: file:projects/core-amqp.tgz} + resolution: {integrity: sha512-nAZlMW/WFVSloK1iVzoSJNx9CHjvMl4/kJrnq1s5Okn96/AQX19SYkqfdvmew1Oy3bxfDC2g3n3e1CFLrlSyEg==, tarball: file:projects/core-amqp.tgz} name: '@rush-temp/core-amqp' version: 0.0.0 dependencies: @@ -10025,7 +10048,7 @@ packages: rollup-plugin-sourcemaps: 0.4.2_rollup@1.32.1 rollup-plugin-terser: 5.3.1_rollup@1.32.1 sinon: 9.2.4 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 url: 0.11.0 @@ -10111,7 +10134,7 @@ packages: rimraf: 3.0.2 rollup: 1.32.1 sinon: 9.2.4 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 util: 0.12.4 @@ -10342,7 +10365,7 @@ packages: shx: 0.3.3 sinon: 9.2.4 tough-cookie: 4.0.0 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 tunnel: 0.0.6 typescript: 4.2.4 @@ -10390,7 +10413,7 @@ packages: prettier: 2.5.1 rimraf: 3.0.2 rollup: 1.32.1 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 uglify-js: 3.14.5 @@ -10657,7 +10680,7 @@ packages: sinon: 9.2.4 snap-shot-it: 7.9.6 source-map-support: 0.5.21 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 universal-user-agent: 6.0.0 @@ -10714,7 +10737,7 @@ packages: rollup-plugin-terser: 5.3.1_rollup@1.32.1 rollup-plugin-visualizer: 4.2.2_rollup@1.32.1 sinon: 9.2.4 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 util: 0.12.4 @@ -10760,7 +10783,7 @@ packages: rollup: 1.32.1 rollup-plugin-sourcemaps: 0.4.2_rollup@1.32.1 rollup-plugin-visualizer: 4.2.2_rollup@1.32.1 - ts-node: 10.4.0_54d7f9b57c83a5c5120be11b085b9de6 + ts-node: 10.4.0_28670484a221c7e896c5d6b821a5cbb7 tslib: 2.3.1 typescript: 4.4.4 yaml: 1.10.2 @@ -10917,7 +10940,7 @@ packages: rollup-plugin-sourcemaps: 0.4.2_rollup@1.32.1 rollup-plugin-terser: 5.3.1_rollup@1.32.1 sinon: 9.2.4 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 uuid: 8.3.2 @@ -10979,7 +11002,7 @@ packages: rollup-plugin-visualizer: 4.2.2_rollup@1.32.1 sinon: 9.2.4 source-map-support: 0.5.21 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 uuid: 8.3.2 @@ -11034,7 +11057,7 @@ packages: prettier: 2.5.1 rimraf: 3.0.2 rollup: 1.32.1 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 util: 0.12.4 @@ -11087,7 +11110,7 @@ packages: prettier: 2.5.1 rimraf: 3.0.2 rollup: 1.32.1 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 util: 0.12.4 @@ -11289,7 +11312,7 @@ packages: rollup-plugin-terser: 5.3.1_rollup@1.32.1 rollup-plugin-visualizer: 4.2.2_rollup@1.32.1 sinon: 9.2.4 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 util: 0.12.4 @@ -11553,7 +11576,7 @@ packages: rimraf: 3.0.2 rollup: 1.32.1 sinon: 9.2.4 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 transitivePeerDependencies: @@ -11702,7 +11725,7 @@ packages: rimraf: 3.0.2 rollup: 1.32.1 sinon: 9.2.4 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 transitivePeerDependencies: @@ -11774,7 +11797,7 @@ packages: eslint: 7.32.0 prettier: 2.5.1 rimraf: 3.0.2 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 transitivePeerDependencies: @@ -11794,7 +11817,7 @@ packages: eslint: 7.32.0 prettier: 2.5.1 rimraf: 3.0.2 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 transitivePeerDependencies: @@ -11814,7 +11837,7 @@ packages: eslint: 7.32.0 prettier: 2.5.1 rimraf: 3.0.2 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 transitivePeerDependencies: @@ -11834,7 +11857,7 @@ packages: eslint: 7.32.0 prettier: 2.5.1 rimraf: 3.0.2 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 uuid: 8.3.2 @@ -11873,7 +11896,7 @@ packages: eslint: 7.32.0 prettier: 2.5.1 rimraf: 3.0.2 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 transitivePeerDependencies: @@ -11894,7 +11917,7 @@ packages: eslint: 7.32.0 prettier: 2.5.1 rimraf: 3.0.2 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 uuid: 8.3.2 @@ -11917,7 +11940,7 @@ packages: moment: 2.29.1 prettier: 2.5.1 rimraf: 3.0.2 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 uuid: 8.3.2 @@ -11937,7 +11960,7 @@ packages: eslint: 7.32.0 prettier: 1.19.1 rimraf: 3.0.2 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 transitivePeerDependencies: @@ -11957,7 +11980,7 @@ packages: eslint: 7.32.0 prettier: 2.5.1 rimraf: 3.0.2 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 transitivePeerDependencies: @@ -11978,7 +12001,7 @@ packages: eslint: 7.32.0 prettier: 2.5.1 rimraf: 3.0.2 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 uuid: 8.3.2 @@ -12000,7 +12023,7 @@ packages: eslint: 7.32.0 prettier: 2.5.1 rimraf: 3.0.2 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 uuid: 8.3.2 @@ -12021,7 +12044,7 @@ packages: eslint: 7.32.0 prettier: 2.5.1 rimraf: 3.0.2 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 uuid: 8.3.2 @@ -12041,7 +12064,7 @@ packages: eslint: 7.32.0 prettier: 2.5.1 rimraf: 3.0.2 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 transitivePeerDependencies: @@ -12060,7 +12083,7 @@ packages: eslint: 7.32.0 prettier: 2.5.1 rimraf: 3.0.2 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 transitivePeerDependencies: @@ -12081,7 +12104,7 @@ packages: eslint: 7.32.0 prettier: 2.5.1 rimraf: 3.0.2 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 uuid: 8.3.2 @@ -12104,7 +12127,7 @@ packages: node-fetch: 2.6.6 prettier: 2.5.1 rimraf: 3.0.2 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 uuid: 8.3.2 @@ -12125,7 +12148,7 @@ packages: eslint: 7.32.0 prettier: 2.5.1 rimraf: 3.0.2 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 uuid: 8.3.2 @@ -12146,7 +12169,7 @@ packages: eslint: 7.32.0 prettier: 2.5.1 rimraf: 3.0.2 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 uuid: 8.3.2 @@ -12167,7 +12190,7 @@ packages: eslint: 7.32.0 prettier: 2.5.1 rimraf: 3.0.2 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 uuid: 8.3.2 @@ -12539,7 +12562,7 @@ packages: rimraf: 3.0.2 rollup: 1.32.1 sinon: 9.2.4 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 util: 0.12.4 @@ -12608,7 +12631,7 @@ packages: rimraf: 3.0.2 rollup: 1.32.1 sinon: 9.2.4 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 ws: 8.3.0 @@ -12671,7 +12694,7 @@ packages: rollup-plugin-visualizer: 4.2.2_rollup@1.32.1 sinon: 9.2.4 source-map-support: 0.5.21 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 util: 0.12.4 @@ -12734,7 +12757,7 @@ packages: rollup-plugin-terser: 5.3.1_rollup@1.32.1 rollup-plugin-visualizer: 4.2.2_rollup@1.32.1 source-map-support: 0.5.21 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 util: 0.12.4 @@ -12797,7 +12820,7 @@ packages: rollup-plugin-terser: 5.3.1_rollup@1.32.1 rollup-plugin-visualizer: 4.2.2_rollup@1.32.1 source-map-support: 0.5.21 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 util: 0.12.4 @@ -12858,7 +12881,7 @@ packages: rollup-plugin-terser: 5.3.1_rollup@1.32.1 rollup-plugin-visualizer: 4.2.2_rollup@1.32.1 source-map-support: 0.5.21 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 util: 0.12.4 @@ -12916,7 +12939,7 @@ packages: rollup-plugin-terser: 5.3.1_rollup@1.32.1 rollup-plugin-visualizer: 4.2.2_rollup@1.32.1 source-map-support: 0.5.21 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 util: 0.12.4 @@ -12976,7 +12999,7 @@ packages: rollup-plugin-terser: 5.3.1_rollup@1.32.1 rollup-plugin-visualizer: 4.2.2_rollup@1.32.1 source-map-support: 0.5.21 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 util: 0.12.4 @@ -13028,7 +13051,7 @@ packages: rollup: 1.32.1 sinon: 9.2.4 source-map-support: 0.5.21 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 uglify-js: 3.14.5 @@ -13082,7 +13105,7 @@ packages: rollup: 1.32.1 sinon: 9.2.4 source-map-support: 0.5.21 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 uglify-js: 3.14.5 @@ -13135,7 +13158,7 @@ packages: rollup: 1.32.1 sinon: 9.2.4 source-map-support: 0.5.21 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 uglify-js: 3.14.5 diff --git a/rush.json b/rush.json index 66a9aa13703f..34b4061541d4 100644 --- a/rush.json +++ b/rush.json @@ -1215,6 +1215,11 @@ "packageName": "@azure/arm-containerinstance", "projectFolder": "sdk/containerinstance/arm-containerinstance", "versionPolicyName": "management" + }, + { + "packageName": "@azure/arm-azurestackhci", + "projectFolder": "sdk/azurestackhci/arm-azurestackhci", + "versionPolicyName": "management" } ] } \ No newline at end of file diff --git a/sdk/azurestackhci/arm-azurestackhci/CHANGELOG.md b/sdk/azurestackhci/arm-azurestackhci/CHANGELOG.md new file mode 100644 index 000000000000..7ccff1b34f21 --- /dev/null +++ b/sdk/azurestackhci/arm-azurestackhci/CHANGELOG.md @@ -0,0 +1,11 @@ +# Release History + +## 2.0.0 (2022-01-05) + +The package of @azure/arm-azurestackhci is using our next generation design principles since version 2.0.0, which contains breaking changes. + +To understand the detail of the change, please refer to [Changelog](https://aka.ms/js-track2-changelog). + +To migrate the existing applications to the latest version, please refer to [Migration Guide](https://aka.ms/js-track2-migration-guide). + +To learn more, please refer to our documentation [Quick Start](https://aka.ms/js-track2-quickstart). diff --git a/sdk/azurestackhci/arm-azurestackhci/LICENSE.txt b/sdk/azurestackhci/arm-azurestackhci/LICENSE similarity index 96% rename from sdk/azurestackhci/arm-azurestackhci/LICENSE.txt rename to sdk/azurestackhci/arm-azurestackhci/LICENSE index ea8fb1516028..5d1d36e0af80 100644 --- a/sdk/azurestackhci/arm-azurestackhci/LICENSE.txt +++ b/sdk/azurestackhci/arm-azurestackhci/LICENSE @@ -1,6 +1,6 @@ The MIT License (MIT) -Copyright (c) 2020 Microsoft +Copyright (c) 2022 Microsoft Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -18,4 +18,4 @@ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. +SOFTWARE. \ No newline at end of file diff --git a/sdk/azurestackhci/arm-azurestackhci/README.md b/sdk/azurestackhci/arm-azurestackhci/README.md index 13116bde073e..521f29bb0537 100644 --- a/sdk/azurestackhci/arm-azurestackhci/README.md +++ b/sdk/azurestackhci/arm-azurestackhci/README.md @@ -1,109 +1,98 @@ -## Azure AzureStackHCIClient SDK for JavaScript +# AzureStackHCI client library for JavaScript -This package contains an isomorphic SDK (runs both in Node.js and in browsers) for AzureStackHCIClient. +This package contains an isomorphic SDK (runs both in Node.js and in browsers) for AzureStackHCI client. + +Azure Stack HCI management service + +[Source code](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/azurestackhci/arm-azurestackhci) | +[Package (NPM)](https://www.npmjs.com/package/@azure/arm-azurestackhci) | +[API reference documentation](https://docs.microsoft.com/javascript/api/@azure/arm-azurestackhci) | +[Samples](https://github.com/Azure-Samples/azure-samples-js-management) + +## Getting started ### Currently supported environments - [LTS versions of Node.js](https://nodejs.org/about/releases/) -- Latest versions of Safari, Chrome, Edge, and Firefox. +- Latest versions of Safari, Chrome, Edge and Firefox. ### Prerequisites -You must have an [Azure subscription](https://azure.microsoft.com/free/). +- An [Azure subscription][azure_sub]. -### How to install +### Install the `@azure/arm-azurestackhci` package -To use this SDK in your project, you will need to install two packages. -- `@azure/arm-azurestackhci` that contains the client. -- `@azure/identity` that provides different mechanisms for the client to authenticate your requests using Azure Active Directory. +Install the AzureStackHCI client library for JavaScript with `npm`: -Install both packages using the below command: ```bash -npm install --save @azure/arm-azurestackhci @azure/identity +npm install @azure/arm-azurestackhci ``` -> **Note**: You may have used either `@azure/ms-rest-nodeauth` or `@azure/ms-rest-browserauth` in the past. These packages are in maintenance mode receiving critical bug fixes, but no new features. -If you are on a [Node.js that has LTS status](https://nodejs.org/about/releases/), or are writing a client side browser application, we strongly encourage you to upgrade to `@azure/identity` which uses the latest versions of Azure Active Directory and MSAL APIs and provides more authentication options. +### Create and authenticate a `AzureStackHCIClient` -### How to use +To create a client object to access the AzureStackHCI API, you will need the `endpoint` of your AzureStackHCI resource and a `credential`. The AzureStackHCI client can use Azure Active Directory credentials to authenticate. +You can find the endpoint for your AzureStackHCI resource in the [Azure Portal][azure_portal]. -- If you are writing a client side browser application, - - Follow the instructions in the section on Authenticating client side browser applications in [Azure Identity examples](https://aka.ms/azsdk/js/identity/examples) to register your application in the Microsoft identity platform and set the right permissions. - - Copy the client ID and tenant ID from the Overview section of your app registration in Azure portal and use it in the browser sample below. -- If you are writing a server side application, - - [Select a credential from `@azure/identity` based on the authentication method of your choice](https://aka.ms/azsdk/js/identity/examples) - - Complete the set up steps required by the credential if any. - - Use the credential you picked in the place of `DefaultAzureCredential` in the Node.js sample below. +You can authenticate with Azure Active Directory using a credential from the [@azure/identity][azure_identity] library or [an existing AAD Token](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/identity/identity/samples/AzureIdentityExamples.md#authenticating-with-a-pre-fetched-access-token). -In the below samples, we pass the credential and the Azure subscription id to instantiate the client. -Once the client is created, explore the operations on it either in your favorite editor or in our [API reference documentation](https://docs.microsoft.com/javascript/api) to get started. +To use the [DefaultAzureCredential][defaultazurecredential] provider shown below, or other credential providers provided with the Azure SDK, please install the `@azure/identity` package: + +```bash +npm install @azure/identity +``` -#### nodejs - Authentication, client creation, and list operations as an example written in JavaScript. +You will also need to **register a new AAD application and grant access to AzureStackHCI** by assigning the suitable role to your service principal (note: roles such as `"Owner"` will not grant the necessary permissions). +Set the values of the client ID, tenant ID, and client secret of the AAD application as environment variables: `AZURE_CLIENT_ID`, `AZURE_TENANT_ID`, `AZURE_CLIENT_SECRET`. -##### Sample code +For more information about how to create an Azure AD Application check out [this guide](https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal). ```javascript -const { DefaultAzureCredential } = require("@azure/identity"); const { AzureStackHCIClient } = require("@azure/arm-azurestackhci"); -const subscriptionId = process.env["AZURE_SUBSCRIPTION_ID"]; - -// Use `DefaultAzureCredential` or any other credential of your choice based on https://aka.ms/azsdk/js/identity/examples -// Please note that you can also use credentials from the `@azure/ms-rest-nodeauth` package instead. -const creds = new DefaultAzureCredential(); -const client = new AzureStackHCIClient(creds, subscriptionId); - -client.operations.list().then((result) => { - console.log("The result is:"); - console.log(result); -}).catch((err) => { - console.log("An error occurred:"); - console.error(err); -}); +const { DefaultAzureCredential } = require("@azure/identity"); +const subscriptionId = "00000000-0000-0000-0000-000000000000"; +const client = new AzureStackHCIClient(new DefaultAzureCredential(), subscriptionId); ``` -#### browser - Authentication, client creation, and list operations as an example written in JavaScript. - -In browser applications, we recommend using the `InteractiveBrowserCredential` that interactively authenticates using the default system browser. - - See [Single-page application: App registration guide](https://docs.microsoft.com/azure/active-directory/develop/scenario-spa-app-registration) to configure your app registration for the browser. - - Note down the client Id from the previous step and use it in the browser sample below. - -##### Sample code - -- index.html - -```html - - - - @azure/arm-azurestackhci sample - - - - - - - + +### JavaScript Bundle +To use this client library in the browser, first you need to use a bundler. For details on how to do this, please refer to our [bundling documentation](https://aka.ms/AzureSDKBundling). + +## Key concepts + +### AzureStackHCIClient + +`AzureStackHCIClient` is the primary interface for developers using the AzureStackHCI client library. Explore the methods on this client object to understand the different features of the AzureStackHCI service that you can access. + +## Troubleshooting + +### Logging + +Enabling logging may help uncover useful information about failures. In order to see a log of HTTP requests and responses, set the `AZURE_LOG_LEVEL` environment variable to `info`. Alternatively, logging can be enabled at runtime by calling `setLogLevel` in the `@azure/logger`: + +```javascript +const { setLogLevel } = require("@azure/logger"); +setLogLevel("info"); ``` +For more detailed instructions on how to enable logs, you can look at the [@azure/logger package docs](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/core/logger). + +## Next steps + +Please take a look at the [samples](https://github.com/Azure-Samples/azure-samples-js-management) directory for detailed examples on how to use this library. + +## Contributing + +If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md) to learn more about how to build and test the code. + ## Related projects -- [Microsoft Azure SDK for Javascript](https://github.com/Azure/azure-sdk-for-js) +- [Microsoft Azure SDK for JavaScript](https://github.com/Azure/azure-sdk-for-js) + +![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js%2Fsdk%2Fazurestackhci%2Farm-azurestackhci%2FREADME.png) -![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js/sdk/azurestackhci/arm-azurestackhci/README.png) +[azure_cli]: https://docs.microsoft.com/cli/azure +[azure_sub]: https://azure.microsoft.com/free/ +[azure_sub]: https://azure.microsoft.com/free/ +[azure_portal]: https://portal.azure.com +[azure_identity]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/identity/identity +[defaultazurecredential]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/identity/identity#defaultazurecredential diff --git a/sdk/azurestackhci/arm-azurestackhci/_meta.json b/sdk/azurestackhci/arm-azurestackhci/_meta.json new file mode 100644 index 000000000000..383ba3497ff3 --- /dev/null +++ b/sdk/azurestackhci/arm-azurestackhci/_meta.json @@ -0,0 +1,7 @@ +{ + "commit": "754938e4cb9416358b02dcc11f444adf14b3b7b6", + "readme": "specification/azurestackhci/resource-manager/readme.md", + "autorest_command": "autorest --version=3.1.3 --typescript --modelerfour.lenient-model-deduplication --head-as-boolean=true --license-header=MICROSOFT_MIT_NO_VERSION --generate-test --typescript-sdks-folder=/home/vsts/work/1/s/azure-sdk-for-js ../azure-rest-api-specs/specification/azurestackhci/resource-manager/readme.md --use=@autorest/typescript@6.0.0-alpha.16.20211130.1", + "repository_url": "https://github.com/Azure/azure-rest-api-specs.git", + "use": "@autorest/typescript@6.0.0-alpha.16.20211130.1" +} \ No newline at end of file diff --git a/sdk/azurestackhci/arm-azurestackhci/api-extractor.json b/sdk/azurestackhci/arm-azurestackhci/api-extractor.json new file mode 100644 index 000000000000..0cabc18600c7 --- /dev/null +++ b/sdk/azurestackhci/arm-azurestackhci/api-extractor.json @@ -0,0 +1,18 @@ +{ + "$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" }, + "dtsRollup": { + "enabled": true, + "untrimmedFilePath": "", + "publicTrimmedFilePath": "./types/arm-azurestackhci.d.ts" + }, + "messages": { + "tsdocMessageReporting": { "default": { "logLevel": "none" } }, + "extractorMessageReporting": { + "ae-missing-release-tag": { "logLevel": "none" }, + "ae-unresolved-link": { "logLevel": "none" } + } + } +} diff --git a/sdk/azurestackhci/arm-azurestackhci/package.json b/sdk/azurestackhci/arm-azurestackhci/package.json index 2ac277230b0d..37feef47168a 100644 --- a/sdk/azurestackhci/arm-azurestackhci/package.json +++ b/sdk/azurestackhci/arm-azurestackhci/package.json @@ -1,58 +1,91 @@ { "name": "@azure/arm-azurestackhci", + "sdk-type": "mgmt", "author": "Microsoft Corporation", - "description": "AzureStackHCIClient Library with typescript type definitions for node.js and browser.", - "version": "1.1.0", + "description": "A generated SDK for AzureStackHCIClient.", + "version": "2.0.0", + "engines": { "node": ">=12.0.0" }, "dependencies": { - "@azure/ms-rest-azure-js": "^2.1.0", - "@azure/ms-rest-js": "^2.2.0", - "@azure/core-auth": "^1.1.4", - "tslib": "^1.10.0" + "@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-auth": "^1.3.0", + "@azure/core-rest-pipeline": "^1.1.0", + "tslib": "^2.2.0" }, - "keywords": [ - "node", - "azure", - "typescript", - "browser", - "isomorphic" - ], + "keywords": ["node", "azure", "typescript", "browser", "isomorphic"], "license": "MIT", - "main": "./dist/arm-azurestackhci.js", - "module": "./esm/azureStackHCIClient.js", - "types": "./esm/azureStackHCIClient.d.ts", + "main": "./dist/index.js", + "module": "./dist-esm/src/index.js", + "types": "./types/arm-azurestackhci.d.ts", "devDependencies": { - "typescript": "^3.6.0", - "rollup": "^1.18.0", - "rollup-plugin-node-resolve": "^5.2.0", + "@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", + "mkdirp": "^1.0.4", + "rollup": "^1.16.3", "rollup-plugin-sourcemaps": "^0.4.2", - "uglify-js": "^3.6.0" + "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", + "mocha": "^7.1.1", + "cross-env": "^7.0.2" }, "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/azurestackhci/arm-azurestackhci", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" }, - "bugs": { - "url": "https://github.com/Azure/azure-sdk-for-js/issues" - }, + "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, "files": [ "dist/**/*.js", "dist/**/*.js.map", "dist/**/*.d.ts", "dist/**/*.d.ts.map", - "esm/**/*.js", - "esm/**/*.js.map", - "esm/**/*.d.ts", - "esm/**/*.d.ts.map", + "dist-esm/**/*.js", + "dist-esm/**/*.js.map", + "dist-esm/**/*.d.ts", + "dist-esm/**/*.d.ts.map", "src/**/*.ts", "README.md", + "LICENSE", "rollup.config.js", - "tsconfig.json" + "tsconfig.json", + "review/*", + "CHANGELOG.md", + "types/*" ], "scripts": { - "build": "tsc && rollup -c rollup.config.js && npm run minify", - "minify": "uglifyjs -c -m --comments --source-map \"content='./dist/arm-azurestackhci.js.map'\" -o ./dist/arm-azurestackhci.min.js ./dist/arm-azurestackhci.js", - "prepack": "npm install && npm run build" + "build": "npm run clean && tsc && rollup -c 2>&1 && npm run minify && mkdirp ./review && npm run extract-api", + "minify": "uglifyjs -c -m --comments --source-map \"content='./dist/index.js.map'\" -o ./dist/index.min.js ./dist/index.js", + "prepack": "npm run build", + "pack": "npm pack 2>&1", + "extract-api": "api-extractor run --local", + "lint": "echo skipped", + "audit": "echo skipped", + "clean": "rimraf dist dist-browser dist-esm test-dist temp types *.tgz *.log", + "build:node": "echo skipped", + "build:browser": "echo skipped", + "build:test": "echo skipped", + "build:samples": "echo skipped.", + "check-format": "echo skipped", + "execute:samples": "echo skipped", + "format": "echo skipped", + "test": "npm run integration-test", + "test:node": "echo skipped", + "test:browser": "echo skipped", + "unit-test": "npm run unit-test:node && npm run unit-test:browser", + "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:browser": "echo skipped", + "docs": "echo skipped" }, "sideEffects": false, "autoPublish": true diff --git a/sdk/azurestackhci/arm-azurestackhci/review/arm-azurestackhci.api.md b/sdk/azurestackhci/arm-azurestackhci/review/arm-azurestackhci.api.md new file mode 100644 index 000000000000..7d5cc35f4fd2 --- /dev/null +++ b/sdk/azurestackhci/arm-azurestackhci/review/arm-azurestackhci.api.md @@ -0,0 +1,650 @@ +## API Report File for "@azure/arm-azurestackhci" + +> Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/). + +```ts + +import * as coreAuth from '@azure/core-auth'; +import * as coreClient from '@azure/core-client'; +import { PagedAsyncIterableIterator } from '@azure/core-paging'; +import { PollerLike } from '@azure/core-lro'; +import { PollOperationState } from '@azure/core-lro'; + +// @public +export type ActionType = string; + +// @public +export type ArcSetting = ProxyResource & { + readonly provisioningState?: ProvisioningState; + readonly arcInstanceResourceGroup?: string; + readonly aggregateState?: ArcSettingAggregateState; + readonly perNodeDetails?: PerNodeState[]; + createdBy?: string; + createdByType?: CreatedByType; + createdAt?: Date; + lastModifiedBy?: string; + lastModifiedByType?: CreatedByType; + lastModifiedAt?: Date; +}; + +// @public +export type ArcSettingAggregateState = string; + +// @public +export interface ArcSettingList { + readonly nextLink?: string; + readonly value?: ArcSetting[]; +} + +// @public +export interface ArcSettings { + beginDelete(resourceGroupName: string, clusterName: string, arcSettingName: string, options?: ArcSettingsDeleteOptionalParams): Promise, void>>; + beginDeleteAndWait(resourceGroupName: string, clusterName: string, arcSettingName: string, options?: ArcSettingsDeleteOptionalParams): Promise; + create(resourceGroupName: string, clusterName: string, arcSettingName: string, arcSetting: ArcSetting, options?: ArcSettingsCreateOptionalParams): Promise; + get(resourceGroupName: string, clusterName: string, arcSettingName: string, options?: ArcSettingsGetOptionalParams): Promise; + listByCluster(resourceGroupName: string, clusterName: string, options?: ArcSettingsListByClusterOptionalParams): PagedAsyncIterableIterator; +} + +// @public +export interface ArcSettingsCreateOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type ArcSettingsCreateResponse = ArcSetting; + +// @public +export interface ArcSettingsDeleteOptionalParams extends coreClient.OperationOptions { + resumeFrom?: string; + updateIntervalInMs?: number; +} + +// @public +export interface ArcSettingsGetOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type ArcSettingsGetResponse = ArcSetting; + +// @public +export interface ArcSettingsListByClusterNextOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type ArcSettingsListByClusterNextResponse = ArcSettingList; + +// @public +export interface ArcSettingsListByClusterOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type ArcSettingsListByClusterResponse = ArcSettingList; + +// @public (undocumented) +export class AzureStackHCIClient extends coreClient.ServiceClient { + // (undocumented) + $host: string; + constructor(credentials: coreAuth.TokenCredential, subscriptionId: string, options?: AzureStackHCIClientOptionalParams); + // (undocumented) + apiVersion: string; + // (undocumented) + arcSettings: ArcSettings; + // (undocumented) + clusters: Clusters; + // (undocumented) + extensions: Extensions; + // (undocumented) + operations: Operations; + // (undocumented) + subscriptionId: string; +} + +// @public +export interface AzureStackHCIClientOptionalParams extends coreClient.ServiceClientOptions { + $host?: string; + apiVersion?: string; + endpoint?: string; +} + +// @public +export type Cluster = TrackedResource & { + readonly provisioningState?: ProvisioningState; + readonly status?: Status; + readonly cloudId?: string; + cloudManagementEndpoint?: string; + aadClientId?: string; + aadTenantId?: string; + desiredProperties?: ClusterDesiredProperties; + readonly reportedProperties?: ClusterReportedProperties; + readonly trialDaysRemaining?: number; + readonly billingModel?: string; + readonly registrationTimestamp?: Date; + readonly lastSyncTimestamp?: Date; + readonly lastBillingTimestamp?: Date; + createdBy?: string; + createdByType?: CreatedByType; + createdAt?: Date; + lastModifiedBy?: string; + lastModifiedByType?: CreatedByType; + lastModifiedAt?: Date; +}; + +// @public +export interface ClusterDesiredProperties { + diagnosticLevel?: DiagnosticLevel; + windowsServerSubscription?: WindowsServerSubscription; +} + +// @public +export interface ClusterList { + readonly nextLink?: string; + value?: Cluster[]; +} + +// @public +export interface ClusterNode { + readonly coreCount?: number; + readonly id?: number; + readonly manufacturer?: string; + readonly memoryInGiB?: number; + readonly model?: string; + readonly name?: string; + readonly osName?: string; + readonly osVersion?: string; + readonly serialNumber?: string; + readonly windowsServerSubscription?: WindowsServerSubscription; +} + +// @public +export interface ClusterPatch { + aadClientId?: string; + aadTenantId?: string; + cloudManagementEndpoint?: string; + desiredProperties?: ClusterDesiredProperties; + tags?: { + [propertyName: string]: string; + }; +} + +// @public +export interface ClusterReportedProperties { + readonly clusterId?: string; + readonly clusterName?: string; + readonly clusterVersion?: string; + diagnosticLevel?: DiagnosticLevel; + readonly imdsAttestation?: ImdsAttestation; + readonly lastUpdated?: Date; + readonly nodes?: ClusterNode[]; +} + +// @public +export interface Clusters { + create(resourceGroupName: string, clusterName: string, cluster: Cluster, options?: ClustersCreateOptionalParams): Promise; + delete(resourceGroupName: string, clusterName: string, options?: ClustersDeleteOptionalParams): Promise; + get(resourceGroupName: string, clusterName: string, options?: ClustersGetOptionalParams): Promise; + listByResourceGroup(resourceGroupName: string, options?: ClustersListByResourceGroupOptionalParams): PagedAsyncIterableIterator; + listBySubscription(options?: ClustersListBySubscriptionOptionalParams): PagedAsyncIterableIterator; + update(resourceGroupName: string, clusterName: string, cluster: ClusterPatch, options?: ClustersUpdateOptionalParams): Promise; +} + +// @public +export interface ClustersCreateOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type ClustersCreateResponse = Cluster; + +// @public +export interface ClustersDeleteOptionalParams extends coreClient.OperationOptions { +} + +// @public +export interface ClustersGetOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type ClustersGetResponse = Cluster; + +// @public +export interface ClustersListByResourceGroupNextOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type ClustersListByResourceGroupNextResponse = ClusterList; + +// @public +export interface ClustersListByResourceGroupOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type ClustersListByResourceGroupResponse = ClusterList; + +// @public +export interface ClustersListBySubscriptionNextOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type ClustersListBySubscriptionNextResponse = ClusterList; + +// @public +export interface ClustersListBySubscriptionOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type ClustersListBySubscriptionResponse = ClusterList; + +// @public +export interface ClustersUpdateOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type ClustersUpdateResponse = Cluster; + +// @public +export type CreatedByType = string; + +// @public +export type DiagnosticLevel = string; + +// @public +export interface ErrorAdditionalInfo { + readonly info?: Record; + readonly type?: string; +} + +// @public +export interface ErrorDetail { + readonly additionalInfo?: ErrorAdditionalInfo[]; + readonly code?: string; + readonly details?: ErrorDetail[]; + readonly message?: string; + readonly target?: string; +} + +// @public +export interface ErrorResponse { + error?: ErrorDetail; +} + +// @public +export type Extension = ProxyResource & { + readonly provisioningState?: ProvisioningState; + readonly aggregateState?: ExtensionAggregateState; + readonly perNodeExtensionDetails?: PerNodeExtensionState[]; + forceUpdateTag?: string; + publisher?: string; + typePropertiesExtensionParametersType?: string; + typeHandlerVersion?: string; + autoUpgradeMinorVersion?: boolean; + settings?: Record; + protectedSettings?: Record; + createdBy?: string; + createdByType?: CreatedByType; + createdAt?: Date; + lastModifiedBy?: string; + lastModifiedByType?: CreatedByType; + lastModifiedAt?: Date; +}; + +// @public +export type ExtensionAggregateState = string; + +// @public +export interface ExtensionList { + readonly nextLink?: string; + readonly value?: Extension[]; +} + +// @public +export interface Extensions { + beginCreate(resourceGroupName: string, clusterName: string, arcSettingName: string, extensionName: string, extension: Extension, options?: ExtensionsCreateOptionalParams): Promise, ExtensionsCreateResponse>>; + beginCreateAndWait(resourceGroupName: string, clusterName: string, arcSettingName: string, extensionName: string, extension: Extension, options?: ExtensionsCreateOptionalParams): Promise; + beginDelete(resourceGroupName: string, clusterName: string, arcSettingName: string, extensionName: string, options?: ExtensionsDeleteOptionalParams): Promise, void>>; + beginDeleteAndWait(resourceGroupName: string, clusterName: string, arcSettingName: string, extensionName: string, options?: ExtensionsDeleteOptionalParams): Promise; + beginUpdate(resourceGroupName: string, clusterName: string, arcSettingName: string, extensionName: string, extension: Extension, options?: ExtensionsUpdateOptionalParams): Promise, ExtensionsUpdateResponse>>; + beginUpdateAndWait(resourceGroupName: string, clusterName: string, arcSettingName: string, extensionName: string, extension: Extension, options?: ExtensionsUpdateOptionalParams): Promise; + get(resourceGroupName: string, clusterName: string, arcSettingName: string, extensionName: string, options?: ExtensionsGetOptionalParams): Promise; + listByArcSetting(resourceGroupName: string, clusterName: string, arcSettingName: string, options?: ExtensionsListByArcSettingOptionalParams): PagedAsyncIterableIterator; +} + +// @public +export interface ExtensionsCreateOptionalParams extends coreClient.OperationOptions { + resumeFrom?: string; + updateIntervalInMs?: number; +} + +// @public +export type ExtensionsCreateResponse = Extension; + +// @public +export interface ExtensionsDeleteOptionalParams extends coreClient.OperationOptions { + resumeFrom?: string; + updateIntervalInMs?: number; +} + +// @public +export interface ExtensionsGetOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type ExtensionsGetResponse = Extension; + +// @public +export interface ExtensionsListByArcSettingNextOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type ExtensionsListByArcSettingNextResponse = ExtensionList; + +// @public +export interface ExtensionsListByArcSettingOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type ExtensionsListByArcSettingResponse = ExtensionList; + +// @public +export interface ExtensionsUpdateOptionalParams extends coreClient.OperationOptions { + resumeFrom?: string; + updateIntervalInMs?: number; +} + +// @public +export type ExtensionsUpdateResponse = Extension; + +// @public +export type ImdsAttestation = string; + +// @public +export enum KnownActionType { + // (undocumented) + Internal = "Internal" +} + +// @public +export enum KnownArcSettingAggregateState { + // (undocumented) + Canceled = "Canceled", + // (undocumented) + Connected = "Connected", + // (undocumented) + Creating = "Creating", + // (undocumented) + Deleted = "Deleted", + // (undocumented) + Deleting = "Deleting", + // (undocumented) + Disconnected = "Disconnected", + // (undocumented) + Error = "Error", + // (undocumented) + Failed = "Failed", + // (undocumented) + InProgress = "InProgress", + // (undocumented) + Moving = "Moving", + // (undocumented) + NotSpecified = "NotSpecified", + // (undocumented) + PartiallyConnected = "PartiallyConnected", + // (undocumented) + PartiallySucceeded = "PartiallySucceeded", + // (undocumented) + Succeeded = "Succeeded", + // (undocumented) + Updating = "Updating" +} + +// @public +export enum KnownCreatedByType { + // (undocumented) + Application = "Application", + // (undocumented) + Key = "Key", + // (undocumented) + ManagedIdentity = "ManagedIdentity", + // (undocumented) + User = "User" +} + +// @public +export enum KnownDiagnosticLevel { + // (undocumented) + Basic = "Basic", + // (undocumented) + Enhanced = "Enhanced", + // (undocumented) + Off = "Off" +} + +// @public +export enum KnownExtensionAggregateState { + // (undocumented) + Canceled = "Canceled", + // (undocumented) + Connected = "Connected", + // (undocumented) + Creating = "Creating", + // (undocumented) + Deleted = "Deleted", + // (undocumented) + Deleting = "Deleting", + // (undocumented) + Disconnected = "Disconnected", + // (undocumented) + Error = "Error", + // (undocumented) + Failed = "Failed", + // (undocumented) + InProgress = "InProgress", + // (undocumented) + Moving = "Moving", + // (undocumented) + NotSpecified = "NotSpecified", + // (undocumented) + PartiallyConnected = "PartiallyConnected", + // (undocumented) + PartiallySucceeded = "PartiallySucceeded", + // (undocumented) + Succeeded = "Succeeded", + // (undocumented) + Updating = "Updating" +} + +// @public +export enum KnownImdsAttestation { + // (undocumented) + Disabled = "Disabled", + // (undocumented) + Enabled = "Enabled" +} + +// @public +export enum KnownNodeArcState { + // (undocumented) + Canceled = "Canceled", + // (undocumented) + Connected = "Connected", + // (undocumented) + Creating = "Creating", + // (undocumented) + Deleted = "Deleted", + // (undocumented) + Deleting = "Deleting", + // (undocumented) + Disconnected = "Disconnected", + // (undocumented) + Error = "Error", + // (undocumented) + Failed = "Failed", + // (undocumented) + Moving = "Moving", + // (undocumented) + NotSpecified = "NotSpecified", + // (undocumented) + Succeeded = "Succeeded", + // (undocumented) + Updating = "Updating" +} + +// @public +export enum KnownNodeExtensionState { + // (undocumented) + Canceled = "Canceled", + // (undocumented) + Connected = "Connected", + // (undocumented) + Creating = "Creating", + // (undocumented) + Deleted = "Deleted", + // (undocumented) + Deleting = "Deleting", + // (undocumented) + Disconnected = "Disconnected", + // (undocumented) + Error = "Error", + // (undocumented) + Failed = "Failed", + // (undocumented) + Moving = "Moving", + // (undocumented) + NotSpecified = "NotSpecified", + // (undocumented) + Succeeded = "Succeeded", + // (undocumented) + Updating = "Updating" +} + +// @public +export enum KnownOrigin { + // (undocumented) + System = "system", + // (undocumented) + User = "user", + // (undocumented) + UserSystem = "user,system" +} + +// @public +export enum KnownProvisioningState { + // (undocumented) + Accepted = "Accepted", + // (undocumented) + Canceled = "Canceled", + // (undocumented) + Failed = "Failed", + // (undocumented) + Provisioning = "Provisioning", + // (undocumented) + Succeeded = "Succeeded" +} + +// @public +export enum KnownStatus { + // (undocumented) + ConnectedRecently = "ConnectedRecently", + // (undocumented) + Disconnected = "Disconnected", + // (undocumented) + Error = "Error", + // (undocumented) + NotConnectedRecently = "NotConnectedRecently", + // (undocumented) + NotYetRegistered = "NotYetRegistered" +} + +// @public +export enum KnownWindowsServerSubscription { + // (undocumented) + Disabled = "Disabled", + // (undocumented) + Enabled = "Enabled" +} + +// @public +export type NodeArcState = string; + +// @public +export type NodeExtensionState = string; + +// @public +export interface Operation { + readonly actionType?: ActionType; + display?: OperationDisplay; + readonly isDataAction?: boolean; + readonly name?: string; + readonly origin?: Origin; +} + +// @public +export interface OperationDisplay { + readonly description?: string; + readonly operation?: string; + readonly provider?: string; + readonly resource?: string; +} + +// @public +export interface OperationListResult { + readonly nextLink?: string; + readonly value?: Operation[]; +} + +// @public +export interface Operations { + list(options?: OperationsListOptionalParams): Promise; +} + +// @public +export interface OperationsListOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type OperationsListResponse = OperationListResult; + +// @public +export type Origin = string; + +// @public +export interface PerNodeExtensionState { + readonly extension?: string; + readonly name?: string; + readonly state?: NodeExtensionState; +} + +// @public +export interface PerNodeState { + readonly arcInstance?: string; + readonly name?: string; + readonly state?: NodeArcState; +} + +// @public +export type ProvisioningState = string; + +// @public +export type ProxyResource = Resource & {}; + +// @public +export interface Resource { + readonly id?: string; + readonly name?: string; + readonly type?: string; +} + +// @public +export type Status = string; + +// @public +export type TrackedResource = Resource & { + tags?: { + [propertyName: string]: string; + }; + location: string; +}; + +// @public +export type WindowsServerSubscription = string; + +// (No @packageDocumentation comment for this package) + +``` diff --git a/sdk/azurestackhci/arm-azurestackhci/rollup.config.js b/sdk/azurestackhci/arm-azurestackhci/rollup.config.js index 06178ceba9e5..9be1955eb7f1 100644 --- a/sdk/azurestackhci/arm-azurestackhci/rollup.config.js +++ b/sdk/azurestackhci/arm-azurestackhci/rollup.config.js @@ -1,37 +1,188 @@ -import rollup from "rollup"; -import nodeResolve from "rollup-plugin-node-resolve"; +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +import nodeResolve from "@rollup/plugin-node-resolve"; +import cjs from "@rollup/plugin-commonjs"; import sourcemaps from "rollup-plugin-sourcemaps"; +import multiEntry from "@rollup/plugin-multi-entry"; +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 /** - * @type {rollup.RollupFileOptions} + * A function that can determine whether a rollupwarning should be ignored. If + * the function returns `true`, then the warning will not be displayed. */ -const config = { - input: "./esm/azureStackHCIClient.js", - external: [ - "@azure/ms-rest-js", - "@azure/ms-rest-azure-js" - ], - output: { - file: "./dist/arm-azurestackhci.js", - format: "umd", - name: "Azure.ArmAzurestackhci", - sourcemap: true, - globals: { - "@azure/ms-rest-js": "msRest", - "@azure/ms-rest-azure-js": "msRestAzure" + +function ignoreNiseSinonEvalWarnings(warning) { + return ( + warning.code === "EVAL" && + warning.id && + (warning.id.includes("node_modules/nise") || + warning.id.includes("node_modules/sinon")) === true + ); +} + +function ignoreChaiCircularDependencyWarnings(warning) { + return ( + warning.code === "CIRCULAR_DEPENDENCY" && + warning.importer && warning.importer.includes("node_modules/chai") === true + ); +} + +const warningInhibitors = [ + ignoreChaiCircularDependencyWarnings, + ignoreNiseSinonEvalWarnings +]; + +/** + * Construct a warning handler for the shared rollup configuration + * that ignores certain warnings that are not relevant to testing. + */ +function makeOnWarnForTesting() { + return (warning, warn) => { + // If every inhibitor returns false (i.e. no inhibitors), then show the warning + if (warningInhibitors.every((inhib) => !inhib(warning))) { + warn(warning); + } + }; +} + +// #endregion + +function makeBrowserTestConfig() { + const config = { + input: { + include: ["dist-esm/test/**/*.spec.js"], + exclude: ["dist-esm/test/**/node/**"] }, - banner: `/* - * Copyright (c) Microsoft Corporation. All rights reserved. - * Licensed under the MIT License. See License.txt in the project root for license information. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */` - }, - plugins: [ - nodeResolve({ mainFields: ['module', 'main'] }), - sourcemaps() - ] + output: { + file: `dist-test/index.browser.js`, + format: "umd", + sourcemap: true + }, + preserveSymlinks: false, + plugins: [ + multiEntry({ exports: false }), + 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() + } + }), + json(), + sourcemaps() + //viz({ filename: "dist-test/browser-stats.html", sourcemap: true }) + ], + onwarn: makeOnWarnForTesting(), + // Disable tree-shaking of test code. In rollup-plugin-node-resolve@5.0.0, + // rollup started respecting the "sideEffects" field in package.json. Since + // our package.json sets "sideEffects=false", this also applies to test + // code, which causes all tests to be removed by tree-shaking. + treeshake: false + }; + + return config; +} + +const defaultConfigurationOptions = { + disableBrowserBundle: false }; -export default config; +export function makeConfig(pkg, options) { + options = { + ...defaultConfigurationOptions, + ...(options || {}) + }; + + const baseConfig = { + // Use the package's module field if it has one + input: pkg["module"] || "dist-esm/src/index.js", + external: [ + ...nodeBuiltins, + ...Object.keys(pkg.dependencies), + ...Object.keys(pkg.devDependencies) + ], + output: { file: "dist/index.js", format: "cjs", sourcemap: true }, + preserveSymlinks: false, + plugins: [sourcemaps(), nodeResolve(), cjs()] + }; + + const config = [baseConfig]; + + if (!options.disableBrowserBundle) { + config.push(makeBrowserTestConfig()); + } + + return config; +} + +export default makeConfig(require("./package.json")); diff --git a/sdk/azurestackhci/arm-azurestackhci/src/azureStackHCIClient.ts b/sdk/azurestackhci/arm-azurestackhci/src/azureStackHCIClient.ts index d4f586397e73..3c3aa649cb01 100644 --- a/sdk/azurestackhci/arm-azurestackhci/src/azureStackHCIClient.ts +++ b/sdk/azurestackhci/arm-azurestackhci/src/azureStackHCIClient.ts @@ -1,50 +1,91 @@ /* - * Copyright (c) Microsoft Corporation. All rights reserved. - * Licensed under the MIT License. See License.txt in the project root for - * license information. + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. * * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is - * regenerated. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ -import * as msRest from "@azure/ms-rest-js"; -import { TokenCredential } from "@azure/core-auth"; -import * as Models from "./models"; -import * as Mappers from "./models/mappers"; -import * as operations from "./operations"; -import { AzureStackHCIClientContext } from "./azureStackHCIClientContext"; +import * as coreClient from "@azure/core-client"; +import * as coreAuth from "@azure/core-auth"; +import { + ArcSettingsImpl, + ClustersImpl, + ExtensionsImpl, + OperationsImpl +} from "./operations"; +import { + ArcSettings, + Clusters, + Extensions, + Operations +} from "./operationsInterfaces"; +import { AzureStackHCIClientOptionalParams } from "./models"; - -class AzureStackHCIClient extends AzureStackHCIClientContext { - // Operation groups - operations: operations.Operations; - clusters: operations.Clusters; +export class AzureStackHCIClient extends coreClient.ServiceClient { + $host: string; + subscriptionId: string; + apiVersion: string; /** * Initializes a new instance of the AzureStackHCIClient class. - * @param credentials Credentials needed for the client to connect to Azure. Credentials - * implementing the TokenCredential interface from the @azure/identity package are recommended. For - * more information about these credentials, see - * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the - * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and - * @azure/ms-rest-browserauth are also supported. + * @param credentials Subscription credentials which uniquely identify client subscription. * @param subscriptionId The ID of the target subscription. - * @param [options] The parameter options + * @param options The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.AzureStackHCIClientOptions) { - super(credentials, subscriptionId, options); - this.operations = new operations.Operations(this); - this.clusters = new operations.Clusters(this); - } -} + constructor( + credentials: coreAuth.TokenCredential, + subscriptionId: string, + options?: AzureStackHCIClientOptionalParams + ) { + if (credentials === undefined) { + throw new Error("'credentials' cannot be null"); + } + if (subscriptionId === undefined) { + throw new Error("'subscriptionId' cannot be null"); + } + + // Initializing default values for options + if (!options) { + options = {}; + } + const defaults: AzureStackHCIClientOptionalParams = { + requestContentType: "application/json; charset=utf-8", + credential: credentials + }; -// Operation Specifications + const packageDetails = `azsdk-js-arm-azurestackhci/2.0.0`; + const userAgentPrefix = + options.userAgentOptions && options.userAgentOptions.userAgentPrefix + ? `${options.userAgentOptions.userAgentPrefix} ${packageDetails}` + : `${packageDetails}`; -export { - AzureStackHCIClient, - AzureStackHCIClientContext, - Models as AzureStackHCIModels, - Mappers as AzureStackHCIMappers -}; -export * from "./operations"; + if (!options.credentialScopes) { + options.credentialScopes = ["https://management.azure.com/.default"]; + } + const optionsWithDefaults = { + ...defaults, + ...options, + userAgentOptions: { + userAgentPrefix + }, + baseUri: options.endpoint || "https://management.azure.com" + }; + super(optionsWithDefaults); + // Parameter assignments + this.subscriptionId = subscriptionId; + + // Assigning values to Constant parameters + this.$host = options.$host || "https://management.azure.com"; + this.apiVersion = options.apiVersion || "2021-09-01"; + this.arcSettings = new ArcSettingsImpl(this); + this.clusters = new ClustersImpl(this); + this.extensions = new ExtensionsImpl(this); + this.operations = new OperationsImpl(this); + } + + arcSettings: ArcSettings; + clusters: Clusters; + extensions: Extensions; + operations: Operations; +} diff --git a/sdk/azurestackhci/arm-azurestackhci/src/azureStackHCIClientContext.ts b/sdk/azurestackhci/arm-azurestackhci/src/azureStackHCIClientContext.ts deleted file mode 100644 index 6a541775ad3f..000000000000 --- a/sdk/azurestackhci/arm-azurestackhci/src/azureStackHCIClientContext.ts +++ /dev/null @@ -1,68 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. All rights reserved. - * Licensed under the MIT License. See License.txt in the project root for - * license information. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is - * regenerated. - */ - -import * as Models from "./models"; -import * as msRest from "@azure/ms-rest-js"; -import { TokenCredential } from "@azure/core-auth"; -import * as msRestAzure from "@azure/ms-rest-azure-js"; - -const packageName = "@azure/arm-azurestackhci"; -const packageVersion = "1.1.0"; - -export class AzureStackHCIClientContext extends msRestAzure.AzureServiceClient { - credentials: msRest.ServiceClientCredentials | TokenCredential; - apiVersion?: string; - subscriptionId: string; - - /** - * Initializes a new instance of the AzureStackHCIClient class. - * @param credentials Credentials needed for the client to connect to Azure. Credentials - * implementing the TokenCredential interface from the @azure/identity package are recommended. For - * more information about these credentials, see - * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the - * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and - * @azure/ms-rest-browserauth are also supported. - * @param subscriptionId The ID of the target subscription. - * @param [options] The parameter options - */ - constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.AzureStackHCIClientOptions) { - if (credentials == undefined) { - throw new Error('\'credentials\' cannot be null.'); - } - if (subscriptionId == undefined) { - throw new Error('\'subscriptionId\' cannot be null.'); - } - - if (!options) { - options = {}; - } - if(!options.userAgent) { - const defaultUserAgent = msRestAzure.getDefaultUserAgentValue(); - options.userAgent = `${packageName}/${packageVersion} ${defaultUserAgent}`; - } - - super(credentials, options); - - this.apiVersion = '2020-03-01-preview'; - this.acceptLanguage = 'en-US'; - this.longRunningOperationRetryTimeout = 30; - this.baseUri = options.baseUri || this.baseUri || "https://management.azure.com"; - this.requestContentType = "application/json; charset=utf-8"; - this.credentials = credentials; - this.subscriptionId = subscriptionId; - - if(options.acceptLanguage !== null && options.acceptLanguage !== undefined) { - this.acceptLanguage = options.acceptLanguage; - } - if(options.longRunningOperationRetryTimeout !== null && options.longRunningOperationRetryTimeout !== undefined) { - this.longRunningOperationRetryTimeout = options.longRunningOperationRetryTimeout; - } - } -} diff --git a/sdk/azurestackhci/arm-azurestackhci/src/index.ts b/sdk/azurestackhci/arm-azurestackhci/src/index.ts new file mode 100644 index 000000000000..f633cd0df6d6 --- /dev/null +++ b/sdk/azurestackhci/arm-azurestackhci/src/index.ts @@ -0,0 +1,12 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +/// +export * from "./models"; +export { AzureStackHCIClient } from "./azureStackHCIClient"; +export * from "./operationsInterfaces"; diff --git a/sdk/azurestackhci/arm-azurestackhci/src/lroImpl.ts b/sdk/azurestackhci/arm-azurestackhci/src/lroImpl.ts new file mode 100644 index 000000000000..518d5f053b4e --- /dev/null +++ b/sdk/azurestackhci/arm-azurestackhci/src/lroImpl.ts @@ -0,0 +1,34 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +import { LongRunningOperation, LroResponse } from "@azure/core-lro"; + +export class LroImpl implements LongRunningOperation { + constructor( + private sendOperationFn: (args: any, spec: any) => Promise>, + private args: Record, + private spec: { + readonly requestBody?: unknown; + readonly path?: string; + readonly httpMethod: string; + } & Record, + public requestPath: string = spec.path!, + public requestMethod: string = spec.httpMethod + ) {} + public async sendInitialRequest(): Promise> { + return this.sendOperationFn(this.args, this.spec); + } + public async sendPollRequest(path: string): Promise> { + const { requestBody, ...restSpec } = this.spec; + return this.sendOperationFn(this.args, { + ...restSpec, + path, + httpMethod: "GET" + }); + } +} diff --git a/sdk/azurestackhci/arm-azurestackhci/src/models/clustersMappers.ts b/sdk/azurestackhci/arm-azurestackhci/src/models/clustersMappers.ts deleted file mode 100644 index 5eff99898d82..000000000000 --- a/sdk/azurestackhci/arm-azurestackhci/src/models/clustersMappers.ts +++ /dev/null @@ -1,23 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. All rights reserved. - * Licensed under the MIT License. See License.txt in the project root for license information. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -export { - AzureEntityResource, - BaseResource, - Cluster, - ClusterList, - ClusterNode, - ClusterReportedProperties, - ClusterUpdate, - ErrorAdditionalInfo, - ErrorResponse, - ErrorResponseError, - ProxyResource, - Resource, - TrackedResource -} from "../models/mappers"; diff --git a/sdk/azurestackhci/arm-azurestackhci/src/models/index.ts b/sdk/azurestackhci/arm-azurestackhci/src/models/index.ts index a72c11439ebe..1ce8f1596647 100644 --- a/sdk/azurestackhci/arm-azurestackhci/src/models/index.ts +++ b/sdk/azurestackhci/arm-azurestackhci/src/models/index.ts @@ -1,546 +1,955 @@ /* - * Copyright (c) Microsoft Corporation. All rights reserved. - * Licensed under the MIT License. See License.txt in the project root for license information. + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. * * Code generated by Microsoft (R) AutoRest Code Generator. * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ -import { BaseResource, CloudError, AzureServiceClientOptions } from "@azure/ms-rest-azure-js"; -import * as msRest from "@azure/ms-rest-js"; +import * as coreClient from "@azure/core-client"; -export { BaseResource, CloudError }; +/** List of ArcSetting proxy resources for the HCI cluster. */ +export interface ArcSettingList { + /** + * List of ArcSetting proxy resources. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly value?: ArcSetting[]; + /** + * Link to the next set of results. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly nextLink?: string; +} -/** - * Cluster node details. - */ -export interface ClusterNode { +/** Status of Arc agent for a particular node in HCI Cluster. */ +export interface PerNodeState { /** - * Name of the cluster node. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Name of the Node in HCI Cluster + * NOTE: This property will not be serialized. It can only be populated by the server. */ readonly name?: string; /** - * Id of the node in the cluster. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Fully qualified resource ID for the Arc agent of this node. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly id?: number; + readonly arcInstance?: string; /** - * Manufacturer of the cluster node hardware. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * State of Arc agent in this node. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly manufacturer?: string; + readonly state?: NodeArcState; +} + +/** Common fields that are returned in the response for all Azure Resource Manager resources */ +export interface Resource { /** - * Model name of the cluster node hardware. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly model?: string; + readonly id?: string; /** - * Operating system running on the cluster node. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * The name of the resource + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly osName?: string; + readonly name?: string; /** - * Version of the operating system running on the cluster node. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly osVersion?: string; + readonly type?: string; +} + +/** Common error response for all Azure Resource Manager APIs to return error details for failed operations. (This also follows the OData error response format.). */ +export interface ErrorResponse { + /** The error object. */ + error?: ErrorDetail; +} + +/** The error detail. */ +export interface ErrorDetail { /** - * Immutable id of the cluster node. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * The error code. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly serialNumber?: string; + readonly code?: string; /** - * Number of physical cores on the cluster node. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * The error message. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly coreCount?: number; + readonly message?: string; /** - * Total available memory on the cluster node (in GiB). - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * The error target. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly memoryInGiB?: number; + readonly target?: string; + /** + * The error details. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly details?: ErrorDetail[]; + /** + * The error additional info. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly additionalInfo?: ErrorAdditionalInfo[]; } -/** - * Properties reported by cluster agent. - */ +/** The resource management error additional info. */ +export interface ErrorAdditionalInfo { + /** + * The additional info type. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly type?: string; + /** + * The additional info. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly info?: Record; +} + +/** List of clusters. */ +export interface ClusterList { + /** List of clusters. */ + value?: Cluster[]; + /** + * Link to the next set of results. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly nextLink?: string; +} + +/** Desired properties of the cluster. */ +export interface ClusterDesiredProperties { + /** Desired state of Windows Server Subscription. */ + windowsServerSubscription?: WindowsServerSubscription; + /** Desired level of diagnostic data emitted by the cluster. */ + diagnosticLevel?: DiagnosticLevel; +} + +/** Properties reported by cluster agent. */ export interface ClusterReportedProperties { /** * Name of the on-prem cluster connected to this resource. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * NOTE: This property will not be serialized. It can only be populated by the server. */ readonly clusterName?: string; /** * Unique id generated by the on-prem cluster. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * NOTE: This property will not be serialized. It can only be populated by the server. */ readonly clusterId?: string; /** * Version of the cluster software. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * NOTE: This property will not be serialized. It can only be populated by the server. */ readonly clusterVersion?: string; /** * List of nodes reported by the cluster. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * NOTE: This property will not be serialized. It can only be populated by the server. */ readonly nodes?: ClusterNode[]; /** * Last time the cluster reported the data. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * NOTE: This property will not be serialized. It can only be populated by the server. */ readonly lastUpdated?: Date; -} - -/** - * An interface representing Resource. - */ -export interface Resource extends BaseResource { /** - * Fully qualified resource Id for the resource. Ex - - * /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * IMDS attestation status of the cluster. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly id?: string; + readonly imdsAttestation?: ImdsAttestation; + /** Level of diagnostic data emitted by the cluster. */ + diagnosticLevel?: DiagnosticLevel; +} + +/** Cluster node details. */ +export interface ClusterNode { /** - * The name of the resource - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Name of the cluster node. + * NOTE: This property will not be serialized. It can only be populated by the server. */ readonly name?: string; /** - * The type of the resource. Ex- Microsoft.Compute/virtualMachines or - * Microsoft.Storage/storageAccounts. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Id of the node in the cluster. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly type?: string; -} - -/** - * The resource model definition for a ARM tracked top level resource - */ -export interface TrackedResource extends Resource { + readonly id?: number; /** - * Resource tags. + * State of Windows Server Subscription. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - tags?: { [propertyName: string]: string }; + readonly windowsServerSubscription?: WindowsServerSubscription; /** - * The geo-location where the resource lives + * Manufacturer of the cluster node hardware. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - location: string; -} - -/** - * Cluster details. - */ -export interface Cluster extends TrackedResource { + readonly manufacturer?: string; /** - * Provisioning state. Possible values include: 'Succeeded', 'Failed', 'Canceled', 'Accepted', - * 'Provisioning' - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Model name of the cluster node hardware. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly provisioningState?: ProvisioningState; + readonly model?: string; /** - * Status of the cluster agent. Possible values include: 'NotYetRegistered', 'ConnectedRecently', - * 'NotConnectedRecently', 'Disconnected', 'Error' - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Operating system running on the cluster node. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly status?: Status; + readonly osName?: string; /** - * Unique, immutable resource id. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Version of the operating system running on the cluster node. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly cloudId?: string; + readonly osVersion?: string; /** - * App id of cluster AAD identity. + * Immutable id of the cluster node. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - aadClientId: string; + readonly serialNumber?: string; /** - * Tenant id of cluster AAD identity. + * Number of physical cores on the cluster node. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - aadTenantId: string; + readonly coreCount?: number; /** - * Properties reported by cluster agent. + * Total available memory on the cluster node (in GiB). + * NOTE: This property will not be serialized. It can only be populated by the server. */ - reportedProperties?: ClusterReportedProperties; + readonly memoryInGiB?: number; +} + +/** Cluster details to update. */ +export interface ClusterPatch { + /** Resource tags. */ + tags?: { [propertyName: string]: string }; + /** Endpoint configured for management from the Azure portal */ + cloudManagementEndpoint?: string; + /** App id of cluster AAD identity. */ + aadClientId?: string; + /** Tenant id of cluster AAD identity. */ + aadTenantId?: string; + /** Desired properties of the cluster. */ + desiredProperties?: ClusterDesiredProperties; +} + +/** List of Extensions in HCI cluster. */ +export interface ExtensionList { /** - * Number of days remaining in the trial period. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * List of Extensions in HCI cluster. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly trialDaysRemaining?: number; + readonly value?: Extension[]; /** - * Type of billing applied to the resource. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Link to the next set of results. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly billingModel?: string; + readonly nextLink?: string; +} + +/** Status of Arc Extension for a particular node in HCI Cluster. */ +export interface PerNodeExtensionState { /** - * First cluster sync timestamp. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Name of the node in HCI Cluster. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly registrationTimestamp?: Date; + readonly name?: string; /** - * Most recent cluster sync timestamp. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Fully qualified resource ID for the particular Arc Extension on this node. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly lastSyncTimestamp?: Date; + readonly extension?: string; /** - * Most recent billing meter timestamp. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * State of Arc Extension in this node. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly lastBillingTimestamp?: Date; + readonly state?: NodeExtensionState; } -/** - * Cluster details to update. - */ -export interface ClusterUpdate { +/** A list of REST API operations supported by an Azure Resource Provider. It contains an URL link to get the next set of results. */ +export interface OperationListResult { /** - * Resource tags. + * List of operations supported by the resource provider + * NOTE: This property will not be serialized. It can only be populated by the server. */ - tags?: { [propertyName: string]: string }; + readonly value?: Operation[]; + /** + * URL to get the next set of operation list results (if there are any). + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly nextLink?: string; } -/** - * Operation display payload - */ -export interface OperationDisplay { +/** Details of a REST API operation, returned from the Resource Provider Operations API */ +export interface Operation { /** - * Resource provider of the operation + * The name of the operation, as per Resource-Based Access Control (RBAC). Examples: "Microsoft.Compute/virtualMachines/write", "Microsoft.Compute/virtualMachines/capture/action" + * NOTE: This property will not be serialized. It can only be populated by the server. */ - provider?: string; + readonly name?: string; /** - * Resource of the operation + * Whether the operation applies to data-plane. This is "true" for data-plane operations and "false" for ARM/control-plane operations. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - resource?: string; + readonly isDataAction?: boolean; + /** Localized display information for this particular operation. */ + display?: OperationDisplay; /** - * Localized friendly name for the operation + * The intended executor of the operation; as in Resource Based Access Control (RBAC) and audit logs UX. Default value is "user,system" + * NOTE: This property will not be serialized. It can only be populated by the server. */ - operation?: string; + readonly origin?: Origin; /** - * Localized friendly description for the operation + * Enum. Indicates the action type. "Internal" refers to actions that are for internal only APIs. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - description?: string; + readonly actionType?: ActionType; } -/** - * Operation detail payload - */ -export interface OperationDetail { +/** Localized display information for this particular operation. */ +export interface OperationDisplay { /** - * Name of the operation + * The localized friendly form of the resource provider name, e.g. "Microsoft Monitoring Insights" or "Microsoft Compute". + * NOTE: This property will not be serialized. It can only be populated by the server. */ - name?: string; + readonly provider?: string; /** - * Indicates whether the operation is a data action + * The localized friendly name of the resource type related to this operation. E.g. "Virtual Machines" or "Job Schedule Collections". + * NOTE: This property will not be serialized. It can only be populated by the server. */ - isDataAction?: boolean; + readonly resource?: string; /** - * Display of the operation + * The concise, localized friendly name for the operation; suitable for dropdowns. E.g. "Create or Update Virtual Machine", "Restart Virtual Machine". + * NOTE: This property will not be serialized. It can only be populated by the server. */ - display?: OperationDisplay; + readonly operation?: string; /** - * Origin of the operation + * The short, localized friendly description of the operation; suitable for tool tips and detailed views. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - origin?: string; - /** - * Properties of the operation - */ - properties?: any; + readonly description?: string; } -/** - * Available operations of the service - */ -export interface AvailableOperations { +/** The resource model definition for a Azure Resource Manager proxy resource. It will not have tags and a location */ +export type ProxyResource = Resource & {}; + +/** The resource model definition for an Azure Resource Manager tracked top level resource which has 'tags' and a 'location' */ +export type TrackedResource = Resource & { + /** Resource tags. */ + tags?: { [propertyName: string]: string }; + /** The geo-location where the resource lives */ + location: string; +}; + +/** ArcSetting details. */ +export type ArcSetting = ProxyResource & { /** - * Collection of available operation details + * Provisioning state of the ArcSetting proxy resource. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - value?: OperationDetail[]; + readonly provisioningState?: ProvisioningState; /** - * URL client should use to fetch the next page (per server side paging). - * It's null for now, added for future use. + * The resource group that hosts the Arc agents, ie. Hybrid Compute Machine resources. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - nextLink?: string; -} - -/** - * The resource model definition for a ARM proxy resource. It will have everything other than - * required location and tags - */ -export interface ProxyResource extends Resource { -} + readonly arcInstanceResourceGroup?: string; + /** + * Aggregate state of Arc agent across the nodes in this HCI cluster. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly aggregateState?: ArcSettingAggregateState; + /** + * State of Arc agent in each of the nodes. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly perNodeDetails?: PerNodeState[]; + /** The identity that created the resource. */ + createdBy?: string; + /** The type of identity that created the resource. */ + createdByType?: CreatedByType; + /** The timestamp of resource creation (UTC). */ + createdAt?: Date; + /** The identity that last modified the resource. */ + lastModifiedBy?: string; + /** The type of identity that last modified the resource. */ + lastModifiedByType?: CreatedByType; + /** The timestamp of resource last modification (UTC) */ + lastModifiedAt?: Date; +}; -/** - * The resource model definition for a Azure Resource Manager resource with an etag. - */ -export interface AzureEntityResource extends Resource { +/** Details of a particular extension in HCI Cluster. */ +export type Extension = ProxyResource & { /** - * Resource Etag. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Provisioning state of the Extension proxy resource. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly etag?: string; -} + readonly provisioningState?: ProvisioningState; + /** + * Aggregate state of Arc Extensions across the nodes in this HCI cluster. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly aggregateState?: ExtensionAggregateState; + /** + * State of Arc Extension in each of the nodes. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly perNodeExtensionDetails?: PerNodeExtensionState[]; + /** How the extension handler should be forced to update even if the extension configuration has not changed. */ + forceUpdateTag?: string; + /** The name of the extension handler publisher. */ + publisher?: string; + /** Specifies the type of the extension; an example is "CustomScriptExtension". */ + typePropertiesExtensionParametersType?: string; + /** Specifies the version of the script handler. */ + typeHandlerVersion?: string; + /** Indicates whether the extension should use a newer minor version if one is available at deployment time. Once deployed, however, the extension will not upgrade minor versions unless redeployed, even with this property set to true. */ + autoUpgradeMinorVersion?: boolean; + /** Json formatted public settings for the extension. */ + settings?: Record; + /** Protected settings (may contain secrets). */ + protectedSettings?: Record; + /** The identity that created the resource. */ + createdBy?: string; + /** The type of identity that created the resource. */ + createdByType?: CreatedByType; + /** The timestamp of resource creation (UTC). */ + createdAt?: Date; + /** The identity that last modified the resource. */ + lastModifiedBy?: string; + /** The type of identity that last modified the resource. */ + lastModifiedByType?: CreatedByType; + /** The timestamp of resource last modification (UTC) */ + lastModifiedAt?: Date; +}; -/** - * The resource management error additional info. - */ -export interface ErrorAdditionalInfo { +/** Cluster details. */ +export type Cluster = TrackedResource & { /** - * The additional info type. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Provisioning state. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly type?: string; + readonly provisioningState?: ProvisioningState; /** - * The additional info. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Status of the cluster agent. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly info?: any; -} - -/** - * The error object. - */ -export interface ErrorResponseError { + readonly status?: Status; /** - * The error code. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Unique, immutable resource id. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly code?: string; + readonly cloudId?: string; + /** Endpoint configured for management from the Azure portal. */ + cloudManagementEndpoint?: string; + /** App id of cluster AAD identity. */ + aadClientId?: string; + /** Tenant id of cluster AAD identity. */ + aadTenantId?: string; + /** Desired properties of the cluster. */ + desiredProperties?: ClusterDesiredProperties; /** - * The error message. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Properties reported by cluster agent. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly message?: string; + readonly reportedProperties?: ClusterReportedProperties; /** - * The error target. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Number of days remaining in the trial period. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly target?: string; + readonly trialDaysRemaining?: number; /** - * The error details. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Type of billing applied to the resource. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly details?: ErrorResponse[]; + readonly billingModel?: string; /** - * The error additional info. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * First cluster sync timestamp. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly additionalInfo?: ErrorAdditionalInfo[]; -} - -/** - * The resource management error response. - */ -export interface ErrorResponse { + readonly registrationTimestamp?: Date; /** - * The error object. + * Most recent cluster sync timestamp. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - error?: ErrorResponseError; -} - -/** - * Optional Parameters. - */ -export interface ClustersUpdateOptionalParams extends msRest.RequestOptionsBase { + readonly lastSyncTimestamp?: Date; /** - * Resource tags. + * Most recent billing meter timestamp. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - tags?: { [propertyName: string]: string }; + readonly lastBillingTimestamp?: Date; + /** The identity that created the resource. */ + createdBy?: string; + /** The type of identity that created the resource. */ + createdByType?: CreatedByType; + /** The timestamp of resource creation (UTC). */ + createdAt?: Date; + /** The identity that last modified the resource. */ + lastModifiedBy?: string; + /** The type of identity that last modified the resource. */ + lastModifiedByType?: CreatedByType; + /** The timestamp of resource last modification (UTC) */ + lastModifiedAt?: Date; +}; + +/** Known values of {@link CreatedByType} that the service accepts. */ +export enum KnownCreatedByType { + User = "User", + Application = "Application", + ManagedIdentity = "ManagedIdentity", + Key = "Key" } /** - * An interface representing AzureStackHCIClientOptions. + * Defines values for CreatedByType. \ + * {@link KnownCreatedByType} can be used interchangeably with CreatedByType, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **User** \ + * **Application** \ + * **ManagedIdentity** \ + * **Key** */ -export interface AzureStackHCIClientOptions extends AzureServiceClientOptions { - baseUri?: string; +export type CreatedByType = string; + +/** Known values of {@link ProvisioningState} that the service accepts. */ +export enum KnownProvisioningState { + Succeeded = "Succeeded", + Failed = "Failed", + Canceled = "Canceled", + Accepted = "Accepted", + Provisioning = "Provisioning" } /** - * @interface - * List of clusters. - * @extends Array + * Defines values for ProvisioningState. \ + * {@link KnownProvisioningState} can be used interchangeably with ProvisioningState, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Succeeded** \ + * **Failed** \ + * **Canceled** \ + * **Accepted** \ + * **Provisioning** */ -export interface ClusterList extends Array { - /** - * Link to the next set of results. - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly nextLink?: string; +export type ProvisioningState = string; + +/** Known values of {@link ArcSettingAggregateState} that the service accepts. */ +export enum KnownArcSettingAggregateState { + NotSpecified = "NotSpecified", + Error = "Error", + Succeeded = "Succeeded", + Canceled = "Canceled", + Failed = "Failed", + Connected = "Connected", + Disconnected = "Disconnected", + Deleted = "Deleted", + Creating = "Creating", + Updating = "Updating", + Deleting = "Deleting", + Moving = "Moving", + PartiallySucceeded = "PartiallySucceeded", + PartiallyConnected = "PartiallyConnected", + InProgress = "InProgress" } /** - * Defines values for ProvisioningState. - * Possible values include: 'Succeeded', 'Failed', 'Canceled', 'Accepted', 'Provisioning' - * @readonly - * @enum {string} + * Defines values for ArcSettingAggregateState. \ + * {@link KnownArcSettingAggregateState} can be used interchangeably with ArcSettingAggregateState, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **NotSpecified** \ + * **Error** \ + * **Succeeded** \ + * **Canceled** \ + * **Failed** \ + * **Connected** \ + * **Disconnected** \ + * **Deleted** \ + * **Creating** \ + * **Updating** \ + * **Deleting** \ + * **Moving** \ + * **PartiallySucceeded** \ + * **PartiallyConnected** \ + * **InProgress** */ -export type ProvisioningState = 'Succeeded' | 'Failed' | 'Canceled' | 'Accepted' | 'Provisioning'; +export type ArcSettingAggregateState = string; + +/** Known values of {@link NodeArcState} that the service accepts. */ +export enum KnownNodeArcState { + NotSpecified = "NotSpecified", + Error = "Error", + Succeeded = "Succeeded", + Canceled = "Canceled", + Failed = "Failed", + Connected = "Connected", + Disconnected = "Disconnected", + Deleted = "Deleted", + Creating = "Creating", + Updating = "Updating", + Deleting = "Deleting", + Moving = "Moving" +} /** - * Defines values for Status. - * Possible values include: 'NotYetRegistered', 'ConnectedRecently', 'NotConnectedRecently', - * 'Disconnected', 'Error' - * @readonly - * @enum {string} + * Defines values for NodeArcState. \ + * {@link KnownNodeArcState} can be used interchangeably with NodeArcState, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **NotSpecified** \ + * **Error** \ + * **Succeeded** \ + * **Canceled** \ + * **Failed** \ + * **Connected** \ + * **Disconnected** \ + * **Deleted** \ + * **Creating** \ + * **Updating** \ + * **Deleting** \ + * **Moving** */ -export type Status = 'NotYetRegistered' | 'ConnectedRecently' | 'NotConnectedRecently' | 'Disconnected' | 'Error'; +export type NodeArcState = string; + +/** Known values of {@link Status} that the service accepts. */ +export enum KnownStatus { + NotYetRegistered = "NotYetRegistered", + ConnectedRecently = "ConnectedRecently", + NotConnectedRecently = "NotConnectedRecently", + Disconnected = "Disconnected", + Error = "Error" +} /** - * Contains response data for the list operation. + * Defines values for Status. \ + * {@link KnownStatus} can be used interchangeably with Status, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **NotYetRegistered** \ + * **ConnectedRecently** \ + * **NotConnectedRecently** \ + * **Disconnected** \ + * **Error** */ -export type OperationsListResponse = AvailableOperations & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; +export type Status = string; - /** - * The response body as parsed JSON or XML - */ - parsedBody: AvailableOperations; - }; -}; +/** Known values of {@link WindowsServerSubscription} that the service accepts. */ +export enum KnownWindowsServerSubscription { + Disabled = "Disabled", + Enabled = "Enabled" +} /** - * Contains response data for the list operation. + * Defines values for WindowsServerSubscription. \ + * {@link KnownWindowsServerSubscription} can be used interchangeably with WindowsServerSubscription, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Disabled** \ + * **Enabled** */ -export type ClustersListResponse = ClusterList & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; +export type WindowsServerSubscription = string; - /** - * The response body as parsed JSON or XML - */ - parsedBody: ClusterList; - }; -}; +/** Known values of {@link DiagnosticLevel} that the service accepts. */ +export enum KnownDiagnosticLevel { + Off = "Off", + Basic = "Basic", + Enhanced = "Enhanced" +} /** - * Contains response data for the listByResourceGroup operation. + * Defines values for DiagnosticLevel. \ + * {@link KnownDiagnosticLevel} can be used interchangeably with DiagnosticLevel, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Off** \ + * **Basic** \ + * **Enhanced** */ -export type ClustersListByResourceGroupResponse = ClusterList & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; +export type DiagnosticLevel = string; - /** - * The response body as parsed JSON or XML - */ - parsedBody: ClusterList; - }; -}; +/** Known values of {@link ImdsAttestation} that the service accepts. */ +export enum KnownImdsAttestation { + Disabled = "Disabled", + Enabled = "Enabled" +} /** - * Contains response data for the get operation. + * Defines values for ImdsAttestation. \ + * {@link KnownImdsAttestation} can be used interchangeably with ImdsAttestation, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Disabled** \ + * **Enabled** */ -export type ClustersGetResponse = Cluster & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; - - /** - * The response body as parsed JSON or XML - */ - parsedBody: Cluster; - }; -}; +export type ImdsAttestation = string; + +/** Known values of {@link ExtensionAggregateState} that the service accepts. */ +export enum KnownExtensionAggregateState { + NotSpecified = "NotSpecified", + Error = "Error", + Succeeded = "Succeeded", + Canceled = "Canceled", + Failed = "Failed", + Connected = "Connected", + Disconnected = "Disconnected", + Deleted = "Deleted", + Creating = "Creating", + Updating = "Updating", + Deleting = "Deleting", + Moving = "Moving", + PartiallySucceeded = "PartiallySucceeded", + PartiallyConnected = "PartiallyConnected", + InProgress = "InProgress" +} /** - * Contains response data for the create operation. + * Defines values for ExtensionAggregateState. \ + * {@link KnownExtensionAggregateState} can be used interchangeably with ExtensionAggregateState, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **NotSpecified** \ + * **Error** \ + * **Succeeded** \ + * **Canceled** \ + * **Failed** \ + * **Connected** \ + * **Disconnected** \ + * **Deleted** \ + * **Creating** \ + * **Updating** \ + * **Deleting** \ + * **Moving** \ + * **PartiallySucceeded** \ + * **PartiallyConnected** \ + * **InProgress** */ -export type ClustersCreateResponse = Cluster & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; - - /** - * The response body as parsed JSON or XML - */ - parsedBody: Cluster; - }; -}; +export type ExtensionAggregateState = string; + +/** Known values of {@link NodeExtensionState} that the service accepts. */ +export enum KnownNodeExtensionState { + NotSpecified = "NotSpecified", + Error = "Error", + Succeeded = "Succeeded", + Canceled = "Canceled", + Failed = "Failed", + Connected = "Connected", + Disconnected = "Disconnected", + Deleted = "Deleted", + Creating = "Creating", + Updating = "Updating", + Deleting = "Deleting", + Moving = "Moving" +} /** - * Contains response data for the update operation. + * Defines values for NodeExtensionState. \ + * {@link KnownNodeExtensionState} can be used interchangeably with NodeExtensionState, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **NotSpecified** \ + * **Error** \ + * **Succeeded** \ + * **Canceled** \ + * **Failed** \ + * **Connected** \ + * **Disconnected** \ + * **Deleted** \ + * **Creating** \ + * **Updating** \ + * **Deleting** \ + * **Moving** */ -export type ClustersUpdateResponse = Cluster & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; +export type NodeExtensionState = string; - /** - * The response body as parsed JSON or XML - */ - parsedBody: Cluster; - }; -}; +/** Known values of {@link Origin} that the service accepts. */ +export enum KnownOrigin { + User = "user", + System = "system", + UserSystem = "user,system" +} /** - * Contains response data for the listNext operation. + * Defines values for Origin. \ + * {@link KnownOrigin} can be used interchangeably with Origin, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **user** \ + * **system** \ + * **user,system** */ -export type ClustersListNextResponse = ClusterList & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; +export type Origin = string; - /** - * The response body as parsed JSON or XML - */ - parsedBody: ClusterList; - }; -}; +/** Known values of {@link ActionType} that the service accepts. */ +export enum KnownActionType { + Internal = "Internal" +} /** - * Contains response data for the listByResourceGroupNext operation. + * Defines values for ActionType. \ + * {@link KnownActionType} can be used interchangeably with ActionType, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Internal** */ -export type ClustersListByResourceGroupNextResponse = ClusterList & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; +export type ActionType = string; - /** - * The response body as parsed JSON or XML - */ - parsedBody: ClusterList; - }; -}; +/** Optional parameters. */ +export interface ArcSettingsListByClusterOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the listByCluster operation. */ +export type ArcSettingsListByClusterResponse = ArcSettingList; + +/** Optional parameters. */ +export interface ArcSettingsGetOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the get operation. */ +export type ArcSettingsGetResponse = ArcSetting; + +/** Optional parameters. */ +export interface ArcSettingsCreateOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the create operation. */ +export type ArcSettingsCreateResponse = ArcSetting; + +/** Optional parameters. */ +export interface ArcSettingsDeleteOptionalParams + 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 ArcSettingsListByClusterNextOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the listByClusterNext operation. */ +export type ArcSettingsListByClusterNextResponse = ArcSettingList; + +/** Optional parameters. */ +export interface ClustersListBySubscriptionOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the listBySubscription operation. */ +export type ClustersListBySubscriptionResponse = ClusterList; + +/** Optional parameters. */ +export interface ClustersListByResourceGroupOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the listByResourceGroup operation. */ +export type ClustersListByResourceGroupResponse = ClusterList; + +/** Optional parameters. */ +export interface ClustersGetOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the get operation. */ +export type ClustersGetResponse = Cluster; + +/** Optional parameters. */ +export interface ClustersCreateOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the create operation. */ +export type ClustersCreateResponse = Cluster; + +/** Optional parameters. */ +export interface ClustersUpdateOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the update operation. */ +export type ClustersUpdateResponse = Cluster; + +/** Optional parameters. */ +export interface ClustersDeleteOptionalParams + extends coreClient.OperationOptions {} + +/** Optional parameters. */ +export interface ClustersListBySubscriptionNextOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the listBySubscriptionNext operation. */ +export type ClustersListBySubscriptionNextResponse = ClusterList; + +/** Optional parameters. */ +export interface ClustersListByResourceGroupNextOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the listByResourceGroupNext operation. */ +export type ClustersListByResourceGroupNextResponse = ClusterList; + +/** Optional parameters. */ +export interface ExtensionsListByArcSettingOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the listByArcSetting operation. */ +export type ExtensionsListByArcSettingResponse = ExtensionList; + +/** Optional parameters. */ +export interface ExtensionsGetOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the get operation. */ +export type ExtensionsGetResponse = Extension; + +/** Optional parameters. */ +export interface ExtensionsCreateOptionalParams + 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; +} + +/** Contains response data for the create operation. */ +export type ExtensionsCreateResponse = Extension; + +/** Optional parameters. */ +export interface ExtensionsUpdateOptionalParams + 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; +} + +/** Contains response data for the update operation. */ +export type ExtensionsUpdateResponse = Extension; + +/** Optional parameters. */ +export interface ExtensionsDeleteOptionalParams + 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 ExtensionsListByArcSettingNextOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the listByArcSettingNext operation. */ +export type ExtensionsListByArcSettingNextResponse = ExtensionList; + +/** Optional parameters. */ +export interface OperationsListOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the list operation. */ +export type OperationsListResponse = OperationListResult; + +/** Optional parameters. */ +export interface AzureStackHCIClientOptionalParams + extends coreClient.ServiceClientOptions { + /** server parameter */ + $host?: string; + /** Api Version */ + apiVersion?: string; + /** Overrides client endpoint. */ + endpoint?: string; +} diff --git a/sdk/azurestackhci/arm-azurestackhci/src/models/mappers.ts b/sdk/azurestackhci/arm-azurestackhci/src/models/mappers.ts index 79dcf481ddc1..e16e5ca36686 100644 --- a/sdk/azurestackhci/arm-azurestackhci/src/models/mappers.ts +++ b/sdk/azurestackhci/arm-azurestackhci/src/models/mappers.ts @@ -1,193 +1,218 @@ /* - * Copyright (c) Microsoft Corporation. All rights reserved. - * Licensed under the MIT License. See License.txt in the project root for license information. + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. * * Code generated by Microsoft (R) AutoRest Code Generator. * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ -import { CloudErrorMapper, BaseResourceMapper } from "@azure/ms-rest-azure-js"; -import * as msRest from "@azure/ms-rest-js"; +import * as coreClient from "@azure/core-client"; -export const CloudError = CloudErrorMapper; -export const BaseResource = BaseResourceMapper; - -export const ClusterNode: msRest.CompositeMapper = { - serializedName: "ClusterNode", +export const ArcSettingList: coreClient.CompositeMapper = { type: { name: "Composite", - className: "ClusterNode", + className: "ArcSettingList", modelProperties: { - name: { + value: { + serializedName: "value", readOnly: true, - serializedName: "name", type: { - name: "String" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ArcSetting" + } + } } }, - id: { + nextLink: { + serializedName: "nextLink", readOnly: true, - serializedName: "id", type: { - name: "Number" + name: "String" } - }, - manufacturer: { + } + } + } +}; + +export const PerNodeState: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "PerNodeState", + modelProperties: { + name: { + serializedName: "name", readOnly: true, - serializedName: "manufacturer", type: { name: "String" } }, - model: { + arcInstance: { + serializedName: "arcInstance", readOnly: true, - serializedName: "model", type: { name: "String" } }, - osName: { + state: { + serializedName: "state", readOnly: true, - serializedName: "osName", type: { name: "String" } - }, - osVersion: { + } + } + } +}; + +export const Resource: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "Resource", + modelProperties: { + id: { + serializedName: "id", readOnly: true, - serializedName: "osVersion", type: { name: "String" } }, - serialNumber: { + name: { + serializedName: "name", readOnly: true, - serializedName: "serialNumber", type: { name: "String" } }, - coreCount: { + type: { + serializedName: "type", readOnly: true, - serializedName: "coreCount", type: { - name: "Number" + name: "String" } - }, - memoryInGiB: { - readOnly: true, - serializedName: "memoryInGiB", + } + } + } +}; + +export const ErrorResponse: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ErrorResponse", + modelProperties: { + error: { + serializedName: "error", type: { - name: "Number" + name: "Composite", + className: "ErrorDetail" } } } } }; -export const ClusterReportedProperties: msRest.CompositeMapper = { - serializedName: "ClusterReportedProperties", +export const ErrorDetail: coreClient.CompositeMapper = { type: { name: "Composite", - className: "ClusterReportedProperties", + className: "ErrorDetail", modelProperties: { - clusterName: { + code: { + serializedName: "code", readOnly: true, - serializedName: "clusterName", type: { name: "String" } }, - clusterId: { + message: { + serializedName: "message", readOnly: true, - serializedName: "clusterId", type: { name: "String" } }, - clusterVersion: { + target: { + serializedName: "target", readOnly: true, - serializedName: "clusterVersion", type: { name: "String" } }, - nodes: { + details: { + serializedName: "details", readOnly: true, - serializedName: "nodes", type: { name: "Sequence", element: { type: { name: "Composite", - className: "ClusterNode" + className: "ErrorDetail" } } } }, - lastUpdated: { + additionalInfo: { + serializedName: "additionalInfo", readOnly: true, - serializedName: "lastUpdated", type: { - name: "DateTime" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ErrorAdditionalInfo" + } + } } } } } }; -export const Resource: msRest.CompositeMapper = { - serializedName: "Resource", +export const ErrorAdditionalInfo: coreClient.CompositeMapper = { type: { name: "Composite", - className: "Resource", + className: "ErrorAdditionalInfo", modelProperties: { - id: { - readOnly: true, - serializedName: "id", - type: { - name: "String" - } - }, - name: { + type: { + serializedName: "type", readOnly: true, - serializedName: "name", type: { name: "String" } }, - type: { + info: { + serializedName: "info", readOnly: true, - serializedName: "type", type: { - name: "String" + name: "Dictionary", + value: { type: { name: "any" } } } } } } }; -export const TrackedResource: msRest.CompositeMapper = { - serializedName: "TrackedResource", +export const ClusterList: coreClient.CompositeMapper = { type: { name: "Composite", - className: "TrackedResource", + className: "ClusterList", modelProperties: { - ...Resource.type.modelProperties, - tags: { - serializedName: "tags", + value: { + serializedName: "value", type: { - name: "Dictionary", - value: { + name: "Sequence", + element: { type: { - name: "String" + name: "Composite", + className: "Cluster" } } } }, - location: { - required: true, - serializedName: "location", + nextLink: { + serializedName: "nextLink", + readOnly: true, type: { name: "String" } @@ -196,210 +221,231 @@ export const TrackedResource: msRest.CompositeMapper = { } }; -export const Cluster: msRest.CompositeMapper = { - serializedName: "Cluster", +export const ClusterDesiredProperties: coreClient.CompositeMapper = { type: { name: "Composite", - className: "Cluster", + className: "ClusterDesiredProperties", modelProperties: { - ...TrackedResource.type.modelProperties, - provisioningState: { - readOnly: true, - serializedName: "properties.provisioningState", + windowsServerSubscription: { + serializedName: "windowsServerSubscription", type: { name: "String" } }, - status: { - readOnly: true, - serializedName: "properties.status", + diagnosticLevel: { + serializedName: "diagnosticLevel", type: { name: "String" } - }, - cloudId: { + } + } + } +}; + +export const ClusterReportedProperties: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ClusterReportedProperties", + modelProperties: { + clusterName: { + serializedName: "clusterName", readOnly: true, - serializedName: "properties.cloudId", - type: { - name: "String" - } - }, - aadClientId: { - required: true, - serializedName: "properties.aadClientId", - type: { - name: "String" - } - }, - aadTenantId: { - required: true, - serializedName: "properties.aadTenantId", type: { name: "String" } }, - reportedProperties: { - serializedName: "properties.reportedProperties", - type: { - name: "Composite", - className: "ClusterReportedProperties" - } - }, - trialDaysRemaining: { + clusterId: { + serializedName: "clusterId", readOnly: true, - serializedName: "properties.trialDaysRemaining", type: { - name: "Number" + name: "String" } }, - billingModel: { + clusterVersion: { + serializedName: "clusterVersion", readOnly: true, - serializedName: "properties.billingModel", type: { name: "String" } }, - registrationTimestamp: { + nodes: { + serializedName: "nodes", readOnly: true, - serializedName: "properties.registrationTimestamp", type: { - name: "DateTime" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ClusterNode" + } + } } }, - lastSyncTimestamp: { + lastUpdated: { + serializedName: "lastUpdated", readOnly: true, - serializedName: "properties.lastSyncTimestamp", type: { name: "DateTime" } }, - lastBillingTimestamp: { + imdsAttestation: { + serializedName: "imdsAttestation", readOnly: true, - serializedName: "properties.lastBillingTimestamp", type: { - name: "DateTime" + name: "String" } - } - } - } -}; - -export const ClusterUpdate: msRest.CompositeMapper = { - serializedName: "ClusterUpdate", - type: { - name: "Composite", - className: "ClusterUpdate", - modelProperties: { - tags: { - serializedName: "tags", + }, + diagnosticLevel: { + serializedName: "diagnosticLevel", type: { - name: "Dictionary", - value: { - type: { - name: "String" - } - } + name: "String" } } } } }; -export const OperationDisplay: msRest.CompositeMapper = { - serializedName: "OperationDisplay", +export const ClusterNode: coreClient.CompositeMapper = { type: { name: "Composite", - className: "OperationDisplay", + className: "ClusterNode", modelProperties: { - provider: { - serializedName: "provider", + name: { + serializedName: "name", + readOnly: true, type: { name: "String" } }, - resource: { - serializedName: "resource", + id: { + serializedName: "id", + readOnly: true, type: { - name: "String" + name: "Number" } }, - operation: { - serializedName: "operation", + windowsServerSubscription: { + serializedName: "windowsServerSubscription", + readOnly: true, type: { name: "String" } }, - description: { - serializedName: "description", + manufacturer: { + serializedName: "manufacturer", + readOnly: true, type: { name: "String" } - } + }, + model: { + serializedName: "model", + readOnly: true, + type: { + name: "String" + } + }, + osName: { + serializedName: "osName", + readOnly: true, + type: { + name: "String" + } + }, + osVersion: { + serializedName: "osVersion", + readOnly: true, + type: { + name: "String" + } + }, + serialNumber: { + serializedName: "serialNumber", + readOnly: true, + type: { + name: "String" + } + }, + coreCount: { + serializedName: "coreCount", + readOnly: true, + type: { + name: "Number" + } + }, + memoryInGiB: { + serializedName: "memoryInGiB", + readOnly: true, + type: { + name: "Number" + } + } } } }; -export const OperationDetail: msRest.CompositeMapper = { - serializedName: "OperationDetail", +export const ClusterPatch: coreClient.CompositeMapper = { type: { name: "Composite", - className: "OperationDetail", + className: "ClusterPatch", modelProperties: { - name: { - serializedName: "name", + tags: { + serializedName: "tags", type: { - name: "String" + name: "Dictionary", + value: { type: { name: "String" } } } }, - isDataAction: { - serializedName: "isDataAction", + cloudManagementEndpoint: { + serializedName: "properties.cloudManagementEndpoint", type: { - name: "Boolean" + name: "String" } }, - display: { - serializedName: "display", + aadClientId: { + serializedName: "properties.aadClientId", type: { - name: "Composite", - className: "OperationDisplay" + name: "String" } }, - origin: { - serializedName: "origin", + aadTenantId: { + serializedName: "properties.aadTenantId", type: { name: "String" } }, - properties: { - serializedName: "properties", + desiredProperties: { + serializedName: "properties.desiredProperties", type: { - name: "Object" + name: "Composite", + className: "ClusterDesiredProperties" } } } } }; -export const AvailableOperations: msRest.CompositeMapper = { - serializedName: "AvailableOperations", +export const ExtensionList: coreClient.CompositeMapper = { type: { name: "Composite", - className: "AvailableOperations", + className: "ExtensionList", modelProperties: { value: { serializedName: "value", + readOnly: true, type: { name: "Sequence", element: { type: { name: "Composite", - className: "OperationDetail" + className: "Extension" } } } }, nextLink: { serializedName: "nextLink", + readOnly: true, type: { name: "String" } @@ -408,27 +454,57 @@ export const AvailableOperations: msRest.CompositeMapper = { } }; -export const ProxyResource: msRest.CompositeMapper = { - serializedName: "ProxyResource", +export const PerNodeExtensionState: coreClient.CompositeMapper = { type: { name: "Composite", - className: "ProxyResource", + className: "PerNodeExtensionState", modelProperties: { - ...Resource.type.modelProperties + name: { + serializedName: "name", + readOnly: true, + type: { + name: "String" + } + }, + extension: { + serializedName: "extension", + readOnly: true, + type: { + name: "String" + } + }, + state: { + serializedName: "state", + readOnly: true, + type: { + name: "String" + } + } } } }; -export const AzureEntityResource: msRest.CompositeMapper = { - serializedName: "AzureEntityResource", +export const OperationListResult: coreClient.CompositeMapper = { type: { name: "Composite", - className: "AzureEntityResource", + className: "OperationListResult", modelProperties: { - ...Resource.type.modelProperties, - etag: { + value: { + serializedName: "value", + readOnly: true, + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "Operation" + } + } + } + }, + nextLink: { + serializedName: "nextLink", readOnly: true, - serializedName: "etag", type: { name: "String" } @@ -437,128 +513,448 @@ export const AzureEntityResource: msRest.CompositeMapper = { } }; -export const ErrorAdditionalInfo: msRest.CompositeMapper = { - serializedName: "ErrorAdditionalInfo", +export const Operation: coreClient.CompositeMapper = { type: { name: "Composite", - className: "ErrorAdditionalInfo", + className: "Operation", modelProperties: { - type: { + name: { + serializedName: "name", readOnly: true, - serializedName: "type", type: { name: "String" } }, - info: { + isDataAction: { + serializedName: "isDataAction", readOnly: true, - serializedName: "info", type: { - name: "Object" + name: "Boolean" + } + }, + display: { + serializedName: "display", + type: { + name: "Composite", + className: "OperationDisplay" + } + }, + origin: { + serializedName: "origin", + readOnly: true, + type: { + name: "String" + } + }, + actionType: { + serializedName: "actionType", + readOnly: true, + type: { + name: "String" } } } } }; -export const ErrorResponseError: msRest.CompositeMapper = { - serializedName: "ErrorResponse_error", +export const OperationDisplay: coreClient.CompositeMapper = { type: { name: "Composite", - className: "ErrorResponseError", + className: "OperationDisplay", modelProperties: { - code: { + provider: { + serializedName: "provider", readOnly: true, - serializedName: "code", type: { name: "String" } }, - message: { + resource: { + serializedName: "resource", readOnly: true, - serializedName: "message", type: { name: "String" } }, - target: { + operation: { + serializedName: "operation", readOnly: true, - serializedName: "target", type: { name: "String" } }, - details: { + description: { + serializedName: "description", readOnly: true, - serializedName: "details", type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "ErrorResponse" - } - } + name: "String" + } + } + } + } +}; + +export const ProxyResource: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ProxyResource", + modelProperties: { + ...Resource.type.modelProperties + } + } +}; + +export const TrackedResource: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "TrackedResource", + modelProperties: { + ...Resource.type.modelProperties, + tags: { + serializedName: "tags", + type: { + name: "Dictionary", + value: { type: { name: "String" } } } }, - additionalInfo: { + location: { + serializedName: "location", + required: true, + type: { + name: "String" + } + } + } + } +}; + +export const ArcSetting: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ArcSetting", + modelProperties: { + ...ProxyResource.type.modelProperties, + provisioningState: { + serializedName: "properties.provisioningState", + readOnly: true, + type: { + name: "String" + } + }, + arcInstanceResourceGroup: { + serializedName: "properties.arcInstanceResourceGroup", + readOnly: true, + type: { + name: "String" + } + }, + aggregateState: { + serializedName: "properties.aggregateState", + readOnly: true, + type: { + name: "String" + } + }, + perNodeDetails: { + serializedName: "properties.perNodeDetails", readOnly: true, - serializedName: "additionalInfo", type: { name: "Sequence", element: { type: { name: "Composite", - className: "ErrorAdditionalInfo" + className: "PerNodeState" } } } + }, + createdBy: { + serializedName: "systemData.createdBy", + type: { + name: "String" + } + }, + createdByType: { + serializedName: "systemData.createdByType", + type: { + name: "String" + } + }, + createdAt: { + serializedName: "systemData.createdAt", + type: { + name: "DateTime" + } + }, + lastModifiedBy: { + serializedName: "systemData.lastModifiedBy", + type: { + name: "String" + } + }, + lastModifiedByType: { + serializedName: "systemData.lastModifiedByType", + type: { + name: "String" + } + }, + lastModifiedAt: { + serializedName: "systemData.lastModifiedAt", + type: { + name: "DateTime" + } } } } }; -export const ErrorResponse: msRest.CompositeMapper = { - serializedName: "ErrorResponse", +export const Extension: coreClient.CompositeMapper = { type: { name: "Composite", - className: "ErrorResponse", + className: "Extension", modelProperties: { - error: { - serializedName: "error", + ...ProxyResource.type.modelProperties, + provisioningState: { + serializedName: "properties.provisioningState", + readOnly: true, type: { - name: "Composite", - className: "ErrorResponseError" + name: "String" + } + }, + aggregateState: { + serializedName: "properties.aggregateState", + readOnly: true, + type: { + name: "String" + } + }, + perNodeExtensionDetails: { + serializedName: "properties.perNodeExtensionDetails", + readOnly: true, + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "PerNodeExtensionState" + } + } + } + }, + forceUpdateTag: { + serializedName: "properties.extensionParameters.forceUpdateTag", + type: { + name: "String" + } + }, + publisher: { + serializedName: "properties.extensionParameters.publisher", + type: { + name: "String" + } + }, + typePropertiesExtensionParametersType: { + serializedName: "properties.extensionParameters.type", + type: { + name: "String" + } + }, + typeHandlerVersion: { + serializedName: "properties.extensionParameters.typeHandlerVersion", + type: { + name: "String" + } + }, + autoUpgradeMinorVersion: { + serializedName: + "properties.extensionParameters.autoUpgradeMinorVersion", + type: { + name: "Boolean" + } + }, + settings: { + serializedName: "properties.extensionParameters.settings", + type: { + name: "Dictionary", + value: { type: { name: "any" } } + } + }, + protectedSettings: { + serializedName: "properties.extensionParameters.protectedSettings", + type: { + name: "Dictionary", + value: { type: { name: "any" } } + } + }, + createdBy: { + serializedName: "systemData.createdBy", + type: { + name: "String" + } + }, + createdByType: { + serializedName: "systemData.createdByType", + type: { + name: "String" + } + }, + createdAt: { + serializedName: "systemData.createdAt", + type: { + name: "DateTime" + } + }, + lastModifiedBy: { + serializedName: "systemData.lastModifiedBy", + type: { + name: "String" + } + }, + lastModifiedByType: { + serializedName: "systemData.lastModifiedByType", + type: { + name: "String" + } + }, + lastModifiedAt: { + serializedName: "systemData.lastModifiedAt", + type: { + name: "DateTime" } } } } }; -export const ClusterList: msRest.CompositeMapper = { - serializedName: "ClusterList", +export const Cluster: coreClient.CompositeMapper = { type: { name: "Composite", - className: "ClusterList", + className: "Cluster", modelProperties: { - value: { - serializedName: "", + ...TrackedResource.type.modelProperties, + provisioningState: { + serializedName: "properties.provisioningState", + readOnly: true, type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "Cluster" - } - } + name: "String" } }, - nextLink: { + status: { + serializedName: "properties.status", readOnly: true, - serializedName: "nextLink", type: { name: "String" } + }, + cloudId: { + serializedName: "properties.cloudId", + readOnly: true, + type: { + name: "String" + } + }, + cloudManagementEndpoint: { + serializedName: "properties.cloudManagementEndpoint", + type: { + name: "String" + } + }, + aadClientId: { + serializedName: "properties.aadClientId", + type: { + name: "String" + } + }, + aadTenantId: { + serializedName: "properties.aadTenantId", + type: { + name: "String" + } + }, + desiredProperties: { + serializedName: "properties.desiredProperties", + type: { + name: "Composite", + className: "ClusterDesiredProperties" + } + }, + reportedProperties: { + serializedName: "properties.reportedProperties", + type: { + name: "Composite", + className: "ClusterReportedProperties" + } + }, + trialDaysRemaining: { + serializedName: "properties.trialDaysRemaining", + readOnly: true, + type: { + name: "Number" + } + }, + billingModel: { + serializedName: "properties.billingModel", + readOnly: true, + type: { + name: "String" + } + }, + registrationTimestamp: { + serializedName: "properties.registrationTimestamp", + readOnly: true, + type: { + name: "DateTime" + } + }, + lastSyncTimestamp: { + serializedName: "properties.lastSyncTimestamp", + readOnly: true, + type: { + name: "DateTime" + } + }, + lastBillingTimestamp: { + serializedName: "properties.lastBillingTimestamp", + readOnly: true, + type: { + name: "DateTime" + } + }, + createdBy: { + serializedName: "systemData.createdBy", + type: { + name: "String" + } + }, + createdByType: { + serializedName: "systemData.createdByType", + type: { + name: "String" + } + }, + createdAt: { + serializedName: "systemData.createdAt", + type: { + name: "DateTime" + } + }, + lastModifiedBy: { + serializedName: "systemData.lastModifiedBy", + type: { + name: "String" + } + }, + lastModifiedByType: { + serializedName: "systemData.lastModifiedByType", + type: { + name: "String" + } + }, + lastModifiedAt: { + serializedName: "systemData.lastModifiedAt", + type: { + name: "DateTime" + } } } } diff --git a/sdk/azurestackhci/arm-azurestackhci/src/models/operationsMappers.ts b/sdk/azurestackhci/arm-azurestackhci/src/models/operationsMappers.ts deleted file mode 100644 index ee870560220e..000000000000 --- a/sdk/azurestackhci/arm-azurestackhci/src/models/operationsMappers.ts +++ /dev/null @@ -1,16 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. All rights reserved. - * Licensed under the MIT License. See License.txt in the project root for license information. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -export { - AvailableOperations, - ErrorAdditionalInfo, - ErrorResponse, - ErrorResponseError, - OperationDetail, - OperationDisplay -} from "../models/mappers"; diff --git a/sdk/azurestackhci/arm-azurestackhci/src/models/parameters.ts b/sdk/azurestackhci/arm-azurestackhci/src/models/parameters.ts index 2d791ec70bf2..4af20c93c4de 100644 --- a/sdk/azurestackhci/arm-azurestackhci/src/models/parameters.ts +++ b/sdk/azurestackhci/arm-azurestackhci/src/models/parameters.ts @@ -1,84 +1,161 @@ /* - * Copyright (c) Microsoft Corporation. All rights reserved. - * Licensed under the MIT License. See License.txt in the project root for - * license information. + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. * * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is - * regenerated. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ -import * as msRest from "@azure/ms-rest-js"; +import { + OperationParameter, + OperationURLParameter, + OperationQueryParameter +} from "@azure/core-client"; +import { + ArcSetting as ArcSettingMapper, + Cluster as ClusterMapper, + ClusterPatch as ClusterPatchMapper, + Extension as ExtensionMapper +} from "../models/mappers"; -export const acceptLanguage: msRest.OperationParameter = { - parameterPath: "acceptLanguage", +export const accept: OperationParameter = { + parameterPath: "accept", mapper: { - serializedName: "accept-language", - defaultValue: 'en-US', + defaultValue: "application/json", + isConstant: true, + serializedName: "Accept", type: { name: "String" } } }; -export const apiVersion: msRest.OperationQueryParameter = { - parameterPath: "apiVersion", + +export const $host: OperationURLParameter = { + parameterPath: "$host", mapper: { + serializedName: "$host", required: true, - serializedName: "api-version", + type: { + name: "String" + } + }, + skipEncoding: true +}; + +export const subscriptionId: OperationURLParameter = { + parameterPath: "subscriptionId", + mapper: { constraints: { MinLength: 1 }, + serializedName: "subscriptionId", + required: true, type: { name: "String" } } }; -export const clusterName: msRest.OperationURLParameter = { - parameterPath: "clusterName", + +export const resourceGroupName: OperationURLParameter = { + parameterPath: "resourceGroupName", mapper: { + constraints: { + MaxLength: 90, + MinLength: 1 + }, + serializedName: "resourceGroupName", required: true, - serializedName: "clusterName", type: { name: "String" } } }; -export const nextPageLink: msRest.OperationURLParameter = { - parameterPath: "nextPageLink", + +export const clusterName: OperationURLParameter = { + parameterPath: "clusterName", mapper: { + serializedName: "clusterName", required: true, - serializedName: "nextLink", type: { name: "String" } - }, - skipEncoding: true + } }; -export const resourceGroupName: msRest.OperationURLParameter = { - parameterPath: "resourceGroupName", + +export const apiVersion: OperationQueryParameter = { + parameterPath: "apiVersion", + mapper: { + defaultValue: "2021-09-01", + isConstant: true, + serializedName: "api-version", + type: { + name: "String" + } + } +}; + +export const arcSettingName: OperationURLParameter = { + parameterPath: "arcSettingName", mapper: { + serializedName: "arcSettingName", required: true, - serializedName: "resourceGroupName", - constraints: { - MaxLength: 90, - MinLength: 1, - Pattern: /^[-\w\._\(\)]+$/ - }, type: { name: "String" } } }; -export const subscriptionId: msRest.OperationURLParameter = { - parameterPath: "subscriptionId", + +export const contentType: OperationParameter = { + parameterPath: ["options", "contentType"], + mapper: { + defaultValue: "application/json", + isConstant: true, + serializedName: "Content-Type", + type: { + name: "String" + } + } +}; + +export const arcSetting: OperationParameter = { + parameterPath: "arcSetting", + mapper: ArcSettingMapper +}; + +export const nextLink: OperationURLParameter = { + parameterPath: "nextLink", + mapper: { + serializedName: "nextLink", + required: true, + type: { + name: "String" + } + }, + skipEncoding: true +}; + +export const cluster: OperationParameter = { + parameterPath: "cluster", + mapper: ClusterMapper +}; + +export const cluster1: OperationParameter = { + parameterPath: "cluster", + mapper: ClusterPatchMapper +}; + +export const extensionName: OperationURLParameter = { + parameterPath: "extensionName", mapper: { + serializedName: "extensionName", required: true, - serializedName: "subscriptionId", - constraints: { - MinLength: 1 - }, type: { name: "String" } } }; + +export const extension: OperationParameter = { + parameterPath: "extension", + mapper: ExtensionMapper +}; diff --git a/sdk/azurestackhci/arm-azurestackhci/src/operations/arcSettings.ts b/sdk/azurestackhci/arm-azurestackhci/src/operations/arcSettings.ts new file mode 100644 index 000000000000..90c049668791 --- /dev/null +++ b/sdk/azurestackhci/arm-azurestackhci/src/operations/arcSettings.ts @@ -0,0 +1,394 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +import { PagedAsyncIterableIterator } from "@azure/core-paging"; +import { ArcSettings } from "../operationsInterfaces"; +import * as coreClient from "@azure/core-client"; +import * as Mappers from "../models/mappers"; +import * as Parameters from "../models/parameters"; +import { AzureStackHCIClient } from "../azureStackHCIClient"; +import { PollerLike, PollOperationState, LroEngine } from "@azure/core-lro"; +import { LroImpl } from "../lroImpl"; +import { + ArcSetting, + ArcSettingsListByClusterNextOptionalParams, + ArcSettingsListByClusterOptionalParams, + ArcSettingsListByClusterResponse, + ArcSettingsGetOptionalParams, + ArcSettingsGetResponse, + ArcSettingsCreateOptionalParams, + ArcSettingsCreateResponse, + ArcSettingsDeleteOptionalParams, + ArcSettingsListByClusterNextResponse +} from "../models"; + +/// +/** Class containing ArcSettings operations. */ +export class ArcSettingsImpl implements ArcSettings { + private readonly client: AzureStackHCIClient; + + /** + * Initialize a new instance of the class ArcSettings class. + * @param client Reference to the service client + */ + constructor(client: AzureStackHCIClient) { + this.client = client; + } + + /** + * Get ArcSetting resources of HCI Cluster. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param clusterName The name of the cluster. + * @param options The options parameters. + */ + public listByCluster( + resourceGroupName: string, + clusterName: string, + options?: ArcSettingsListByClusterOptionalParams + ): PagedAsyncIterableIterator { + const iter = this.listByClusterPagingAll( + resourceGroupName, + clusterName, + options + ); + return { + next() { + return iter.next(); + }, + [Symbol.asyncIterator]() { + return this; + }, + byPage: () => { + return this.listByClusterPagingPage( + resourceGroupName, + clusterName, + options + ); + } + }; + } + + private async *listByClusterPagingPage( + resourceGroupName: string, + clusterName: string, + options?: ArcSettingsListByClusterOptionalParams + ): AsyncIterableIterator { + let result = await this._listByCluster( + resourceGroupName, + clusterName, + options + ); + yield result.value || []; + let continuationToken = result.nextLink; + while (continuationToken) { + result = await this._listByClusterNext( + resourceGroupName, + clusterName, + continuationToken, + options + ); + continuationToken = result.nextLink; + yield result.value || []; + } + } + + private async *listByClusterPagingAll( + resourceGroupName: string, + clusterName: string, + options?: ArcSettingsListByClusterOptionalParams + ): AsyncIterableIterator { + for await (const page of this.listByClusterPagingPage( + resourceGroupName, + clusterName, + options + )) { + yield* page; + } + } + + /** + * Get ArcSetting resources of HCI Cluster. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param clusterName The name of the cluster. + * @param options The options parameters. + */ + private _listByCluster( + resourceGroupName: string, + clusterName: string, + options?: ArcSettingsListByClusterOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, clusterName, options }, + listByClusterOperationSpec + ); + } + + /** + * Get ArcSetting resource details of HCI Cluster. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param clusterName The name of the cluster. + * @param arcSettingName The name of the proxy resource holding details of HCI ArcSetting information. + * @param options The options parameters. + */ + get( + resourceGroupName: string, + clusterName: string, + arcSettingName: string, + options?: ArcSettingsGetOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, clusterName, arcSettingName, options }, + getOperationSpec + ); + } + + /** + * Create ArcSetting for HCI cluster. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param clusterName The name of the cluster. + * @param arcSettingName The name of the proxy resource holding details of HCI ArcSetting information. + * @param arcSetting Parameters supplied to the Create ArcSetting resource for this HCI cluster. + * @param options The options parameters. + */ + create( + resourceGroupName: string, + clusterName: string, + arcSettingName: string, + arcSetting: ArcSetting, + options?: ArcSettingsCreateOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, clusterName, arcSettingName, arcSetting, options }, + createOperationSpec + ); + } + + /** + * Delete ArcSetting resource details of HCI Cluster. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param clusterName The name of the cluster. + * @param arcSettingName The name of the proxy resource holding details of HCI ArcSetting information. + * @param options The options parameters. + */ + async beginDelete( + resourceGroupName: string, + clusterName: string, + arcSettingName: string, + options?: ArcSettingsDeleteOptionalParams + ): 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, clusterName, arcSettingName, options }, + deleteOperationSpec + ); + return new LroEngine(lro, { + resumeFrom: options?.resumeFrom, + intervalInMs: options?.updateIntervalInMs, + lroResourceLocationConfig: "azure-async-operation" + }); + } + + /** + * Delete ArcSetting resource details of HCI Cluster. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param clusterName The name of the cluster. + * @param arcSettingName The name of the proxy resource holding details of HCI ArcSetting information. + * @param options The options parameters. + */ + async beginDeleteAndWait( + resourceGroupName: string, + clusterName: string, + arcSettingName: string, + options?: ArcSettingsDeleteOptionalParams + ): Promise { + const poller = await this.beginDelete( + resourceGroupName, + clusterName, + arcSettingName, + options + ); + return poller.pollUntilDone(); + } + + /** + * ListByClusterNext + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param clusterName The name of the cluster. + * @param nextLink The nextLink from the previous successful call to the ListByCluster method. + * @param options The options parameters. + */ + private _listByClusterNext( + resourceGroupName: string, + clusterName: string, + nextLink: string, + options?: ArcSettingsListByClusterNextOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, clusterName, nextLink, options }, + listByClusterNextOperationSpec + ); + } +} +// Operation Specifications +const serializer = coreClient.createSerializer(Mappers, /* isXml */ false); + +const listByClusterOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureStackHCI/clusters/{clusterName}/arcSettings", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.ArcSettingList + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.clusterName + ], + headerParameters: [Parameters.accept], + serializer +}; +const getOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureStackHCI/clusters/{clusterName}/arcSettings/{arcSettingName}", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.ArcSetting + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.clusterName, + Parameters.arcSettingName + ], + headerParameters: [Parameters.accept], + serializer +}; +const createOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureStackHCI/clusters/{clusterName}/arcSettings/{arcSettingName}", + httpMethod: "PUT", + responses: { + 200: { + bodyMapper: Mappers.ArcSetting + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + requestBody: Parameters.arcSetting, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.clusterName, + Parameters.arcSettingName + ], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", + serializer +}; +const deleteOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureStackHCI/clusters/{clusterName}/arcSettings/{arcSettingName}", + httpMethod: "DELETE", + responses: { + 200: {}, + 201: {}, + 202: {}, + 204: {}, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.clusterName, + Parameters.arcSettingName + ], + headerParameters: [Parameters.accept], + serializer +}; +const listByClusterNextOperationSpec: coreClient.OperationSpec = { + path: "{nextLink}", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.ArcSettingList + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.clusterName, + Parameters.nextLink + ], + headerParameters: [Parameters.accept], + serializer +}; diff --git a/sdk/azurestackhci/arm-azurestackhci/src/operations/clusters.ts b/sdk/azurestackhci/arm-azurestackhci/src/operations/clusters.ts index 154cb11025a8..382b1bffb34a 100644 --- a/sdk/azurestackhci/arm-azurestackhci/src/operations/clusters.ts +++ b/sdk/azurestackhci/arm-azurestackhci/src/operations/clusters.ts @@ -1,113 +1,188 @@ /* - * Copyright (c) Microsoft Corporation. All rights reserved. - * Licensed under the MIT License. See License.txt in the project root for - * license information. + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. * * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is - * regenerated. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ -import * as msRest from "@azure/ms-rest-js"; -import * as Models from "../models"; -import * as Mappers from "../models/clustersMappers"; +import { PagedAsyncIterableIterator } from "@azure/core-paging"; +import { Clusters } from "../operationsInterfaces"; +import * as coreClient from "@azure/core-client"; +import * as Mappers from "../models/mappers"; import * as Parameters from "../models/parameters"; -import { AzureStackHCIClientContext } from "../azureStackHCIClientContext"; +import { AzureStackHCIClient } from "../azureStackHCIClient"; +import { + Cluster, + ClustersListBySubscriptionNextOptionalParams, + ClustersListBySubscriptionOptionalParams, + ClustersListByResourceGroupNextOptionalParams, + ClustersListByResourceGroupOptionalParams, + ClustersListBySubscriptionResponse, + ClustersListByResourceGroupResponse, + ClustersGetOptionalParams, + ClustersGetResponse, + ClustersCreateOptionalParams, + ClustersCreateResponse, + ClusterPatch, + ClustersUpdateOptionalParams, + ClustersUpdateResponse, + ClustersDeleteOptionalParams, + ClustersListBySubscriptionNextResponse, + ClustersListByResourceGroupNextResponse +} from "../models"; -/** Class representing a Clusters. */ -export class Clusters { - private readonly client: AzureStackHCIClientContext; +/// +/** Class containing Clusters operations. */ +export class ClustersImpl implements Clusters { + private readonly client: AzureStackHCIClient; /** - * Create a Clusters. - * @param {AzureStackHCIClientContext} client Reference to the service client. + * Initialize a new instance of the class Clusters class. + * @param client Reference to the service client */ - constructor(client: AzureStackHCIClientContext) { + constructor(client: AzureStackHCIClient) { this.client = client; } /** * List all HCI clusters in a subscription. - * @param [options] The optional parameters - * @returns Promise + * @param options The options parameters. */ - list(options?: msRest.RequestOptionsBase): Promise; - /** - * @param callback The callback - */ - list(callback: msRest.ServiceCallback): void; - /** - * @param options The optional parameters - * @param callback The callback - */ - list(options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; - list(options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { - return this.client.sendOperationRequest( - { - options + public listBySubscription( + options?: ClustersListBySubscriptionOptionalParams + ): PagedAsyncIterableIterator { + const iter = this.listBySubscriptionPagingAll(options); + return { + next() { + return iter.next(); }, - listOperationSpec, - callback) as Promise; + [Symbol.asyncIterator]() { + return this; + }, + byPage: () => { + return this.listBySubscriptionPagingPage(options); + } + }; + } + + private async *listBySubscriptionPagingPage( + options?: ClustersListBySubscriptionOptionalParams + ): AsyncIterableIterator { + let result = await this._listBySubscription(options); + yield result.value || []; + let continuationToken = result.nextLink; + while (continuationToken) { + result = await this._listBySubscriptionNext(continuationToken, options); + continuationToken = result.nextLink; + yield result.value || []; + } + } + + private async *listBySubscriptionPagingAll( + options?: ClustersListBySubscriptionOptionalParams + ): AsyncIterableIterator { + for await (const page of this.listBySubscriptionPagingPage(options)) { + yield* page; + } } /** * List all HCI clusters in a resource group. * @param resourceGroupName The name of the resource group. The name is case insensitive. - * @param [options] The optional parameters - * @returns Promise - */ - listByResourceGroup(resourceGroupName: string, options?: msRest.RequestOptionsBase): Promise; - /** - * @param resourceGroupName The name of the resource group. The name is case insensitive. - * @param callback The callback + * @param options The options parameters. */ - listByResourceGroup(resourceGroupName: string, callback: msRest.ServiceCallback): void; - /** - * @param resourceGroupName The name of the resource group. The name is case insensitive. - * @param options The optional parameters - * @param callback The callback - */ - listByResourceGroup(resourceGroupName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; - listByResourceGroup(resourceGroupName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { - return this.client.sendOperationRequest( - { + public listByResourceGroup( + resourceGroupName: string, + options?: ClustersListByResourceGroupOptionalParams + ): PagedAsyncIterableIterator { + const iter = this.listByResourceGroupPagingAll(resourceGroupName, options); + return { + next() { + return iter.next(); + }, + [Symbol.asyncIterator]() { + return this; + }, + byPage: () => { + return this.listByResourceGroupPagingPage(resourceGroupName, options); + } + }; + } + + private async *listByResourceGroupPagingPage( + resourceGroupName: string, + options?: ClustersListByResourceGroupOptionalParams + ): AsyncIterableIterator { + let result = await this._listByResourceGroup(resourceGroupName, options); + yield result.value || []; + let continuationToken = result.nextLink; + while (continuationToken) { + result = await this._listByResourceGroupNext( resourceGroupName, + continuationToken, options - }, - listByResourceGroupOperationSpec, - callback) as Promise; + ); + continuationToken = result.nextLink; + yield result.value || []; + } + } + + private async *listByResourceGroupPagingAll( + resourceGroupName: string, + options?: ClustersListByResourceGroupOptionalParams + ): AsyncIterableIterator { + for await (const page of this.listByResourceGroupPagingPage( + resourceGroupName, + options + )) { + yield* page; + } } /** - * Get HCI cluster. - * @param resourceGroupName The name of the resource group. The name is case insensitive. - * @param clusterName The name of the cluster. - * @param [options] The optional parameters - * @returns Promise + * List all HCI clusters in a subscription. + * @param options The options parameters. */ - get(resourceGroupName: string, clusterName: string, options?: msRest.RequestOptionsBase): Promise; + private _listBySubscription( + options?: ClustersListBySubscriptionOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { options }, + listBySubscriptionOperationSpec + ); + } + /** + * List all HCI clusters in a resource group. * @param resourceGroupName The name of the resource group. The name is case insensitive. - * @param clusterName The name of the cluster. - * @param callback The callback + * @param options The options parameters. */ - get(resourceGroupName: string, clusterName: string, callback: msRest.ServiceCallback): void; + private _listByResourceGroup( + resourceGroupName: string, + options?: ClustersListByResourceGroupOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, options }, + listByResourceGroupOperationSpec + ); + } + /** + * Get HCI cluster. * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param clusterName The name of the cluster. - * @param options The optional parameters - * @param callback The callback + * @param options The options parameters. */ - get(resourceGroupName: string, clusterName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; - get(resourceGroupName: string, clusterName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + get( + resourceGroupName: string, + clusterName: string, + options?: ClustersGetOptionalParams + ): Promise { return this.client.sendOperationRequest( - { - resourceGroupName, - clusterName, - options - }, - getOperationSpec, - callback) as Promise; + { resourceGroupName, clusterName, options }, + getOperationSpec + ); } /** @@ -115,172 +190,95 @@ export class Clusters { * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param clusterName The name of the cluster. * @param cluster Details of the HCI cluster. - * @param [options] The optional parameters - * @returns Promise + * @param options The options parameters. */ - create(resourceGroupName: string, clusterName: string, cluster: Models.Cluster, options?: msRest.RequestOptionsBase): Promise; - /** - * @param resourceGroupName The name of the resource group. The name is case insensitive. - * @param clusterName The name of the cluster. - * @param cluster Details of the HCI cluster. - * @param callback The callback - */ - create(resourceGroupName: string, clusterName: string, cluster: Models.Cluster, callback: msRest.ServiceCallback): void; - /** - * @param resourceGroupName The name of the resource group. The name is case insensitive. - * @param clusterName The name of the cluster. - * @param cluster Details of the HCI cluster. - * @param options The optional parameters - * @param callback The callback - */ - create(resourceGroupName: string, clusterName: string, cluster: Models.Cluster, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; - create(resourceGroupName: string, clusterName: string, cluster: Models.Cluster, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + create( + resourceGroupName: string, + clusterName: string, + cluster: Cluster, + options?: ClustersCreateOptionalParams + ): Promise { return this.client.sendOperationRequest( - { - resourceGroupName, - clusterName, - cluster, - options - }, - createOperationSpec, - callback) as Promise; + { resourceGroupName, clusterName, cluster, options }, + createOperationSpec + ); } /** * Update an HCI cluster. * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param clusterName The name of the cluster. - * @param [options] The optional parameters - * @returns Promise - */ - update(resourceGroupName: string, clusterName: string, options?: Models.ClustersUpdateOptionalParams): Promise; - /** - * @param resourceGroupName The name of the resource group. The name is case insensitive. - * @param clusterName The name of the cluster. - * @param callback The callback - */ - update(resourceGroupName: string, clusterName: string, callback: msRest.ServiceCallback): void; - /** - * @param resourceGroupName The name of the resource group. The name is case insensitive. - * @param clusterName The name of the cluster. - * @param options The optional parameters - * @param callback The callback + * @param cluster Details of the HCI cluster. + * @param options The options parameters. */ - update(resourceGroupName: string, clusterName: string, options: Models.ClustersUpdateOptionalParams, callback: msRest.ServiceCallback): void; - update(resourceGroupName: string, clusterName: string, options?: Models.ClustersUpdateOptionalParams | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + update( + resourceGroupName: string, + clusterName: string, + cluster: ClusterPatch, + options?: ClustersUpdateOptionalParams + ): Promise { return this.client.sendOperationRequest( - { - resourceGroupName, - clusterName, - options - }, - updateOperationSpec, - callback) as Promise; + { resourceGroupName, clusterName, cluster, options }, + updateOperationSpec + ); } /** * Delete an HCI cluster. * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param clusterName The name of the cluster. - * @param [options] The optional parameters - * @returns Promise - */ - deleteMethod(resourceGroupName: string, clusterName: string, options?: msRest.RequestOptionsBase): Promise; - /** - * @param resourceGroupName The name of the resource group. The name is case insensitive. - * @param clusterName The name of the cluster. - * @param callback The callback - */ - deleteMethod(resourceGroupName: string, clusterName: string, callback: msRest.ServiceCallback): void; - /** - * @param resourceGroupName The name of the resource group. The name is case insensitive. - * @param clusterName The name of the cluster. - * @param options The optional parameters - * @param callback The callback + * @param options The options parameters. */ - deleteMethod(resourceGroupName: string, clusterName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; - deleteMethod(resourceGroupName: string, clusterName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + delete( + resourceGroupName: string, + clusterName: string, + options?: ClustersDeleteOptionalParams + ): Promise { return this.client.sendOperationRequest( - { - resourceGroupName, - clusterName, - options - }, - deleteMethodOperationSpec, - callback); + { resourceGroupName, clusterName, options }, + deleteOperationSpec + ); } /** - * List all HCI clusters in a subscription. - * @param nextPageLink The NextLink from the previous successful call to List operation. - * @param [options] The optional parameters - * @returns Promise - */ - listNext(nextPageLink: string, options?: msRest.RequestOptionsBase): Promise; - /** - * @param nextPageLink The NextLink from the previous successful call to List operation. - * @param callback The callback + * ListBySubscriptionNext + * @param nextLink The nextLink from the previous successful call to the ListBySubscription method. + * @param options The options parameters. */ - listNext(nextPageLink: string, callback: msRest.ServiceCallback): void; - /** - * @param nextPageLink The NextLink from the previous successful call to List operation. - * @param options The optional parameters - * @param callback The callback - */ - listNext(nextPageLink: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; - listNext(nextPageLink: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + private _listBySubscriptionNext( + nextLink: string, + options?: ClustersListBySubscriptionNextOptionalParams + ): Promise { return this.client.sendOperationRequest( - { - nextPageLink, - options - }, - listNextOperationSpec, - callback) as Promise; + { nextLink, options }, + listBySubscriptionNextOperationSpec + ); } /** - * List all HCI clusters in a resource group. - * @param nextPageLink The NextLink from the previous successful call to List operation. - * @param [options] The optional parameters - * @returns Promise - */ - listByResourceGroupNext(nextPageLink: string, options?: msRest.RequestOptionsBase): Promise; - /** - * @param nextPageLink The NextLink from the previous successful call to List operation. - * @param callback The callback - */ - listByResourceGroupNext(nextPageLink: string, callback: msRest.ServiceCallback): void; - /** - * @param nextPageLink The NextLink from the previous successful call to List operation. - * @param options The optional parameters - * @param callback The callback + * ListByResourceGroupNext + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param nextLink The nextLink from the previous successful call to the ListByResourceGroup method. + * @param options The options parameters. */ - listByResourceGroupNext(nextPageLink: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; - listByResourceGroupNext(nextPageLink: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + private _listByResourceGroupNext( + resourceGroupName: string, + nextLink: string, + options?: ClustersListByResourceGroupNextOptionalParams + ): Promise { return this.client.sendOperationRequest( - { - nextPageLink, - options - }, - listByResourceGroupNextOperationSpec, - callback) as Promise; + { resourceGroupName, nextLink, options }, + listByResourceGroupNextOperationSpec + ); } } - // Operation Specifications -const serializer = new msRest.Serializer(Mappers); -const listOperationSpec: msRest.OperationSpec = { +const serializer = coreClient.createSerializer(Mappers, /* isXml */ false); + +const listBySubscriptionOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/providers/Microsoft.AzureStackHCI/clusters", httpMethod: "GET", - path: "subscriptions/{subscriptionId}/providers/Microsoft.AzureStackHCI/clusters", - urlParameters: [ - Parameters.subscriptionId - ], - queryParameters: [ - Parameters.apiVersion - ], - headerParameters: [ - Parameters.acceptLanguage - ], responses: { 200: { bodyMapper: Mappers.ClusterList @@ -289,22 +287,15 @@ const listOperationSpec: msRest.OperationSpec = { bodyMapper: Mappers.ErrorResponse } }, + queryParameters: [Parameters.apiVersion], + urlParameters: [Parameters.$host, Parameters.subscriptionId], + headerParameters: [Parameters.accept], serializer }; - -const listByResourceGroupOperationSpec: msRest.OperationSpec = { +const listByResourceGroupOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureStackHCI/clusters", httpMethod: "GET", - path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureStackHCI/clusters", - urlParameters: [ - Parameters.subscriptionId, - Parameters.resourceGroupName - ], - queryParameters: [ - Parameters.apiVersion - ], - headerParameters: [ - Parameters.acceptLanguage - ], responses: { 200: { bodyMapper: Mappers.ClusterList @@ -313,23 +304,19 @@ const listByResourceGroupOperationSpec: msRest.OperationSpec = { bodyMapper: Mappers.ErrorResponse } }, - serializer -}; - -const getOperationSpec: msRest.OperationSpec = { - httpMethod: "GET", - path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureStackHCI/clusters/{clusterName}", + queryParameters: [Parameters.apiVersion], urlParameters: [ + Parameters.$host, Parameters.subscriptionId, - Parameters.resourceGroupName, - Parameters.clusterName - ], - queryParameters: [ - Parameters.apiVersion - ], - headerParameters: [ - Parameters.acceptLanguage + Parameters.resourceGroupName ], + headerParameters: [Parameters.accept], + serializer +}; +const getOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureStackHCI/clusters/{clusterName}", + httpMethod: "GET", responses: { 200: { bodyMapper: Mappers.Cluster @@ -338,30 +325,20 @@ const getOperationSpec: msRest.OperationSpec = { bodyMapper: Mappers.ErrorResponse } }, - serializer -}; - -const createOperationSpec: msRest.OperationSpec = { - httpMethod: "PUT", - path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureStackHCI/clusters/{clusterName}", + queryParameters: [Parameters.apiVersion], urlParameters: [ + Parameters.$host, Parameters.subscriptionId, Parameters.resourceGroupName, Parameters.clusterName ], - queryParameters: [ - Parameters.apiVersion - ], - headerParameters: [ - Parameters.acceptLanguage - ], - requestBody: { - parameterPath: "cluster", - mapper: { - ...Mappers.Cluster, - required: true - } - }, + headerParameters: [Parameters.accept], + serializer +}; +const createOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureStackHCI/clusters/{clusterName}", + httpMethod: "PUT", responses: { 200: { bodyMapper: Mappers.Cluster @@ -370,35 +347,22 @@ const createOperationSpec: msRest.OperationSpec = { bodyMapper: Mappers.ErrorResponse } }, - serializer -}; - -const updateOperationSpec: msRest.OperationSpec = { - httpMethod: "PATCH", - path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureStackHCI/clusters/{clusterName}", + requestBody: Parameters.cluster, + queryParameters: [Parameters.apiVersion], urlParameters: [ + Parameters.$host, Parameters.subscriptionId, Parameters.resourceGroupName, Parameters.clusterName ], - queryParameters: [ - Parameters.apiVersion - ], - headerParameters: [ - Parameters.acceptLanguage - ], - requestBody: { - parameterPath: { - tags: [ - "options", - "tags" - ] - }, - mapper: { - ...Mappers.ClusterUpdate, - required: true - } - }, + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", + serializer +}; +const updateOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureStackHCI/clusters/{clusterName}", + httpMethod: "PATCH", responses: { 200: { bodyMapper: Mappers.Cluster @@ -407,23 +371,22 @@ const updateOperationSpec: msRest.OperationSpec = { bodyMapper: Mappers.ErrorResponse } }, - serializer -}; - -const deleteMethodOperationSpec: msRest.OperationSpec = { - httpMethod: "DELETE", - path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureStackHCI/clusters/{clusterName}", + requestBody: Parameters.cluster1, + queryParameters: [Parameters.apiVersion], urlParameters: [ + Parameters.$host, Parameters.subscriptionId, Parameters.resourceGroupName, Parameters.clusterName ], - queryParameters: [ - Parameters.apiVersion - ], - headerParameters: [ - Parameters.acceptLanguage - ], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", + serializer +}; +const deleteOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureStackHCI/clusters/{clusterName}", + httpMethod: "DELETE", responses: { 200: {}, 204: {}, @@ -431,19 +394,19 @@ const deleteMethodOperationSpec: msRest.OperationSpec = { bodyMapper: Mappers.ErrorResponse } }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.clusterName + ], + headerParameters: [Parameters.accept], serializer }; - -const listNextOperationSpec: msRest.OperationSpec = { - httpMethod: "GET", - baseUrl: "https://management.azure.com", +const listBySubscriptionNextOperationSpec: coreClient.OperationSpec = { path: "{nextLink}", - urlParameters: [ - Parameters.nextPageLink - ], - headerParameters: [ - Parameters.acceptLanguage - ], + httpMethod: "GET", responses: { 200: { bodyMapper: Mappers.ClusterList @@ -452,19 +415,18 @@ const listNextOperationSpec: msRest.OperationSpec = { bodyMapper: Mappers.ErrorResponse } }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.nextLink + ], + headerParameters: [Parameters.accept], serializer }; - -const listByResourceGroupNextOperationSpec: msRest.OperationSpec = { - httpMethod: "GET", - baseUrl: "https://management.azure.com", +const listByResourceGroupNextOperationSpec: coreClient.OperationSpec = { path: "{nextLink}", - urlParameters: [ - Parameters.nextPageLink - ], - headerParameters: [ - Parameters.acceptLanguage - ], + httpMethod: "GET", responses: { 200: { bodyMapper: Mappers.ClusterList @@ -473,5 +435,13 @@ const listByResourceGroupNextOperationSpec: msRest.OperationSpec = { bodyMapper: Mappers.ErrorResponse } }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.nextLink + ], + headerParameters: [Parameters.accept], serializer }; diff --git a/sdk/azurestackhci/arm-azurestackhci/src/operations/extensions.ts b/sdk/azurestackhci/arm-azurestackhci/src/operations/extensions.ts new file mode 100644 index 000000000000..cec0ec77d279 --- /dev/null +++ b/sdk/azurestackhci/arm-azurestackhci/src/operations/extensions.ts @@ -0,0 +1,672 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +import { PagedAsyncIterableIterator } from "@azure/core-paging"; +import { Extensions } from "../operationsInterfaces"; +import * as coreClient from "@azure/core-client"; +import * as Mappers from "../models/mappers"; +import * as Parameters from "../models/parameters"; +import { AzureStackHCIClient } from "../azureStackHCIClient"; +import { PollerLike, PollOperationState, LroEngine } from "@azure/core-lro"; +import { LroImpl } from "../lroImpl"; +import { + Extension, + ExtensionsListByArcSettingNextOptionalParams, + ExtensionsListByArcSettingOptionalParams, + ExtensionsListByArcSettingResponse, + ExtensionsGetOptionalParams, + ExtensionsGetResponse, + ExtensionsCreateOptionalParams, + ExtensionsCreateResponse, + ExtensionsUpdateOptionalParams, + ExtensionsUpdateResponse, + ExtensionsDeleteOptionalParams, + ExtensionsListByArcSettingNextResponse +} from "../models"; + +/// +/** Class containing Extensions operations. */ +export class ExtensionsImpl implements Extensions { + private readonly client: AzureStackHCIClient; + + /** + * Initialize a new instance of the class Extensions class. + * @param client Reference to the service client + */ + constructor(client: AzureStackHCIClient) { + this.client = client; + } + + /** + * List all Extensions under ArcSetting resource. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param clusterName The name of the cluster. + * @param arcSettingName The name of the proxy resource holding details of HCI ArcSetting information. + * @param options The options parameters. + */ + public listByArcSetting( + resourceGroupName: string, + clusterName: string, + arcSettingName: string, + options?: ExtensionsListByArcSettingOptionalParams + ): PagedAsyncIterableIterator { + const iter = this.listByArcSettingPagingAll( + resourceGroupName, + clusterName, + arcSettingName, + options + ); + return { + next() { + return iter.next(); + }, + [Symbol.asyncIterator]() { + return this; + }, + byPage: () => { + return this.listByArcSettingPagingPage( + resourceGroupName, + clusterName, + arcSettingName, + options + ); + } + }; + } + + private async *listByArcSettingPagingPage( + resourceGroupName: string, + clusterName: string, + arcSettingName: string, + options?: ExtensionsListByArcSettingOptionalParams + ): AsyncIterableIterator { + let result = await this._listByArcSetting( + resourceGroupName, + clusterName, + arcSettingName, + options + ); + yield result.value || []; + let continuationToken = result.nextLink; + while (continuationToken) { + result = await this._listByArcSettingNext( + resourceGroupName, + clusterName, + arcSettingName, + continuationToken, + options + ); + continuationToken = result.nextLink; + yield result.value || []; + } + } + + private async *listByArcSettingPagingAll( + resourceGroupName: string, + clusterName: string, + arcSettingName: string, + options?: ExtensionsListByArcSettingOptionalParams + ): AsyncIterableIterator { + for await (const page of this.listByArcSettingPagingPage( + resourceGroupName, + clusterName, + arcSettingName, + options + )) { + yield* page; + } + } + + /** + * List all Extensions under ArcSetting resource. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param clusterName The name of the cluster. + * @param arcSettingName The name of the proxy resource holding details of HCI ArcSetting information. + * @param options The options parameters. + */ + private _listByArcSetting( + resourceGroupName: string, + clusterName: string, + arcSettingName: string, + options?: ExtensionsListByArcSettingOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, clusterName, arcSettingName, options }, + listByArcSettingOperationSpec + ); + } + + /** + * Get particular Arc Extension of HCI Cluster. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param clusterName The name of the cluster. + * @param arcSettingName The name of the proxy resource holding details of HCI ArcSetting information. + * @param extensionName The name of the machine extension. + * @param options The options parameters. + */ + get( + resourceGroupName: string, + clusterName: string, + arcSettingName: string, + extensionName: string, + options?: ExtensionsGetOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + clusterName, + arcSettingName, + extensionName, + options + }, + getOperationSpec + ); + } + + /** + * Create Extension for HCI cluster. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param clusterName The name of the cluster. + * @param arcSettingName The name of the proxy resource holding details of HCI ArcSetting information. + * @param extensionName The name of the machine extension. + * @param extension Details of the Machine Extension to be created. + * @param options The options parameters. + */ + async beginCreate( + resourceGroupName: string, + clusterName: string, + arcSettingName: string, + extensionName: string, + extension: Extension, + options?: ExtensionsCreateOptionalParams + ): Promise< + PollerLike< + PollOperationState, + ExtensionsCreateResponse + > + > { + 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, + clusterName, + arcSettingName, + extensionName, + extension, + options + }, + createOperationSpec + ); + return new LroEngine(lro, { + resumeFrom: options?.resumeFrom, + intervalInMs: options?.updateIntervalInMs, + lroResourceLocationConfig: "azure-async-operation" + }); + } + + /** + * Create Extension for HCI cluster. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param clusterName The name of the cluster. + * @param arcSettingName The name of the proxy resource holding details of HCI ArcSetting information. + * @param extensionName The name of the machine extension. + * @param extension Details of the Machine Extension to be created. + * @param options The options parameters. + */ + async beginCreateAndWait( + resourceGroupName: string, + clusterName: string, + arcSettingName: string, + extensionName: string, + extension: Extension, + options?: ExtensionsCreateOptionalParams + ): Promise { + const poller = await this.beginCreate( + resourceGroupName, + clusterName, + arcSettingName, + extensionName, + extension, + options + ); + return poller.pollUntilDone(); + } + + /** + * Update Extension for HCI cluster. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param clusterName The name of the cluster. + * @param arcSettingName The name of the proxy resource holding details of HCI ArcSetting information. + * @param extensionName The name of the machine extension. + * @param extension Details of the Machine Extension to be created. + * @param options The options parameters. + */ + async beginUpdate( + resourceGroupName: string, + clusterName: string, + arcSettingName: string, + extensionName: string, + extension: Extension, + options?: ExtensionsUpdateOptionalParams + ): Promise< + PollerLike< + PollOperationState, + ExtensionsUpdateResponse + > + > { + 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, + clusterName, + arcSettingName, + extensionName, + extension, + options + }, + updateOperationSpec + ); + return new LroEngine(lro, { + resumeFrom: options?.resumeFrom, + intervalInMs: options?.updateIntervalInMs, + lroResourceLocationConfig: "original-uri" + }); + } + + /** + * Update Extension for HCI cluster. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param clusterName The name of the cluster. + * @param arcSettingName The name of the proxy resource holding details of HCI ArcSetting information. + * @param extensionName The name of the machine extension. + * @param extension Details of the Machine Extension to be created. + * @param options The options parameters. + */ + async beginUpdateAndWait( + resourceGroupName: string, + clusterName: string, + arcSettingName: string, + extensionName: string, + extension: Extension, + options?: ExtensionsUpdateOptionalParams + ): Promise { + const poller = await this.beginUpdate( + resourceGroupName, + clusterName, + arcSettingName, + extensionName, + extension, + options + ); + return poller.pollUntilDone(); + } + + /** + * Delete particular Arc Extension of HCI Cluster. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param clusterName The name of the cluster. + * @param arcSettingName The name of the proxy resource holding details of HCI ArcSetting information. + * @param extensionName The name of the machine extension. + * @param options The options parameters. + */ + async beginDelete( + resourceGroupName: string, + clusterName: string, + arcSettingName: string, + extensionName: string, + options?: ExtensionsDeleteOptionalParams + ): 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, + clusterName, + arcSettingName, + extensionName, + options + }, + deleteOperationSpec + ); + return new LroEngine(lro, { + resumeFrom: options?.resumeFrom, + intervalInMs: options?.updateIntervalInMs, + lroResourceLocationConfig: "azure-async-operation" + }); + } + + /** + * Delete particular Arc Extension of HCI Cluster. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param clusterName The name of the cluster. + * @param arcSettingName The name of the proxy resource holding details of HCI ArcSetting information. + * @param extensionName The name of the machine extension. + * @param options The options parameters. + */ + async beginDeleteAndWait( + resourceGroupName: string, + clusterName: string, + arcSettingName: string, + extensionName: string, + options?: ExtensionsDeleteOptionalParams + ): Promise { + const poller = await this.beginDelete( + resourceGroupName, + clusterName, + arcSettingName, + extensionName, + options + ); + return poller.pollUntilDone(); + } + + /** + * ListByArcSettingNext + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param clusterName The name of the cluster. + * @param arcSettingName The name of the proxy resource holding details of HCI ArcSetting information. + * @param nextLink The nextLink from the previous successful call to the ListByArcSetting method. + * @param options The options parameters. + */ + private _listByArcSettingNext( + resourceGroupName: string, + clusterName: string, + arcSettingName: string, + nextLink: string, + options?: ExtensionsListByArcSettingNextOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, clusterName, arcSettingName, nextLink, options }, + listByArcSettingNextOperationSpec + ); + } +} +// Operation Specifications +const serializer = coreClient.createSerializer(Mappers, /* isXml */ false); + +const listByArcSettingOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureStackHCI/clusters/{clusterName}/arcSettings/{arcSettingName}/extensions", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.ExtensionList + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.clusterName, + Parameters.arcSettingName + ], + headerParameters: [Parameters.accept], + serializer +}; +const getOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureStackHCI/clusters/{clusterName}/arcSettings/{arcSettingName}/extensions/{extensionName}", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.Extension + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.clusterName, + Parameters.arcSettingName, + Parameters.extensionName + ], + headerParameters: [Parameters.accept], + serializer +}; +const createOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureStackHCI/clusters/{clusterName}/arcSettings/{arcSettingName}/extensions/{extensionName}", + httpMethod: "PUT", + responses: { + 200: { + bodyMapper: Mappers.Extension + }, + 201: { + bodyMapper: Mappers.Extension + }, + 202: { + bodyMapper: Mappers.Extension + }, + 204: { + bodyMapper: Mappers.Extension + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + requestBody: Parameters.extension, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.clusterName, + Parameters.arcSettingName, + Parameters.extensionName + ], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", + serializer +}; +const updateOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureStackHCI/clusters/{clusterName}/arcSettings/{arcSettingName}/extensions/{extensionName}", + httpMethod: "PATCH", + responses: { + 200: { + bodyMapper: Mappers.Extension + }, + 201: { + bodyMapper: Mappers.Extension + }, + 202: { + bodyMapper: Mappers.Extension + }, + 204: { + bodyMapper: Mappers.Extension + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + requestBody: Parameters.extension, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.clusterName, + Parameters.arcSettingName, + Parameters.extensionName + ], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", + serializer +}; +const deleteOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureStackHCI/clusters/{clusterName}/arcSettings/{arcSettingName}/extensions/{extensionName}", + httpMethod: "DELETE", + responses: { + 200: {}, + 201: {}, + 202: {}, + 204: {}, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.clusterName, + Parameters.arcSettingName, + Parameters.extensionName + ], + headerParameters: [Parameters.accept], + serializer +}; +const listByArcSettingNextOperationSpec: coreClient.OperationSpec = { + path: "{nextLink}", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.ExtensionList + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.clusterName, + Parameters.arcSettingName, + Parameters.nextLink + ], + headerParameters: [Parameters.accept], + serializer +}; diff --git a/sdk/azurestackhci/arm-azurestackhci/src/operations/index.ts b/sdk/azurestackhci/arm-azurestackhci/src/operations/index.ts index a0c122fdd7b8..2d20c6edaf47 100644 --- a/sdk/azurestackhci/arm-azurestackhci/src/operations/index.ts +++ b/sdk/azurestackhci/arm-azurestackhci/src/operations/index.ts @@ -1,12 +1,12 @@ /* - * Copyright (c) Microsoft Corporation. All rights reserved. - * Licensed under the MIT License. See License.txt in the project root for - * license information. + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. * * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is - * regenerated. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ -export * from "./operations"; +export * from "./arcSettings"; export * from "./clusters"; +export * from "./extensions"; +export * from "./operations"; diff --git a/sdk/azurestackhci/arm-azurestackhci/src/operations/operations.ts b/sdk/azurestackhci/arm-azurestackhci/src/operations/operations.ts index 5ed4e1a70696..8a7c9440c8e4 100644 --- a/sdk/azurestackhci/arm-azurestackhci/src/operations/operations.ts +++ b/sdk/azurestackhci/arm-azurestackhci/src/operations/operations.ts @@ -1,74 +1,59 @@ /* - * Copyright (c) Microsoft Corporation. All rights reserved. - * Licensed under the MIT License. See License.txt in the project root for - * license information. + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. * * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is - * regenerated. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ -import * as msRest from "@azure/ms-rest-js"; -import * as Models from "../models"; -import * as Mappers from "../models/operationsMappers"; +import { Operations } from "../operationsInterfaces"; +import * as coreClient from "@azure/core-client"; +import * as Mappers from "../models/mappers"; import * as Parameters from "../models/parameters"; -import { AzureStackHCIClientContext } from "../azureStackHCIClientContext"; +import { AzureStackHCIClient } from "../azureStackHCIClient"; +import { + OperationsListOptionalParams, + OperationsListResponse +} from "../models"; -/** Class representing a Operations. */ -export class Operations { - private readonly client: AzureStackHCIClientContext; +/** Class containing Operations operations. */ +export class OperationsImpl implements Operations { + private readonly client: AzureStackHCIClient; /** - * Create a Operations. - * @param {AzureStackHCIClientContext} client Reference to the service client. + * Initialize a new instance of the class Operations class. + * @param client Reference to the service client */ - constructor(client: AzureStackHCIClientContext) { + constructor(client: AzureStackHCIClient) { this.client = client; } /** * List all available Microsoft.AzureStackHCI provider operations - * @param [options] The optional parameters - * @returns Promise + * @param options The options parameters. */ - list(options?: msRest.RequestOptionsBase): Promise; - /** - * @param callback The callback - */ - list(callback: msRest.ServiceCallback): void; - /** - * @param options The optional parameters - * @param callback The callback - */ - list(options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; - list(options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { - return this.client.sendOperationRequest( - { - options - }, - listOperationSpec, - callback) as Promise; + list( + options?: OperationsListOptionalParams + ): Promise { + return this.client.sendOperationRequest({ options }, listOperationSpec); } } - // Operation Specifications -const serializer = new msRest.Serializer(Mappers); -const listOperationSpec: msRest.OperationSpec = { +const serializer = coreClient.createSerializer(Mappers, /* isXml */ false); + +const listOperationSpec: coreClient.OperationSpec = { + path: "/providers/Microsoft.AzureStackHCI/operations", httpMethod: "GET", - path: "providers/Microsoft.AzureStackHCI/operations", - queryParameters: [ - Parameters.apiVersion - ], - headerParameters: [ - Parameters.acceptLanguage - ], responses: { 200: { - bodyMapper: Mappers.AvailableOperations + bodyMapper: Mappers.OperationListResult }, default: { bodyMapper: Mappers.ErrorResponse } }, + queryParameters: [Parameters.apiVersion], + urlParameters: [Parameters.$host], + headerParameters: [Parameters.accept], serializer }; diff --git a/sdk/azurestackhci/arm-azurestackhci/src/operationsInterfaces/arcSettings.ts b/sdk/azurestackhci/arm-azurestackhci/src/operationsInterfaces/arcSettings.ts new file mode 100644 index 000000000000..b8541458da21 --- /dev/null +++ b/sdk/azurestackhci/arm-azurestackhci/src/operationsInterfaces/arcSettings.ts @@ -0,0 +1,89 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +import { PagedAsyncIterableIterator } from "@azure/core-paging"; +import { PollerLike, PollOperationState } from "@azure/core-lro"; +import { + ArcSetting, + ArcSettingsListByClusterOptionalParams, + ArcSettingsGetOptionalParams, + ArcSettingsGetResponse, + ArcSettingsCreateOptionalParams, + ArcSettingsCreateResponse, + ArcSettingsDeleteOptionalParams +} from "../models"; + +/// +/** Interface representing a ArcSettings. */ +export interface ArcSettings { + /** + * Get ArcSetting resources of HCI Cluster. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param clusterName The name of the cluster. + * @param options The options parameters. + */ + listByCluster( + resourceGroupName: string, + clusterName: string, + options?: ArcSettingsListByClusterOptionalParams + ): PagedAsyncIterableIterator; + /** + * Get ArcSetting resource details of HCI Cluster. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param clusterName The name of the cluster. + * @param arcSettingName The name of the proxy resource holding details of HCI ArcSetting information. + * @param options The options parameters. + */ + get( + resourceGroupName: string, + clusterName: string, + arcSettingName: string, + options?: ArcSettingsGetOptionalParams + ): Promise; + /** + * Create ArcSetting for HCI cluster. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param clusterName The name of the cluster. + * @param arcSettingName The name of the proxy resource holding details of HCI ArcSetting information. + * @param arcSetting Parameters supplied to the Create ArcSetting resource for this HCI cluster. + * @param options The options parameters. + */ + create( + resourceGroupName: string, + clusterName: string, + arcSettingName: string, + arcSetting: ArcSetting, + options?: ArcSettingsCreateOptionalParams + ): Promise; + /** + * Delete ArcSetting resource details of HCI Cluster. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param clusterName The name of the cluster. + * @param arcSettingName The name of the proxy resource holding details of HCI ArcSetting information. + * @param options The options parameters. + */ + beginDelete( + resourceGroupName: string, + clusterName: string, + arcSettingName: string, + options?: ArcSettingsDeleteOptionalParams + ): Promise, void>>; + /** + * Delete ArcSetting resource details of HCI Cluster. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param clusterName The name of the cluster. + * @param arcSettingName The name of the proxy resource holding details of HCI ArcSetting information. + * @param options The options parameters. + */ + beginDeleteAndWait( + resourceGroupName: string, + clusterName: string, + arcSettingName: string, + options?: ArcSettingsDeleteOptionalParams + ): Promise; +} diff --git a/sdk/azurestackhci/arm-azurestackhci/src/operationsInterfaces/clusters.ts b/sdk/azurestackhci/arm-azurestackhci/src/operationsInterfaces/clusters.ts new file mode 100644 index 000000000000..44fdb94966e9 --- /dev/null +++ b/sdk/azurestackhci/arm-azurestackhci/src/operationsInterfaces/clusters.ts @@ -0,0 +1,91 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +import { PagedAsyncIterableIterator } from "@azure/core-paging"; +import { + Cluster, + ClustersListBySubscriptionOptionalParams, + ClustersListByResourceGroupOptionalParams, + ClustersGetOptionalParams, + ClustersGetResponse, + ClustersCreateOptionalParams, + ClustersCreateResponse, + ClusterPatch, + ClustersUpdateOptionalParams, + ClustersUpdateResponse, + ClustersDeleteOptionalParams +} from "../models"; + +/// +/** Interface representing a Clusters. */ +export interface Clusters { + /** + * List all HCI clusters in a subscription. + * @param options The options parameters. + */ + listBySubscription( + options?: ClustersListBySubscriptionOptionalParams + ): PagedAsyncIterableIterator; + /** + * List all HCI clusters in a resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param options The options parameters. + */ + listByResourceGroup( + resourceGroupName: string, + options?: ClustersListByResourceGroupOptionalParams + ): PagedAsyncIterableIterator; + /** + * Get HCI cluster. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param clusterName The name of the cluster. + * @param options The options parameters. + */ + get( + resourceGroupName: string, + clusterName: string, + options?: ClustersGetOptionalParams + ): Promise; + /** + * Create an HCI cluster. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param clusterName The name of the cluster. + * @param cluster Details of the HCI cluster. + * @param options The options parameters. + */ + create( + resourceGroupName: string, + clusterName: string, + cluster: Cluster, + options?: ClustersCreateOptionalParams + ): Promise; + /** + * Update an HCI cluster. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param clusterName The name of the cluster. + * @param cluster Details of the HCI cluster. + * @param options The options parameters. + */ + update( + resourceGroupName: string, + clusterName: string, + cluster: ClusterPatch, + options?: ClustersUpdateOptionalParams + ): Promise; + /** + * Delete an HCI cluster. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param clusterName The name of the cluster. + * @param options The options parameters. + */ + delete( + resourceGroupName: string, + clusterName: string, + options?: ClustersDeleteOptionalParams + ): Promise; +} diff --git a/sdk/azurestackhci/arm-azurestackhci/src/operationsInterfaces/extensions.ts b/sdk/azurestackhci/arm-azurestackhci/src/operationsInterfaces/extensions.ts new file mode 100644 index 000000000000..22c2192cc9af --- /dev/null +++ b/sdk/azurestackhci/arm-azurestackhci/src/operationsInterfaces/extensions.ts @@ -0,0 +1,162 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +import { PagedAsyncIterableIterator } from "@azure/core-paging"; +import { PollerLike, PollOperationState } from "@azure/core-lro"; +import { + Extension, + ExtensionsListByArcSettingOptionalParams, + ExtensionsGetOptionalParams, + ExtensionsGetResponse, + ExtensionsCreateOptionalParams, + ExtensionsCreateResponse, + ExtensionsUpdateOptionalParams, + ExtensionsUpdateResponse, + ExtensionsDeleteOptionalParams +} from "../models"; + +/// +/** Interface representing a Extensions. */ +export interface Extensions { + /** + * List all Extensions under ArcSetting resource. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param clusterName The name of the cluster. + * @param arcSettingName The name of the proxy resource holding details of HCI ArcSetting information. + * @param options The options parameters. + */ + listByArcSetting( + resourceGroupName: string, + clusterName: string, + arcSettingName: string, + options?: ExtensionsListByArcSettingOptionalParams + ): PagedAsyncIterableIterator; + /** + * Get particular Arc Extension of HCI Cluster. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param clusterName The name of the cluster. + * @param arcSettingName The name of the proxy resource holding details of HCI ArcSetting information. + * @param extensionName The name of the machine extension. + * @param options The options parameters. + */ + get( + resourceGroupName: string, + clusterName: string, + arcSettingName: string, + extensionName: string, + options?: ExtensionsGetOptionalParams + ): Promise; + /** + * Create Extension for HCI cluster. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param clusterName The name of the cluster. + * @param arcSettingName The name of the proxy resource holding details of HCI ArcSetting information. + * @param extensionName The name of the machine extension. + * @param extension Details of the Machine Extension to be created. + * @param options The options parameters. + */ + beginCreate( + resourceGroupName: string, + clusterName: string, + arcSettingName: string, + extensionName: string, + extension: Extension, + options?: ExtensionsCreateOptionalParams + ): Promise< + PollerLike< + PollOperationState, + ExtensionsCreateResponse + > + >; + /** + * Create Extension for HCI cluster. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param clusterName The name of the cluster. + * @param arcSettingName The name of the proxy resource holding details of HCI ArcSetting information. + * @param extensionName The name of the machine extension. + * @param extension Details of the Machine Extension to be created. + * @param options The options parameters. + */ + beginCreateAndWait( + resourceGroupName: string, + clusterName: string, + arcSettingName: string, + extensionName: string, + extension: Extension, + options?: ExtensionsCreateOptionalParams + ): Promise; + /** + * Update Extension for HCI cluster. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param clusterName The name of the cluster. + * @param arcSettingName The name of the proxy resource holding details of HCI ArcSetting information. + * @param extensionName The name of the machine extension. + * @param extension Details of the Machine Extension to be created. + * @param options The options parameters. + */ + beginUpdate( + resourceGroupName: string, + clusterName: string, + arcSettingName: string, + extensionName: string, + extension: Extension, + options?: ExtensionsUpdateOptionalParams + ): Promise< + PollerLike< + PollOperationState, + ExtensionsUpdateResponse + > + >; + /** + * Update Extension for HCI cluster. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param clusterName The name of the cluster. + * @param arcSettingName The name of the proxy resource holding details of HCI ArcSetting information. + * @param extensionName The name of the machine extension. + * @param extension Details of the Machine Extension to be created. + * @param options The options parameters. + */ + beginUpdateAndWait( + resourceGroupName: string, + clusterName: string, + arcSettingName: string, + extensionName: string, + extension: Extension, + options?: ExtensionsUpdateOptionalParams + ): Promise; + /** + * Delete particular Arc Extension of HCI Cluster. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param clusterName The name of the cluster. + * @param arcSettingName The name of the proxy resource holding details of HCI ArcSetting information. + * @param extensionName The name of the machine extension. + * @param options The options parameters. + */ + beginDelete( + resourceGroupName: string, + clusterName: string, + arcSettingName: string, + extensionName: string, + options?: ExtensionsDeleteOptionalParams + ): Promise, void>>; + /** + * Delete particular Arc Extension of HCI Cluster. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param clusterName The name of the cluster. + * @param arcSettingName The name of the proxy resource holding details of HCI ArcSetting information. + * @param extensionName The name of the machine extension. + * @param options The options parameters. + */ + beginDeleteAndWait( + resourceGroupName: string, + clusterName: string, + arcSettingName: string, + extensionName: string, + options?: ExtensionsDeleteOptionalParams + ): Promise; +} diff --git a/sdk/azurestackhci/arm-azurestackhci/src/operationsInterfaces/index.ts b/sdk/azurestackhci/arm-azurestackhci/src/operationsInterfaces/index.ts new file mode 100644 index 000000000000..2d20c6edaf47 --- /dev/null +++ b/sdk/azurestackhci/arm-azurestackhci/src/operationsInterfaces/index.ts @@ -0,0 +1,12 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +export * from "./arcSettings"; +export * from "./clusters"; +export * from "./extensions"; +export * from "./operations"; diff --git a/sdk/azurestackhci/arm-azurestackhci/src/operationsInterfaces/operations.ts b/sdk/azurestackhci/arm-azurestackhci/src/operationsInterfaces/operations.ts new file mode 100644 index 000000000000..706ea219c720 --- /dev/null +++ b/sdk/azurestackhci/arm-azurestackhci/src/operationsInterfaces/operations.ts @@ -0,0 +1,21 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +import { + OperationsListOptionalParams, + OperationsListResponse +} from "../models"; + +/** Interface representing a Operations. */ +export interface Operations { + /** + * List all available Microsoft.AzureStackHCI provider operations + * @param options The options parameters. + */ + list(options?: OperationsListOptionalParams): Promise; +} diff --git a/sdk/azurestackhci/arm-azurestackhci/test/sampleTest.ts b/sdk/azurestackhci/arm-azurestackhci/test/sampleTest.ts new file mode 100644 index 000000000000..7ed89b043e1b --- /dev/null +++ b/sdk/azurestackhci/arm-azurestackhci/test/sampleTest.ts @@ -0,0 +1,48 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +import { + env, + record, + RecorderEnvironmentSetup, + Recorder +} from "@azure-tools/test-recorder"; +import * as assert from "assert"; + +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: [] +}; + +describe("My test", () => { + let recorder: Recorder; + + beforeEach(async function() { + recorder = record(this, recorderEnvSetup); + }); + + afterEach(async function() { + await recorder.stop(); + }); + + it("sample test", async function() { + console.log("Hi, I'm a test!"); + }); +}); diff --git a/sdk/azurestackhci/arm-azurestackhci/tsconfig.json b/sdk/azurestackhci/arm-azurestackhci/tsconfig.json index 422b584abd5e..6e3251194117 100644 --- a/sdk/azurestackhci/arm-azurestackhci/tsconfig.json +++ b/sdk/azurestackhci/arm-azurestackhci/tsconfig.json @@ -3,7 +3,7 @@ "module": "es6", "moduleResolution": "node", "strict": true, - "target": "es5", + "target": "es6", "sourceMap": true, "declarationMap": true, "esModuleInterop": true, @@ -11,9 +11,9 @@ "forceConsistentCasingInFileNames": true, "lib": ["es6", "dom"], "declaration": true, - "outDir": "./esm", + "outDir": "./dist-esm", "importHelpers": true }, - "include": ["./src/**/*.ts"], + "include": ["./src/**/*.ts", "./test/**/*.ts"], "exclude": ["node_modules"] } diff --git a/sdk/azurestackhci/ci.yml b/sdk/azurestackhci/ci.yml new file mode 100644 index 000000000000..a292f51b614a --- /dev/null +++ b/sdk/azurestackhci/ci.yml @@ -0,0 +1,29 @@ +# NOTE: Please refer to https://aka.ms/azsdk/engsys/ci-yaml before editing this file. +trigger: + branches: + include: + - main + - release/* + - hotfix/* + paths: + include: + - sdk/azurestackhci/ + +pr: + branches: + include: + - main + - release/* + - hotfix/* + paths: + include: + - sdk/azurestackhci/ + +extends: + template: ../../eng/pipelines/templates/stages/archetype-sdk-client.yml + parameters: + ServiceDirectory: azurestackhci + Artifacts: + - name: azure-arm-azurestackhci + safeName: azurearmazurestackhci + \ No newline at end of file