From e0dc967c9dbf0f60b2975405f653ea298959f68e Mon Sep 17 00:00:00 2001 From: SDKAuto Date: Mon, 21 Apr 2025 15:36:00 +0000 Subject: [PATCH] CodeGen from PR 34081 in Azure/azure-rest-api-specs Merge 9e707eb3e308acb3834c8c22b54a731d4e54298e into d507e8437a3259e88e6f1222f401340a98a11293 --- common/config/rush/pnpm-lock.yaml | 174 +--- .../arm-computefleet/CHANGELOG.md | 23 +- sdk/computefleet/arm-computefleet/LICENSE | 2 +- sdk/computefleet/arm-computefleet/README.md | 19 +- sdk/computefleet/arm-computefleet/assets.json | 6 - .../arm-computefleet/eslint.config.mjs | 14 + .../arm-computefleet/package.json | 104 +- .../review/arm-computefleet-api-fleets.api.md | 66 ++ .../arm-computefleet-api-operations.api.md | 19 + .../review/arm-computefleet-api.api.md | 41 +- .../review/arm-computefleet-models.api.md | 36 +- .../review/arm-computefleet.api.md | 36 +- sdk/computefleet/arm-computefleet/sample.env | 1 - .../samples-dev/fleetsCreateOrUpdateSample.ts | 449 --------- .../samples-dev/fleetsDeleteSample.ts | 24 - .../samples-dev/fleetsGetSample.ts | 25 - .../fleetsListByResourceGroupSample.ts | 29 - .../fleetsListBySubscriptionSample.ts | 29 - ...fleetsListVirtualMachineScaleSetsSample.ts | 29 - .../samples-dev/fleetsUpdateSample.ts | 353 ------- .../samples-dev/operationsListSample.ts | 29 - .../samples/v1/javascript/README.md | 64 -- .../javascript/fleetsCreateOrUpdateSample.js | 449 --------- .../v1/javascript/fleetsDeleteSample.js | 24 - .../samples/v1/javascript/fleetsGetSample.js | 25 - .../fleetsListByResourceGroupSample.js | 29 - .../fleetsListBySubscriptionSample.js | 29 - ...fleetsListVirtualMachineScaleSetsSample.js | 29 - .../v1/javascript/fleetsUpdateSample.js | 353 ------- .../v1/javascript/operationsListSample.js | 29 - .../samples/v1/javascript/package.json | 33 - .../samples/v1/javascript/sample.env | 1 - .../samples/v1/typescript/README.md | 77 -- .../samples/v1/typescript/package.json | 42 - .../samples/v1/typescript/sample.env | 1 - .../src/fleetsCreateOrUpdateSample.ts | 462 --------- .../v1/typescript/src/fleetsDeleteSample.ts | 24 - .../v1/typescript/src/fleetsGetSample.ts | 25 - .../src/fleetsListByResourceGroupSample.ts | 29 - .../src/fleetsListBySubscriptionSample.ts | 29 - ...fleetsListVirtualMachineScaleSetsSample.ts | 32 - .../v1/typescript/src/fleetsUpdateSample.ts | 358 ------- .../v1/typescript/src/operationsListSample.ts | 29 - .../samples/v1/typescript/tsconfig.json | 17 - .../src/api/azureFleetContext.ts | 20 +- .../arm-computefleet/src/api/fleets/index.ts | 374 +------- .../src/api/fleets/operations.ts | 425 +++++++++ .../src/api/{ => fleets}/options.ts | 19 +- .../arm-computefleet/src/api/index.ts | 20 - .../src/api/operations/index.ts | 52 +- .../src/api/operations/operations.ts | 71 ++ .../src/api/operations/options.ts | 7 + .../arm-computefleet/src/azureFleetClient.ts | 18 +- .../src/classic/fleets/index.ts | 153 ++- .../src/classic/operations/index.ts | 12 +- .../src/helpers/serializerHelpers.ts | 36 - .../arm-computefleet/src/index.ts | 36 +- .../arm-computefleet/src/models/index.ts | 16 +- .../arm-computefleet/src/models/models.ts | 889 ++++++++++-------- .../src/restorePollerHelpers.ts | 25 +- .../src/static-helpers/urlTemplate.ts | 197 ++++ .../computefleet_operations_test.spec.ts | 177 ---- .../test/public/sampleTest.spec.ts | 20 + .../test/public/utils/recordedClient.ts | 4 - .../arm-computefleet/tsp-location.yaml | 5 +- sdk/computefleet/ci.mgmt.yml | 2 - 66 files changed, 1691 insertions(+), 4585 deletions(-) delete mode 100644 sdk/computefleet/arm-computefleet/assets.json create mode 100644 sdk/computefleet/arm-computefleet/eslint.config.mjs create mode 100644 sdk/computefleet/arm-computefleet/review/arm-computefleet-api-fleets.api.md create mode 100644 sdk/computefleet/arm-computefleet/review/arm-computefleet-api-operations.api.md delete mode 100644 sdk/computefleet/arm-computefleet/sample.env delete mode 100644 sdk/computefleet/arm-computefleet/samples-dev/fleetsCreateOrUpdateSample.ts delete mode 100644 sdk/computefleet/arm-computefleet/samples-dev/fleetsDeleteSample.ts delete mode 100644 sdk/computefleet/arm-computefleet/samples-dev/fleetsGetSample.ts delete mode 100644 sdk/computefleet/arm-computefleet/samples-dev/fleetsListByResourceGroupSample.ts delete mode 100644 sdk/computefleet/arm-computefleet/samples-dev/fleetsListBySubscriptionSample.ts delete mode 100644 sdk/computefleet/arm-computefleet/samples-dev/fleetsListVirtualMachineScaleSetsSample.ts delete mode 100644 sdk/computefleet/arm-computefleet/samples-dev/fleetsUpdateSample.ts delete mode 100644 sdk/computefleet/arm-computefleet/samples-dev/operationsListSample.ts delete mode 100644 sdk/computefleet/arm-computefleet/samples/v1/javascript/README.md delete mode 100644 sdk/computefleet/arm-computefleet/samples/v1/javascript/fleetsCreateOrUpdateSample.js delete mode 100644 sdk/computefleet/arm-computefleet/samples/v1/javascript/fleetsDeleteSample.js delete mode 100644 sdk/computefleet/arm-computefleet/samples/v1/javascript/fleetsGetSample.js delete mode 100644 sdk/computefleet/arm-computefleet/samples/v1/javascript/fleetsListByResourceGroupSample.js delete mode 100644 sdk/computefleet/arm-computefleet/samples/v1/javascript/fleetsListBySubscriptionSample.js delete mode 100644 sdk/computefleet/arm-computefleet/samples/v1/javascript/fleetsListVirtualMachineScaleSetsSample.js delete mode 100644 sdk/computefleet/arm-computefleet/samples/v1/javascript/fleetsUpdateSample.js delete mode 100644 sdk/computefleet/arm-computefleet/samples/v1/javascript/operationsListSample.js delete mode 100644 sdk/computefleet/arm-computefleet/samples/v1/javascript/package.json delete mode 100644 sdk/computefleet/arm-computefleet/samples/v1/javascript/sample.env delete mode 100644 sdk/computefleet/arm-computefleet/samples/v1/typescript/README.md delete mode 100644 sdk/computefleet/arm-computefleet/samples/v1/typescript/package.json delete mode 100644 sdk/computefleet/arm-computefleet/samples/v1/typescript/sample.env delete mode 100644 sdk/computefleet/arm-computefleet/samples/v1/typescript/src/fleetsCreateOrUpdateSample.ts delete mode 100644 sdk/computefleet/arm-computefleet/samples/v1/typescript/src/fleetsDeleteSample.ts delete mode 100644 sdk/computefleet/arm-computefleet/samples/v1/typescript/src/fleetsGetSample.ts delete mode 100644 sdk/computefleet/arm-computefleet/samples/v1/typescript/src/fleetsListByResourceGroupSample.ts delete mode 100644 sdk/computefleet/arm-computefleet/samples/v1/typescript/src/fleetsListBySubscriptionSample.ts delete mode 100644 sdk/computefleet/arm-computefleet/samples/v1/typescript/src/fleetsListVirtualMachineScaleSetsSample.ts delete mode 100644 sdk/computefleet/arm-computefleet/samples/v1/typescript/src/fleetsUpdateSample.ts delete mode 100644 sdk/computefleet/arm-computefleet/samples/v1/typescript/src/operationsListSample.ts delete mode 100644 sdk/computefleet/arm-computefleet/samples/v1/typescript/tsconfig.json create mode 100644 sdk/computefleet/arm-computefleet/src/api/fleets/operations.ts rename sdk/computefleet/arm-computefleet/src/api/{ => fleets}/options.ts (91%) create mode 100644 sdk/computefleet/arm-computefleet/src/api/operations/operations.ts create mode 100644 sdk/computefleet/arm-computefleet/src/api/operations/options.ts delete mode 100644 sdk/computefleet/arm-computefleet/src/helpers/serializerHelpers.ts create mode 100644 sdk/computefleet/arm-computefleet/src/static-helpers/urlTemplate.ts delete mode 100644 sdk/computefleet/arm-computefleet/test/public/computefleet_operations_test.spec.ts create mode 100644 sdk/computefleet/arm-computefleet/test/public/sampleTest.spec.ts diff --git a/common/config/rush/pnpm-lock.yaml b/common/config/rush/pnpm-lock.yaml index 42422b4e57cf..f0e14201ce5b 100644 --- a/common/config/rush/pnpm-lock.yaml +++ b/common/config/rush/pnpm-lock.yaml @@ -1537,10 +1537,6 @@ packages: resolution: {integrity: sha512-Ir+AOibqzrIsL6ajt3Rz3LskB7OiMVHqltZmspbW/TJuTVuyOMirVqAkjfY6JISiLHgyNqicAC8AyHHGzNd/dA==} engines: {node: '>=0.1.90'} - '@cspotcode/source-map-support@0.8.1': - resolution: {integrity: sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==} - engines: {node: '>=12'} - '@esbuild/aix-ppc64@0.25.2': resolution: {integrity: sha512-wCIboOL2yXZym2cgm6mlA742s9QeJ8DjGVaL39dLN4rRwrOgOyYSnOaFPhKZGLb2ngj4EyfAFjsNJwPXZvseag==} engines: {node: '>=18'} @@ -1809,9 +1805,6 @@ packages: '@jridgewell/trace-mapping@0.3.25': resolution: {integrity: sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==} - '@jridgewell/trace-mapping@0.3.9': - resolution: {integrity: sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==} - '@js-sdsl/ordered-map@4.4.2': resolution: {integrity: sha512-iUKgm52T8HOE/makSxjqoWhe95ZJA1/G1sYsGev2JDKUSS14KAgg1LHb+Ba+IPow0xflbnSkOsZcO08C7w1gYw==} @@ -2333,7 +2326,7 @@ packages: version: 0.0.0 '@rush-temp/ai-inference@file:projects/ai-inference.tgz': - resolution: {integrity: sha512-aQ6qV+QuFeI3+m2eAWZXEyDl9nq3Ua/1sAObUXkydQHbiiBIS0tZdYiAz5/Zlv73N2MHIsxpwqcyQLViJlgcRQ==, tarball: file:projects/ai-inference.tgz} + resolution: {integrity: sha512-KS0X60g5Y01lloI256SUR7+8BCD1mYvSN1I1ZM6KDimpE9mxBwlZUt1AZmJZtR31QpxOi/qidfvBJ8lhiJyTUQ==, tarball: file:projects/ai-inference.tgz} version: 0.0.0 '@rush-temp/ai-language-conversations@file:projects/ai-language-conversations.tgz': @@ -2349,7 +2342,7 @@ packages: version: 0.0.0 '@rush-temp/ai-projects@file:projects/ai-projects.tgz': - resolution: {integrity: sha512-TMZ5sJJc5tTLVgAjNS+13PJg2yAK56FnDZPst0bcLbd4lIipuTfP6lv0D3Kkg81j/Q0hI8o9NRVct4wHjtUWrw==, tarball: file:projects/ai-projects.tgz} + resolution: {integrity: sha512-u0RjBMrCRGABwTKjUqGKBaxKoVqVs7x84q19m9HccnnKdCnVooEqm2PxFhbpBthYFeiFcF6D0gaLF4NZHoldjg==, tarball: file:projects/ai-projects.tgz} version: 0.0.0 '@rush-temp/ai-text-analytics@file:projects/ai-text-analytics.tgz': @@ -2553,7 +2546,7 @@ packages: version: 0.0.0 '@rush-temp/arm-computefleet@file:projects/arm-computefleet.tgz': - resolution: {integrity: sha512-u6o59K6caYRjl382KHgDvJ7DkG665XT1IPEq9SPluCMRMaFqg3zFvQn+UAvXsKaTF2MMzlBIOtQlsK/8kqoo4w==, tarball: file:projects/arm-computefleet.tgz} + resolution: {integrity: sha512-N1xU3t6jW4lvc0aAEf9G/x4t9Of2ZkVgpy3eW5jQ3Bl8ahiLSy94AzZdVVESm3Zf8xteX5VM3PFiNM1OfMuZbA==, tarball: file:projects/arm-computefleet.tgz} version: 0.0.0 '@rush-temp/arm-computeschedule@file:projects/arm-computeschedule.tgz': @@ -3545,7 +3538,7 @@ packages: version: 0.0.0 '@rush-temp/dev-tool@file:projects/dev-tool.tgz': - resolution: {integrity: sha512-0sIbWtMzIfR65kiGHhGIR87inePfEOBUf5i4Xzr5d3/d7wheGZRoGa5xdBO3/epMpeIOM8tAcfBWJi3uAHEMJQ==, tarball: file:projects/dev-tool.tgz} + resolution: {integrity: sha512-Mc+huNSvbZwevmMntdGQdCU276BQ79+5ggArqk+K+yrS2R/SoEfl3fEpo3LhClbvjbZ1vlScKL42EhKtl0NaFw==, tarball: file:projects/dev-tool.tgz} version: 0.0.0 '@rush-temp/developer-devcenter@file:projects/developer-devcenter.tgz': @@ -3653,7 +3646,7 @@ packages: version: 0.0.0 '@rush-temp/logger@file:projects/logger.tgz': - resolution: {integrity: sha512-Tmw0M/+OY8obUMzkrxK4ND8xcynZJKskq7QdFI+dEryYgRDP/KSAJNiLnfKZrScUV7vO6QpvpvrObnLqr5jDOw==, tarball: file:projects/logger.tgz} + resolution: {integrity: sha512-/rGXEMjZBho/TTCakfBw91SeGKCnH7aaYyKl7ys3Nj2GasLTNybtmO8u2fsyK69JZhYv79vhABPevzgX2W+e1Q==, tarball: file:projects/logger.tgz} version: 0.0.0 '@rush-temp/maps-common@file:projects/maps-common.tgz': @@ -3697,11 +3690,11 @@ packages: version: 0.0.0 '@rush-temp/monitor-opentelemetry@file:projects/monitor-opentelemetry.tgz': - resolution: {integrity: sha512-Sm1vEDljQVzVy44Wn9+7e0MeRrbAErcj5CWDwlOg8Y4um17bAAySG4CvtCSGNbrb36zI0OU87BIgeHs04PgK0Q==, tarball: file:projects/monitor-opentelemetry.tgz} + resolution: {integrity: sha512-obF9utW36UmUFtcBH1bkkMEt0NSkuTAwNPYlvG6ZgB1y5Purun9wTxvlQGcyB34YzXndJxwKJeFCeqADX0aHUA==, tarball: file:projects/monitor-opentelemetry.tgz} version: 0.0.0 '@rush-temp/monitor-query@file:projects/monitor-query.tgz': - resolution: {integrity: sha512-gfPx8/W5N3//hjGxhPlNyti2TFu23bO9jUEdfKqWQ6JO1ttZgeC9xQDYz0SXb7UL6xql1L7RSz91O9hQ7SfsMQ==, tarball: file:projects/monitor-query.tgz} + resolution: {integrity: sha512-ZRW3T6bfDKeuO/12XAat4YwHFYkijTnJNnrL7OiGUxFHqB/mhu31wIxGcGyqKz/guEPCdXuQYqNU8WeUdnUwag==, tarball: file:projects/monitor-query.tgz} version: 0.0.0 '@rush-temp/notification-hubs@file:projects/notification-hubs.tgz': @@ -3777,7 +3770,7 @@ packages: version: 0.0.0 '@rush-temp/perf-monitor-opentelemetry@file:projects/perf-monitor-opentelemetry.tgz': - resolution: {integrity: sha512-Wp/W1huU1sjsxIJt1/c5O8G1jKc3lzLQWyXQyjYxWlF3v+lpGbIaqCxevnIh8AGcu1VLAmPN86oNm4VnOXKozA==, tarball: file:projects/perf-monitor-opentelemetry.tgz} + resolution: {integrity: sha512-QtV7OPWFzewMKq3h1VoX2C/6kHVk5+XlETk/+8f6JGuu7T6sjC6JFYfVqo1U3wXLGZGrwQkgvanP1pxbyT0kGQ==, tarball: file:projects/perf-monitor-opentelemetry.tgz} version: 0.0.0 '@rush-temp/perf-monitor-query@file:projects/perf-monitor-query.tgz': @@ -3995,18 +3988,6 @@ packages: '@ts-morph/common@0.26.1': resolution: {integrity: sha512-Sn28TGl/4cFpcM+jwsH1wLncYq3FtN/BIpem+HOygfBWPT5pAeS5dB4VFVzV8FbnOKHpDLZmvAl4AjPEev5idA==} - '@tsconfig/node10@1.0.11': - resolution: {integrity: sha512-DcRjDCujK/kCk/cUe8Xz8ZSpm8mS3mNNpta+jGCA6USEDfktlNvm1+IuZ9eTcDbNk41BHwpHHeW+N1lKCz4zOw==} - - '@tsconfig/node12@1.0.11': - resolution: {integrity: sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==} - - '@tsconfig/node14@1.0.3': - resolution: {integrity: sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==} - - '@tsconfig/node16@1.0.4': - resolution: {integrity: sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==} - '@types/archiver@6.0.3': resolution: {integrity: sha512-a6wUll6k3zX6qs5KlxIggs1P1JcYJaTCx2gnlr+f0S1yd2DoaEwoIK10HmBaLnZwWneBz+JBm0dwcZu0zECBcQ==} @@ -4323,10 +4304,6 @@ packages: peerDependencies: acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 - acorn-walk@8.3.4: - resolution: {integrity: sha512-ueEepnujpqee2o5aIYnvHU6C0A42MNdsIDeqy5BydrkuC5R1ZuUFnm27EeFJGoEHJQgn3uleRvmTXaJgfXbt4g==} - engines: {node: '>=0.4.0'} - acorn@8.14.1: resolution: {integrity: sha512-OvQ/2pUDKmgfCg++xsTX1wGxfTaszcHVcTctW4UJB4hibJx2HXxxO5UmVgyjMa+ZDsiaf5wWLXYpRWMmBI0QHg==} engines: {node: '>=0.4.0'} @@ -4402,9 +4379,6 @@ packages: resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==} engines: {node: '>= 8'} - arg@4.1.3: - resolution: {integrity: sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==} - argparse@1.0.10: resolution: {integrity: sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==} @@ -4722,9 +4696,6 @@ packages: resolution: {integrity: sha512-VC2Gs20JcTyeQob6UViBLnyP0bYHkBh6EiKzot9vi2DmeGlFT9Wd7VG3NBrkNx/jYvFBeyDOMMHdHQhbtKLgHQ==} engines: {node: '>=16'} - create-require@1.1.1: - resolution: {integrity: sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==} - cross-env@7.0.3: resolution: {integrity: sha512-+/HKd6EgcQCJGh2PSjZuUitQBQynKor4wrFbRg4DtAgS1aWO+gU52xpH7M9ScGgXSYmAVS9bIJ8EzuaGw0oNAw==} engines: {node: '>=10.14', npm: '>=6', yarn: '>=1'} @@ -4827,10 +4798,6 @@ packages: resolution: {integrity: sha512-bwy0MGW55bG41VqxxypOsdSdGqLwXPI/focwgTYCFMbdUiBAxLg9CFzG08sz2aqzknwiX7Hkl0bQENjg8iLByw==} engines: {node: '>=8'} - diff@4.0.2: - resolution: {integrity: sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==} - engines: {node: '>=0.3.1'} - dir-glob@3.0.1: resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==} engines: {node: '>=8'} @@ -5711,9 +5678,6 @@ packages: resolution: {integrity: sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==} engines: {node: '>=10'} - make-error@1.3.6: - resolution: {integrity: sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==} - map-obj@1.0.1: resolution: {integrity: sha512-7N/q3lyZ+LVCp7PzuxrJr4KMbBE2hW7BT7YNia330OFxIf4d3r5zVpicP2650l7CPN6RM9zOJRl3NGpqSiw3Eg==} engines: {node: '>=0.10.0'} @@ -6180,11 +6144,21 @@ packages: engines: {node: '>=18'} hasBin: true + playwright-core@1.52.0: + resolution: {integrity: sha512-l2osTgLXSMeuLZOML9qYODUQoPPnUsKsb5/P6LJ2e6uPKXUdPK5WYhN4z03G+YNbWmGDY4YENauNu4ZKczreHg==} + engines: {node: '>=18'} + hasBin: true + playwright@1.51.1: resolution: {integrity: sha512-kkx+MB2KQRkyxjYPc3a0wLZZoDczmppyGJIvQ43l+aZihkaVvmu/21kiyaHeHjiFxjxNNFnUncKmcGIyOojsaw==} engines: {node: '>=18'} hasBin: true + playwright@1.52.0: + resolution: {integrity: sha512-JAwMNMBlxJ2oD1kce4KPtMkDeKGHQstdpFPcPH3maElAXon/QZeTvtsfXmTMRyO9TslfoYOXkSsvao2nE1ilTw==} + engines: {node: '>=18'} + hasBin: true + polite-json@5.0.0: resolution: {integrity: sha512-OLS/0XeUAcE8a2fdwemNja+udKgXNnY6yKVIXqAD2zVRx1KvY6Ato/rZ2vdzbxqYwPW0u6SCNC/bAMPNzpzxbw==} engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} @@ -6788,20 +6762,6 @@ packages: ts-morph@25.0.1: resolution: {integrity: sha512-QJEiTdnz1YjrB3JFhd626gX4rKHDLSjSVMvGGG4v7ONc3RBwa0Eei98G9AT9uNFDMtV54JyuXsFeC+OH0n6bXQ==} - ts-node@10.9.2: - resolution: {integrity: sha512-f0FFpIdcHgn8zcPSbf1dRevwt047YMnaiJM3u2w2RewrB+fob/zePZcrOyQoLMMO7aBIddLcQIEK5dYjkLnGrQ==} - hasBin: true - peerDependencies: - '@swc/core': '>=1.2.50' - '@swc/wasm': '>=1.2.50' - '@types/node': '*' - typescript: '>=2.7' - peerDependenciesMeta: - '@swc/core': - optional: true - '@swc/wasm': - optional: true - tshy@2.0.1: resolution: {integrity: sha512-U5fC+3pMaGfmULhPTVpxKMd62AcX13yfsFrjhAP/daTLG6LFRLIuxqYOmkejJ4MT/s5bEa29+1Jy/9mXkMiMfA==} engines: {node: 16 >=16.17 || 18 >=18.15.0 || >=20.6.1} @@ -6960,9 +6920,6 @@ packages: resolution: {integrity: sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==} hasBin: true - v8-compile-cache-lib@3.0.1: - resolution: {integrity: sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==} - validate-npm-package-license@3.0.4: resolution: {integrity: sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==} @@ -7166,10 +7123,6 @@ packages: resolution: {integrity: sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==} engines: {node: '>=12'} - yn@3.1.1: - resolution: {integrity: sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==} - engines: {node: '>=6'} - yocto-queue@0.1.0: resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} engines: {node: '>=10'} @@ -7787,10 +7740,6 @@ snapshots: '@colors/colors@1.6.0': {} - '@cspotcode/source-map-support@0.8.1': - dependencies: - '@jridgewell/trace-mapping': 0.3.9 - '@esbuild/aix-ppc64@0.25.2': optional: true @@ -7979,11 +7928,6 @@ snapshots: '@jridgewell/resolve-uri': 3.1.2 '@jridgewell/sourcemap-codec': 1.5.0 - '@jridgewell/trace-mapping@0.3.9': - dependencies: - '@jridgewell/resolve-uri': 3.1.2 - '@jridgewell/sourcemap-codec': 1.5.0 - '@js-sdsl/ordered-map@4.4.2': {} '@jsdoc/salty@0.2.9': @@ -10731,11 +10675,11 @@ snapshots: '@rush-temp/arm-computefleet@file:projects/arm-computefleet.tgz(@types/debug@4.1.12)(tsx@4.19.3)(vite@6.2.6(@types/node@22.7.9)(tsx@4.19.3)(yaml@2.7.1))(yaml@2.7.1)': dependencies: '@types/node': 18.19.86 - '@vitest/browser': 3.1.1(playwright@1.51.1)(vite@6.2.6(@types/node@22.7.9)(tsx@4.19.3)(yaml@2.7.1))(vitest@3.1.1) + '@vitest/browser': 3.1.1(playwright@1.52.0)(vite@6.2.6(@types/node@22.7.9)(tsx@4.19.3)(yaml@2.7.1))(vitest@3.1.1) '@vitest/coverage-istanbul': 3.1.1(vitest@3.1.1) dotenv: 16.5.0 eslint: 9.24.0 - playwright: 1.51.1 + playwright: 1.52.0 tslib: 2.8.1 typescript: 5.8.3 vitest: 3.1.1(@types/debug@4.1.12)(@types/node@18.19.86)(@vitest/browser@3.1.1)(tsx@4.19.3)(yaml@2.7.1) @@ -19440,7 +19384,6 @@ snapshots: strip-json-comments: 5.0.1 tar: 7.4.3 ts-morph: 25.0.1 - ts-node: 10.9.2(@types/node@18.19.86)(typescript@5.8.3) tshy: 2.0.1 tslib: 2.8.1 tsx: 4.19.3 @@ -19451,8 +19394,6 @@ snapshots: yaml: 2.7.1 transitivePeerDependencies: - '@edge-runtime/vm' - - '@swc/core' - - '@swc/wasm' - '@types/debug' - '@vitest/browser' - '@vitest/ui' @@ -22699,14 +22640,6 @@ snapshots: minimatch: 9.0.5 path-browserify: 1.0.1 - '@tsconfig/node10@1.0.11': {} - - '@tsconfig/node12@1.0.11': {} - - '@tsconfig/node14@1.0.3': {} - - '@tsconfig/node16@1.0.4': {} - '@types/archiver@6.0.3': dependencies: '@types/readdir-glob': 1.1.5 @@ -23044,6 +22977,25 @@ snapshots: - utf-8-validate - vite + '@vitest/browser@3.1.1(playwright@1.52.0)(vite@6.2.6(@types/node@22.7.9)(tsx@4.19.3)(yaml@2.7.1))(vitest@3.1.1)': + dependencies: + '@testing-library/dom': 10.4.0 + '@testing-library/user-event': 14.6.1(@testing-library/dom@10.4.0) + '@vitest/mocker': 3.1.1(vite@6.2.6(@types/node@22.7.9)(tsx@4.19.3)(yaml@2.7.1)) + '@vitest/utils': 3.1.1 + magic-string: 0.30.17 + sirv: 3.0.1 + tinyrainbow: 2.0.0 + vitest: 3.1.1(@types/debug@4.1.12)(@types/node@22.7.9)(@vitest/browser@3.1.1)(tsx@4.19.3)(yaml@2.7.1) + ws: 8.18.1 + optionalDependencies: + playwright: 1.52.0 + transitivePeerDependencies: + - bufferutil + - msw + - utf-8-validate + - vite + '@vitest/coverage-istanbul@3.1.1(vitest@3.1.1)': dependencies: '@istanbuljs/schema': 0.1.3 @@ -23122,10 +23074,6 @@ snapshots: dependencies: acorn: 8.14.1 - acorn-walk@8.3.4: - dependencies: - acorn: 8.14.1 - acorn@8.14.1: {} agent-base@7.1.3: {} @@ -23202,8 +23150,6 @@ snapshots: normalize-path: 3.0.0 picomatch: 2.3.1 - arg@4.1.3: {} - argparse@1.0.10: dependencies: sprintf-js: 1.0.3 @@ -23537,8 +23483,6 @@ snapshots: p-filter: 3.0.0 p-map: 6.0.0 - create-require@1.1.1: {} - cross-env@7.0.3: dependencies: cross-spawn: 7.0.6 @@ -23615,8 +23559,6 @@ snapshots: detect-libc@2.0.3: {} - diff@4.0.2: {} - dir-glob@3.0.1: dependencies: path-type: 4.0.0 @@ -24614,8 +24556,6 @@ snapshots: dependencies: semver: 7.7.1 - make-error@1.3.6: {} - map-obj@1.0.1: {} map-obj@4.3.0: {} @@ -25048,12 +24988,20 @@ snapshots: playwright-core@1.51.1: {} + playwright-core@1.52.0: {} + playwright@1.51.1: dependencies: playwright-core: 1.51.1 optionalDependencies: fsevents: 2.3.2 + playwright@1.52.0: + dependencies: + playwright-core: 1.52.0 + optionalDependencies: + fsevents: 2.3.2 + polite-json@5.0.0: {} possible-typed-array-names@1.1.0: {} @@ -25727,24 +25675,6 @@ snapshots: '@ts-morph/common': 0.26.1 code-block-writer: 13.0.3 - ts-node@10.9.2(@types/node@18.19.86)(typescript@5.8.3): - dependencies: - '@cspotcode/source-map-support': 0.8.1 - '@tsconfig/node10': 1.0.11 - '@tsconfig/node12': 1.0.11 - '@tsconfig/node14': 1.0.3 - '@tsconfig/node16': 1.0.4 - '@types/node': 18.19.86 - acorn: 8.14.1 - acorn-walk: 8.3.4 - arg: 4.1.3 - create-require: 1.1.1 - diff: 4.0.2 - make-error: 1.3.6 - typescript: 5.8.3 - v8-compile-cache-lib: 3.0.1 - yn: 3.1.1 - tshy@2.0.1: dependencies: chalk: 5.4.1 @@ -25886,8 +25816,6 @@ snapshots: uuid@8.3.2: {} - v8-compile-cache-lib@3.0.1: {} - validate-npm-package-license@3.0.4: dependencies: spdx-correct: 3.2.0 @@ -26018,7 +25946,7 @@ snapshots: optionalDependencies: '@types/debug': 4.1.12 '@types/node': 18.19.86 - '@vitest/browser': 3.1.1(playwright@1.51.1)(vite@6.2.6(@types/node@22.7.9)(tsx@4.19.3)(yaml@2.7.1))(vitest@3.1.1) + '@vitest/browser': 3.1.1(playwright@1.52.0)(vite@6.2.6(@types/node@22.7.9)(tsx@4.19.3)(yaml@2.7.1))(vitest@3.1.1) transitivePeerDependencies: - jiti - less @@ -26058,7 +25986,7 @@ snapshots: optionalDependencies: '@types/debug': 4.1.12 '@types/node': 20.17.30 - '@vitest/browser': 3.1.1(playwright@1.51.1)(vite@6.2.6(@types/node@22.7.9)(tsx@4.19.3)(yaml@2.7.1))(vitest@3.1.1) + '@vitest/browser': 3.1.1(playwright@1.52.0)(vite@6.2.6(@types/node@22.7.9)(tsx@4.19.3)(yaml@2.7.1))(vitest@3.1.1) transitivePeerDependencies: - jiti - less @@ -26098,7 +26026,7 @@ snapshots: optionalDependencies: '@types/debug': 4.1.12 '@types/node': 22.7.9 - '@vitest/browser': 3.1.1(playwright@1.51.1)(vite@6.2.6(@types/node@22.7.9)(tsx@4.19.3)(yaml@2.7.1))(vitest@3.1.1) + '@vitest/browser': 3.1.1(playwright@1.52.0)(vite@6.2.6(@types/node@22.7.9)(tsx@4.19.3)(yaml@2.7.1))(vitest@3.1.1) transitivePeerDependencies: - jiti - less @@ -26217,8 +26145,6 @@ snapshots: y18n: 5.0.8 yargs-parser: 21.1.1 - yn@3.1.1: {} - yocto-queue@0.1.0: {} yoctocolors-cjs@2.1.2: {} diff --git a/sdk/computefleet/arm-computefleet/CHANGELOG.md b/sdk/computefleet/arm-computefleet/CHANGELOG.md index 8e12a1068edd..9c80b0ac8c74 100644 --- a/sdk/computefleet/arm-computefleet/CHANGELOG.md +++ b/sdk/computefleet/arm-computefleet/CHANGELOG.md @@ -1,15 +1,24 @@ # Release History - -## 1.0.1 (Unreleased) - + +## 2.0.0 (2025-04-21) + ### Features Added -### Breaking Changes + - Added Interface ErrorAdditionalInfo + - Added Interface ErrorDetail + - Added Interface ErrorResponse + - Interface VirtualMachineScaleSetDataDisk has a new optional parameter diskIopsReadWrite + - Added Enum KnownVersions + - Enum KnownAcceleratorType has a new value Fpga + - Enum KnownDiskControllerTypes has a new value Scsi -### Bugs Fixed - -### Other Changes +### Breaking Changes + - Interface VirtualMachineScaleSetDataDisk no longer has parameter diskIOPSReadWrite + - Enum KnownAcceleratorType no longer has value FPGA + - Enum KnownDiskControllerTypes no longer has value SCSI + + ## 1.0.0 (2024-10-21) ### Features Added diff --git a/sdk/computefleet/arm-computefleet/LICENSE b/sdk/computefleet/arm-computefleet/LICENSE index b2f52a2bad4e..63447fd8bbbf 100644 --- a/sdk/computefleet/arm-computefleet/LICENSE +++ b/sdk/computefleet/arm-computefleet/LICENSE @@ -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/computefleet/arm-computefleet/README.md b/sdk/computefleet/arm-computefleet/README.md index 43fa3ffc2682..588a7552ffcf 100644 --- a/sdk/computefleet/arm-computefleet/README.md +++ b/sdk/computefleet/arm-computefleet/README.md @@ -2,11 +2,13 @@ This package contains an isomorphic SDK (runs both in Node.js and in browsers) for AzureFleet client. -Azure Fleet Service -[Source code](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/computefleet/arm-computefleet) | -[Package (NPM)](https://www.npmjs.com/package/@azure/arm-computefleet) | -[API reference documentation](https://learn.microsoft.com/javascript/api/@azure/arm-computefleet?view=azure-node-preview) | + +Key links: + +- [Source code](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/computefleet/arm-computefleet) +- [Package (NPM)](https://www.npmjs.com/package/@azure/arm-computefleet) +- [API reference documentation](https://learn.microsoft.com/javascript/api/@azure/arm-computefleet?view=azure-node-preview) ## Getting started @@ -43,7 +45,6 @@ npm install @azure/identity ``` You will also need to **register a new AAD application and grant access to AzureFleet** 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`. For more information about how to create an Azure AD Application check out [this guide](https://learn.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal). @@ -63,16 +64,15 @@ For browser environments, use the `InteractiveBrowserCredential` from the `@azur import { InteractiveBrowserCredential } from "@azure/identity"; import { AzureFleetClient } from "@azure/arm-computefleet"; -const subscriptionId = "00000000-0000-0000-0000-000000000000"; const credential = new InteractiveBrowserCredential({ tenantId: "", - clientId: "", -}); + clientId: "" + }); const client = new AzureFleetClient(credential, subscriptionId); ``` -### JavaScript Bundle +### 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 @@ -95,6 +95,7 @@ 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). + ## 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. diff --git a/sdk/computefleet/arm-computefleet/assets.json b/sdk/computefleet/arm-computefleet/assets.json deleted file mode 100644 index 24581df560fc..000000000000 --- a/sdk/computefleet/arm-computefleet/assets.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "AssetsRepo": "Azure/azure-sdk-assets", - "AssetsRepoPrefixPath": "js", - "TagPrefix": "js/computefleet/arm-computefleet", - "Tag": "js/computefleet/arm-computefleet_2bcecc84d9" -} diff --git a/sdk/computefleet/arm-computefleet/eslint.config.mjs b/sdk/computefleet/arm-computefleet/eslint.config.mjs new file mode 100644 index 000000000000..6d2f8a5914c3 --- /dev/null +++ b/sdk/computefleet/arm-computefleet/eslint.config.mjs @@ -0,0 +1,14 @@ +import azsdkEslint from "@azure/eslint-plugin-azure-sdk"; + +export default azsdkEslint.config([ + { + rules: { + "@azure/azure-sdk/ts-modules-only-named": "warn", + "@azure/azure-sdk/ts-package-json-types": "warn", + "@azure/azure-sdk/ts-package-json-engine-is-present": "warn", + "@azure/azure-sdk/ts-package-json-files-required": "off", + "@azure/azure-sdk/ts-package-json-main-is-cjs": "off", + "tsdoc/syntax": "warn", + }, + }, +]); diff --git a/sdk/computefleet/arm-computefleet/package.json b/sdk/computefleet/arm-computefleet/package.json index 722e62b70d49..e0e47fdf3abc 100644 --- a/sdk/computefleet/arm-computefleet/package.json +++ b/sdk/computefleet/arm-computefleet/package.json @@ -1,17 +1,19 @@ { "name": "@azure/arm-computefleet", - "version": "1.0.1", - "description": "Azure Fleet Service", + "version": "2.0.0", + "description": "A generated SDK for AzureFleetClient.", "engines": { "node": ">=18.0.0" }, "sideEffects": false, "autoPublish": false, "tshy": { - "project": "./tsconfig.src.json", "exports": { "./package.json": "./package.json", ".": "./src/index.ts", + "./api": "./src/api/index.ts", + "./api/fleets": "./src/api/fleets/index.ts", + "./api/operations": "./src/api/operations/index.ts", "./models": "./src/models/index.ts" }, "dialects": [ @@ -22,7 +24,8 @@ "browser", "react-native" ], - "selfLink": false + "selfLink": false, + "project": "./tsconfig.src.json" }, "type": "module", "keywords": [ @@ -47,6 +50,7 @@ "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/computefleet/arm-computefleet/README.md", "prettier": "@azure/eslint-plugin-azure-sdk/prettier.json", "//metadata": { "constantPaths": [ @@ -57,11 +61,11 @@ ] }, "dependencies": { - "@azure-rest/core-client": "^2.3.2", + "@azure-rest/core-client": "^2.3.1", "@azure/abort-controller": "^2.1.2", "@azure/core-auth": "^1.9.0", "@azure/core-lro": "^3.1.0", - "@azure/core-rest-pipeline": "^1.18.2", + "@azure/core-rest-pipeline": "^1.19.1", "@azure/core-util": "^1.11.0", "@azure/logger": "^1.1.4", "tslib": "^2.8.1" @@ -72,34 +76,34 @@ "@azure-tools/test-utils-vitest": "^1.0.0", "@azure/dev-tool": "^1.0.0", "@azure/eslint-plugin-azure-sdk": "^3.0.0", - "@azure/identity": "^4.2.1", + "@azure/identity": "^4.9.0", "@types/node": "^18.0.0", "@vitest/browser": "^3.0.9", "@vitest/coverage-istanbul": "^3.0.9", "dotenv": "^16.0.0", "eslint": "^9.9.0", - "playwright": "^1.49.1", + "playwright": "^1.52.0", "typescript": "~5.8.2", "vitest": "^3.0.9" }, "scripts": { "build": "npm run clean && dev-tool run build-package && dev-tool run extract-api", - "build:samples": "tsc -p tsconfig.samples.json && dev-tool samples publish -f", + "build:samples": "echo skipped", "build:test": "npm run clean && dev-tool run build-package && dev-tool run build-test", - "check-format": "dev-tool run vendored prettier --list-different --config ../../../.prettierrc.json --ignore-path ../../../.prettierignore \"src/**/*.{ts,cts,mts}\" \"test/**/*.{ts,cts,mts}\" \"*.{js,cjs,mjs,json}\" \"samples-dev/*.ts\"", + "check-format": "dev-tool run vendored prettier --list-different --config ../../../.prettierrc.json --ignore-path ../../../.prettierignore \"src/**/*.{ts,cts,mts}\" \"test/**/*.{ts,cts,mts}\" \"*.{js,cjs,mjs,json}\" ", "clean": "dev-tool run vendored rimraf --glob dist dist-browser dist-esm test-dist temp types *.tgz *.log", - "execute:samples": "dev-tool samples run samples-dev", + "execute:samples": "echo skipped", "extract-api": "dev-tool run vendored rimraf review && dev-tool run extract-api", - "format": "dev-tool run vendored prettier --write --config ../../../.prettierrc.json --ignore-path ../../../.prettierignore \"src/**/*.{ts,cts,mts}\" \"test/**/*.{ts,cts,mts}\" \"*.{js,cjs,mjs,json}\" \"samples-dev/*.ts\"", + "format": "dev-tool run vendored prettier --write --config ../../../.prettierrc.json --ignore-path ../../../.prettierignore \"src/**/*.{ts,cts,mts}\" \"test/**/*.{ts,cts,mts}\" \"*.{js,cjs,mjs,json}\" ", "generate:client": "echo skipped", "integration-test": "npm run integration-test:node && npm run integration-test:browser", "integration-test:browser": "echo skipped", "integration-test:node": "dev-tool run test:vitest --esm", - "lint": "echo skipped", - "lint:fix": "echo skipped", - "minify": "echo skipped", + "lint": "eslint package.json api-extractor.json src test", + "lint:fix": "eslint package.json api-extractor.json src test --fix --fix-type [problem,suggestion]", + "minify": "dev-tool run vendored uglifyjs -c -m --comments --source-map \"content='./dist/index.js.map'\" -o ./dist/index.min.js ./dist/index.js", "pack": "npm pack 2>&1", - "test": "npm run clean && dev-tool run build-package && npm run unit-test:node && npm run unit-test:browser && npm run integration-test", + "test": "npm run clean && dev-tool run build-package && npm run unit-test:node && dev-tool run bundle && npm run unit-test:browser && npm run integration-test", "test:browser": "npm run clean && npm run build:test && npm run unit-test:browser && npm run integration-test:browser", "test:node": "npm run clean && dev-tool run build-package && npm run unit-test:node && npm run integration-test:node", "unit-test": "npm run unit-test:node && npm run unit-test:browser", @@ -107,14 +111,8 @@ "unit-test:node": "dev-tool run test:vitest", "update-snippets": "dev-tool run update-snippets" }, - "//sampleConfiguration": { - "productName": "@azure/arm-computefleet", - "productSlugs": [ - "azure" - ], - "disableDocsMs": true, - "apiRefLink": "https://learn.microsoft.com/javascript/api/@azure/arm-computefleet?view=azure-node-preview" - }, + "browser": "./dist/browser/index.js", + "react-native": "./dist/react-native/index.js", "exports": { "./package.json": "./package.json", ".": { @@ -135,6 +133,60 @@ "default": "./dist/commonjs/index.js" } }, + "./api": { + "browser": { + "types": "./dist/browser/api/index.d.ts", + "default": "./dist/browser/api/index.js" + }, + "react-native": { + "types": "./dist/react-native/api/index.d.ts", + "default": "./dist/react-native/api/index.js" + }, + "import": { + "types": "./dist/esm/api/index.d.ts", + "default": "./dist/esm/api/index.js" + }, + "require": { + "types": "./dist/commonjs/api/index.d.ts", + "default": "./dist/commonjs/api/index.js" + } + }, + "./api/fleets": { + "browser": { + "types": "./dist/browser/api/fleets/index.d.ts", + "default": "./dist/browser/api/fleets/index.js" + }, + "react-native": { + "types": "./dist/react-native/api/fleets/index.d.ts", + "default": "./dist/react-native/api/fleets/index.js" + }, + "import": { + "types": "./dist/esm/api/fleets/index.d.ts", + "default": "./dist/esm/api/fleets/index.js" + }, + "require": { + "types": "./dist/commonjs/api/fleets/index.d.ts", + "default": "./dist/commonjs/api/fleets/index.js" + } + }, + "./api/operations": { + "browser": { + "types": "./dist/browser/api/operations/index.d.ts", + "default": "./dist/browser/api/operations/index.js" + }, + "react-native": { + "types": "./dist/react-native/api/operations/index.d.ts", + "default": "./dist/react-native/api/operations/index.js" + }, + "import": { + "types": "./dist/esm/api/operations/index.d.ts", + "default": "./dist/esm/api/operations/index.js" + }, + "require": { + "types": "./dist/commonjs/api/operations/index.d.ts", + "default": "./dist/commonjs/api/operations/index.js" + } + }, "./models": { "browser": { "types": "./dist/browser/models/index.d.ts", @@ -156,7 +208,5 @@ }, "main": "./dist/commonjs/index.js", "types": "./dist/commonjs/index.d.ts", - "module": "./dist/esm/index.js", - "browser": "./dist/browser/index.js", - "react-native": "./dist/react-native/index.js" + "module": "./dist/esm/index.js" } diff --git a/sdk/computefleet/arm-computefleet/review/arm-computefleet-api-fleets.api.md b/sdk/computefleet/arm-computefleet/review/arm-computefleet-api-fleets.api.md new file mode 100644 index 000000000000..614892443006 --- /dev/null +++ b/sdk/computefleet/arm-computefleet/review/arm-computefleet-api-fleets.api.md @@ -0,0 +1,66 @@ +## API Report File for "@azure/arm-computefleet" + +> Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/). + +```ts + +import { Client } from '@azure-rest/core-client'; +import { OperationOptions } from '@azure-rest/core-client'; +import { OperationState } from '@azure/core-lro'; +import { PollerLike } from '@azure/core-lro'; + +// @public +export function $delete(context: AzureFleetContext, resourceGroupName: string, fleetName: string, options?: FleetsDeleteOptionalParams): PollerLike, void>; + +// @public +export function createOrUpdate(context: AzureFleetContext, resourceGroupName: string, fleetName: string, resource: Fleet, options?: FleetsCreateOrUpdateOptionalParams): PollerLike, Fleet>; + +// @public +export interface FleetsCreateOrUpdateOptionalParams extends OperationOptions { + updateIntervalInMs?: number; +} + +// @public +export interface FleetsDeleteOptionalParams extends OperationOptions { + updateIntervalInMs?: number; +} + +// @public +export interface FleetsGetOptionalParams extends OperationOptions { +} + +// @public +export interface FleetsListByResourceGroupOptionalParams extends OperationOptions { +} + +// @public +export interface FleetsListBySubscriptionOptionalParams extends OperationOptions { +} + +// @public +export interface FleetsListVirtualMachineScaleSetsOptionalParams extends OperationOptions { +} + +// @public +export interface FleetsUpdateOptionalParams extends OperationOptions { + updateIntervalInMs?: number; +} + +// @public +export function get(context: AzureFleetContext, resourceGroupName: string, fleetName: string, options?: FleetsGetOptionalParams): Promise; + +// @public +export function listByResourceGroup(context: AzureFleetContext, resourceGroupName: string, options?: FleetsListByResourceGroupOptionalParams): PagedAsyncIterableIterator; + +// @public +export function listBySubscription(context: AzureFleetContext, options?: FleetsListBySubscriptionOptionalParams): PagedAsyncIterableIterator; + +// @public +export function listVirtualMachineScaleSets(context: AzureFleetContext, resourceGroupName: string, name: string, options?: FleetsListVirtualMachineScaleSetsOptionalParams): PagedAsyncIterableIterator; + +// @public +export function update(context: AzureFleetContext, resourceGroupName: string, fleetName: string, properties: FleetUpdate, options?: FleetsUpdateOptionalParams): PollerLike, Fleet>; + +// (No @packageDocumentation comment for this package) + +``` diff --git a/sdk/computefleet/arm-computefleet/review/arm-computefleet-api-operations.api.md b/sdk/computefleet/arm-computefleet/review/arm-computefleet-api-operations.api.md new file mode 100644 index 000000000000..10596ea07caf --- /dev/null +++ b/sdk/computefleet/arm-computefleet/review/arm-computefleet-api-operations.api.md @@ -0,0 +1,19 @@ +## API Report File for "@azure/arm-computefleet" + +> Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/). + +```ts + +import { Client } from '@azure-rest/core-client'; +import { OperationOptions } from '@azure-rest/core-client'; + +// @public +export function list(context: AzureFleetContext, options?: OperationsListOptionalParams): PagedAsyncIterableIterator; + +// @public +export interface OperationsListOptionalParams extends OperationOptions { +} + +// (No @packageDocumentation comment for this package) + +``` diff --git a/sdk/computefleet/arm-computefleet/review/arm-computefleet-api.api.md b/sdk/computefleet/arm-computefleet/review/arm-computefleet-api.api.md index 31312edb9456..b5bca40c0007 100644 --- a/sdk/computefleet/arm-computefleet/review/arm-computefleet-api.api.md +++ b/sdk/computefleet/arm-computefleet/review/arm-computefleet-api.api.md @@ -6,14 +6,6 @@ import { Client } from '@azure-rest/core-client'; import { ClientOptions } from '@azure-rest/core-client'; -import { HttpResponse } from '@azure-rest/core-client'; -import { OperationOptions } from '@azure-rest/core-client'; -import { OperationState } from '@azure/core-lro'; -import { Paged } from '@azure/core-paging'; -import { PollerLike } from '@azure/core-lro'; -import { RawHttpHeaders } from '@azure/core-rest-pipeline'; -import { RequestParameters } from '@azure-rest/core-client'; -import { StreamableMethod } from '@azure-rest/core-client'; import { TokenCredential } from '@azure/core-auth'; // @public @@ -22,36 +14,13 @@ export interface AzureFleetClientOptionalParams extends ClientOptions { } // @public (undocumented) -export type AzureFleetContext = Client & { - path: Routes; -}; +export interface AzureFleetContext extends Client { + apiVersion: string; + subscriptionId: string; +} // @public (undocumented) -export function createAzureFleet(credential: TokenCredential, options?: AzureFleetClientOptionalParams): AzureFleetContext; - -// @public -export function fleetsCreateOrUpdate(context: AzureFleetContext, subscriptionId: string, resourceGroupName: string, fleetName: string, resource: Fleet_2, options?: FleetsCreateOrUpdateOptionalParams): PollerLike, Fleet_2>; - -// @public -export function fleetsDelete(context: AzureFleetContext, subscriptionId: string, resourceGroupName: string, fleetName: string, options?: FleetsDeleteOptionalParams): PollerLike, void>; - -// @public -export function fleetsGet(context: AzureFleetContext, subscriptionId: string, resourceGroupName: string, fleetName: string, options?: FleetsGetOptionalParams): Promise; - -// @public -export function fleetsListByResourceGroup(context: AzureFleetContext, subscriptionId: string, resourceGroupName: string, options?: FleetsListByResourceGroupOptionalParams): PagedAsyncIterableIterator; - -// @public -export function fleetsListBySubscription(context: AzureFleetContext, subscriptionId: string, options?: FleetsListBySubscriptionOptionalParams): PagedAsyncIterableIterator; - -// @public -export function fleetsListVirtualMachineScaleSets(context: AzureFleetContext, subscriptionId: string, resourceGroupName: string, name: string, options?: FleetsListVirtualMachineScaleSetsOptionalParams): PagedAsyncIterableIterator; - -// @public -export function fleetsUpdate(context: AzureFleetContext, subscriptionId: string, resourceGroupName: string, fleetName: string, properties: FleetUpdate_2, options?: FleetsUpdateOptionalParams): PollerLike, Fleet_2>; - -// @public -export function operationsList(context: AzureFleetContext, options?: OperationsListOptionalParams): PagedAsyncIterableIterator; +export function createAzureFleet(credential: TokenCredential, subscriptionId: string, options?: AzureFleetClientOptionalParams): AzureFleetContext; // (No @packageDocumentation comment for this package) diff --git a/sdk/computefleet/arm-computefleet/review/arm-computefleet-models.api.md b/sdk/computefleet/arm-computefleet/review/arm-computefleet-models.api.md index 0a6f8c1f510b..6a52801ccd95 100644 --- a/sdk/computefleet/arm-computefleet/review/arm-computefleet-models.api.md +++ b/sdk/computefleet/arm-computefleet/review/arm-computefleet-models.api.md @@ -150,6 +150,26 @@ export interface EncryptionIdentity { userAssignedIdentityResourceId?: 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 EvictionPolicy = string; @@ -218,7 +238,7 @@ export enum KnownAcceleratorManufacturer { // @public export enum KnownAcceleratorType { - FPGA = "FPGA", + Fpga = "FPGA", GPU = "GPU" } @@ -277,7 +297,7 @@ export enum KnownDiffDiskPlacement { // @public export enum KnownDiskControllerTypes { NVMe = "NVMe", - SCSI = "SCSI" + Scsi = "SCSI" } // @public @@ -461,6 +481,12 @@ export enum KnownStorageAccountTypes { UltraSSDLRS = "UltraSSD_LRS" } +// @public +export enum KnownVersions { + V20241101 = "2024-11-01", + V20250301 = "2025-03-01" +} + // @public export enum KnownVMAttributeSupport { Excluded = "Excluded", @@ -574,8 +600,8 @@ export type OperatingSystemTypes = string; // @public export interface Operation { - actionType?: ActionType; - readonly display?: OperationDisplay; + readonly actionType?: ActionType; + display?: OperationDisplay; readonly isDataAction?: boolean; readonly name?: string; readonly origin?: Origin; @@ -799,7 +825,7 @@ export interface VirtualMachineScaleSetDataDisk { caching?: CachingTypes; createOption: DiskCreateOptionTypes; deleteOption?: DiskDeleteOptionTypes; - diskIOPSReadWrite?: number; + diskIopsReadWrite?: number; diskMBpsReadWrite?: number; diskSizeGB?: number; lun: number; diff --git a/sdk/computefleet/arm-computefleet/review/arm-computefleet.api.md b/sdk/computefleet/arm-computefleet/review/arm-computefleet.api.md index 88c428d81178..64313371ef79 100644 --- a/sdk/computefleet/arm-computefleet/review/arm-computefleet.api.md +++ b/sdk/computefleet/arm-computefleet/review/arm-computefleet.api.md @@ -177,6 +177,26 @@ export interface EncryptionIdentity { userAssignedIdentityResourceId?: 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 EvictionPolicy = string; @@ -287,7 +307,7 @@ export enum KnownAcceleratorManufacturer { // @public export enum KnownAcceleratorType { - FPGA = "FPGA", + Fpga = "FPGA", GPU = "GPU" } @@ -346,7 +366,7 @@ export enum KnownDiffDiskPlacement { // @public export enum KnownDiskControllerTypes { NVMe = "NVMe", - SCSI = "SCSI" + Scsi = "SCSI" } // @public @@ -530,6 +550,12 @@ export enum KnownStorageAccountTypes { UltraSSDLRS = "UltraSSD_LRS" } +// @public +export enum KnownVersions { + V20241101 = "2024-11-01", + V20250301 = "2025-03-01" +} + // @public export enum KnownVMAttributeSupport { Excluded = "Excluded", @@ -643,8 +669,8 @@ export type OperatingSystemTypes = string; // @public export interface Operation { - actionType?: ActionType; - readonly display?: OperationDisplay; + readonly actionType?: ActionType; + display?: OperationDisplay; readonly isDataAction?: boolean; readonly name?: string; readonly origin?: Origin; @@ -899,7 +925,7 @@ export interface VirtualMachineScaleSetDataDisk { caching?: CachingTypes; createOption: DiskCreateOptionTypes; deleteOption?: DiskDeleteOptionTypes; - diskIOPSReadWrite?: number; + diskIopsReadWrite?: number; diskMBpsReadWrite?: number; diskSizeGB?: number; lun: number; diff --git a/sdk/computefleet/arm-computefleet/sample.env b/sdk/computefleet/arm-computefleet/sample.env deleted file mode 100644 index efbc7787bd3b..000000000000 --- a/sdk/computefleet/arm-computefleet/sample.env +++ /dev/null @@ -1 +0,0 @@ -# Feel free to add your own environment variables. diff --git a/sdk/computefleet/arm-computefleet/samples-dev/fleetsCreateOrUpdateSample.ts b/sdk/computefleet/arm-computefleet/samples-dev/fleetsCreateOrUpdateSample.ts deleted file mode 100644 index 529f37700d8e..000000000000 --- a/sdk/computefleet/arm-computefleet/samples-dev/fleetsCreateOrUpdateSample.ts +++ /dev/null @@ -1,449 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -import { AzureFleetClient } from "@azure/arm-computefleet"; -import { DefaultAzureCredential } from "@azure/identity"; - -/** - * This sample demonstrates how to create a Fleet - * - * @summary create a Fleet - * x-ms-original-file: 2024-11-01/Fleets_CreateOrUpdate.json - */ -async function fleetsCreateOrUpdate(): Promise { - const credential = new DefaultAzureCredential(); - const subscriptionId = "1DC2F28C-A625-4B0E-9748-9885A3C9E9EB"; - const client = new AzureFleetClient(credential, subscriptionId); - const result = await client.fleets.createOrUpdate("rgazurefleet", "testFleet", { - properties: { - spotPriorityProfile: { - capacity: 20, - minCapacity: 10, - maxPricePerVM: 0.00865, - evictionPolicy: "Delete", - allocationStrategy: "PriceCapacityOptimized", - maintain: true, - }, - regularPriorityProfile: { - capacity: 20, - minCapacity: 10, - allocationStrategy: "LowestPrice", - }, - vmSizesProfile: [{ name: "Standard_d1_v2", rank: 19225 }], - computeProfile: { - baseVirtualMachineProfile: { - osProfile: { - computerNamePrefix: "o", - adminUsername: "nrgzqciiaaxjrqldbmjbqkyhntp", - adminPassword: "adfbrdxpv", - customData: "xjjib", - windowsConfiguration: { - provisionVMAgent: true, - enableAutomaticUpdates: true, - timeZone: "hlyjiqcfksgrpjrct", - additionalUnattendContent: [ - { - passName: "OobeSystem", - componentName: "Microsoft-Windows-Shell-Setup", - settingName: "AutoLogon", - content: "bubmqbxjkj", - }, - ], - patchSettings: { - patchMode: "Manual", - enableHotpatching: true, - assessmentMode: "ImageDefault", - automaticByPlatformSettings: { - rebootSetting: "Unknown", - bypassPlatformSafetyChecksOnUserSchedule: true, - }, - }, - winRM: { - listeners: [ - { - protocol: "Https", - certificateUrl: "https://myVaultName.vault.azure.net/secrets/myCertName", - }, - ], - }, - enableVMAgentPlatformUpdates: true, - }, - linuxConfiguration: { - disablePasswordAuthentication: true, - ssh: { - publicKeys: [{ path: "kmqz", keyData: "kivgsubusvpprwqaqpjcmhsv" }], - }, - provisionVMAgent: true, - patchSettings: { - patchMode: "ImageDefault", - assessmentMode: "ImageDefault", - automaticByPlatformSettings: { - rebootSetting: "Unknown", - bypassPlatformSafetyChecksOnUserSchedule: true, - }, - }, - enableVMAgentPlatformUpdates: true, - }, - secrets: [ - { - sourceVault: { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/vaults/{vaultName}", - }, - vaultCertificates: [ - { - certificateUrl: "https://myVaultName.vault.azure.net/secrets/myCertName", - certificateStore: "nlxrwavpzhueffxsshlun", - }, - ], - }, - ], - allowExtensionOperations: true, - requireGuestProvisionSignal: true, - }, - storageProfile: { - imageReference: { - publisher: "mqxgwbiyjzmxavhbkd", - offer: "isxgumkarlkomp", - sku: "eojmppqcrnpmxirtp", - version: "wvpcqefgtmqdgltiuz", - sharedGalleryImageId: "kmkgihoxwlawuuhcinfirktdwkmx", - communityGalleryImageId: "vlqe", - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/galleries/{galleryName}/images/{imageName}/versions/{versionName}", - }, - osDisk: { - name: "wfttw", - caching: "None", - writeAcceleratorEnabled: true, - createOption: "FromImage", - diffDiskSettings: { option: "Local", placement: "CacheDisk" }, - diskSizeGB: 14, - osType: "Windows", - image: { - uri: "https://myStorageAccountName.blob.core.windows.net/myContainerName/myVhdName.vhd", - }, - vhdContainers: ["tkzcwddtinkfpnfklatw"], - managedDisk: { - storageAccountType: "Standard_LRS", - diskEncryptionSet: { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskEncryptionSets/{diskEncryptionSetName}", - }, - securityProfile: { - securityEncryptionType: "VMGuestStateOnly", - diskEncryptionSet: { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskEncryptionSets/{diskEncryptionSetName}", - }, - }, - }, - deleteOption: "Delete", - }, - dataDisks: [ - { - name: "eogiykmdmeikswxmigjws", - lun: 14, - caching: "None", - writeAcceleratorEnabled: true, - createOption: "FromImage", - diskSizeGB: 6, - managedDisk: { - storageAccountType: "Standard_LRS", - diskEncryptionSet: { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskEncryptionSets/{diskEncryptionSetName}", - }, - securityProfile: { - securityEncryptionType: "VMGuestStateOnly", - diskEncryptionSet: { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskEncryptionSets/{diskEncryptionSetName}", - }, - }, - }, - diskIOPSReadWrite: 27, - diskMBpsReadWrite: 2, - deleteOption: "Delete", - }, - ], - }, - networkProfile: { - healthProbe: { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/probes/{probeName}", - }, - networkInterfaceConfigurations: [ - { - name: "i", - properties: { - primary: true, - enableAcceleratedNetworking: true, - disableTcpStateTracking: true, - enableFpga: true, - networkSecurityGroup: { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups/{networkSecurityGroupName}", - }, - dnsSettings: { dnsServers: ["nxmmfolhclsesu"] }, - ipConfigurations: [ - { - name: "oezqhkidfhyywlfzwuotilrpbqnjg", - properties: { - subnet: { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}", - }, - primary: true, - publicIPAddressConfiguration: { - name: "fvpqf", - properties: { - idleTimeoutInMinutes: 9, - dnsSettings: { - domainNameLabel: "ukrddzvmorpmfsczjwtbvp", - domainNameLabelScope: "TenantReuse", - }, - ipTags: [ - { - ipTagType: "sddgsoemnzgqizale", - tag: "wufmhrjsakbiaetyara", - }, - ], - publicIPPrefix: { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPPrefixes/{publicIPPrefixName}", - }, - publicIPAddressVersion: "IPv4", - deleteOption: "Delete", - }, - sku: { name: "Basic", tier: "Regional" }, - }, - privateIPAddressVersion: "IPv4", - applicationGatewayBackendAddressPools: [ - { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationGateways/{applicationGatewayName}/backendAddressPools/{backendAddressPoolName}", - }, - ], - applicationSecurityGroups: [ - { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationSecurityGroups/{applicationSecurityGroupName}", - }, - ], - loadBalancerBackendAddressPools: [ - { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/backendAddressPools/{backendAddressPoolName}", - }, - ], - loadBalancerInboundNatPools: [ - { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/inboundNatPools/{inboundNatPoolName}", - }, - ], - }, - }, - ], - enableIPForwarding: true, - deleteOption: "Delete", - auxiliaryMode: "None", - auxiliarySku: "None", - }, - }, - ], - networkApiVersion: "2020-11-01", - }, - securityProfile: { - uefiSettings: { secureBootEnabled: true, vTpmEnabled: true }, - encryptionAtHost: true, - securityType: "TrustedLaunch", - encryptionIdentity: { - userAssignedIdentityResourceId: - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{userAssignedIdentityName}", - }, - proxyAgentSettings: { - enabled: true, - mode: "Audit", - keyIncarnationId: 20, - }, - }, - diagnosticsProfile: { - bootDiagnostics: { - enabled: true, - storageUri: "http://myStorageAccountName.blob.core.windows.net", - }, - }, - extensionProfile: { - extensions: [ - { - name: "bndxuxx", - properties: { - forceUpdateTag: "yhgxw", - publisher: "kpxtirxjfprhs", - type: "pgjilctjjwaa", - typeHandlerVersion: "zevivcoilxmbwlrihhhibq", - autoUpgradeMinorVersion: true, - enableAutomaticUpgrade: true, - settings: {}, - protectedSettings: {}, - provisionAfterExtensions: ["nftzosroolbcwmpupujzqwqe"], - suppressFailures: true, - protectedSettingsFromKeyVault: { - secretUrl: "https://myvaultName.vault.azure.net/secrets/secret/mySecretName", - sourceVault: { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/vaults/{vaultName}", - }, - }, - }, - }, - ], - extensionsTimeBudget: "mbhjahtdygwgyszdwjtvlvtgchdwil", - }, - licenseType: "v", - scheduledEventsProfile: { - terminateNotificationProfile: { - notBeforeTimeout: "iljppmmw", - enable: true, - }, - osImageNotificationProfile: { - notBeforeTimeout: "olbpadmevekyczfokodtfprxti", - enable: true, - }, - }, - userData: "s", - capacityReservation: { - capacityReservationGroup: { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/capacityReservationGroups/{capacityReservationGroupName}", - }, - }, - applicationProfile: { - galleryApplications: [ - { - tags: "eyrqjbib", - order: 5, - packageReferenceId: - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/galleries/{galleryName}/applications/{applicationName}/versions/{versionName}", - configurationReference: "ulztmiavpojpbpbddgnuuiimxcpau", - treatFailureAsDeploymentFailure: true, - enableAutomaticUpgrade: true, - }, - ], - }, - hardwareProfile: { - vmSizeProperties: { vCPUsAvailable: 16, vCPUsPerCore: 23 }, - }, - serviceArtifactReference: { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/galleries/{galleryName}/serviceArtifacts/{serviceArtifactsName}/vmArtifactsProfiles/{vmArtifactsProfileName}", - }, - securityPostureReference: { - id: "/CommunityGalleries/{communityGalleryName}/securityPostures/{securityPostureName}/versions/{major.minor.patch}|{major.*}|latest", - excludeExtensions: ["{securityPostureVMExtensionName}"], - isOverridable: true, - }, - }, - computeApiVersion: "2023-07-01", - platformFaultDomainCount: 1, - }, - }, - zones: ["zone1", "zone2"], - identity: { - type: "UserAssigned", - userAssignedIdentities: { key9851: {} }, - }, - tags: { key3518: "luvrnuvsgdpbuofdskkcoqhfh" }, - location: "westus", - plan: { - name: "jwgrcrnrtfoxn", - publisher: "iozjbiqqckqm", - product: "cgopbyvdyqikahwyxfpzwaqk", - promotionCode: "naglezezplcaruqogtxnuizslqnnbr", - version: "wa", - }, - }); - console.log(result); -} - -/** - * This sample demonstrates how to create a Fleet - * - * @summary create a Fleet - * x-ms-original-file: 2024-11-01/Fleets_CreateOrUpdate_MinimumSet.json - */ -async function fleetsCreateOrUpdateMinimumSet(): Promise { - const credential = new DefaultAzureCredential(); - const subscriptionId = "1DC2F28C-A625-4B0E-9748-9885A3C9E9EB"; - const client = new AzureFleetClient(credential, subscriptionId); - const result = await client.fleets.createOrUpdate("rgazurefleet", "testFleet", { - properties: { - spotPriorityProfile: { - capacity: 2, - minCapacity: 1, - evictionPolicy: "Delete", - allocationStrategy: "PriceCapacityOptimized", - maintain: true, - }, - regularPriorityProfile: { - capacity: 2, - minCapacity: 1, - allocationStrategy: "LowestPrice", - }, - vmSizesProfile: [ - { name: "Standard_D2s_v3" }, - { name: "Standard_D4s_v3" }, - { name: "Standard_E2s_v3" }, - ], - computeProfile: { - baseVirtualMachineProfile: { - storageProfile: { - imageReference: { - publisher: "canonical", - offer: "0001-com-ubuntu-server-focal", - sku: "20_04-lts-gen2", - version: "latest", - }, - osDisk: { - caching: "ReadWrite", - createOption: "FromImage", - osType: "Linux", - managedDisk: { storageAccountType: "Standard_LRS" }, - }, - }, - osProfile: { - computerNamePrefix: "prefix", - adminUsername: "azureuser", - adminPassword: "TestPassword$0", - linuxConfiguration: { disablePasswordAuthentication: false }, - }, - networkProfile: { - networkInterfaceConfigurations: [ - { - name: "vmNameTest", - properties: { - primary: true, - enableAcceleratedNetworking: false, - ipConfigurations: [ - { - name: "vmNameTest", - properties: { - subnet: { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}", - }, - primary: true, - loadBalancerBackendAddressPools: [ - { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/backendAddressPools/{backendAddressPoolName}", - }, - ], - }, - }, - ], - enableIPForwarding: true, - }, - }, - ], - }, - }, - computeApiVersion: "2023-09-01", - platformFaultDomainCount: 1, - }, - }, - tags: { key: "fleets-test" }, - location: "eastus2euap", - }); - console.log(result); -} - -async function main(): Promise { - await fleetsCreateOrUpdate(); - await fleetsCreateOrUpdateMinimumSet(); -} - -main().catch(console.error); diff --git a/sdk/computefleet/arm-computefleet/samples-dev/fleetsDeleteSample.ts b/sdk/computefleet/arm-computefleet/samples-dev/fleetsDeleteSample.ts deleted file mode 100644 index c1dc91b90b6e..000000000000 --- a/sdk/computefleet/arm-computefleet/samples-dev/fleetsDeleteSample.ts +++ /dev/null @@ -1,24 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -import { AzureFleetClient } from "@azure/arm-computefleet"; -import { DefaultAzureCredential } from "@azure/identity"; - -/** - * This sample demonstrates how to delete a Fleet - * - * @summary delete a Fleet - * x-ms-original-file: 2024-11-01/Fleets_Delete.json - */ -async function fleetsDelete(): Promise { - const credential = new DefaultAzureCredential(); - const subscriptionId = "1DC2F28C-A625-4B0E-9748-9885A3C9E9EB"; - const client = new AzureFleetClient(credential, subscriptionId); - await client.fleets.delete("rgazurefleet", "testFleet"); -} - -async function main(): Promise { - await fleetsDelete(); -} - -main().catch(console.error); diff --git a/sdk/computefleet/arm-computefleet/samples-dev/fleetsGetSample.ts b/sdk/computefleet/arm-computefleet/samples-dev/fleetsGetSample.ts deleted file mode 100644 index 072d4c2169ab..000000000000 --- a/sdk/computefleet/arm-computefleet/samples-dev/fleetsGetSample.ts +++ /dev/null @@ -1,25 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -import { AzureFleetClient } from "@azure/arm-computefleet"; -import { DefaultAzureCredential } from "@azure/identity"; - -/** - * This sample demonstrates how to get a Fleet - * - * @summary get a Fleet - * x-ms-original-file: 2024-11-01/Fleets_Get.json - */ -async function fleetsGet(): Promise { - const credential = new DefaultAzureCredential(); - const subscriptionId = "1DC2F28C-A625-4B0E-9748-9885A3C9E9EB"; - const client = new AzureFleetClient(credential, subscriptionId); - const result = await client.fleets.get("rgazurefleet", "testFleet"); - console.log(result); -} - -async function main(): Promise { - await fleetsGet(); -} - -main().catch(console.error); diff --git a/sdk/computefleet/arm-computefleet/samples-dev/fleetsListByResourceGroupSample.ts b/sdk/computefleet/arm-computefleet/samples-dev/fleetsListByResourceGroupSample.ts deleted file mode 100644 index 357c6c5ca9ad..000000000000 --- a/sdk/computefleet/arm-computefleet/samples-dev/fleetsListByResourceGroupSample.ts +++ /dev/null @@ -1,29 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -import { AzureFleetClient } from "@azure/arm-computefleet"; -import { DefaultAzureCredential } from "@azure/identity"; - -/** - * This sample demonstrates how to list Fleet resources by resource group - * - * @summary list Fleet resources by resource group - * x-ms-original-file: 2024-11-01/Fleets_ListByResourceGroup.json - */ -async function fleetsListByResourceGroup(): Promise { - const credential = new DefaultAzureCredential(); - const subscriptionId = "1DC2F28C-A625-4B0E-9748-9885A3C9E9EB"; - const client = new AzureFleetClient(credential, subscriptionId); - const resArray = new Array(); - for await (const item of client.fleets.listByResourceGroup("rgazurefleet")) { - resArray.push(item); - } - - console.log(resArray); -} - -async function main(): Promise { - await fleetsListByResourceGroup(); -} - -main().catch(console.error); diff --git a/sdk/computefleet/arm-computefleet/samples-dev/fleetsListBySubscriptionSample.ts b/sdk/computefleet/arm-computefleet/samples-dev/fleetsListBySubscriptionSample.ts deleted file mode 100644 index fd6a4e650521..000000000000 --- a/sdk/computefleet/arm-computefleet/samples-dev/fleetsListBySubscriptionSample.ts +++ /dev/null @@ -1,29 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -import { AzureFleetClient } from "@azure/arm-computefleet"; -import { DefaultAzureCredential } from "@azure/identity"; - -/** - * This sample demonstrates how to list Fleet resources by subscription ID - * - * @summary list Fleet resources by subscription ID - * x-ms-original-file: 2024-11-01/Fleets_ListBySubscription.json - */ -async function fleetsListBySubscription(): Promise { - const credential = new DefaultAzureCredential(); - const subscriptionId = "1DC2F28C-A625-4B0E-9748-9885A3C9E9EB"; - const client = new AzureFleetClient(credential, subscriptionId); - const resArray = new Array(); - for await (const item of client.fleets.listBySubscription()) { - resArray.push(item); - } - - console.log(resArray); -} - -async function main(): Promise { - await fleetsListBySubscription(); -} - -main().catch(console.error); diff --git a/sdk/computefleet/arm-computefleet/samples-dev/fleetsListVirtualMachineScaleSetsSample.ts b/sdk/computefleet/arm-computefleet/samples-dev/fleetsListVirtualMachineScaleSetsSample.ts deleted file mode 100644 index 16ab7aec0b9e..000000000000 --- a/sdk/computefleet/arm-computefleet/samples-dev/fleetsListVirtualMachineScaleSetsSample.ts +++ /dev/null @@ -1,29 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -import { AzureFleetClient } from "@azure/arm-computefleet"; -import { DefaultAzureCredential } from "@azure/identity"; - -/** - * This sample demonstrates how to list VirtualMachineScaleSet resources by Fleet - * - * @summary list VirtualMachineScaleSet resources by Fleet - * x-ms-original-file: 2024-11-01/Fleets_ListVirtualMachineScaleSets.json - */ -async function fleetsListVirtualMachineScaleSets(): Promise { - const credential = new DefaultAzureCredential(); - const subscriptionId = "1DC2F28C-A625-4B0E-9748-9885A3C9E9EB"; - const client = new AzureFleetClient(credential, subscriptionId); - const resArray = new Array(); - for await (const item of client.fleets.listVirtualMachineScaleSets("rgazurefleet", "myFleet")) { - resArray.push(item); - } - - console.log(resArray); -} - -async function main(): Promise { - await fleetsListVirtualMachineScaleSets(); -} - -main().catch(console.error); diff --git a/sdk/computefleet/arm-computefleet/samples-dev/fleetsUpdateSample.ts b/sdk/computefleet/arm-computefleet/samples-dev/fleetsUpdateSample.ts deleted file mode 100644 index b7323eafe735..000000000000 --- a/sdk/computefleet/arm-computefleet/samples-dev/fleetsUpdateSample.ts +++ /dev/null @@ -1,353 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -import { AzureFleetClient } from "@azure/arm-computefleet"; -import { DefaultAzureCredential } from "@azure/identity"; - -/** - * This sample demonstrates how to update a Fleet - * - * @summary update a Fleet - * x-ms-original-file: 2024-11-01/Fleets_Update.json - */ -async function fleetsUpdate(): Promise { - const credential = new DefaultAzureCredential(); - const subscriptionId = "1DC2F28C-A625-4B0E-9748-9885A3C9E9EB"; - const client = new AzureFleetClient(credential, subscriptionId); - const result = await client.fleets.update("rgazurefleet", "testFleet", { - identity: { type: "UserAssigned", userAssignedIdentities: {} }, - tags: {}, - properties: { - spotPriorityProfile: { - capacity: 20, - minCapacity: 10, - maxPricePerVM: 0.00865, - evictionPolicy: "Delete", - allocationStrategy: "PriceCapacityOptimized", - maintain: true, - }, - regularPriorityProfile: { - capacity: 20, - minCapacity: 10, - allocationStrategy: "LowestPrice", - }, - vmSizesProfile: [{ name: "Standard_d1_v2", rank: 19225 }], - computeProfile: { - baseVirtualMachineProfile: { - osProfile: { - computerNamePrefix: "o", - adminUsername: "nrgzqciiaaxjrqldbmjbqkyhntp", - adminPassword: "adfbrdxpv", - customData: "xjjib", - windowsConfiguration: { - provisionVMAgent: true, - enableAutomaticUpdates: true, - timeZone: "hlyjiqcfksgrpjrct", - additionalUnattendContent: [ - { - passName: "OobeSystem", - componentName: "Microsoft-Windows-Shell-Setup", - settingName: "AutoLogon", - content: "bubmqbxjkj", - }, - ], - patchSettings: { - patchMode: "Manual", - enableHotpatching: true, - assessmentMode: "ImageDefault", - automaticByPlatformSettings: { - rebootSetting: "Unknown", - bypassPlatformSafetyChecksOnUserSchedule: true, - }, - }, - winRM: { - listeners: [ - { - protocol: "Http", - certificateUrl: "https://myVaultName.vault.azure.net/secrets/myCertName", - }, - ], - }, - enableVMAgentPlatformUpdates: true, - }, - linuxConfiguration: { - disablePasswordAuthentication: true, - ssh: { - publicKeys: [{ path: "kmqz", keyData: "kivgsubusvpprwqaqpjcmhsv" }], - }, - provisionVMAgent: true, - patchSettings: { - patchMode: "ImageDefault", - assessmentMode: "ImageDefault", - automaticByPlatformSettings: { - rebootSetting: "Unknown", - bypassPlatformSafetyChecksOnUserSchedule: true, - }, - }, - enableVMAgentPlatformUpdates: true, - }, - secrets: [ - { - sourceVault: { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/vaults/{vaultName}", - }, - vaultCertificates: [ - { - certificateUrl: "https://myVaultName.vault.azure.net/secrets/myCertName", - certificateStore: "nlxrwavpzhueffxsshlun", - }, - ], - }, - ], - allowExtensionOperations: true, - requireGuestProvisionSignal: true, - }, - storageProfile: { - imageReference: { - publisher: "mqxgwbiyjzmxavhbkd", - offer: "isxgumkarlkomp", - sku: "eojmppqcrnpmxirtp", - version: "wvpcqefgtmqdgltiuz", - sharedGalleryImageId: "kmkgihoxwlawuuhcinfirktdwkmx", - communityGalleryImageId: "vlqe", - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/galleries/{galleryName}/images/{imageName}/versions/{versionName}", - }, - osDisk: { - name: "wfttw", - caching: "None", - writeAcceleratorEnabled: true, - createOption: "FromImage", - diffDiskSettings: { option: "Local", placement: "CacheDisk" }, - diskSizeGB: 14, - osType: "Windows", - image: { - uri: "https://myStorageAccountName.blob.core.windows.net/myContainerName/myVhdName.vhd", - }, - vhdContainers: ["tkzcwddtinkfpnfklatw"], - managedDisk: { - storageAccountType: "Standard_LRS", - diskEncryptionSet: { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskEncryptionSets/{diskEncryptionSetName}", - }, - securityProfile: { - securityEncryptionType: "VMGuestStateOnly", - diskEncryptionSet: { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskEncryptionSets/{diskEncryptionSetName}", - }, - }, - }, - deleteOption: "Delete", - }, - dataDisks: [ - { - name: "eogiykmdmeikswxmigjws", - lun: 14, - caching: "None", - writeAcceleratorEnabled: true, - createOption: "FromImage", - diskSizeGB: 6, - managedDisk: { - storageAccountType: "Standard_LRS", - diskEncryptionSet: { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskEncryptionSets/{diskEncryptionSetName}", - }, - securityProfile: { - securityEncryptionType: "VMGuestStateOnly", - diskEncryptionSet: { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskEncryptionSets/{diskEncryptionSetName}", - }, - }, - }, - diskIOPSReadWrite: 27, - diskMBpsReadWrite: 2, - deleteOption: "Delete", - }, - ], - }, - networkProfile: { - healthProbe: { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/probes/{probeName}", - }, - networkInterfaceConfigurations: [ - { - name: "i", - properties: { - primary: true, - enableAcceleratedNetworking: true, - disableTcpStateTracking: true, - enableFpga: true, - networkSecurityGroup: { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups/{networkSecurityGroupName}", - }, - dnsSettings: { dnsServers: ["nxmmfolhclsesu"] }, - ipConfigurations: [ - { - name: "oezqhkidfhyywlfzwuotilrpbqnjg", - properties: { - subnet: { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}", - }, - primary: true, - publicIPAddressConfiguration: { - name: "fvpqf", - properties: { - idleTimeoutInMinutes: 9, - dnsSettings: { - domainNameLabel: "ukrddzvmorpmfsczjwtbvp", - domainNameLabelScope: "TenantReuse", - }, - ipTags: [ - { - ipTagType: "sddgsoemnzgqizale", - tag: "wufmhrjsakbiaetyara", - }, - ], - publicIPPrefix: { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPPrefixes/{publicIPPrefixName}", - }, - publicIPAddressVersion: "IPv4", - deleteOption: "Delete", - }, - sku: { name: "Basic", tier: "Regional" }, - }, - privateIPAddressVersion: "IPv4", - applicationGatewayBackendAddressPools: [ - { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationGateways/{applicationGatewayName}/backendAddressPools/{backendAddressPoolName}", - }, - ], - applicationSecurityGroups: [ - { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationSecurityGroups/{applicationSecurityGroupName}", - }, - ], - loadBalancerBackendAddressPools: [ - { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/backendAddressPools/{backendAddressPoolName}", - }, - ], - loadBalancerInboundNatPools: [ - { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/inboundNatPools/{inboundNatPoolName}", - }, - ], - }, - }, - ], - enableIPForwarding: true, - deleteOption: "Delete", - auxiliaryMode: "None", - auxiliarySku: "None", - }, - }, - ], - networkApiVersion: "2020-11-01", - }, - securityProfile: { - uefiSettings: { secureBootEnabled: true, vTpmEnabled: true }, - encryptionAtHost: true, - securityType: "TrustedLaunch", - encryptionIdentity: { - userAssignedIdentityResourceId: - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{userAssignedIdentityName}", - }, - proxyAgentSettings: { - enabled: true, - mode: "Audit", - keyIncarnationId: 20, - }, - }, - diagnosticsProfile: { - bootDiagnostics: { - enabled: true, - storageUri: "http://myStorageAccountName.blob.core.windows.net", - }, - }, - extensionProfile: { - extensions: [ - { - name: "bndxuxx", - properties: { - forceUpdateTag: "yhgxw", - publisher: "kpxtirxjfprhs", - type: "pgjilctjjwaa", - typeHandlerVersion: "zevivcoilxmbwlrihhhibq", - autoUpgradeMinorVersion: true, - enableAutomaticUpgrade: true, - settings: {}, - protectedSettings: {}, - provisionAfterExtensions: ["nftzosroolbcwmpupujzqwqe"], - suppressFailures: true, - protectedSettingsFromKeyVault: { - secretUrl: "https://myVaultName.vault.azure.net/secrets/secret/mySecretName", - sourceVault: { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/vaults/{vaultName}", - }, - }, - }, - }, - ], - extensionsTimeBudget: "mbhjahtdygwgyszdwjtvlvtgchdwil", - }, - licenseType: "v", - scheduledEventsProfile: { - terminateNotificationProfile: { - notBeforeTimeout: "iljppmmw", - enable: true, - }, - osImageNotificationProfile: { - notBeforeTimeout: "olbpadmevekyczfokodtfprxti", - enable: true, - }, - }, - userData: "s", - capacityReservation: { - capacityReservationGroup: { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/capacityReservationGroups/{capacityReservationGroupName}", - }, - }, - applicationProfile: { - galleryApplications: [ - { - tags: "eyrqjbib", - order: 5, - packageReferenceId: - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/galleries/{galleryName}/applications/{applicationName}/versions/{versionName}", - configurationReference: "ulztmiavpojpbpbddgnuuiimxcpau", - treatFailureAsDeploymentFailure: true, - enableAutomaticUpgrade: true, - }, - ], - }, - hardwareProfile: { - vmSizeProperties: { vCPUsAvailable: 16, vCPUsPerCore: 23 }, - }, - serviceArtifactReference: { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/galleries/{galleryName}/serviceArtifacts/{serviceArtifactsName}/vmArtifactsProfiles/{vmArtifactsProfileName}", - }, - securityPostureReference: { - id: "/CommunityGalleries/{communityGalleryName}/securityPostures/{securityPostureName}/versions/{major.minor.patch}|{major.*}|latest", - excludeExtensions: ["{securityPostureVMExtensionName}"], - isOverridable: true, - }, - }, - computeApiVersion: "2023-07-01", - platformFaultDomainCount: 1, - }, - }, - plan: { - name: "jwgrcrnrtfoxn", - publisher: "iozjbiqqckqm", - product: "cgopbyvdyqikahwyxfpzwaqk", - promotionCode: "naglezezplcaruqogtxnuizslqnnbr", - version: "wa", - }, - }); - console.log(result); -} - -async function main(): Promise { - await fleetsUpdate(); -} - -main().catch(console.error); diff --git a/sdk/computefleet/arm-computefleet/samples-dev/operationsListSample.ts b/sdk/computefleet/arm-computefleet/samples-dev/operationsListSample.ts deleted file mode 100644 index c99dd3331495..000000000000 --- a/sdk/computefleet/arm-computefleet/samples-dev/operationsListSample.ts +++ /dev/null @@ -1,29 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -import { AzureFleetClient } from "@azure/arm-computefleet"; -import { DefaultAzureCredential } from "@azure/identity"; - -/** - * This sample demonstrates how to list the operations for the provider - * - * @summary list the operations for the provider - * x-ms-original-file: 2024-11-01/Operations_List.json - */ -async function operationsList(): Promise { - const credential = new DefaultAzureCredential(); - const subscriptionId = "00000000-0000-0000-0000-00000000000"; - const client = new AzureFleetClient(credential, subscriptionId); - const resArray = new Array(); - for await (const item of client.operations.list()) { - resArray.push(item); - } - - console.log(resArray); -} - -async function main(): Promise { - await operationsList(); -} - -main().catch(console.error); diff --git a/sdk/computefleet/arm-computefleet/samples/v1/javascript/README.md b/sdk/computefleet/arm-computefleet/samples/v1/javascript/README.md deleted file mode 100644 index 85a9dee2ca96..000000000000 --- a/sdk/computefleet/arm-computefleet/samples/v1/javascript/README.md +++ /dev/null @@ -1,64 +0,0 @@ -# @azure/arm-computefleet client library samples for JavaScript - -These sample programs show how to use the JavaScript client libraries for @azure/arm-computefleet in some common scenarios. - -| **File Name** | **Description** | -| ------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------- | -| [fleetsCreateOrUpdateSample.js][fleetscreateorupdatesample] | create a Fleet x-ms-original-file: 2024-11-01/Fleets_CreateOrUpdate.json | -| [fleetsDeleteSample.js][fleetsdeletesample] | delete a Fleet x-ms-original-file: 2024-11-01/Fleets_Delete.json | -| [fleetsGetSample.js][fleetsgetsample] | get a Fleet x-ms-original-file: 2024-11-01/Fleets_Get.json | -| [fleetsListByResourceGroupSample.js][fleetslistbyresourcegroupsample] | list Fleet resources by resource group x-ms-original-file: 2024-11-01/Fleets_ListByResourceGroup.json | -| [fleetsListBySubscriptionSample.js][fleetslistbysubscriptionsample] | list Fleet resources by subscription ID x-ms-original-file: 2024-11-01/Fleets_ListBySubscription.json | -| [fleetsListVirtualMachineScaleSetsSample.js][fleetslistvirtualmachinescalesetssample] | list VirtualMachineScaleSet resources by Fleet x-ms-original-file: 2024-11-01/Fleets_ListVirtualMachineScaleSets.json | -| [fleetsUpdateSample.js][fleetsupdatesample] | update a Fleet x-ms-original-file: 2024-11-01/Fleets_Update.json | -| [operationsListSample.js][operationslistsample] | list the operations for the provider x-ms-original-file: 2024-11-01/Operations_List.json | - -## Prerequisites - -The sample programs are compatible with [LTS versions of Node.js](https://github.com/nodejs/release#release-schedule). - -You need [an Azure subscription][freesub] to run these sample programs. - -Samples retrieve credentials to access the service endpoint from environment variables. Alternatively, edit the source code to include the appropriate credentials. See each individual sample for details on which environment variables/credentials it requires to function. - -Adapting the samples to run in the browser may require some additional consideration. For details, please see the [package README][package]. - -## Setup - -To run the samples using the published version of the package: - -1. Install the dependencies using `npm`: - -```bash -npm install -``` - -2. Edit the file `sample.env`, adding the correct credentials to access the Azure service and run the samples. Then rename the file from `sample.env` to just `.env`. The sample programs will read this file automatically. - -3. Run whichever samples you like (note that some samples may require additional setup, see the table above): - -```bash -node fleetsCreateOrUpdateSample.js -``` - -Alternatively, run a single sample with the correct environment variables set (setting up the `.env` file is not required if you do this), for example (cross-platform): - -```bash -npx dev-tool run vendored cross-env node fleetsCreateOrUpdateSample.js -``` - -## Next Steps - -Take a look at our [API Documentation][apiref] for more information about the APIs that are available in the clients. - -[fleetscreateorupdatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/computefleet/arm-computefleet/samples/v1/javascript/fleetsCreateOrUpdateSample.js -[fleetsdeletesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/computefleet/arm-computefleet/samples/v1/javascript/fleetsDeleteSample.js -[fleetsgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/computefleet/arm-computefleet/samples/v1/javascript/fleetsGetSample.js -[fleetslistbyresourcegroupsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/computefleet/arm-computefleet/samples/v1/javascript/fleetsListByResourceGroupSample.js -[fleetslistbysubscriptionsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/computefleet/arm-computefleet/samples/v1/javascript/fleetsListBySubscriptionSample.js -[fleetslistvirtualmachinescalesetssample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/computefleet/arm-computefleet/samples/v1/javascript/fleetsListVirtualMachineScaleSetsSample.js -[fleetsupdatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/computefleet/arm-computefleet/samples/v1/javascript/fleetsUpdateSample.js -[operationslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/computefleet/arm-computefleet/samples/v1/javascript/operationsListSample.js -[apiref]: https://learn.microsoft.com/javascript/api/@azure/arm-computefleet?view=azure-node-preview -[freesub]: https://azure.microsoft.com/free/ -[package]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/computefleet/arm-computefleet/README.md diff --git a/sdk/computefleet/arm-computefleet/samples/v1/javascript/fleetsCreateOrUpdateSample.js b/sdk/computefleet/arm-computefleet/samples/v1/javascript/fleetsCreateOrUpdateSample.js deleted file mode 100644 index d539be964959..000000000000 --- a/sdk/computefleet/arm-computefleet/samples/v1/javascript/fleetsCreateOrUpdateSample.js +++ /dev/null @@ -1,449 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -const { AzureFleetClient } = require("@azure/arm-computefleet"); -const { DefaultAzureCredential } = require("@azure/identity"); - -/** - * This sample demonstrates how to create a Fleet - * - * @summary create a Fleet - * x-ms-original-file: 2024-11-01/Fleets_CreateOrUpdate.json - */ -async function fleetsCreateOrUpdate() { - const credential = new DefaultAzureCredential(); - const subscriptionId = "1DC2F28C-A625-4B0E-9748-9885A3C9E9EB"; - const client = new AzureFleetClient(credential, subscriptionId); - const result = await client.fleets.createOrUpdate("rgazurefleet", "testFleet", { - properties: { - spotPriorityProfile: { - capacity: 20, - minCapacity: 10, - maxPricePerVM: 0.00865, - evictionPolicy: "Delete", - allocationStrategy: "PriceCapacityOptimized", - maintain: true, - }, - regularPriorityProfile: { - capacity: 20, - minCapacity: 10, - allocationStrategy: "LowestPrice", - }, - vmSizesProfile: [{ name: "Standard_d1_v2", rank: 19225 }], - computeProfile: { - baseVirtualMachineProfile: { - osProfile: { - computerNamePrefix: "o", - adminUsername: "nrgzqciiaaxjrqldbmjbqkyhntp", - adminPassword: "adfbrdxpv", - customData: "xjjib", - windowsConfiguration: { - provisionVMAgent: true, - enableAutomaticUpdates: true, - timeZone: "hlyjiqcfksgrpjrct", - additionalUnattendContent: [ - { - passName: "OobeSystem", - componentName: "Microsoft-Windows-Shell-Setup", - settingName: "AutoLogon", - content: "bubmqbxjkj", - }, - ], - patchSettings: { - patchMode: "Manual", - enableHotpatching: true, - assessmentMode: "ImageDefault", - automaticByPlatformSettings: { - rebootSetting: "Unknown", - bypassPlatformSafetyChecksOnUserSchedule: true, - }, - }, - winRM: { - listeners: [ - { - protocol: "Https", - certificateUrl: "https://myVaultName.vault.azure.net/secrets/myCertName", - }, - ], - }, - enableVMAgentPlatformUpdates: true, - }, - linuxConfiguration: { - disablePasswordAuthentication: true, - ssh: { - publicKeys: [{ path: "kmqz", keyData: "kivgsubusvpprwqaqpjcmhsv" }], - }, - provisionVMAgent: true, - patchSettings: { - patchMode: "ImageDefault", - assessmentMode: "ImageDefault", - automaticByPlatformSettings: { - rebootSetting: "Unknown", - bypassPlatformSafetyChecksOnUserSchedule: true, - }, - }, - enableVMAgentPlatformUpdates: true, - }, - secrets: [ - { - sourceVault: { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/vaults/{vaultName}", - }, - vaultCertificates: [ - { - certificateUrl: "https://myVaultName.vault.azure.net/secrets/myCertName", - certificateStore: "nlxrwavpzhueffxsshlun", - }, - ], - }, - ], - allowExtensionOperations: true, - requireGuestProvisionSignal: true, - }, - storageProfile: { - imageReference: { - publisher: "mqxgwbiyjzmxavhbkd", - offer: "isxgumkarlkomp", - sku: "eojmppqcrnpmxirtp", - version: "wvpcqefgtmqdgltiuz", - sharedGalleryImageId: "kmkgihoxwlawuuhcinfirktdwkmx", - communityGalleryImageId: "vlqe", - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/galleries/{galleryName}/images/{imageName}/versions/{versionName}", - }, - osDisk: { - name: "wfttw", - caching: "None", - writeAcceleratorEnabled: true, - createOption: "FromImage", - diffDiskSettings: { option: "Local", placement: "CacheDisk" }, - diskSizeGB: 14, - osType: "Windows", - image: { - uri: "https://myStorageAccountName.blob.core.windows.net/myContainerName/myVhdName.vhd", - }, - vhdContainers: ["tkzcwddtinkfpnfklatw"], - managedDisk: { - storageAccountType: "Standard_LRS", - diskEncryptionSet: { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskEncryptionSets/{diskEncryptionSetName}", - }, - securityProfile: { - securityEncryptionType: "VMGuestStateOnly", - diskEncryptionSet: { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskEncryptionSets/{diskEncryptionSetName}", - }, - }, - }, - deleteOption: "Delete", - }, - dataDisks: [ - { - name: "eogiykmdmeikswxmigjws", - lun: 14, - caching: "None", - writeAcceleratorEnabled: true, - createOption: "FromImage", - diskSizeGB: 6, - managedDisk: { - storageAccountType: "Standard_LRS", - diskEncryptionSet: { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskEncryptionSets/{diskEncryptionSetName}", - }, - securityProfile: { - securityEncryptionType: "VMGuestStateOnly", - diskEncryptionSet: { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskEncryptionSets/{diskEncryptionSetName}", - }, - }, - }, - diskIOPSReadWrite: 27, - diskMBpsReadWrite: 2, - deleteOption: "Delete", - }, - ], - }, - networkProfile: { - healthProbe: { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/probes/{probeName}", - }, - networkInterfaceConfigurations: [ - { - name: "i", - properties: { - primary: true, - enableAcceleratedNetworking: true, - disableTcpStateTracking: true, - enableFpga: true, - networkSecurityGroup: { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups/{networkSecurityGroupName}", - }, - dnsSettings: { dnsServers: ["nxmmfolhclsesu"] }, - ipConfigurations: [ - { - name: "oezqhkidfhyywlfzwuotilrpbqnjg", - properties: { - subnet: { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}", - }, - primary: true, - publicIPAddressConfiguration: { - name: "fvpqf", - properties: { - idleTimeoutInMinutes: 9, - dnsSettings: { - domainNameLabel: "ukrddzvmorpmfsczjwtbvp", - domainNameLabelScope: "TenantReuse", - }, - ipTags: [ - { - ipTagType: "sddgsoemnzgqizale", - tag: "wufmhrjsakbiaetyara", - }, - ], - publicIPPrefix: { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPPrefixes/{publicIPPrefixName}", - }, - publicIPAddressVersion: "IPv4", - deleteOption: "Delete", - }, - sku: { name: "Basic", tier: "Regional" }, - }, - privateIPAddressVersion: "IPv4", - applicationGatewayBackendAddressPools: [ - { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationGateways/{applicationGatewayName}/backendAddressPools/{backendAddressPoolName}", - }, - ], - applicationSecurityGroups: [ - { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationSecurityGroups/{applicationSecurityGroupName}", - }, - ], - loadBalancerBackendAddressPools: [ - { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/backendAddressPools/{backendAddressPoolName}", - }, - ], - loadBalancerInboundNatPools: [ - { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/inboundNatPools/{inboundNatPoolName}", - }, - ], - }, - }, - ], - enableIPForwarding: true, - deleteOption: "Delete", - auxiliaryMode: "None", - auxiliarySku: "None", - }, - }, - ], - networkApiVersion: "2020-11-01", - }, - securityProfile: { - uefiSettings: { secureBootEnabled: true, vTpmEnabled: true }, - encryptionAtHost: true, - securityType: "TrustedLaunch", - encryptionIdentity: { - userAssignedIdentityResourceId: - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{userAssignedIdentityName}", - }, - proxyAgentSettings: { - enabled: true, - mode: "Audit", - keyIncarnationId: 20, - }, - }, - diagnosticsProfile: { - bootDiagnostics: { - enabled: true, - storageUri: "http://myStorageAccountName.blob.core.windows.net", - }, - }, - extensionProfile: { - extensions: [ - { - name: "bndxuxx", - properties: { - forceUpdateTag: "yhgxw", - publisher: "kpxtirxjfprhs", - type: "pgjilctjjwaa", - typeHandlerVersion: "zevivcoilxmbwlrihhhibq", - autoUpgradeMinorVersion: true, - enableAutomaticUpgrade: true, - settings: {}, - protectedSettings: {}, - provisionAfterExtensions: ["nftzosroolbcwmpupujzqwqe"], - suppressFailures: true, - protectedSettingsFromKeyVault: { - secretUrl: "https://myvaultName.vault.azure.net/secrets/secret/mySecretName", - sourceVault: { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/vaults/{vaultName}", - }, - }, - }, - }, - ], - extensionsTimeBudget: "mbhjahtdygwgyszdwjtvlvtgchdwil", - }, - licenseType: "v", - scheduledEventsProfile: { - terminateNotificationProfile: { - notBeforeTimeout: "iljppmmw", - enable: true, - }, - osImageNotificationProfile: { - notBeforeTimeout: "olbpadmevekyczfokodtfprxti", - enable: true, - }, - }, - userData: "s", - capacityReservation: { - capacityReservationGroup: { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/capacityReservationGroups/{capacityReservationGroupName}", - }, - }, - applicationProfile: { - galleryApplications: [ - { - tags: "eyrqjbib", - order: 5, - packageReferenceId: - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/galleries/{galleryName}/applications/{applicationName}/versions/{versionName}", - configurationReference: "ulztmiavpojpbpbddgnuuiimxcpau", - treatFailureAsDeploymentFailure: true, - enableAutomaticUpgrade: true, - }, - ], - }, - hardwareProfile: { - vmSizeProperties: { vCPUsAvailable: 16, vCPUsPerCore: 23 }, - }, - serviceArtifactReference: { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/galleries/{galleryName}/serviceArtifacts/{serviceArtifactsName}/vmArtifactsProfiles/{vmArtifactsProfileName}", - }, - securityPostureReference: { - id: "/CommunityGalleries/{communityGalleryName}/securityPostures/{securityPostureName}/versions/{major.minor.patch}|{major.*}|latest", - excludeExtensions: ["{securityPostureVMExtensionName}"], - isOverridable: true, - }, - }, - computeApiVersion: "2023-07-01", - platformFaultDomainCount: 1, - }, - }, - zones: ["zone1", "zone2"], - identity: { - type: "UserAssigned", - userAssignedIdentities: { key9851: {} }, - }, - tags: { key3518: "luvrnuvsgdpbuofdskkcoqhfh" }, - location: "westus", - plan: { - name: "jwgrcrnrtfoxn", - publisher: "iozjbiqqckqm", - product: "cgopbyvdyqikahwyxfpzwaqk", - promotionCode: "naglezezplcaruqogtxnuizslqnnbr", - version: "wa", - }, - }); - console.log(result); -} - -/** - * This sample demonstrates how to create a Fleet - * - * @summary create a Fleet - * x-ms-original-file: 2024-11-01/Fleets_CreateOrUpdate_MinimumSet.json - */ -async function fleetsCreateOrUpdateMinimumSet() { - const credential = new DefaultAzureCredential(); - const subscriptionId = "1DC2F28C-A625-4B0E-9748-9885A3C9E9EB"; - const client = new AzureFleetClient(credential, subscriptionId); - const result = await client.fleets.createOrUpdate("rgazurefleet", "testFleet", { - properties: { - spotPriorityProfile: { - capacity: 2, - minCapacity: 1, - evictionPolicy: "Delete", - allocationStrategy: "PriceCapacityOptimized", - maintain: true, - }, - regularPriorityProfile: { - capacity: 2, - minCapacity: 1, - allocationStrategy: "LowestPrice", - }, - vmSizesProfile: [ - { name: "Standard_D2s_v3" }, - { name: "Standard_D4s_v3" }, - { name: "Standard_E2s_v3" }, - ], - computeProfile: { - baseVirtualMachineProfile: { - storageProfile: { - imageReference: { - publisher: "canonical", - offer: "0001-com-ubuntu-server-focal", - sku: "20_04-lts-gen2", - version: "latest", - }, - osDisk: { - caching: "ReadWrite", - createOption: "FromImage", - osType: "Linux", - managedDisk: { storageAccountType: "Standard_LRS" }, - }, - }, - osProfile: { - computerNamePrefix: "prefix", - adminUsername: "azureuser", - adminPassword: "TestPassword$0", - linuxConfiguration: { disablePasswordAuthentication: false }, - }, - networkProfile: { - networkInterfaceConfigurations: [ - { - name: "vmNameTest", - properties: { - primary: true, - enableAcceleratedNetworking: false, - ipConfigurations: [ - { - name: "vmNameTest", - properties: { - subnet: { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}", - }, - primary: true, - loadBalancerBackendAddressPools: [ - { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/backendAddressPools/{backendAddressPoolName}", - }, - ], - }, - }, - ], - enableIPForwarding: true, - }, - }, - ], - }, - }, - computeApiVersion: "2023-09-01", - platformFaultDomainCount: 1, - }, - }, - tags: { key: "fleets-test" }, - location: "eastus2euap", - }); - console.log(result); -} - -async function main() { - fleetsCreateOrUpdate(); - fleetsCreateOrUpdateMinimumSet(); -} - -main().catch(console.error); diff --git a/sdk/computefleet/arm-computefleet/samples/v1/javascript/fleetsDeleteSample.js b/sdk/computefleet/arm-computefleet/samples/v1/javascript/fleetsDeleteSample.js deleted file mode 100644 index 01a14231eec9..000000000000 --- a/sdk/computefleet/arm-computefleet/samples/v1/javascript/fleetsDeleteSample.js +++ /dev/null @@ -1,24 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -const { AzureFleetClient } = require("@azure/arm-computefleet"); -const { DefaultAzureCredential } = require("@azure/identity"); - -/** - * This sample demonstrates how to delete a Fleet - * - * @summary delete a Fleet - * x-ms-original-file: 2024-11-01/Fleets_Delete.json - */ -async function fleetsDelete() { - const credential = new DefaultAzureCredential(); - const subscriptionId = "1DC2F28C-A625-4B0E-9748-9885A3C9E9EB"; - const client = new AzureFleetClient(credential, subscriptionId); - await client.fleets.delete("rgazurefleet", "testFleet"); -} - -async function main() { - fleetsDelete(); -} - -main().catch(console.error); diff --git a/sdk/computefleet/arm-computefleet/samples/v1/javascript/fleetsGetSample.js b/sdk/computefleet/arm-computefleet/samples/v1/javascript/fleetsGetSample.js deleted file mode 100644 index 147910874d74..000000000000 --- a/sdk/computefleet/arm-computefleet/samples/v1/javascript/fleetsGetSample.js +++ /dev/null @@ -1,25 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -const { AzureFleetClient } = require("@azure/arm-computefleet"); -const { DefaultAzureCredential } = require("@azure/identity"); - -/** - * This sample demonstrates how to get a Fleet - * - * @summary get a Fleet - * x-ms-original-file: 2024-11-01/Fleets_Get.json - */ -async function fleetsGet() { - const credential = new DefaultAzureCredential(); - const subscriptionId = "1DC2F28C-A625-4B0E-9748-9885A3C9E9EB"; - const client = new AzureFleetClient(credential, subscriptionId); - const result = await client.fleets.get("rgazurefleet", "testFleet"); - console.log(result); -} - -async function main() { - fleetsGet(); -} - -main().catch(console.error); diff --git a/sdk/computefleet/arm-computefleet/samples/v1/javascript/fleetsListByResourceGroupSample.js b/sdk/computefleet/arm-computefleet/samples/v1/javascript/fleetsListByResourceGroupSample.js deleted file mode 100644 index c67b316f73d1..000000000000 --- a/sdk/computefleet/arm-computefleet/samples/v1/javascript/fleetsListByResourceGroupSample.js +++ /dev/null @@ -1,29 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -const { AzureFleetClient } = require("@azure/arm-computefleet"); -const { DefaultAzureCredential } = require("@azure/identity"); - -/** - * This sample demonstrates how to list Fleet resources by resource group - * - * @summary list Fleet resources by resource group - * x-ms-original-file: 2024-11-01/Fleets_ListByResourceGroup.json - */ -async function fleetsListByResourceGroup() { - const credential = new DefaultAzureCredential(); - const subscriptionId = "1DC2F28C-A625-4B0E-9748-9885A3C9E9EB"; - const client = new AzureFleetClient(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.fleets.listByResourceGroup("rgazurefleet")) { - resArray.push(item); - } - - console.log(resArray); -} - -async function main() { - fleetsListByResourceGroup(); -} - -main().catch(console.error); diff --git a/sdk/computefleet/arm-computefleet/samples/v1/javascript/fleetsListBySubscriptionSample.js b/sdk/computefleet/arm-computefleet/samples/v1/javascript/fleetsListBySubscriptionSample.js deleted file mode 100644 index 9e5df9d0d10c..000000000000 --- a/sdk/computefleet/arm-computefleet/samples/v1/javascript/fleetsListBySubscriptionSample.js +++ /dev/null @@ -1,29 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -const { AzureFleetClient } = require("@azure/arm-computefleet"); -const { DefaultAzureCredential } = require("@azure/identity"); - -/** - * This sample demonstrates how to list Fleet resources by subscription ID - * - * @summary list Fleet resources by subscription ID - * x-ms-original-file: 2024-11-01/Fleets_ListBySubscription.json - */ -async function fleetsListBySubscription() { - const credential = new DefaultAzureCredential(); - const subscriptionId = "1DC2F28C-A625-4B0E-9748-9885A3C9E9EB"; - const client = new AzureFleetClient(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.fleets.listBySubscription()) { - resArray.push(item); - } - - console.log(resArray); -} - -async function main() { - fleetsListBySubscription(); -} - -main().catch(console.error); diff --git a/sdk/computefleet/arm-computefleet/samples/v1/javascript/fleetsListVirtualMachineScaleSetsSample.js b/sdk/computefleet/arm-computefleet/samples/v1/javascript/fleetsListVirtualMachineScaleSetsSample.js deleted file mode 100644 index b08be0d0b00e..000000000000 --- a/sdk/computefleet/arm-computefleet/samples/v1/javascript/fleetsListVirtualMachineScaleSetsSample.js +++ /dev/null @@ -1,29 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -const { AzureFleetClient } = require("@azure/arm-computefleet"); -const { DefaultAzureCredential } = require("@azure/identity"); - -/** - * This sample demonstrates how to list VirtualMachineScaleSet resources by Fleet - * - * @summary list VirtualMachineScaleSet resources by Fleet - * x-ms-original-file: 2024-11-01/Fleets_ListVirtualMachineScaleSets.json - */ -async function fleetsListVirtualMachineScaleSets() { - const credential = new DefaultAzureCredential(); - const subscriptionId = "1DC2F28C-A625-4B0E-9748-9885A3C9E9EB"; - const client = new AzureFleetClient(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.fleets.listVirtualMachineScaleSets("rgazurefleet", "myFleet")) { - resArray.push(item); - } - - console.log(resArray); -} - -async function main() { - fleetsListVirtualMachineScaleSets(); -} - -main().catch(console.error); diff --git a/sdk/computefleet/arm-computefleet/samples/v1/javascript/fleetsUpdateSample.js b/sdk/computefleet/arm-computefleet/samples/v1/javascript/fleetsUpdateSample.js deleted file mode 100644 index f136d7c94f28..000000000000 --- a/sdk/computefleet/arm-computefleet/samples/v1/javascript/fleetsUpdateSample.js +++ /dev/null @@ -1,353 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -const { AzureFleetClient } = require("@azure/arm-computefleet"); -const { DefaultAzureCredential } = require("@azure/identity"); - -/** - * This sample demonstrates how to update a Fleet - * - * @summary update a Fleet - * x-ms-original-file: 2024-11-01/Fleets_Update.json - */ -async function fleetsUpdate() { - const credential = new DefaultAzureCredential(); - const subscriptionId = "1DC2F28C-A625-4B0E-9748-9885A3C9E9EB"; - const client = new AzureFleetClient(credential, subscriptionId); - const result = await client.fleets.update("rgazurefleet", "testFleet", { - identity: { type: "UserAssigned", userAssignedIdentities: {} }, - tags: {}, - properties: { - spotPriorityProfile: { - capacity: 20, - minCapacity: 10, - maxPricePerVM: 0.00865, - evictionPolicy: "Delete", - allocationStrategy: "PriceCapacityOptimized", - maintain: true, - }, - regularPriorityProfile: { - capacity: 20, - minCapacity: 10, - allocationStrategy: "LowestPrice", - }, - vmSizesProfile: [{ name: "Standard_d1_v2", rank: 19225 }], - computeProfile: { - baseVirtualMachineProfile: { - osProfile: { - computerNamePrefix: "o", - adminUsername: "nrgzqciiaaxjrqldbmjbqkyhntp", - adminPassword: "adfbrdxpv", - customData: "xjjib", - windowsConfiguration: { - provisionVMAgent: true, - enableAutomaticUpdates: true, - timeZone: "hlyjiqcfksgrpjrct", - additionalUnattendContent: [ - { - passName: "OobeSystem", - componentName: "Microsoft-Windows-Shell-Setup", - settingName: "AutoLogon", - content: "bubmqbxjkj", - }, - ], - patchSettings: { - patchMode: "Manual", - enableHotpatching: true, - assessmentMode: "ImageDefault", - automaticByPlatformSettings: { - rebootSetting: "Unknown", - bypassPlatformSafetyChecksOnUserSchedule: true, - }, - }, - winRM: { - listeners: [ - { - protocol: "Http", - certificateUrl: "https://myVaultName.vault.azure.net/secrets/myCertName", - }, - ], - }, - enableVMAgentPlatformUpdates: true, - }, - linuxConfiguration: { - disablePasswordAuthentication: true, - ssh: { - publicKeys: [{ path: "kmqz", keyData: "kivgsubusvpprwqaqpjcmhsv" }], - }, - provisionVMAgent: true, - patchSettings: { - patchMode: "ImageDefault", - assessmentMode: "ImageDefault", - automaticByPlatformSettings: { - rebootSetting: "Unknown", - bypassPlatformSafetyChecksOnUserSchedule: true, - }, - }, - enableVMAgentPlatformUpdates: true, - }, - secrets: [ - { - sourceVault: { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/vaults/{vaultName}", - }, - vaultCertificates: [ - { - certificateUrl: "https://myVaultName.vault.azure.net/secrets/myCertName", - certificateStore: "nlxrwavpzhueffxsshlun", - }, - ], - }, - ], - allowExtensionOperations: true, - requireGuestProvisionSignal: true, - }, - storageProfile: { - imageReference: { - publisher: "mqxgwbiyjzmxavhbkd", - offer: "isxgumkarlkomp", - sku: "eojmppqcrnpmxirtp", - version: "wvpcqefgtmqdgltiuz", - sharedGalleryImageId: "kmkgihoxwlawuuhcinfirktdwkmx", - communityGalleryImageId: "vlqe", - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/galleries/{galleryName}/images/{imageName}/versions/{versionName}", - }, - osDisk: { - name: "wfttw", - caching: "None", - writeAcceleratorEnabled: true, - createOption: "FromImage", - diffDiskSettings: { option: "Local", placement: "CacheDisk" }, - diskSizeGB: 14, - osType: "Windows", - image: { - uri: "https://myStorageAccountName.blob.core.windows.net/myContainerName/myVhdName.vhd", - }, - vhdContainers: ["tkzcwddtinkfpnfklatw"], - managedDisk: { - storageAccountType: "Standard_LRS", - diskEncryptionSet: { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskEncryptionSets/{diskEncryptionSetName}", - }, - securityProfile: { - securityEncryptionType: "VMGuestStateOnly", - diskEncryptionSet: { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskEncryptionSets/{diskEncryptionSetName}", - }, - }, - }, - deleteOption: "Delete", - }, - dataDisks: [ - { - name: "eogiykmdmeikswxmigjws", - lun: 14, - caching: "None", - writeAcceleratorEnabled: true, - createOption: "FromImage", - diskSizeGB: 6, - managedDisk: { - storageAccountType: "Standard_LRS", - diskEncryptionSet: { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskEncryptionSets/{diskEncryptionSetName}", - }, - securityProfile: { - securityEncryptionType: "VMGuestStateOnly", - diskEncryptionSet: { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskEncryptionSets/{diskEncryptionSetName}", - }, - }, - }, - diskIOPSReadWrite: 27, - diskMBpsReadWrite: 2, - deleteOption: "Delete", - }, - ], - }, - networkProfile: { - healthProbe: { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/probes/{probeName}", - }, - networkInterfaceConfigurations: [ - { - name: "i", - properties: { - primary: true, - enableAcceleratedNetworking: true, - disableTcpStateTracking: true, - enableFpga: true, - networkSecurityGroup: { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups/{networkSecurityGroupName}", - }, - dnsSettings: { dnsServers: ["nxmmfolhclsesu"] }, - ipConfigurations: [ - { - name: "oezqhkidfhyywlfzwuotilrpbqnjg", - properties: { - subnet: { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}", - }, - primary: true, - publicIPAddressConfiguration: { - name: "fvpqf", - properties: { - idleTimeoutInMinutes: 9, - dnsSettings: { - domainNameLabel: "ukrddzvmorpmfsczjwtbvp", - domainNameLabelScope: "TenantReuse", - }, - ipTags: [ - { - ipTagType: "sddgsoemnzgqizale", - tag: "wufmhrjsakbiaetyara", - }, - ], - publicIPPrefix: { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPPrefixes/{publicIPPrefixName}", - }, - publicIPAddressVersion: "IPv4", - deleteOption: "Delete", - }, - sku: { name: "Basic", tier: "Regional" }, - }, - privateIPAddressVersion: "IPv4", - applicationGatewayBackendAddressPools: [ - { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationGateways/{applicationGatewayName}/backendAddressPools/{backendAddressPoolName}", - }, - ], - applicationSecurityGroups: [ - { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationSecurityGroups/{applicationSecurityGroupName}", - }, - ], - loadBalancerBackendAddressPools: [ - { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/backendAddressPools/{backendAddressPoolName}", - }, - ], - loadBalancerInboundNatPools: [ - { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/inboundNatPools/{inboundNatPoolName}", - }, - ], - }, - }, - ], - enableIPForwarding: true, - deleteOption: "Delete", - auxiliaryMode: "None", - auxiliarySku: "None", - }, - }, - ], - networkApiVersion: "2020-11-01", - }, - securityProfile: { - uefiSettings: { secureBootEnabled: true, vTpmEnabled: true }, - encryptionAtHost: true, - securityType: "TrustedLaunch", - encryptionIdentity: { - userAssignedIdentityResourceId: - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{userAssignedIdentityName}", - }, - proxyAgentSettings: { - enabled: true, - mode: "Audit", - keyIncarnationId: 20, - }, - }, - diagnosticsProfile: { - bootDiagnostics: { - enabled: true, - storageUri: "http://myStorageAccountName.blob.core.windows.net", - }, - }, - extensionProfile: { - extensions: [ - { - name: "bndxuxx", - properties: { - forceUpdateTag: "yhgxw", - publisher: "kpxtirxjfprhs", - type: "pgjilctjjwaa", - typeHandlerVersion: "zevivcoilxmbwlrihhhibq", - autoUpgradeMinorVersion: true, - enableAutomaticUpgrade: true, - settings: {}, - protectedSettings: {}, - provisionAfterExtensions: ["nftzosroolbcwmpupujzqwqe"], - suppressFailures: true, - protectedSettingsFromKeyVault: { - secretUrl: "https://myVaultName.vault.azure.net/secrets/secret/mySecretName", - sourceVault: { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/vaults/{vaultName}", - }, - }, - }, - }, - ], - extensionsTimeBudget: "mbhjahtdygwgyszdwjtvlvtgchdwil", - }, - licenseType: "v", - scheduledEventsProfile: { - terminateNotificationProfile: { - notBeforeTimeout: "iljppmmw", - enable: true, - }, - osImageNotificationProfile: { - notBeforeTimeout: "olbpadmevekyczfokodtfprxti", - enable: true, - }, - }, - userData: "s", - capacityReservation: { - capacityReservationGroup: { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/capacityReservationGroups/{capacityReservationGroupName}", - }, - }, - applicationProfile: { - galleryApplications: [ - { - tags: "eyrqjbib", - order: 5, - packageReferenceId: - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/galleries/{galleryName}/applications/{applicationName}/versions/{versionName}", - configurationReference: "ulztmiavpojpbpbddgnuuiimxcpau", - treatFailureAsDeploymentFailure: true, - enableAutomaticUpgrade: true, - }, - ], - }, - hardwareProfile: { - vmSizeProperties: { vCPUsAvailable: 16, vCPUsPerCore: 23 }, - }, - serviceArtifactReference: { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/galleries/{galleryName}/serviceArtifacts/{serviceArtifactsName}/vmArtifactsProfiles/{vmArtifactsProfileName}", - }, - securityPostureReference: { - id: "/CommunityGalleries/{communityGalleryName}/securityPostures/{securityPostureName}/versions/{major.minor.patch}|{major.*}|latest", - excludeExtensions: ["{securityPostureVMExtensionName}"], - isOverridable: true, - }, - }, - computeApiVersion: "2023-07-01", - platformFaultDomainCount: 1, - }, - }, - plan: { - name: "jwgrcrnrtfoxn", - publisher: "iozjbiqqckqm", - product: "cgopbyvdyqikahwyxfpzwaqk", - promotionCode: "naglezezplcaruqogtxnuizslqnnbr", - version: "wa", - }, - }); - console.log(result); -} - -async function main() { - fleetsUpdate(); -} - -main().catch(console.error); diff --git a/sdk/computefleet/arm-computefleet/samples/v1/javascript/operationsListSample.js b/sdk/computefleet/arm-computefleet/samples/v1/javascript/operationsListSample.js deleted file mode 100644 index f1beeb87f55b..000000000000 --- a/sdk/computefleet/arm-computefleet/samples/v1/javascript/operationsListSample.js +++ /dev/null @@ -1,29 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -const { AzureFleetClient } = require("@azure/arm-computefleet"); -const { DefaultAzureCredential } = require("@azure/identity"); - -/** - * This sample demonstrates how to list the operations for the provider - * - * @summary list the operations for the provider - * x-ms-original-file: 2024-11-01/Operations_List.json - */ -async function operationsList() { - const credential = new DefaultAzureCredential(); - const subscriptionId = "00000000-0000-0000-0000-00000000000"; - const client = new AzureFleetClient(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.operations.list()) { - resArray.push(item); - } - - console.log(resArray); -} - -async function main() { - operationsList(); -} - -main().catch(console.error); diff --git a/sdk/computefleet/arm-computefleet/samples/v1/javascript/package.json b/sdk/computefleet/arm-computefleet/samples/v1/javascript/package.json deleted file mode 100644 index bd291fc6653e..000000000000 --- a/sdk/computefleet/arm-computefleet/samples/v1/javascript/package.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "name": "@azure-samples/arm-computefleet-js", - "private": true, - "version": "1.0.0", - "description": "@azure/arm-computefleet client library samples for JavaScript", - "engines": { - "node": ">=18.0.0" - }, - "repository": { - "type": "git", - "url": "git+https://github.com/Azure/azure-sdk-for-js.git", - "directory": "sdk/computefleet/arm-computefleet" - }, - "keywords": [ - "node", - "azure", - "cloud", - "typescript", - "browser", - "isomorphic" - ], - "author": "Microsoft Corporation", - "license": "MIT", - "bugs": { - "url": "https://github.com/Azure/azure-sdk-for-js/issues" - }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/computefleet/arm-computefleet", - "dependencies": { - "@azure/arm-computefleet": "latest", - "dotenv": "latest", - "@azure/identity": "^4.2.1" - } -} diff --git a/sdk/computefleet/arm-computefleet/samples/v1/javascript/sample.env b/sdk/computefleet/arm-computefleet/samples/v1/javascript/sample.env deleted file mode 100644 index efbc7787bd3b..000000000000 --- a/sdk/computefleet/arm-computefleet/samples/v1/javascript/sample.env +++ /dev/null @@ -1 +0,0 @@ -# Feel free to add your own environment variables. diff --git a/sdk/computefleet/arm-computefleet/samples/v1/typescript/README.md b/sdk/computefleet/arm-computefleet/samples/v1/typescript/README.md deleted file mode 100644 index ca73d98c7040..000000000000 --- a/sdk/computefleet/arm-computefleet/samples/v1/typescript/README.md +++ /dev/null @@ -1,77 +0,0 @@ -# @azure/arm-computefleet client library samples for TypeScript - -These sample programs show how to use the TypeScript client libraries for @azure/arm-computefleet in some common scenarios. - -| **File Name** | **Description** | -| ------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------- | -| [fleetsCreateOrUpdateSample.ts][fleetscreateorupdatesample] | create a Fleet x-ms-original-file: 2024-11-01/Fleets_CreateOrUpdate.json | -| [fleetsDeleteSample.ts][fleetsdeletesample] | delete a Fleet x-ms-original-file: 2024-11-01/Fleets_Delete.json | -| [fleetsGetSample.ts][fleetsgetsample] | get a Fleet x-ms-original-file: 2024-11-01/Fleets_Get.json | -| [fleetsListByResourceGroupSample.ts][fleetslistbyresourcegroupsample] | list Fleet resources by resource group x-ms-original-file: 2024-11-01/Fleets_ListByResourceGroup.json | -| [fleetsListBySubscriptionSample.ts][fleetslistbysubscriptionsample] | list Fleet resources by subscription ID x-ms-original-file: 2024-11-01/Fleets_ListBySubscription.json | -| [fleetsListVirtualMachineScaleSetsSample.ts][fleetslistvirtualmachinescalesetssample] | list VirtualMachineScaleSet resources by Fleet x-ms-original-file: 2024-11-01/Fleets_ListVirtualMachineScaleSets.json | -| [fleetsUpdateSample.ts][fleetsupdatesample] | update a Fleet x-ms-original-file: 2024-11-01/Fleets_Update.json | -| [operationsListSample.ts][operationslistsample] | list the operations for the provider x-ms-original-file: 2024-11-01/Operations_List.json | - -## Prerequisites - -The sample programs are compatible with [LTS versions of Node.js](https://github.com/nodejs/release#release-schedule). - -Before running the samples in Node, they must be compiled to JavaScript using the TypeScript compiler. For more information on TypeScript, see the [TypeScript documentation][typescript]. Install the TypeScript compiler using: - -```bash -npm install -g typescript -``` - -You need [an Azure subscription][freesub] to run these sample programs. - -Samples retrieve credentials to access the service endpoint from environment variables. Alternatively, edit the source code to include the appropriate credentials. See each individual sample for details on which environment variables/credentials it requires to function. - -Adapting the samples to run in the browser may require some additional consideration. For details, please see the [package README][package]. - -## Setup - -To run the samples using the published version of the package: - -1. Install the dependencies using `npm`: - -```bash -npm install -``` - -2. Compile the samples: - -```bash -npm run build -``` - -3. Edit the file `sample.env`, adding the correct credentials to access the Azure service and run the samples. Then rename the file from `sample.env` to just `.env`. The sample programs will read this file automatically. - -4. Run whichever samples you like (note that some samples may require additional setup, see the table above): - -```bash -node dist/fleetsCreateOrUpdateSample.js -``` - -Alternatively, run a single sample with the correct environment variables set (setting up the `.env` file is not required if you do this), for example (cross-platform): - -```bash -npx dev-tool run vendored cross-env node dist/fleetsCreateOrUpdateSample.js -``` - -## Next Steps - -Take a look at our [API Documentation][apiref] for more information about the APIs that are available in the clients. - -[fleetscreateorupdatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/computefleet/arm-computefleet/samples/v1/typescript/src/fleetsCreateOrUpdateSample.ts -[fleetsdeletesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/computefleet/arm-computefleet/samples/v1/typescript/src/fleetsDeleteSample.ts -[fleetsgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/computefleet/arm-computefleet/samples/v1/typescript/src/fleetsGetSample.ts -[fleetslistbyresourcegroupsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/computefleet/arm-computefleet/samples/v1/typescript/src/fleetsListByResourceGroupSample.ts -[fleetslistbysubscriptionsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/computefleet/arm-computefleet/samples/v1/typescript/src/fleetsListBySubscriptionSample.ts -[fleetslistvirtualmachinescalesetssample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/computefleet/arm-computefleet/samples/v1/typescript/src/fleetsListVirtualMachineScaleSetsSample.ts -[fleetsupdatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/computefleet/arm-computefleet/samples/v1/typescript/src/fleetsUpdateSample.ts -[operationslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/computefleet/arm-computefleet/samples/v1/typescript/src/operationsListSample.ts -[apiref]: https://learn.microsoft.com/javascript/api/@azure/arm-computefleet?view=azure-node-preview -[freesub]: https://azure.microsoft.com/free/ -[package]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/computefleet/arm-computefleet/README.md -[typescript]: https://www.typescriptlang.org/docs/home.html diff --git a/sdk/computefleet/arm-computefleet/samples/v1/typescript/package.json b/sdk/computefleet/arm-computefleet/samples/v1/typescript/package.json deleted file mode 100644 index 9074c453fb8b..000000000000 --- a/sdk/computefleet/arm-computefleet/samples/v1/typescript/package.json +++ /dev/null @@ -1,42 +0,0 @@ -{ - "name": "@azure-samples/arm-computefleet-ts", - "private": true, - "version": "1.0.0", - "description": "@azure/arm-computefleet client library samples for TypeScript", - "engines": { - "node": ">=18.0.0" - }, - "scripts": { - "build": "tsc", - "prebuild": "rimraf dist/" - }, - "repository": { - "type": "git", - "url": "git+https://github.com/Azure/azure-sdk-for-js.git", - "directory": "sdk/computefleet/arm-computefleet" - }, - "keywords": [ - "node", - "azure", - "cloud", - "typescript", - "browser", - "isomorphic" - ], - "author": "Microsoft Corporation", - "license": "MIT", - "bugs": { - "url": "https://github.com/Azure/azure-sdk-for-js/issues" - }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/computefleet/arm-computefleet", - "dependencies": { - "@azure/arm-computefleet": "latest", - "dotenv": "latest", - "@azure/identity": "^4.2.1" - }, - "devDependencies": { - "@types/node": "^18.0.0", - "typescript": "~5.8.2", - "rimraf": "latest" - } -} diff --git a/sdk/computefleet/arm-computefleet/samples/v1/typescript/sample.env b/sdk/computefleet/arm-computefleet/samples/v1/typescript/sample.env deleted file mode 100644 index efbc7787bd3b..000000000000 --- a/sdk/computefleet/arm-computefleet/samples/v1/typescript/sample.env +++ /dev/null @@ -1 +0,0 @@ -# Feel free to add your own environment variables. diff --git a/sdk/computefleet/arm-computefleet/samples/v1/typescript/src/fleetsCreateOrUpdateSample.ts b/sdk/computefleet/arm-computefleet/samples/v1/typescript/src/fleetsCreateOrUpdateSample.ts deleted file mode 100644 index 6e9c61512fe0..000000000000 --- a/sdk/computefleet/arm-computefleet/samples/v1/typescript/src/fleetsCreateOrUpdateSample.ts +++ /dev/null @@ -1,462 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -import { AzureFleetClient } from "@azure/arm-computefleet"; -import { DefaultAzureCredential } from "@azure/identity"; - -/** - * This sample demonstrates how to create a Fleet - * - * @summary create a Fleet - * x-ms-original-file: 2024-11-01/Fleets_CreateOrUpdate.json - */ -async function fleetsCreateOrUpdate(): Promise { - const credential = new DefaultAzureCredential(); - const subscriptionId = "1DC2F28C-A625-4B0E-9748-9885A3C9E9EB"; - const client = new AzureFleetClient(credential, subscriptionId); - const result = await client.fleets.createOrUpdate( - "rgazurefleet", - "testFleet", - { - properties: { - spotPriorityProfile: { - capacity: 20, - minCapacity: 10, - maxPricePerVM: 0.00865, - evictionPolicy: "Delete", - allocationStrategy: "PriceCapacityOptimized", - maintain: true, - }, - regularPriorityProfile: { - capacity: 20, - minCapacity: 10, - allocationStrategy: "LowestPrice", - }, - vmSizesProfile: [{ name: "Standard_d1_v2", rank: 19225 }], - computeProfile: { - baseVirtualMachineProfile: { - osProfile: { - computerNamePrefix: "o", - adminUsername: "nrgzqciiaaxjrqldbmjbqkyhntp", - adminPassword: "adfbrdxpv", - customData: "xjjib", - windowsConfiguration: { - provisionVMAgent: true, - enableAutomaticUpdates: true, - timeZone: "hlyjiqcfksgrpjrct", - additionalUnattendContent: [ - { - passName: "OobeSystem", - componentName: "Microsoft-Windows-Shell-Setup", - settingName: "AutoLogon", - content: "bubmqbxjkj", - }, - ], - patchSettings: { - patchMode: "Manual", - enableHotpatching: true, - assessmentMode: "ImageDefault", - automaticByPlatformSettings: { - rebootSetting: "Unknown", - bypassPlatformSafetyChecksOnUserSchedule: true, - }, - }, - winRM: { - listeners: [ - { - protocol: "Https", - certificateUrl: - "https://myVaultName.vault.azure.net/secrets/myCertName", - }, - ], - }, - enableVMAgentPlatformUpdates: true, - }, - linuxConfiguration: { - disablePasswordAuthentication: true, - ssh: { - publicKeys: [ - { path: "kmqz", keyData: "kivgsubusvpprwqaqpjcmhsv" }, - ], - }, - provisionVMAgent: true, - patchSettings: { - patchMode: "ImageDefault", - assessmentMode: "ImageDefault", - automaticByPlatformSettings: { - rebootSetting: "Unknown", - bypassPlatformSafetyChecksOnUserSchedule: true, - }, - }, - enableVMAgentPlatformUpdates: true, - }, - secrets: [ - { - sourceVault: { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/vaults/{vaultName}", - }, - vaultCertificates: [ - { - certificateUrl: - "https://myVaultName.vault.azure.net/secrets/myCertName", - certificateStore: "nlxrwavpzhueffxsshlun", - }, - ], - }, - ], - allowExtensionOperations: true, - requireGuestProvisionSignal: true, - }, - storageProfile: { - imageReference: { - publisher: "mqxgwbiyjzmxavhbkd", - offer: "isxgumkarlkomp", - sku: "eojmppqcrnpmxirtp", - version: "wvpcqefgtmqdgltiuz", - sharedGalleryImageId: "kmkgihoxwlawuuhcinfirktdwkmx", - communityGalleryImageId: "vlqe", - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/galleries/{galleryName}/images/{imageName}/versions/{versionName}", - }, - osDisk: { - name: "wfttw", - caching: "None", - writeAcceleratorEnabled: true, - createOption: "FromImage", - diffDiskSettings: { option: "Local", placement: "CacheDisk" }, - diskSizeGB: 14, - osType: "Windows", - image: { - uri: "https://myStorageAccountName.blob.core.windows.net/myContainerName/myVhdName.vhd", - }, - vhdContainers: ["tkzcwddtinkfpnfklatw"], - managedDisk: { - storageAccountType: "Standard_LRS", - diskEncryptionSet: { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskEncryptionSets/{diskEncryptionSetName}", - }, - securityProfile: { - securityEncryptionType: "VMGuestStateOnly", - diskEncryptionSet: { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskEncryptionSets/{diskEncryptionSetName}", - }, - }, - }, - deleteOption: "Delete", - }, - dataDisks: [ - { - name: "eogiykmdmeikswxmigjws", - lun: 14, - caching: "None", - writeAcceleratorEnabled: true, - createOption: "FromImage", - diskSizeGB: 6, - managedDisk: { - storageAccountType: "Standard_LRS", - diskEncryptionSet: { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskEncryptionSets/{diskEncryptionSetName}", - }, - securityProfile: { - securityEncryptionType: "VMGuestStateOnly", - diskEncryptionSet: { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskEncryptionSets/{diskEncryptionSetName}", - }, - }, - }, - diskIOPSReadWrite: 27, - diskMBpsReadWrite: 2, - deleteOption: "Delete", - }, - ], - }, - networkProfile: { - healthProbe: { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/probes/{probeName}", - }, - networkInterfaceConfigurations: [ - { - name: "i", - properties: { - primary: true, - enableAcceleratedNetworking: true, - disableTcpStateTracking: true, - enableFpga: true, - networkSecurityGroup: { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups/{networkSecurityGroupName}", - }, - dnsSettings: { dnsServers: ["nxmmfolhclsesu"] }, - ipConfigurations: [ - { - name: "oezqhkidfhyywlfzwuotilrpbqnjg", - properties: { - subnet: { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}", - }, - primary: true, - publicIPAddressConfiguration: { - name: "fvpqf", - properties: { - idleTimeoutInMinutes: 9, - dnsSettings: { - domainNameLabel: "ukrddzvmorpmfsczjwtbvp", - domainNameLabelScope: "TenantReuse", - }, - ipTags: [ - { - ipTagType: "sddgsoemnzgqizale", - tag: "wufmhrjsakbiaetyara", - }, - ], - publicIPPrefix: { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPPrefixes/{publicIPPrefixName}", - }, - publicIPAddressVersion: "IPv4", - deleteOption: "Delete", - }, - sku: { name: "Basic", tier: "Regional" }, - }, - privateIPAddressVersion: "IPv4", - applicationGatewayBackendAddressPools: [ - { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationGateways/{applicationGatewayName}/backendAddressPools/{backendAddressPoolName}", - }, - ], - applicationSecurityGroups: [ - { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationSecurityGroups/{applicationSecurityGroupName}", - }, - ], - loadBalancerBackendAddressPools: [ - { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/backendAddressPools/{backendAddressPoolName}", - }, - ], - loadBalancerInboundNatPools: [ - { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/inboundNatPools/{inboundNatPoolName}", - }, - ], - }, - }, - ], - enableIPForwarding: true, - deleteOption: "Delete", - auxiliaryMode: "None", - auxiliarySku: "None", - }, - }, - ], - networkApiVersion: "2020-11-01", - }, - securityProfile: { - uefiSettings: { secureBootEnabled: true, vTpmEnabled: true }, - encryptionAtHost: true, - securityType: "TrustedLaunch", - encryptionIdentity: { - userAssignedIdentityResourceId: - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{userAssignedIdentityName}", - }, - proxyAgentSettings: { - enabled: true, - mode: "Audit", - keyIncarnationId: 20, - }, - }, - diagnosticsProfile: { - bootDiagnostics: { - enabled: true, - storageUri: "http://myStorageAccountName.blob.core.windows.net", - }, - }, - extensionProfile: { - extensions: [ - { - name: "bndxuxx", - properties: { - forceUpdateTag: "yhgxw", - publisher: "kpxtirxjfprhs", - type: "pgjilctjjwaa", - typeHandlerVersion: "zevivcoilxmbwlrihhhibq", - autoUpgradeMinorVersion: true, - enableAutomaticUpgrade: true, - settings: {}, - protectedSettings: {}, - provisionAfterExtensions: ["nftzosroolbcwmpupujzqwqe"], - suppressFailures: true, - protectedSettingsFromKeyVault: { - secretUrl: - "https://myvaultName.vault.azure.net/secrets/secret/mySecretName", - sourceVault: { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/vaults/{vaultName}", - }, - }, - }, - }, - ], - extensionsTimeBudget: "mbhjahtdygwgyszdwjtvlvtgchdwil", - }, - licenseType: "v", - scheduledEventsProfile: { - terminateNotificationProfile: { - notBeforeTimeout: "iljppmmw", - enable: true, - }, - osImageNotificationProfile: { - notBeforeTimeout: "olbpadmevekyczfokodtfprxti", - enable: true, - }, - }, - userData: "s", - capacityReservation: { - capacityReservationGroup: { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/capacityReservationGroups/{capacityReservationGroupName}", - }, - }, - applicationProfile: { - galleryApplications: [ - { - tags: "eyrqjbib", - order: 5, - packageReferenceId: - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/galleries/{galleryName}/applications/{applicationName}/versions/{versionName}", - configurationReference: "ulztmiavpojpbpbddgnuuiimxcpau", - treatFailureAsDeploymentFailure: true, - enableAutomaticUpgrade: true, - }, - ], - }, - hardwareProfile: { - vmSizeProperties: { vCPUsAvailable: 16, vCPUsPerCore: 23 }, - }, - serviceArtifactReference: { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/galleries/{galleryName}/serviceArtifacts/{serviceArtifactsName}/vmArtifactsProfiles/{vmArtifactsProfileName}", - }, - securityPostureReference: { - id: "/CommunityGalleries/{communityGalleryName}/securityPostures/{securityPostureName}/versions/{major.minor.patch}|{major.*}|latest", - excludeExtensions: ["{securityPostureVMExtensionName}"], - isOverridable: true, - }, - }, - computeApiVersion: "2023-07-01", - platformFaultDomainCount: 1, - }, - }, - zones: ["zone1", "zone2"], - identity: { - type: "UserAssigned", - userAssignedIdentities: { key9851: {} }, - }, - tags: { key3518: "luvrnuvsgdpbuofdskkcoqhfh" }, - location: "westus", - plan: { - name: "jwgrcrnrtfoxn", - publisher: "iozjbiqqckqm", - product: "cgopbyvdyqikahwyxfpzwaqk", - promotionCode: "naglezezplcaruqogtxnuizslqnnbr", - version: "wa", - }, - }, - ); - console.log(result); -} - -/** - * This sample demonstrates how to create a Fleet - * - * @summary create a Fleet - * x-ms-original-file: 2024-11-01/Fleets_CreateOrUpdate_MinimumSet.json - */ -async function fleetsCreateOrUpdateMinimumSet(): Promise { - const credential = new DefaultAzureCredential(); - const subscriptionId = "1DC2F28C-A625-4B0E-9748-9885A3C9E9EB"; - const client = new AzureFleetClient(credential, subscriptionId); - const result = await client.fleets.createOrUpdate( - "rgazurefleet", - "testFleet", - { - properties: { - spotPriorityProfile: { - capacity: 2, - minCapacity: 1, - evictionPolicy: "Delete", - allocationStrategy: "PriceCapacityOptimized", - maintain: true, - }, - regularPriorityProfile: { - capacity: 2, - minCapacity: 1, - allocationStrategy: "LowestPrice", - }, - vmSizesProfile: [ - { name: "Standard_D2s_v3" }, - { name: "Standard_D4s_v3" }, - { name: "Standard_E2s_v3" }, - ], - computeProfile: { - baseVirtualMachineProfile: { - storageProfile: { - imageReference: { - publisher: "canonical", - offer: "0001-com-ubuntu-server-focal", - sku: "20_04-lts-gen2", - version: "latest", - }, - osDisk: { - caching: "ReadWrite", - createOption: "FromImage", - osType: "Linux", - managedDisk: { storageAccountType: "Standard_LRS" }, - }, - }, - osProfile: { - computerNamePrefix: "prefix", - adminUsername: "azureuser", - adminPassword: "TestPassword$0", - linuxConfiguration: { disablePasswordAuthentication: false }, - }, - networkProfile: { - networkInterfaceConfigurations: [ - { - name: "vmNameTest", - properties: { - primary: true, - enableAcceleratedNetworking: false, - ipConfigurations: [ - { - name: "vmNameTest", - properties: { - subnet: { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}", - }, - primary: true, - loadBalancerBackendAddressPools: [ - { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/backendAddressPools/{backendAddressPoolName}", - }, - ], - }, - }, - ], - enableIPForwarding: true, - }, - }, - ], - }, - }, - computeApiVersion: "2023-09-01", - platformFaultDomainCount: 1, - }, - }, - tags: { key: "fleets-test" }, - location: "eastus2euap", - }, - ); - console.log(result); -} - -async function main(): Promise { - fleetsCreateOrUpdate(); - fleetsCreateOrUpdateMinimumSet(); -} - -main().catch(console.error); diff --git a/sdk/computefleet/arm-computefleet/samples/v1/typescript/src/fleetsDeleteSample.ts b/sdk/computefleet/arm-computefleet/samples/v1/typescript/src/fleetsDeleteSample.ts deleted file mode 100644 index 7ee6bbad9747..000000000000 --- a/sdk/computefleet/arm-computefleet/samples/v1/typescript/src/fleetsDeleteSample.ts +++ /dev/null @@ -1,24 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -import { AzureFleetClient } from "@azure/arm-computefleet"; -import { DefaultAzureCredential } from "@azure/identity"; - -/** - * This sample demonstrates how to delete a Fleet - * - * @summary delete a Fleet - * x-ms-original-file: 2024-11-01/Fleets_Delete.json - */ -async function fleetsDelete(): Promise { - const credential = new DefaultAzureCredential(); - const subscriptionId = "1DC2F28C-A625-4B0E-9748-9885A3C9E9EB"; - const client = new AzureFleetClient(credential, subscriptionId); - await client.fleets.delete("rgazurefleet", "testFleet"); -} - -async function main(): Promise { - fleetsDelete(); -} - -main().catch(console.error); diff --git a/sdk/computefleet/arm-computefleet/samples/v1/typescript/src/fleetsGetSample.ts b/sdk/computefleet/arm-computefleet/samples/v1/typescript/src/fleetsGetSample.ts deleted file mode 100644 index a5229ff75689..000000000000 --- a/sdk/computefleet/arm-computefleet/samples/v1/typescript/src/fleetsGetSample.ts +++ /dev/null @@ -1,25 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -import { AzureFleetClient } from "@azure/arm-computefleet"; -import { DefaultAzureCredential } from "@azure/identity"; - -/** - * This sample demonstrates how to get a Fleet - * - * @summary get a Fleet - * x-ms-original-file: 2024-11-01/Fleets_Get.json - */ -async function fleetsGet(): Promise { - const credential = new DefaultAzureCredential(); - const subscriptionId = "1DC2F28C-A625-4B0E-9748-9885A3C9E9EB"; - const client = new AzureFleetClient(credential, subscriptionId); - const result = await client.fleets.get("rgazurefleet", "testFleet"); - console.log(result); -} - -async function main(): Promise { - fleetsGet(); -} - -main().catch(console.error); diff --git a/sdk/computefleet/arm-computefleet/samples/v1/typescript/src/fleetsListByResourceGroupSample.ts b/sdk/computefleet/arm-computefleet/samples/v1/typescript/src/fleetsListByResourceGroupSample.ts deleted file mode 100644 index ad5c7280c270..000000000000 --- a/sdk/computefleet/arm-computefleet/samples/v1/typescript/src/fleetsListByResourceGroupSample.ts +++ /dev/null @@ -1,29 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -import { AzureFleetClient } from "@azure/arm-computefleet"; -import { DefaultAzureCredential } from "@azure/identity"; - -/** - * This sample demonstrates how to list Fleet resources by resource group - * - * @summary list Fleet resources by resource group - * x-ms-original-file: 2024-11-01/Fleets_ListByResourceGroup.json - */ -async function fleetsListByResourceGroup(): Promise { - const credential = new DefaultAzureCredential(); - const subscriptionId = "1DC2F28C-A625-4B0E-9748-9885A3C9E9EB"; - const client = new AzureFleetClient(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.fleets.listByResourceGroup("rgazurefleet")) { - resArray.push(item); - } - - console.log(resArray); -} - -async function main(): Promise { - fleetsListByResourceGroup(); -} - -main().catch(console.error); diff --git a/sdk/computefleet/arm-computefleet/samples/v1/typescript/src/fleetsListBySubscriptionSample.ts b/sdk/computefleet/arm-computefleet/samples/v1/typescript/src/fleetsListBySubscriptionSample.ts deleted file mode 100644 index 391fbf8ffc68..000000000000 --- a/sdk/computefleet/arm-computefleet/samples/v1/typescript/src/fleetsListBySubscriptionSample.ts +++ /dev/null @@ -1,29 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -import { AzureFleetClient } from "@azure/arm-computefleet"; -import { DefaultAzureCredential } from "@azure/identity"; - -/** - * This sample demonstrates how to list Fleet resources by subscription ID - * - * @summary list Fleet resources by subscription ID - * x-ms-original-file: 2024-11-01/Fleets_ListBySubscription.json - */ -async function fleetsListBySubscription(): Promise { - const credential = new DefaultAzureCredential(); - const subscriptionId = "1DC2F28C-A625-4B0E-9748-9885A3C9E9EB"; - const client = new AzureFleetClient(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.fleets.listBySubscription()) { - resArray.push(item); - } - - console.log(resArray); -} - -async function main(): Promise { - fleetsListBySubscription(); -} - -main().catch(console.error); diff --git a/sdk/computefleet/arm-computefleet/samples/v1/typescript/src/fleetsListVirtualMachineScaleSetsSample.ts b/sdk/computefleet/arm-computefleet/samples/v1/typescript/src/fleetsListVirtualMachineScaleSetsSample.ts deleted file mode 100644 index f681e9125ed2..000000000000 --- a/sdk/computefleet/arm-computefleet/samples/v1/typescript/src/fleetsListVirtualMachineScaleSetsSample.ts +++ /dev/null @@ -1,32 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -import { AzureFleetClient } from "@azure/arm-computefleet"; -import { DefaultAzureCredential } from "@azure/identity"; - -/** - * This sample demonstrates how to list VirtualMachineScaleSet resources by Fleet - * - * @summary list VirtualMachineScaleSet resources by Fleet - * x-ms-original-file: 2024-11-01/Fleets_ListVirtualMachineScaleSets.json - */ -async function fleetsListVirtualMachineScaleSets(): Promise { - const credential = new DefaultAzureCredential(); - const subscriptionId = "1DC2F28C-A625-4B0E-9748-9885A3C9E9EB"; - const client = new AzureFleetClient(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.fleets.listVirtualMachineScaleSets( - "rgazurefleet", - "myFleet", - )) { - resArray.push(item); - } - - console.log(resArray); -} - -async function main(): Promise { - fleetsListVirtualMachineScaleSets(); -} - -main().catch(console.error); diff --git a/sdk/computefleet/arm-computefleet/samples/v1/typescript/src/fleetsUpdateSample.ts b/sdk/computefleet/arm-computefleet/samples/v1/typescript/src/fleetsUpdateSample.ts deleted file mode 100644 index d8cf302fc737..000000000000 --- a/sdk/computefleet/arm-computefleet/samples/v1/typescript/src/fleetsUpdateSample.ts +++ /dev/null @@ -1,358 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -import { AzureFleetClient } from "@azure/arm-computefleet"; -import { DefaultAzureCredential } from "@azure/identity"; - -/** - * This sample demonstrates how to update a Fleet - * - * @summary update a Fleet - * x-ms-original-file: 2024-11-01/Fleets_Update.json - */ -async function fleetsUpdate(): Promise { - const credential = new DefaultAzureCredential(); - const subscriptionId = "1DC2F28C-A625-4B0E-9748-9885A3C9E9EB"; - const client = new AzureFleetClient(credential, subscriptionId); - const result = await client.fleets.update("rgazurefleet", "testFleet", { - identity: { type: "UserAssigned", userAssignedIdentities: {} }, - tags: {}, - properties: { - spotPriorityProfile: { - capacity: 20, - minCapacity: 10, - maxPricePerVM: 0.00865, - evictionPolicy: "Delete", - allocationStrategy: "PriceCapacityOptimized", - maintain: true, - }, - regularPriorityProfile: { - capacity: 20, - minCapacity: 10, - allocationStrategy: "LowestPrice", - }, - vmSizesProfile: [{ name: "Standard_d1_v2", rank: 19225 }], - computeProfile: { - baseVirtualMachineProfile: { - osProfile: { - computerNamePrefix: "o", - adminUsername: "nrgzqciiaaxjrqldbmjbqkyhntp", - adminPassword: "adfbrdxpv", - customData: "xjjib", - windowsConfiguration: { - provisionVMAgent: true, - enableAutomaticUpdates: true, - timeZone: "hlyjiqcfksgrpjrct", - additionalUnattendContent: [ - { - passName: "OobeSystem", - componentName: "Microsoft-Windows-Shell-Setup", - settingName: "AutoLogon", - content: "bubmqbxjkj", - }, - ], - patchSettings: { - patchMode: "Manual", - enableHotpatching: true, - assessmentMode: "ImageDefault", - automaticByPlatformSettings: { - rebootSetting: "Unknown", - bypassPlatformSafetyChecksOnUserSchedule: true, - }, - }, - winRM: { - listeners: [ - { - protocol: "Http", - certificateUrl: - "https://myVaultName.vault.azure.net/secrets/myCertName", - }, - ], - }, - enableVMAgentPlatformUpdates: true, - }, - linuxConfiguration: { - disablePasswordAuthentication: true, - ssh: { - publicKeys: [ - { path: "kmqz", keyData: "kivgsubusvpprwqaqpjcmhsv" }, - ], - }, - provisionVMAgent: true, - patchSettings: { - patchMode: "ImageDefault", - assessmentMode: "ImageDefault", - automaticByPlatformSettings: { - rebootSetting: "Unknown", - bypassPlatformSafetyChecksOnUserSchedule: true, - }, - }, - enableVMAgentPlatformUpdates: true, - }, - secrets: [ - { - sourceVault: { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/vaults/{vaultName}", - }, - vaultCertificates: [ - { - certificateUrl: - "https://myVaultName.vault.azure.net/secrets/myCertName", - certificateStore: "nlxrwavpzhueffxsshlun", - }, - ], - }, - ], - allowExtensionOperations: true, - requireGuestProvisionSignal: true, - }, - storageProfile: { - imageReference: { - publisher: "mqxgwbiyjzmxavhbkd", - offer: "isxgumkarlkomp", - sku: "eojmppqcrnpmxirtp", - version: "wvpcqefgtmqdgltiuz", - sharedGalleryImageId: "kmkgihoxwlawuuhcinfirktdwkmx", - communityGalleryImageId: "vlqe", - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/galleries/{galleryName}/images/{imageName}/versions/{versionName}", - }, - osDisk: { - name: "wfttw", - caching: "None", - writeAcceleratorEnabled: true, - createOption: "FromImage", - diffDiskSettings: { option: "Local", placement: "CacheDisk" }, - diskSizeGB: 14, - osType: "Windows", - image: { - uri: "https://myStorageAccountName.blob.core.windows.net/myContainerName/myVhdName.vhd", - }, - vhdContainers: ["tkzcwddtinkfpnfklatw"], - managedDisk: { - storageAccountType: "Standard_LRS", - diskEncryptionSet: { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskEncryptionSets/{diskEncryptionSetName}", - }, - securityProfile: { - securityEncryptionType: "VMGuestStateOnly", - diskEncryptionSet: { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskEncryptionSets/{diskEncryptionSetName}", - }, - }, - }, - deleteOption: "Delete", - }, - dataDisks: [ - { - name: "eogiykmdmeikswxmigjws", - lun: 14, - caching: "None", - writeAcceleratorEnabled: true, - createOption: "FromImage", - diskSizeGB: 6, - managedDisk: { - storageAccountType: "Standard_LRS", - diskEncryptionSet: { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskEncryptionSets/{diskEncryptionSetName}", - }, - securityProfile: { - securityEncryptionType: "VMGuestStateOnly", - diskEncryptionSet: { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskEncryptionSets/{diskEncryptionSetName}", - }, - }, - }, - diskIOPSReadWrite: 27, - diskMBpsReadWrite: 2, - deleteOption: "Delete", - }, - ], - }, - networkProfile: { - healthProbe: { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/probes/{probeName}", - }, - networkInterfaceConfigurations: [ - { - name: "i", - properties: { - primary: true, - enableAcceleratedNetworking: true, - disableTcpStateTracking: true, - enableFpga: true, - networkSecurityGroup: { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups/{networkSecurityGroupName}", - }, - dnsSettings: { dnsServers: ["nxmmfolhclsesu"] }, - ipConfigurations: [ - { - name: "oezqhkidfhyywlfzwuotilrpbqnjg", - properties: { - subnet: { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}", - }, - primary: true, - publicIPAddressConfiguration: { - name: "fvpqf", - properties: { - idleTimeoutInMinutes: 9, - dnsSettings: { - domainNameLabel: "ukrddzvmorpmfsczjwtbvp", - domainNameLabelScope: "TenantReuse", - }, - ipTags: [ - { - ipTagType: "sddgsoemnzgqizale", - tag: "wufmhrjsakbiaetyara", - }, - ], - publicIPPrefix: { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPPrefixes/{publicIPPrefixName}", - }, - publicIPAddressVersion: "IPv4", - deleteOption: "Delete", - }, - sku: { name: "Basic", tier: "Regional" }, - }, - privateIPAddressVersion: "IPv4", - applicationGatewayBackendAddressPools: [ - { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationGateways/{applicationGatewayName}/backendAddressPools/{backendAddressPoolName}", - }, - ], - applicationSecurityGroups: [ - { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationSecurityGroups/{applicationSecurityGroupName}", - }, - ], - loadBalancerBackendAddressPools: [ - { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/backendAddressPools/{backendAddressPoolName}", - }, - ], - loadBalancerInboundNatPools: [ - { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/inboundNatPools/{inboundNatPoolName}", - }, - ], - }, - }, - ], - enableIPForwarding: true, - deleteOption: "Delete", - auxiliaryMode: "None", - auxiliarySku: "None", - }, - }, - ], - networkApiVersion: "2020-11-01", - }, - securityProfile: { - uefiSettings: { secureBootEnabled: true, vTpmEnabled: true }, - encryptionAtHost: true, - securityType: "TrustedLaunch", - encryptionIdentity: { - userAssignedIdentityResourceId: - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{userAssignedIdentityName}", - }, - proxyAgentSettings: { - enabled: true, - mode: "Audit", - keyIncarnationId: 20, - }, - }, - diagnosticsProfile: { - bootDiagnostics: { - enabled: true, - storageUri: "http://myStorageAccountName.blob.core.windows.net", - }, - }, - extensionProfile: { - extensions: [ - { - name: "bndxuxx", - properties: { - forceUpdateTag: "yhgxw", - publisher: "kpxtirxjfprhs", - type: "pgjilctjjwaa", - typeHandlerVersion: "zevivcoilxmbwlrihhhibq", - autoUpgradeMinorVersion: true, - enableAutomaticUpgrade: true, - settings: {}, - protectedSettings: {}, - provisionAfterExtensions: ["nftzosroolbcwmpupujzqwqe"], - suppressFailures: true, - protectedSettingsFromKeyVault: { - secretUrl: - "https://myVaultName.vault.azure.net/secrets/secret/mySecretName", - sourceVault: { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/vaults/{vaultName}", - }, - }, - }, - }, - ], - extensionsTimeBudget: "mbhjahtdygwgyszdwjtvlvtgchdwil", - }, - licenseType: "v", - scheduledEventsProfile: { - terminateNotificationProfile: { - notBeforeTimeout: "iljppmmw", - enable: true, - }, - osImageNotificationProfile: { - notBeforeTimeout: "olbpadmevekyczfokodtfprxti", - enable: true, - }, - }, - userData: "s", - capacityReservation: { - capacityReservationGroup: { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/capacityReservationGroups/{capacityReservationGroupName}", - }, - }, - applicationProfile: { - galleryApplications: [ - { - tags: "eyrqjbib", - order: 5, - packageReferenceId: - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/galleries/{galleryName}/applications/{applicationName}/versions/{versionName}", - configurationReference: "ulztmiavpojpbpbddgnuuiimxcpau", - treatFailureAsDeploymentFailure: true, - enableAutomaticUpgrade: true, - }, - ], - }, - hardwareProfile: { - vmSizeProperties: { vCPUsAvailable: 16, vCPUsPerCore: 23 }, - }, - serviceArtifactReference: { - id: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/galleries/{galleryName}/serviceArtifacts/{serviceArtifactsName}/vmArtifactsProfiles/{vmArtifactsProfileName}", - }, - securityPostureReference: { - id: "/CommunityGalleries/{communityGalleryName}/securityPostures/{securityPostureName}/versions/{major.minor.patch}|{major.*}|latest", - excludeExtensions: ["{securityPostureVMExtensionName}"], - isOverridable: true, - }, - }, - computeApiVersion: "2023-07-01", - platformFaultDomainCount: 1, - }, - }, - plan: { - name: "jwgrcrnrtfoxn", - publisher: "iozjbiqqckqm", - product: "cgopbyvdyqikahwyxfpzwaqk", - promotionCode: "naglezezplcaruqogtxnuizslqnnbr", - version: "wa", - }, - }); - console.log(result); -} - -async function main(): Promise { - fleetsUpdate(); -} - -main().catch(console.error); diff --git a/sdk/computefleet/arm-computefleet/samples/v1/typescript/src/operationsListSample.ts b/sdk/computefleet/arm-computefleet/samples/v1/typescript/src/operationsListSample.ts deleted file mode 100644 index 969e93467213..000000000000 --- a/sdk/computefleet/arm-computefleet/samples/v1/typescript/src/operationsListSample.ts +++ /dev/null @@ -1,29 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -import { AzureFleetClient } from "@azure/arm-computefleet"; -import { DefaultAzureCredential } from "@azure/identity"; - -/** - * This sample demonstrates how to list the operations for the provider - * - * @summary list the operations for the provider - * x-ms-original-file: 2024-11-01/Operations_List.json - */ -async function operationsList(): Promise { - const credential = new DefaultAzureCredential(); - const subscriptionId = "00000000-0000-0000-0000-00000000000"; - const client = new AzureFleetClient(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.operations.list()) { - resArray.push(item); - } - - console.log(resArray); -} - -async function main(): Promise { - operationsList(); -} - -main().catch(console.error); diff --git a/sdk/computefleet/arm-computefleet/samples/v1/typescript/tsconfig.json b/sdk/computefleet/arm-computefleet/samples/v1/typescript/tsconfig.json deleted file mode 100644 index 984eed535aa8..000000000000 --- a/sdk/computefleet/arm-computefleet/samples/v1/typescript/tsconfig.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "compilerOptions": { - "target": "ES2020", - "module": "commonjs", - "moduleResolution": "node", - "resolveJsonModule": true, - "esModuleInterop": true, - "allowSyntheticDefaultImports": true, - "strict": true, - "alwaysStrict": true, - "outDir": "dist", - "rootDir": "src" - }, - "include": [ - "src/**/*.ts" - ] -} diff --git a/sdk/computefleet/arm-computefleet/src/api/azureFleetContext.ts b/sdk/computefleet/arm-computefleet/src/api/azureFleetContext.ts index 89318b87b149..f42e90bd7901 100644 --- a/sdk/computefleet/arm-computefleet/src/api/azureFleetContext.ts +++ b/sdk/computefleet/arm-computefleet/src/api/azureFleetContext.ts @@ -2,25 +2,33 @@ // Licensed under the MIT License. import { logger } from "../logger.js"; +import { KnownVersions } from "../models/models.js"; import { Client, ClientOptions, getClient } from "@azure-rest/core-client"; import { TokenCredential } from "@azure/core-auth"; -export interface AzureFleetContext extends Client {} +export interface AzureFleetContext extends Client { + /** The API version to use for this operation. */ + /** Known values of {@link KnownVersions} that the service accepts. */ + apiVersion: string; + /** The ID of the target subscription. The value must be an UUID. */ + subscriptionId: string; +} /** Optional parameters for the client. */ export interface AzureFleetClientOptionalParams extends ClientOptions { /** The API version to use for this operation. */ + /** Known values of {@link KnownVersions} that the service accepts. */ apiVersion?: string; } export function createAzureFleet( credential: TokenCredential, + subscriptionId: string, options: AzureFleetClientOptionalParams = {}, ): AzureFleetContext { - const endpointUrl = options.endpoint ?? options.baseUrl ?? `https://management.azure.com`; - + const endpointUrl = options.endpoint ?? options.baseUrl ?? "https://management.azure.com"; const prefixFromOptions = options?.userAgentOptions?.userAgentPrefix; - const userAgentInfo = `azsdk-js-arm-computefleet/1.0.1`; + const userAgentInfo = `azsdk-js-arm-computefleet/2.0.0`; const userAgentPrefix = prefixFromOptions ? `${prefixFromOptions} azsdk-js-api ${userAgentInfo}` : `azsdk-js-api ${userAgentInfo}`; @@ -34,7 +42,7 @@ export function createAzureFleet( }; const clientContext = getClient(endpointUrl, credential, updatedOptions); clientContext.pipeline.removePolicy({ name: "ApiVersionPolicy" }); - const apiVersion = options.apiVersion ?? "2024-11-01"; + const apiVersion = options.apiVersion ?? "2025-03-01"; clientContext.pipeline.addPolicy({ name: "ClientApiVersionPolicy", sendRequest: (req, next) => { @@ -50,5 +58,5 @@ export function createAzureFleet( return next(req); }, }); - return clientContext; + return { ...clientContext, apiVersion, subscriptionId } as AzureFleetContext; } diff --git a/sdk/computefleet/arm-computefleet/src/api/fleets/index.ts b/sdk/computefleet/arm-computefleet/src/api/fleets/index.ts index 46e4df1ab7e7..d1a8b92d8d5b 100644 --- a/sdk/computefleet/arm-computefleet/src/api/fleets/index.ts +++ b/sdk/computefleet/arm-computefleet/src/api/fleets/index.ts @@ -1,363 +1,21 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { - AzureFleetContext as Client, - FleetsCreateOrUpdateOptionalParams, - FleetsDeleteOptionalParams, - FleetsGetOptionalParams, - FleetsListByResourceGroupOptionalParams, - FleetsListBySubscriptionOptionalParams, +export { + listVirtualMachineScaleSets, + listBySubscription, + listByResourceGroup, + $delete, + update, + createOrUpdate, + get, +} from "./operations.js"; +export { FleetsListVirtualMachineScaleSetsOptionalParams, + FleetsListBySubscriptionOptionalParams, + FleetsListByResourceGroupOptionalParams, + FleetsDeleteOptionalParams, FleetsUpdateOptionalParams, -} from "../index.js"; -import { - Fleet, - fleetSerializer, - fleetDeserializer, - FleetUpdate, - fleetUpdateSerializer, - _FleetListResult, - _fleetListResultDeserializer, - _VirtualMachineScaleSetListResult, - _virtualMachineScaleSetListResultDeserializer, - VirtualMachineScaleSet, -} from "../../models/models.js"; -import { getLongRunningPoller } from "../../static-helpers/pollingHelpers.js"; -import { - PagedAsyncIterableIterator, - buildPagedAsyncIterator, -} from "../../static-helpers/pagingHelpers.js"; -import { - StreamableMethod, - PathUncheckedResponse, - createRestError, - operationOptionsToRequestParameters, -} from "@azure-rest/core-client"; -import { PollerLike, OperationState } from "@azure/core-lro"; - -export function _fleetsGetSend( - context: Client, - subscriptionId: string, - resourceGroupName: string, - fleetName: string, - options: FleetsGetOptionalParams = { requestOptions: {} }, -): StreamableMethod { - return context - .path( - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureFleet/fleets/{fleetName}", - subscriptionId, - resourceGroupName, - fleetName, - ) - .get({ ...operationOptionsToRequestParameters(options) }); -} - -export async function _fleetsGetDeserialize(result: PathUncheckedResponse): Promise { - const expectedStatuses = ["200"]; - if (!expectedStatuses.includes(result.status)) { - throw createRestError(result); - } - - return fleetDeserializer(result.body); -} - -/** Get a Fleet */ -export async function fleetsGet( - context: Client, - subscriptionId: string, - resourceGroupName: string, - fleetName: string, - options: FleetsGetOptionalParams = { requestOptions: {} }, -): Promise { - const result = await _fleetsGetSend( - context, - subscriptionId, - resourceGroupName, - fleetName, - options, - ); - return _fleetsGetDeserialize(result); -} - -export function _fleetsCreateOrUpdateSend( - context: Client, - subscriptionId: string, - resourceGroupName: string, - fleetName: string, - resource: Fleet, - options: FleetsCreateOrUpdateOptionalParams = { requestOptions: {} }, -): StreamableMethod { - return context - .path( - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureFleet/fleets/{fleetName}", - subscriptionId, - resourceGroupName, - fleetName, - ) - .put({ - ...operationOptionsToRequestParameters(options), - body: fleetSerializer(resource), - }); -} - -export async function _fleetsCreateOrUpdateDeserialize( - result: PathUncheckedResponse, -): Promise { - const expectedStatuses = ["200", "201"]; - if (!expectedStatuses.includes(result.status)) { - throw createRestError(result); - } - - return fleetDeserializer(result.body); -} - -/** Create a Fleet */ -export function fleetsCreateOrUpdate( - context: Client, - subscriptionId: string, - resourceGroupName: string, - fleetName: string, - resource: Fleet, - options: FleetsCreateOrUpdateOptionalParams = { requestOptions: {} }, -): PollerLike, Fleet> { - return getLongRunningPoller(context, _fleetsCreateOrUpdateDeserialize, ["200", "201"], { - updateIntervalInMs: options?.updateIntervalInMs, - abortSignal: options?.abortSignal, - getInitialResponse: () => - _fleetsCreateOrUpdateSend( - context, - subscriptionId, - resourceGroupName, - fleetName, - resource, - options, - ), - resourceLocationConfig: "azure-async-operation", - }) as PollerLike, Fleet>; -} - -export function _fleetsUpdateSend( - context: Client, - subscriptionId: string, - resourceGroupName: string, - fleetName: string, - properties: FleetUpdate, - options: FleetsUpdateOptionalParams = { requestOptions: {} }, -): StreamableMethod { - return context - .path( - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureFleet/fleets/{fleetName}", - subscriptionId, - resourceGroupName, - fleetName, - ) - .patch({ - ...operationOptionsToRequestParameters(options), - body: fleetUpdateSerializer(properties), - }); -} - -export async function _fleetsUpdateDeserialize(result: PathUncheckedResponse): Promise { - const expectedStatuses = ["200", "202"]; - if (!expectedStatuses.includes(result.status)) { - throw createRestError(result); - } - - return fleetDeserializer(result.body); -} - -/** Update a Fleet */ -export function fleetsUpdate( - context: Client, - subscriptionId: string, - resourceGroupName: string, - fleetName: string, - properties: FleetUpdate, - options: FleetsUpdateOptionalParams = { requestOptions: {} }, -): PollerLike, Fleet> { - return getLongRunningPoller(context, _fleetsUpdateDeserialize, ["200", "202"], { - updateIntervalInMs: options?.updateIntervalInMs, - abortSignal: options?.abortSignal, - getInitialResponse: () => - _fleetsUpdateSend(context, subscriptionId, resourceGroupName, fleetName, properties, options), - resourceLocationConfig: "location", - }) as PollerLike, Fleet>; -} - -export function _fleetsDeleteSend( - context: Client, - subscriptionId: string, - resourceGroupName: string, - fleetName: string, - options: FleetsDeleteOptionalParams = { requestOptions: {} }, -): StreamableMethod { - return context - .path( - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureFleet/fleets/{fleetName}", - subscriptionId, - resourceGroupName, - fleetName, - ) - .delete({ ...operationOptionsToRequestParameters(options) }); -} - -export async function _fleetsDeleteDeserialize(result: PathUncheckedResponse): Promise { - const expectedStatuses = ["202", "204", "200"]; - if (!expectedStatuses.includes(result.status)) { - throw createRestError(result); - } - - return; -} - -/** Delete a Fleet */ -export function fleetsDelete( - context: Client, - subscriptionId: string, - resourceGroupName: string, - fleetName: string, - options: FleetsDeleteOptionalParams = { requestOptions: {} }, -): PollerLike, void> { - return getLongRunningPoller(context, _fleetsDeleteDeserialize, ["202", "204", "200"], { - updateIntervalInMs: options?.updateIntervalInMs, - abortSignal: options?.abortSignal, - getInitialResponse: () => - _fleetsDeleteSend(context, subscriptionId, resourceGroupName, fleetName, options), - resourceLocationConfig: "location", - }) as PollerLike, void>; -} - -export function _fleetsListByResourceGroupSend( - context: Client, - subscriptionId: string, - resourceGroupName: string, - options: FleetsListByResourceGroupOptionalParams = { requestOptions: {} }, -): StreamableMethod { - return context - .path( - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureFleet/fleets", - subscriptionId, - resourceGroupName, - ) - .get({ ...operationOptionsToRequestParameters(options) }); -} - -export async function _fleetsListByResourceGroupDeserialize( - result: PathUncheckedResponse, -): Promise<_FleetListResult> { - const expectedStatuses = ["200"]; - if (!expectedStatuses.includes(result.status)) { - throw createRestError(result); - } - - return _fleetListResultDeserializer(result.body); -} - -/** List Fleet resources by resource group */ -export function fleetsListByResourceGroup( - context: Client, - subscriptionId: string, - resourceGroupName: string, - options: FleetsListByResourceGroupOptionalParams = { requestOptions: {} }, -): PagedAsyncIterableIterator { - return buildPagedAsyncIterator( - context, - () => _fleetsListByResourceGroupSend(context, subscriptionId, resourceGroupName, options), - _fleetsListByResourceGroupDeserialize, - ["200"], - { itemName: "value", nextLinkName: "nextLink" }, - ); -} - -export function _fleetsListBySubscriptionSend( - context: Client, - subscriptionId: string, - options: FleetsListBySubscriptionOptionalParams = { requestOptions: {} }, -): StreamableMethod { - return context - .path("/subscriptions/{subscriptionId}/providers/Microsoft.AzureFleet/fleets", subscriptionId) - .get({ ...operationOptionsToRequestParameters(options) }); -} - -export async function _fleetsListBySubscriptionDeserialize( - result: PathUncheckedResponse, -): Promise<_FleetListResult> { - const expectedStatuses = ["200"]; - if (!expectedStatuses.includes(result.status)) { - throw createRestError(result); - } - - return _fleetListResultDeserializer(result.body); -} - -/** List Fleet resources by subscription ID */ -export function fleetsListBySubscription( - context: Client, - subscriptionId: string, - options: FleetsListBySubscriptionOptionalParams = { requestOptions: {} }, -): PagedAsyncIterableIterator { - return buildPagedAsyncIterator( - context, - () => _fleetsListBySubscriptionSend(context, subscriptionId, options), - _fleetsListBySubscriptionDeserialize, - ["200"], - { itemName: "value", nextLinkName: "nextLink" }, - ); -} - -export function _fleetsListVirtualMachineScaleSetsSend( - context: Client, - subscriptionId: string, - resourceGroupName: string, - name: string, - options: FleetsListVirtualMachineScaleSetsOptionalParams = { - requestOptions: {}, - }, -): StreamableMethod { - return context - .path( - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureFleet/fleets/{name}/virtualMachineScaleSets", - subscriptionId, - resourceGroupName, - name, - ) - .get({ ...operationOptionsToRequestParameters(options) }); -} - -export async function _fleetsListVirtualMachineScaleSetsDeserialize( - result: PathUncheckedResponse, -): Promise<_VirtualMachineScaleSetListResult> { - const expectedStatuses = ["200"]; - if (!expectedStatuses.includes(result.status)) { - throw createRestError(result); - } - - return _virtualMachineScaleSetListResultDeserializer(result.body); -} - -/** List VirtualMachineScaleSet resources by Fleet */ -export function fleetsListVirtualMachineScaleSets( - context: Client, - subscriptionId: string, - resourceGroupName: string, - name: string, - options: FleetsListVirtualMachineScaleSetsOptionalParams = { - requestOptions: {}, - }, -): PagedAsyncIterableIterator { - return buildPagedAsyncIterator( - context, - () => - _fleetsListVirtualMachineScaleSetsSend( - context, - subscriptionId, - resourceGroupName, - name, - options, - ), - _fleetsListVirtualMachineScaleSetsDeserialize, - ["200"], - { itemName: "value", nextLinkName: "nextLink" }, - ); -} + FleetsCreateOrUpdateOptionalParams, + FleetsGetOptionalParams, +} from "./options.js"; diff --git a/sdk/computefleet/arm-computefleet/src/api/fleets/operations.ts b/sdk/computefleet/arm-computefleet/src/api/fleets/operations.ts new file mode 100644 index 000000000000..91d63348b806 --- /dev/null +++ b/sdk/computefleet/arm-computefleet/src/api/fleets/operations.ts @@ -0,0 +1,425 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { AzureFleetContext as Client } from "../index.js"; +import { + errorResponseDeserializer, + Fleet, + fleetSerializer, + fleetDeserializer, + FleetUpdate, + fleetUpdateSerializer, + _FleetListResult, + _fleetListResultDeserializer, + _VirtualMachineScaleSetListResult, + _virtualMachineScaleSetListResultDeserializer, + VirtualMachineScaleSet, +} from "../../models/models.js"; +import { + FleetsListVirtualMachineScaleSetsOptionalParams, + FleetsListBySubscriptionOptionalParams, + FleetsListByResourceGroupOptionalParams, + FleetsDeleteOptionalParams, + FleetsUpdateOptionalParams, + FleetsCreateOrUpdateOptionalParams, + FleetsGetOptionalParams, +} from "./options.js"; +import { + PagedAsyncIterableIterator, + buildPagedAsyncIterator, +} from "../../static-helpers/pagingHelpers.js"; +import { getLongRunningPoller } from "../../static-helpers/pollingHelpers.js"; +import { expandUrlTemplate } from "../../static-helpers/urlTemplate.js"; +import { + StreamableMethod, + PathUncheckedResponse, + createRestError, + operationOptionsToRequestParameters, +} from "@azure-rest/core-client"; +import { PollerLike, OperationState } from "@azure/core-lro"; + +export function _listVirtualMachineScaleSetsSend( + context: Client, + resourceGroupName: string, + name: string, + options: FleetsListVirtualMachineScaleSetsOptionalParams = { + requestOptions: {}, + }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureFleet/fleets/{name}/virtualMachineScaleSets{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + name: name, + "api%2Dversion": context.apiVersion, + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { + accept: "application/json", + ...options.requestOptions?.headers, + }, + }); +} + +export async function _listVirtualMachineScaleSetsDeserialize( + result: PathUncheckedResponse, +): Promise<_VirtualMachineScaleSetListResult> { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = errorResponseDeserializer(result.body); + throw error; + } + + return _virtualMachineScaleSetListResultDeserializer(result.body); +} + +/** List VirtualMachineScaleSet resources by Fleet */ +export function listVirtualMachineScaleSets( + context: Client, + resourceGroupName: string, + name: string, + options: FleetsListVirtualMachineScaleSetsOptionalParams = { + requestOptions: {}, + }, +): PagedAsyncIterableIterator { + return buildPagedAsyncIterator( + context, + () => _listVirtualMachineScaleSetsSend(context, resourceGroupName, name, options), + _listVirtualMachineScaleSetsDeserialize, + ["200"], + { itemName: "value", nextLinkName: "nextLink" }, + ); +} + +export function _listBySubscriptionSend( + context: Client, + options: FleetsListBySubscriptionOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/providers/Microsoft.AzureFleet/fleets{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + "api%2Dversion": context.apiVersion, + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { + accept: "application/json", + ...options.requestOptions?.headers, + }, + }); +} + +export async function _listBySubscriptionDeserialize( + result: PathUncheckedResponse, +): Promise<_FleetListResult> { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = errorResponseDeserializer(result.body); + throw error; + } + + return _fleetListResultDeserializer(result.body); +} + +/** List Fleet resources by subscription ID */ +export function listBySubscription( + context: Client, + options: FleetsListBySubscriptionOptionalParams = { requestOptions: {} }, +): PagedAsyncIterableIterator { + return buildPagedAsyncIterator( + context, + () => _listBySubscriptionSend(context, options), + _listBySubscriptionDeserialize, + ["200"], + { itemName: "value", nextLinkName: "nextLink" }, + ); +} + +export function _listByResourceGroupSend( + context: Client, + resourceGroupName: string, + options: FleetsListByResourceGroupOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureFleet/fleets{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + "api%2Dversion": context.apiVersion, + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { + accept: "application/json", + ...options.requestOptions?.headers, + }, + }); +} + +export async function _listByResourceGroupDeserialize( + result: PathUncheckedResponse, +): Promise<_FleetListResult> { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = errorResponseDeserializer(result.body); + throw error; + } + + return _fleetListResultDeserializer(result.body); +} + +/** List Fleet resources by resource group */ +export function listByResourceGroup( + context: Client, + resourceGroupName: string, + options: FleetsListByResourceGroupOptionalParams = { requestOptions: {} }, +): PagedAsyncIterableIterator { + return buildPagedAsyncIterator( + context, + () => _listByResourceGroupSend(context, resourceGroupName, options), + _listByResourceGroupDeserialize, + ["200"], + { itemName: "value", nextLinkName: "nextLink" }, + ); +} + +export function _$deleteSend( + context: Client, + resourceGroupName: string, + fleetName: string, + options: FleetsDeleteOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureFleet/fleets/{fleetName}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + fleetName: fleetName, + "api%2Dversion": context.apiVersion, + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).delete({ + ...operationOptionsToRequestParameters(options), + headers: { + accept: "application/json", + ...options.requestOptions?.headers, + }, + }); +} + +export async function _$deleteDeserialize(result: PathUncheckedResponse): Promise { + const expectedStatuses = ["202", "204", "200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = errorResponseDeserializer(result.body); + throw error; + } + + return; +} + +/** Delete a Fleet */ +/** + * @fixme delete is a reserved word that cannot be used as an operation name. + * Please add @clientName("clientName") or @clientName("", "javascript") + * to the operation to override the generated name. + */ +export function $delete( + context: Client, + resourceGroupName: string, + fleetName: string, + options: FleetsDeleteOptionalParams = { requestOptions: {} }, +): PollerLike, void> { + return getLongRunningPoller(context, _$deleteDeserialize, ["202", "204", "200"], { + updateIntervalInMs: options?.updateIntervalInMs, + abortSignal: options?.abortSignal, + getInitialResponse: () => _$deleteSend(context, resourceGroupName, fleetName, options), + resourceLocationConfig: "location", + }) as PollerLike, void>; +} + +export function _updateSend( + context: Client, + resourceGroupName: string, + fleetName: string, + properties: FleetUpdate, + options: FleetsUpdateOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureFleet/fleets/{fleetName}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + fleetName: fleetName, + "api%2Dversion": context.apiVersion, + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).patch({ + ...operationOptionsToRequestParameters(options), + contentType: "application/json", + headers: { + accept: "application/json", + ...options.requestOptions?.headers, + }, + body: fleetUpdateSerializer(properties), + }); +} + +export async function _updateDeserialize(result: PathUncheckedResponse): Promise { + const expectedStatuses = ["200", "202"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = errorResponseDeserializer(result.body); + throw error; + } + + return fleetDeserializer(result.body); +} + +/** Update a Fleet */ +export function update( + context: Client, + resourceGroupName: string, + fleetName: string, + properties: FleetUpdate, + options: FleetsUpdateOptionalParams = { requestOptions: {} }, +): PollerLike, Fleet> { + return getLongRunningPoller(context, _updateDeserialize, ["200", "202"], { + updateIntervalInMs: options?.updateIntervalInMs, + abortSignal: options?.abortSignal, + getInitialResponse: () => + _updateSend(context, resourceGroupName, fleetName, properties, options), + resourceLocationConfig: "location", + }) as PollerLike, Fleet>; +} + +export function _createOrUpdateSend( + context: Client, + resourceGroupName: string, + fleetName: string, + resource: Fleet, + options: FleetsCreateOrUpdateOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureFleet/fleets/{fleetName}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + fleetName: fleetName, + "api%2Dversion": context.apiVersion, + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).put({ + ...operationOptionsToRequestParameters(options), + contentType: "application/json", + headers: { + accept: "application/json", + ...options.requestOptions?.headers, + }, + body: fleetSerializer(resource), + }); +} + +export async function _createOrUpdateDeserialize(result: PathUncheckedResponse): Promise { + const expectedStatuses = ["200", "201"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = errorResponseDeserializer(result.body); + throw error; + } + + return fleetDeserializer(result.body); +} + +/** Create a Fleet */ +export function createOrUpdate( + context: Client, + resourceGroupName: string, + fleetName: string, + resource: Fleet, + options: FleetsCreateOrUpdateOptionalParams = { requestOptions: {} }, +): PollerLike, Fleet> { + return getLongRunningPoller(context, _createOrUpdateDeserialize, ["200", "201"], { + updateIntervalInMs: options?.updateIntervalInMs, + abortSignal: options?.abortSignal, + getInitialResponse: () => + _createOrUpdateSend(context, resourceGroupName, fleetName, resource, options), + resourceLocationConfig: "azure-async-operation", + }) as PollerLike, Fleet>; +} + +export function _getSend( + context: Client, + resourceGroupName: string, + fleetName: string, + options: FleetsGetOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureFleet/fleets/{fleetName}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + fleetName: fleetName, + "api%2Dversion": context.apiVersion, + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { + accept: "application/json", + ...options.requestOptions?.headers, + }, + }); +} + +export async function _getDeserialize(result: PathUncheckedResponse): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = errorResponseDeserializer(result.body); + throw error; + } + + return fleetDeserializer(result.body); +} + +/** Get a Fleet */ +export async function get( + context: Client, + resourceGroupName: string, + fleetName: string, + options: FleetsGetOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _getSend(context, resourceGroupName, fleetName, options); + return _getDeserialize(result); +} diff --git a/sdk/computefleet/arm-computefleet/src/api/options.ts b/sdk/computefleet/arm-computefleet/src/api/fleets/options.ts similarity index 91% rename from sdk/computefleet/arm-computefleet/src/api/options.ts rename to sdk/computefleet/arm-computefleet/src/api/fleets/options.ts index c05380ef26d4..39ab3dafcc78 100644 --- a/sdk/computefleet/arm-computefleet/src/api/options.ts +++ b/sdk/computefleet/arm-computefleet/src/api/fleets/options.ts @@ -4,13 +4,16 @@ import { OperationOptions } from "@azure-rest/core-client"; /** Optional parameters. */ -export interface OperationsListOptionalParams extends OperationOptions {} +export interface FleetsListVirtualMachineScaleSetsOptionalParams extends OperationOptions {} /** Optional parameters. */ -export interface FleetsGetOptionalParams extends OperationOptions {} +export interface FleetsListBySubscriptionOptionalParams extends OperationOptions {} /** Optional parameters. */ -export interface FleetsCreateOrUpdateOptionalParams extends OperationOptions { +export interface FleetsListByResourceGroupOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface FleetsDeleteOptionalParams extends OperationOptions { /** Delay to wait until next poll, in milliseconds. */ updateIntervalInMs?: number; } @@ -22,16 +25,10 @@ export interface FleetsUpdateOptionalParams extends OperationOptions { } /** Optional parameters. */ -export interface FleetsDeleteOptionalParams extends OperationOptions { +export interface FleetsCreateOrUpdateOptionalParams extends OperationOptions { /** Delay to wait until next poll, in milliseconds. */ updateIntervalInMs?: number; } /** Optional parameters. */ -export interface FleetsListByResourceGroupOptionalParams extends OperationOptions {} - -/** Optional parameters. */ -export interface FleetsListBySubscriptionOptionalParams extends OperationOptions {} - -/** Optional parameters. */ -export interface FleetsListVirtualMachineScaleSetsOptionalParams extends OperationOptions {} +export interface FleetsGetOptionalParams extends OperationOptions {} diff --git a/sdk/computefleet/arm-computefleet/src/api/index.ts b/sdk/computefleet/arm-computefleet/src/api/index.ts index d6f24d981c53..23cdc63a2fce 100644 --- a/sdk/computefleet/arm-computefleet/src/api/index.ts +++ b/sdk/computefleet/arm-computefleet/src/api/index.ts @@ -6,23 +6,3 @@ export { AzureFleetContext, AzureFleetClientOptionalParams, } from "./azureFleetContext.js"; -export { - OperationsListOptionalParams, - FleetsGetOptionalParams, - FleetsCreateOrUpdateOptionalParams, - FleetsUpdateOptionalParams, - FleetsDeleteOptionalParams, - FleetsListByResourceGroupOptionalParams, - FleetsListBySubscriptionOptionalParams, - FleetsListVirtualMachineScaleSetsOptionalParams, -} from "./options.js"; -export { - fleetsGet, - fleetsCreateOrUpdate, - fleetsUpdate, - fleetsDelete, - fleetsListByResourceGroup, - fleetsListBySubscription, - fleetsListVirtualMachineScaleSets, -} from "./fleets/index.js"; -export { operationsList } from "./operations/index.js"; diff --git a/sdk/computefleet/arm-computefleet/src/api/operations/index.ts b/sdk/computefleet/arm-computefleet/src/api/operations/index.ts index 5d8898a5339f..24a804d14fcf 100644 --- a/sdk/computefleet/arm-computefleet/src/api/operations/index.ts +++ b/sdk/computefleet/arm-computefleet/src/api/operations/index.ts @@ -1,53 +1,5 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AzureFleetContext as Client, OperationsListOptionalParams } from "../index.js"; -import { - _OperationListResult, - _operationListResultDeserializer, - Operation, -} from "../../models/models.js"; -import { - PagedAsyncIterableIterator, - buildPagedAsyncIterator, -} from "../../static-helpers/pagingHelpers.js"; -import { - StreamableMethod, - PathUncheckedResponse, - createRestError, - operationOptionsToRequestParameters, -} from "@azure-rest/core-client"; - -export function _operationsListSend( - context: Client, - options: OperationsListOptionalParams = { requestOptions: {} }, -): StreamableMethod { - return context - .path("/providers/Microsoft.AzureFleet/operations") - .get({ ...operationOptionsToRequestParameters(options) }); -} - -export async function _operationsListDeserialize( - result: PathUncheckedResponse, -): Promise<_OperationListResult> { - const expectedStatuses = ["200"]; - if (!expectedStatuses.includes(result.status)) { - throw createRestError(result); - } - - return _operationListResultDeserializer(result.body); -} - -/** List the operations for the provider */ -export function operationsList( - context: Client, - options: OperationsListOptionalParams = { requestOptions: {} }, -): PagedAsyncIterableIterator { - return buildPagedAsyncIterator( - context, - () => _operationsListSend(context, options), - _operationsListDeserialize, - ["200"], - { itemName: "value", nextLinkName: "nextLink" }, - ); -} +export { list } from "./operations.js"; +export { OperationsListOptionalParams } from "./options.js"; diff --git a/sdk/computefleet/arm-computefleet/src/api/operations/operations.ts b/sdk/computefleet/arm-computefleet/src/api/operations/operations.ts new file mode 100644 index 000000000000..1782cf72d6f3 --- /dev/null +++ b/sdk/computefleet/arm-computefleet/src/api/operations/operations.ts @@ -0,0 +1,71 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { AzureFleetContext as Client } from "../index.js"; +import { + _OperationListResult, + _operationListResultDeserializer, + Operation, + errorResponseDeserializer, +} from "../../models/models.js"; +import { OperationsListOptionalParams } from "./options.js"; +import { + PagedAsyncIterableIterator, + buildPagedAsyncIterator, +} from "../../static-helpers/pagingHelpers.js"; +import { expandUrlTemplate } from "../../static-helpers/urlTemplate.js"; +import { + StreamableMethod, + PathUncheckedResponse, + createRestError, + operationOptionsToRequestParameters, +} from "@azure-rest/core-client"; + +export function _listSend( + context: Client, + options: OperationsListOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/providers/Microsoft.AzureFleet/operations{?api%2Dversion}", + { + "api%2Dversion": context.apiVersion, + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { + accept: "application/json", + ...options.requestOptions?.headers, + }, + }); +} + +export async function _listDeserialize( + result: PathUncheckedResponse, +): Promise<_OperationListResult> { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = errorResponseDeserializer(result.body); + throw error; + } + + return _operationListResultDeserializer(result.body); +} + +/** List the operations for the provider */ +export function list( + context: Client, + options: OperationsListOptionalParams = { requestOptions: {} }, +): PagedAsyncIterableIterator { + return buildPagedAsyncIterator( + context, + () => _listSend(context, options), + _listDeserialize, + ["200"], + { itemName: "value", nextLinkName: "nextLink" }, + ); +} diff --git a/sdk/computefleet/arm-computefleet/src/api/operations/options.ts b/sdk/computefleet/arm-computefleet/src/api/operations/options.ts new file mode 100644 index 000000000000..c461016ad1c5 --- /dev/null +++ b/sdk/computefleet/arm-computefleet/src/api/operations/options.ts @@ -0,0 +1,7 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { OperationOptions } from "@azure-rest/core-client"; + +/** Optional parameters. */ +export interface OperationsListOptionalParams extends OperationOptions {} diff --git a/sdk/computefleet/arm-computefleet/src/azureFleetClient.ts b/sdk/computefleet/arm-computefleet/src/azureFleetClient.ts index 0f32eb1c7d1c..dec641681e7f 100644 --- a/sdk/computefleet/arm-computefleet/src/azureFleetClient.ts +++ b/sdk/computefleet/arm-computefleet/src/azureFleetClient.ts @@ -1,13 +1,13 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { getOperationsOperations, OperationsOperations } from "./classic/operations/index.js"; -import { getFleetsOperations, FleetsOperations } from "./classic/fleets/index.js"; import { createAzureFleet, AzureFleetContext, AzureFleetClientOptionalParams, } from "./api/index.js"; +import { FleetsOperations, _getFleetsOperations } from "./classic/fleets/index.js"; +import { OperationsOperations, _getOperationsOperations } from "./classic/operations/index.js"; import { Pipeline } from "@azure/core-rest-pipeline"; import { TokenCredential } from "@azure/core-auth"; @@ -26,18 +26,18 @@ export class AzureFleetClient { const prefixFromOptions = options?.userAgentOptions?.userAgentPrefix; const userAgentPrefix = prefixFromOptions ? `${prefixFromOptions} azsdk-js-client` - : "azsdk-js-client"; - this._client = createAzureFleet(credential, { + : `azsdk-js-client`; + this._client = createAzureFleet(credential, subscriptionId, { ...options, userAgentOptions: { userAgentPrefix }, }); this.pipeline = this._client.pipeline; - this.operations = getOperationsOperations(this._client); - this.fleets = getFleetsOperations(this._client, subscriptionId); + this.fleets = _getFleetsOperations(this._client); + this.operations = _getOperationsOperations(this._client); } - /** The operation groups for Operations */ - public readonly operations: OperationsOperations; - /** The operation groups for Fleets */ + /** The operation groups for fleets */ public readonly fleets: FleetsOperations; + /** The operation groups for operations */ + public readonly operations: OperationsOperations; } diff --git a/sdk/computefleet/arm-computefleet/src/classic/fleets/index.ts b/sdk/computefleet/arm-computefleet/src/classic/fleets/index.ts index 5a53a58fe900..09487ac76730 100644 --- a/sdk/computefleet/arm-computefleet/src/classic/fleets/index.ts +++ b/sdk/computefleet/arm-computefleet/src/classic/fleets/index.ts @@ -2,43 +2,56 @@ // Licensed under the MIT License. import { AzureFleetContext } from "../../api/azureFleetContext.js"; +import { Fleet, FleetUpdate, VirtualMachineScaleSet } from "../../models/models.js"; import { - fleetsGet, - fleetsCreateOrUpdate, - fleetsUpdate, - fleetsDelete, - fleetsListByResourceGroup, - fleetsListBySubscription, - fleetsListVirtualMachineScaleSets, -} from "../../api/fleets/index.js"; -import { - FleetsGetOptionalParams, - FleetsCreateOrUpdateOptionalParams, - FleetsUpdateOptionalParams, - FleetsDeleteOptionalParams, - FleetsListByResourceGroupOptionalParams, - FleetsListBySubscriptionOptionalParams, FleetsListVirtualMachineScaleSetsOptionalParams, -} from "../../api/options.js"; -import { Fleet, FleetUpdate, VirtualMachineScaleSet } from "../../models/models.js"; + FleetsListBySubscriptionOptionalParams, + FleetsListByResourceGroupOptionalParams, + FleetsDeleteOptionalParams, + FleetsUpdateOptionalParams, + FleetsCreateOrUpdateOptionalParams, + FleetsGetOptionalParams, +} from "../../api/fleets/options.js"; +import { + listVirtualMachineScaleSets, + listBySubscription, + listByResourceGroup, + $delete, + update, + createOrUpdate, + get, +} from "../../api/fleets/operations.js"; import { PagedAsyncIterableIterator } from "../../static-helpers/pagingHelpers.js"; import { PollerLike, OperationState } from "@azure/core-lro"; /** Interface representing a Fleets operations. */ export interface FleetsOperations { - /** Get a Fleet */ - get: ( + /** List VirtualMachineScaleSet resources by Fleet */ + listVirtualMachineScaleSets: ( resourceGroupName: string, - fleetName: string, - options?: FleetsGetOptionalParams, - ) => Promise; - /** Create a Fleet */ - createOrUpdate: ( + name: string, + options?: FleetsListVirtualMachineScaleSetsOptionalParams, + ) => PagedAsyncIterableIterator; + /** List Fleet resources by subscription ID */ + listBySubscription: ( + options?: FleetsListBySubscriptionOptionalParams, + ) => PagedAsyncIterableIterator; + /** List Fleet resources by resource group */ + listByResourceGroup: ( + resourceGroupName: string, + options?: FleetsListByResourceGroupOptionalParams, + ) => PagedAsyncIterableIterator; + /** Delete a Fleet */ + /** + * @fixme delete is a reserved word that cannot be used as an operation name. + * Please add @clientName("clientName") or @clientName("", "javascript") + * to the operation to override the generated name. + */ + delete: ( resourceGroupName: string, fleetName: string, - resource: Fleet, - options?: FleetsCreateOrUpdateOptionalParams, - ) => PollerLike, Fleet>; + options?: FleetsDeleteOptionalParams, + ) => PollerLike, void>; /** Update a Fleet */ update: ( resourceGroupName: string, @@ -46,75 +59,55 @@ export interface FleetsOperations { properties: FleetUpdate, options?: FleetsUpdateOptionalParams, ) => PollerLike, Fleet>; - /** Delete a Fleet */ - delete: ( + /** Create a Fleet */ + createOrUpdate: ( resourceGroupName: string, fleetName: string, - options?: FleetsDeleteOptionalParams, - ) => PollerLike, void>; - /** List Fleet resources by resource group */ - listByResourceGroup: ( - resourceGroupName: string, - options?: FleetsListByResourceGroupOptionalParams, - ) => PagedAsyncIterableIterator; - /** List Fleet resources by subscription ID */ - listBySubscription: ( - options?: FleetsListBySubscriptionOptionalParams, - ) => PagedAsyncIterableIterator; - /** List VirtualMachineScaleSet resources by Fleet */ - listVirtualMachineScaleSets: ( + resource: Fleet, + options?: FleetsCreateOrUpdateOptionalParams, + ) => PollerLike, Fleet>; + /** Get a Fleet */ + get: ( resourceGroupName: string, - name: string, - options?: FleetsListVirtualMachineScaleSetsOptionalParams, - ) => PagedAsyncIterableIterator; + fleetName: string, + options?: FleetsGetOptionalParams, + ) => Promise; } -export function getFleets(context: AzureFleetContext, subscriptionId: string) { +function _getFleets(context: AzureFleetContext) { return { - get: (resourceGroupName: string, fleetName: string, options?: FleetsGetOptionalParams) => - fleetsGet(context, subscriptionId, resourceGroupName, fleetName, options), - createOrUpdate: ( + listVirtualMachineScaleSets: ( resourceGroupName: string, - fleetName: string, - resource: Fleet, - options?: FleetsCreateOrUpdateOptionalParams, - ) => - fleetsCreateOrUpdate( - context, - subscriptionId, - resourceGroupName, - fleetName, - resource, - options, - ), + name: string, + options?: FleetsListVirtualMachineScaleSetsOptionalParams, + ) => listVirtualMachineScaleSets(context, resourceGroupName, name, options), + listBySubscription: (options?: FleetsListBySubscriptionOptionalParams) => + listBySubscription(context, options), + listByResourceGroup: ( + resourceGroupName: string, + options?: FleetsListByResourceGroupOptionalParams, + ) => listByResourceGroup(context, resourceGroupName, options), + delete: (resourceGroupName: string, fleetName: string, options?: FleetsDeleteOptionalParams) => + $delete(context, resourceGroupName, fleetName, options), update: ( resourceGroupName: string, fleetName: string, properties: FleetUpdate, options?: FleetsUpdateOptionalParams, - ) => fleetsUpdate(context, subscriptionId, resourceGroupName, fleetName, properties, options), - delete: (resourceGroupName: string, fleetName: string, options?: FleetsDeleteOptionalParams) => - fleetsDelete(context, subscriptionId, resourceGroupName, fleetName, options), - listByResourceGroup: ( - resourceGroupName: string, - options?: FleetsListByResourceGroupOptionalParams, - ) => fleetsListByResourceGroup(context, subscriptionId, resourceGroupName, options), - listBySubscription: (options?: FleetsListBySubscriptionOptionalParams) => - fleetsListBySubscription(context, subscriptionId, options), - listVirtualMachineScaleSets: ( + ) => update(context, resourceGroupName, fleetName, properties, options), + createOrUpdate: ( resourceGroupName: string, - name: string, - options?: FleetsListVirtualMachineScaleSetsOptionalParams, - ) => - fleetsListVirtualMachineScaleSets(context, subscriptionId, resourceGroupName, name, options), + fleetName: string, + resource: Fleet, + options?: FleetsCreateOrUpdateOptionalParams, + ) => createOrUpdate(context, resourceGroupName, fleetName, resource, options), + get: (resourceGroupName: string, fleetName: string, options?: FleetsGetOptionalParams) => + get(context, resourceGroupName, fleetName, options), }; } -export function getFleetsOperations( - context: AzureFleetContext, - subscriptionId: string, -): FleetsOperations { +export function _getFleetsOperations(context: AzureFleetContext): FleetsOperations { return { - ...getFleets(context, subscriptionId), + ..._getFleets(context), }; } diff --git a/sdk/computefleet/arm-computefleet/src/classic/operations/index.ts b/sdk/computefleet/arm-computefleet/src/classic/operations/index.ts index e389622d750f..dffff1b2424e 100644 --- a/sdk/computefleet/arm-computefleet/src/classic/operations/index.ts +++ b/sdk/computefleet/arm-computefleet/src/classic/operations/index.ts @@ -2,9 +2,9 @@ // Licensed under the MIT License. import { AzureFleetContext } from "../../api/azureFleetContext.js"; -import { operationsList } from "../../api/operations/index.js"; -import { OperationsListOptionalParams } from "../../api/options.js"; import { Operation } from "../../models/models.js"; +import { OperationsListOptionalParams } from "../../api/operations/options.js"; +import { list } from "../../api/operations/operations.js"; import { PagedAsyncIterableIterator } from "../../static-helpers/pagingHelpers.js"; /** Interface representing a Operations operations. */ @@ -13,14 +13,14 @@ export interface OperationsOperations { list: (options?: OperationsListOptionalParams) => PagedAsyncIterableIterator; } -export function getOperations(context: AzureFleetContext) { +function _getOperations(context: AzureFleetContext) { return { - list: (options?: OperationsListOptionalParams) => operationsList(context, options), + list: (options?: OperationsListOptionalParams) => list(context, options), }; } -export function getOperationsOperations(context: AzureFleetContext): OperationsOperations { +export function _getOperationsOperations(context: AzureFleetContext): OperationsOperations { return { - ...getOperations(context), + ..._getOperations(context), }; } diff --git a/sdk/computefleet/arm-computefleet/src/helpers/serializerHelpers.ts b/sdk/computefleet/arm-computefleet/src/helpers/serializerHelpers.ts deleted file mode 100644 index 7518a16c2ee9..000000000000 --- a/sdk/computefleet/arm-computefleet/src/helpers/serializerHelpers.ts +++ /dev/null @@ -1,36 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -export function serializeRecord( - item: Record, -): Record; -export function serializeRecord( - item: Record, - serializer: (item: T) => R, -): Record; -export function serializeRecord( - item: Record, - serializer?: (item: T) => R, -): Record { - return Object.keys(item).reduce( - (acc, key) => { - if (isSupportedRecordType(item[key])) { - acc[key] = item[key] as any; - } else if (serializer) { - const value = item[key]; - if (value !== undefined) { - acc[key] = serializer(value); - } - } else { - console.warn(`Don't know how to serialize ${item[key]}`); - acc[key] = item[key] as any; - } - return acc; - }, - {} as Record, - ); -} - -function isSupportedRecordType(t: any) { - return ["number", "string", "boolean", "null"].includes(typeof t) || t instanceof Date; -} diff --git a/sdk/computefleet/arm-computefleet/src/index.ts b/sdk/computefleet/arm-computefleet/src/index.ts index 1082b521132e..657f2b9ba7a0 100644 --- a/sdk/computefleet/arm-computefleet/src/index.ts +++ b/sdk/computefleet/arm-computefleet/src/index.ts @@ -10,10 +10,19 @@ import { export { AzureFleetClient } from "./azureFleetClient.js"; export { restorePoller, RestorePollerOptions } from "./restorePollerHelpers.js"; export { + Operation, + OperationDisplay, + KnownOrigin, + Origin, + KnownActionType, + ActionType, + ErrorResponse, + ErrorDetail, + ErrorAdditionalInfo, Fleet, FleetProperties, - ProvisioningState, KnownProvisioningState, + ProvisioningState, SpotPriorityProfile, KnownEvictionPolicy, EvictionPolicy, @@ -172,23 +181,18 @@ export { ApiError, ApiErrorBase, InnerError, - Operation, - OperationDisplay, - KnownOrigin, - Origin, - KnownActionType, - ActionType, + KnownVersions, } from "./models/index.js"; +export { AzureFleetClientOptionalParams } from "./api/index.js"; export { - AzureFleetClientOptionalParams, - OperationsListOptionalParams, - FleetsGetOptionalParams, - FleetsCreateOrUpdateOptionalParams, - FleetsUpdateOptionalParams, - FleetsDeleteOptionalParams, - FleetsListByResourceGroupOptionalParams, - FleetsListBySubscriptionOptionalParams, FleetsListVirtualMachineScaleSetsOptionalParams, -} from "./api/index.js"; + FleetsListBySubscriptionOptionalParams, + FleetsListByResourceGroupOptionalParams, + FleetsDeleteOptionalParams, + FleetsUpdateOptionalParams, + FleetsCreateOrUpdateOptionalParams, + FleetsGetOptionalParams, +} from "./api/fleets/index.js"; +export { OperationsListOptionalParams } from "./api/operations/index.js"; export { FleetsOperations, OperationsOperations } from "./classic/index.js"; export { PageSettings, ContinuablePage, PagedAsyncIterableIterator }; diff --git a/sdk/computefleet/arm-computefleet/src/models/index.ts b/sdk/computefleet/arm-computefleet/src/models/index.ts index c8ccf3517a93..00a590d523b2 100644 --- a/sdk/computefleet/arm-computefleet/src/models/index.ts +++ b/sdk/computefleet/arm-computefleet/src/models/index.ts @@ -2,6 +2,15 @@ // Licensed under the MIT License. export { + Operation, + OperationDisplay, + KnownOrigin, + Origin, + KnownActionType, + ActionType, + ErrorResponse, + ErrorDetail, + ErrorAdditionalInfo, Fleet, FleetProperties, KnownProvisioningState, @@ -164,10 +173,5 @@ export { ApiError, ApiErrorBase, InnerError, - Operation, - OperationDisplay, - KnownOrigin, - Origin, - KnownActionType, - ActionType, + KnownVersions, } from "./models.js"; diff --git a/sdk/computefleet/arm-computefleet/src/models/models.ts b/sdk/computefleet/arm-computefleet/src/models/models.ts index bcd705ee2a4c..5485d06e1644 100644 --- a/sdk/computefleet/arm-computefleet/src/models/models.ts +++ b/sdk/computefleet/arm-computefleet/src/models/models.ts @@ -1,6 +1,180 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. +/** 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 { + /** The Operation items on this page */ + value: Operation[]; + /** The link to the next page of items */ + nextLink?: string; +} + +export function _operationListResultDeserializer(item: any): _OperationListResult { + return { + value: operationArrayDeserializer(item["value"]), + nextLink: item["nextLink"], + }; +} + +export function operationArrayDeserializer(result: Array): any[] { + return result.map((item) => { + return operationDeserializer(item); + }); +} + +/** Details of a REST API operation, returned from the Resource Provider Operations API */ +export interface Operation { + /** The name of the operation, as per Resource-Based Access Control (RBAC). Examples: "Microsoft.Compute/virtualMachines/write", "Microsoft.Compute/virtualMachines/capture/action" */ + readonly name?: string; + /** Whether the operation applies to data-plane. This is "true" for data-plane operations and "false" for Azure Resource Manager/control-plane operations. */ + readonly isDataAction?: boolean; + /** Localized display information for this particular operation. */ + display?: OperationDisplay; + /** The intended executor of the operation; as in Resource Based Access Control (RBAC) and audit logs UX. Default value is "user,system" */ + readonly origin?: Origin; + /** Extensible enum. Indicates the action type. "Internal" refers to actions that are for internal only APIs. */ + readonly actionType?: ActionType; +} + +export function operationDeserializer(item: any): Operation { + return { + name: item["name"], + isDataAction: item["isDataAction"], + display: !item["display"] ? item["display"] : operationDisplayDeserializer(item["display"]), + origin: item["origin"], + actionType: item["actionType"], + }; +} + +/** Localized display information for and operation. */ +export interface OperationDisplay { + /** The localized friendly form of the resource provider name, e.g. "Microsoft Monitoring Insights" or "Microsoft Compute". */ + readonly provider?: string; + /** The localized friendly name of the resource type related to this operation. E.g. "Virtual Machines" or "Job Schedule Collections". */ + readonly resource?: string; + /** The concise, localized friendly name for the operation; suitable for dropdowns. E.g. "Create or Update Virtual Machine", "Restart Virtual Machine". */ + readonly operation?: string; + /** The short, localized friendly description of the operation; suitable for tool tips and detailed views. */ + readonly description?: string; +} + +export function operationDisplayDeserializer(item: any): OperationDisplay { + return { + provider: item["provider"], + resource: item["resource"], + operation: item["operation"], + description: item["description"], + }; +} + +/** The intended executor of the operation; as in Resource Based Access Control (RBAC) and audit logs UX. Default value is "user,system" */ +export enum KnownOrigin { + /** Indicates the operation is initiated by a user. */ + User = "user", + /** Indicates the operation is initiated by a system. */ + System = "system", + /** Indicates the operation is initiated by a user or system. */ + UserSystem = "user,system", +} + +/** + * The intended executor of the operation; as in Resource Based Access Control (RBAC) and audit logs UX. Default value is "user,system" \ + * {@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**: Indicates the operation is initiated by a user. \ + * **system**: Indicates the operation is initiated by a system. \ + * **user,system**: Indicates the operation is initiated by a user or system. + */ +export type Origin = string; + +/** Extensible enum. Indicates the action type. "Internal" refers to actions that are for internal only APIs. */ +export enum KnownActionType { + /** Actions are for internal-only APIs. */ + Internal = "Internal", +} + +/** + * Extensible enum. Indicates the action type. "Internal" refers to actions that are for internal only APIs. \ + * {@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**: Actions are for internal-only APIs. + */ +export type ActionType = string; + +/** Common error response for all Azure Resource Manager APIs to return error details for failed operations. */ +export interface ErrorResponse { + /** The error object. */ + error?: ErrorDetail; +} + +export function errorResponseDeserializer(item: any): ErrorResponse { + return { + error: !item["error"] ? item["error"] : errorDetailDeserializer(item["error"]), + }; +} + +/** The error detail. */ +export interface ErrorDetail { + /** The error code. */ + readonly code?: string; + /** The error message. */ + readonly message?: string; + /** The error target. */ + readonly target?: string; + /** The error details. */ + readonly details?: ErrorDetail[]; + /** The error additional info. */ + readonly additionalInfo?: ErrorAdditionalInfo[]; +} + +export function errorDetailDeserializer(item: any): ErrorDetail { + return { + code: item["code"], + message: item["message"], + target: item["target"], + details: !item["details"] ? item["details"] : errorDetailArrayDeserializer(item["details"]), + additionalInfo: !item["additionalInfo"] + ? item["additionalInfo"] + : errorAdditionalInfoArrayDeserializer(item["additionalInfo"]), + }; +} + +export function errorDetailArrayDeserializer(result: Array): any[] { + return result.map((item) => { + return errorDetailDeserializer(item); + }); +} + +export function errorAdditionalInfoArrayDeserializer(result: Array): any[] { + return result.map((item) => { + return errorAdditionalInfoDeserializer(item); + }); +} + +/** The resource management error additional info. */ +export interface ErrorAdditionalInfo { + /** The additional info type. */ + readonly type?: string; + /** The additional info. */ + readonly info?: Record; +} + +export function errorAdditionalInfoDeserializer(item: any): ErrorAdditionalInfo { + return { + type: item["type"], + info: !item["info"] ? item["info"] : _errorAdditionalInfoInfoDeserializer(item["info"]), + }; +} + +/** model interface _ErrorAdditionalInfoInfo */ +export interface _ErrorAdditionalInfoInfo {} + +export function _errorAdditionalInfoInfoDeserializer(item: any): _ErrorAdditionalInfoInfo { + return item; +} + /** An Compute Fleet resource */ export interface Fleet extends TrackedResource { /** The resource-specific properties for this resource. */ @@ -90,7 +264,7 @@ export function fleetPropertiesSerializer(item: FleetProperties): any { vmSizesProfile: vmSizeProfileArraySerializer(item["vmSizesProfile"]), vmAttributes: !item["vmAttributes"] ? item["vmAttributes"] - : vMAttributesSerializer(item["vmAttributes"]), + : vmAttributesSerializer(item["vmAttributes"]), additionalLocationsProfile: !item["additionalLocationsProfile"] ? item["additionalLocationsProfile"] : additionalLocationsProfileSerializer(item["additionalLocationsProfile"]), @@ -100,9 +274,7 @@ export function fleetPropertiesSerializer(item: FleetProperties): any { export function fleetPropertiesDeserializer(item: any): FleetProperties { return { - provisioningState: !item["provisioningState"] - ? item["provisioningState"] - : provisioningStateDeserializer(item["provisioningState"]), + provisioningState: item["provisioningState"], spotPriorityProfile: !item["spotPriorityProfile"] ? item["spotPriorityProfile"] : spotPriorityProfileDeserializer(item["spotPriorityProfile"]), @@ -112,7 +284,7 @@ export function fleetPropertiesDeserializer(item: any): FleetProperties { vmSizesProfile: vmSizeProfileArrayDeserializer(item["vmSizesProfile"]), vmAttributes: !item["vmAttributes"] ? item["vmAttributes"] - : vMAttributesDeserializer(item["vmAttributes"]), + : vmAttributesDeserializer(item["vmAttributes"]), additionalLocationsProfile: !item["additionalLocationsProfile"] ? item["additionalLocationsProfile"] : additionalLocationsProfileDeserializer(item["additionalLocationsProfile"]), @@ -122,48 +294,39 @@ export function fleetPropertiesDeserializer(item: any): FleetProperties { }; } -/** Known values of {@link ProvisioningState} that the service accepts. */ +/** The status of the current operation. */ export enum KnownProvisioningState { - /** Succeeded */ + /** Resource has been created. */ Succeeded = "Succeeded", - /** Failed */ + /** Resource creation failed. */ Failed = "Failed", - /** Canceled */ + /** Resource creation was canceled. */ Canceled = "Canceled", - /** Creating */ + /** Initial creation in progress. */ Creating = "Creating", - /** Updating */ + /** Update in progress. */ Updating = "Updating", - /** Deleting */ + /** Deletion in progress. */ Deleting = "Deleting", - /** Migrating */ + /** Resource is being migrated from one subscription or resource group to another. */ Migrating = "Migrating", } /** - * The provisioning state of a resource type. \ - * {@link KnownProvisioningState} can be used interchangeably with ResourceProvisioningState, + * The status of the current operation. \ + * {@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** \ - * **Creating** \ - * **Updating** \ - * **Deleting** \ - * **Migrating** + * **Succeeded**: Resource has been created. \ + * **Failed**: Resource creation failed. \ + * **Canceled**: Resource creation was canceled. \ + * **Creating**: Initial creation in progress. \ + * **Updating**: Update in progress. \ + * **Deleting**: Deletion in progress. \ + * **Migrating**: Resource is being migrated from one subscription or resource group to another. */ - export type ProvisioningState = string; -export function provisioningStateSerializer(item: ProvisioningState): any { - return item; -} - -export function provisioningStateDeserializer(item: any): ProvisioningState { - return item; -} - /** Configuration Options for Spot instances in Compute Fleet. */ export interface SpotPriorityProfile { /** Total capacity to achieve. It is currently in terms of number of VMs. */ @@ -290,6 +453,18 @@ export enum KnownRegularPriorityAllocationStrategy { */ export type RegularPriorityAllocationStrategy = string; +export function vmSizeProfileArraySerializer(result: Array): any[] { + return result.map((item) => { + return vmSizeProfileSerializer(item); + }); +} + +export function vmSizeProfileArrayDeserializer(result: Array): any[] { + return result.map((item) => { + return vmSizeProfileDeserializer(item); + }); +} + /** Specifications about a VM Size. This will also contain the corresponding rank and weight in future. */ export interface VmSizeProfile { /** The Sku name (e.g. 'Standard_DS1_v2') */ @@ -312,18 +487,6 @@ export function vmSizeProfileDeserializer(item: any): VmSizeProfile { }; } -export function vmSizeProfileArraySerializer(result: Array): any[] { - return result.map((item) => { - return vmSizeProfileSerializer(item); - }); -} - -export function vmSizeProfileArrayDeserializer(result: Array): any[] { - return result.map((item) => { - return vmSizeProfileDeserializer(item); - }); -} - /** VMAttributes that will be used to filter VMSizes which will be used to build Fleet. */ export interface VMAttributes { /** The range of vCpuCount specified from Min to Max. Must be specified if VMAttributes are specified, either Min or Max is required if specified. */ @@ -396,17 +559,17 @@ export interface VMAttributes { excludedVMSizes?: string[]; } -export function vMAttributesSerializer(item: VMAttributes): any { +export function vmAttributesSerializer(item: VMAttributes): any { return { - vCpuCount: vMAttributeMinMaxIntegerSerializer(item["vCpuCount"]), - memoryInGiB: vMAttributeMinMaxDoubleSerializer(item["memoryInGiB"]), + vCpuCount: vmAttributeMinMaxIntegerSerializer(item["vCpuCount"]), + memoryInGiB: vmAttributeMinMaxDoubleSerializer(item["memoryInGiB"]), memoryInGiBPerVCpu: !item["memoryInGiBPerVCpu"] ? item["memoryInGiBPerVCpu"] - : vMAttributeMinMaxDoubleSerializer(item["memoryInGiBPerVCpu"]), + : vmAttributeMinMaxDoubleSerializer(item["memoryInGiBPerVCpu"]), localStorageSupport: item["localStorageSupport"], localStorageInGiB: !item["localStorageInGiB"] ? item["localStorageInGiB"] - : vMAttributeMinMaxDoubleSerializer(item["localStorageInGiB"]), + : vmAttributeMinMaxDoubleSerializer(item["localStorageInGiB"]), localStorageDiskTypes: !item["localStorageDiskTypes"] ? item["localStorageDiskTypes"] : item["localStorageDiskTypes"].map((p: any) => { @@ -414,17 +577,17 @@ export function vMAttributesSerializer(item: VMAttributes): any { }), dataDiskCount: !item["dataDiskCount"] ? item["dataDiskCount"] - : vMAttributeMinMaxIntegerSerializer(item["dataDiskCount"]), + : vmAttributeMinMaxIntegerSerializer(item["dataDiskCount"]), networkInterfaceCount: !item["networkInterfaceCount"] ? item["networkInterfaceCount"] - : vMAttributeMinMaxIntegerSerializer(item["networkInterfaceCount"]), + : vmAttributeMinMaxIntegerSerializer(item["networkInterfaceCount"]), networkBandwidthInMbps: !item["networkBandwidthInMbps"] ? item["networkBandwidthInMbps"] - : vMAttributeMinMaxDoubleSerializer(item["networkBandwidthInMbps"]), + : vmAttributeMinMaxDoubleSerializer(item["networkBandwidthInMbps"]), rdmaSupport: item["rdmaSupport"], rdmaNetworkInterfaceCount: !item["rdmaNetworkInterfaceCount"] ? item["rdmaNetworkInterfaceCount"] - : vMAttributeMinMaxIntegerSerializer(item["rdmaNetworkInterfaceCount"]), + : vmAttributeMinMaxIntegerSerializer(item["rdmaNetworkInterfaceCount"]), acceleratorSupport: item["acceleratorSupport"], acceleratorManufacturers: !item["acceleratorManufacturers"] ? item["acceleratorManufacturers"] @@ -438,7 +601,7 @@ export function vMAttributesSerializer(item: VMAttributes): any { }), acceleratorCount: !item["acceleratorCount"] ? item["acceleratorCount"] - : vMAttributeMinMaxIntegerSerializer(item["acceleratorCount"]), + : vmAttributeMinMaxIntegerSerializer(item["acceleratorCount"]), vmCategories: !item["vmCategories"] ? item["vmCategories"] : item["vmCategories"].map((p: any) => { @@ -463,17 +626,17 @@ export function vMAttributesSerializer(item: VMAttributes): any { }; } -export function vMAttributesDeserializer(item: any): VMAttributes { +export function vmAttributesDeserializer(item: any): VMAttributes { return { - vCpuCount: vMAttributeMinMaxIntegerDeserializer(item["vCpuCount"]), - memoryInGiB: vMAttributeMinMaxDoubleDeserializer(item["memoryInGiB"]), + vCpuCount: vmAttributeMinMaxIntegerDeserializer(item["vCpuCount"]), + memoryInGiB: vmAttributeMinMaxDoubleDeserializer(item["memoryInGiB"]), memoryInGiBPerVCpu: !item["memoryInGiBPerVCpu"] ? item["memoryInGiBPerVCpu"] - : vMAttributeMinMaxDoubleDeserializer(item["memoryInGiBPerVCpu"]), + : vmAttributeMinMaxDoubleDeserializer(item["memoryInGiBPerVCpu"]), localStorageSupport: item["localStorageSupport"], localStorageInGiB: !item["localStorageInGiB"] ? item["localStorageInGiB"] - : vMAttributeMinMaxDoubleDeserializer(item["localStorageInGiB"]), + : vmAttributeMinMaxDoubleDeserializer(item["localStorageInGiB"]), localStorageDiskTypes: !item["localStorageDiskTypes"] ? item["localStorageDiskTypes"] : item["localStorageDiskTypes"].map((p: any) => { @@ -481,17 +644,17 @@ export function vMAttributesDeserializer(item: any): VMAttributes { }), dataDiskCount: !item["dataDiskCount"] ? item["dataDiskCount"] - : vMAttributeMinMaxIntegerDeserializer(item["dataDiskCount"]), + : vmAttributeMinMaxIntegerDeserializer(item["dataDiskCount"]), networkInterfaceCount: !item["networkInterfaceCount"] ? item["networkInterfaceCount"] - : vMAttributeMinMaxIntegerDeserializer(item["networkInterfaceCount"]), + : vmAttributeMinMaxIntegerDeserializer(item["networkInterfaceCount"]), networkBandwidthInMbps: !item["networkBandwidthInMbps"] ? item["networkBandwidthInMbps"] - : vMAttributeMinMaxDoubleDeserializer(item["networkBandwidthInMbps"]), + : vmAttributeMinMaxDoubleDeserializer(item["networkBandwidthInMbps"]), rdmaSupport: item["rdmaSupport"], rdmaNetworkInterfaceCount: !item["rdmaNetworkInterfaceCount"] ? item["rdmaNetworkInterfaceCount"] - : vMAttributeMinMaxIntegerDeserializer(item["rdmaNetworkInterfaceCount"]), + : vmAttributeMinMaxIntegerDeserializer(item["rdmaNetworkInterfaceCount"]), acceleratorSupport: item["acceleratorSupport"], acceleratorManufacturers: !item["acceleratorManufacturers"] ? item["acceleratorManufacturers"] @@ -505,7 +668,7 @@ export function vMAttributesDeserializer(item: any): VMAttributes { }), acceleratorCount: !item["acceleratorCount"] ? item["acceleratorCount"] - : vMAttributeMinMaxIntegerDeserializer(item["acceleratorCount"]), + : vmAttributeMinMaxIntegerDeserializer(item["acceleratorCount"]), vmCategories: !item["vmCategories"] ? item["vmCategories"] : item["vmCategories"].map((p: any) => { @@ -538,11 +701,11 @@ export interface VMAttributeMinMaxInteger { max?: number; } -export function vMAttributeMinMaxIntegerSerializer(item: VMAttributeMinMaxInteger): any { +export function vmAttributeMinMaxIntegerSerializer(item: VMAttributeMinMaxInteger): any { return { min: item["min"], max: item["max"] }; } -export function vMAttributeMinMaxIntegerDeserializer(item: any): VMAttributeMinMaxInteger { +export function vmAttributeMinMaxIntegerDeserializer(item: any): VMAttributeMinMaxInteger { return { min: item["min"], max: item["max"], @@ -557,11 +720,11 @@ export interface VMAttributeMinMaxDouble { max?: number; } -export function vMAttributeMinMaxDoubleSerializer(item: VMAttributeMinMaxDouble): any { +export function vmAttributeMinMaxDoubleSerializer(item: VMAttributeMinMaxDouble): any { return { min: item["min"], max: item["max"] }; } -export function vMAttributeMinMaxDoubleDeserializer(item: any): VMAttributeMinMaxDouble { +export function vmAttributeMinMaxDoubleDeserializer(item: any): VMAttributeMinMaxDouble { return { min: item["min"], max: item["max"], @@ -633,7 +796,7 @@ export enum KnownAcceleratorType { /** GPU Accelerator */ GPU = "GPU", /** FPGA Accelerator */ - FPGA = "FPGA", + Fpga = "FPGA", } /** @@ -761,6 +924,18 @@ export function additionalLocationsProfileDeserializer(item: any): AdditionalLoc }; } +export function locationProfileArraySerializer(result: Array): any[] { + return result.map((item) => { + return locationProfileSerializer(item); + }); +} + +export function locationProfileArrayDeserializer(result: Array): any[] { + return result.map((item) => { + return locationProfileDeserializer(item); + }); +} + /** Represents the profile for a single additional location in the Fleet. The location and the virtualMachineProfileOverride (optional). */ export interface LocationProfile { /** The ARM location name of the additional region. If LocationProfile is specified, then location is required. */ @@ -823,9 +998,9 @@ export interface BaseVirtualMachineProfile { * Server operating system are:

RHEL_BYOS (for RHEL)

SLES_BYOS * (for SUSE)

For more information, see [Azure Hybrid Use Benefit for * Windows - * Server](https://docs.microsoft.com/azure/virtual-machines/windows/hybrid-use-benefit-licensing) + * Server](https://learn.microsoft.com/azure/virtual-machines/windows/hybrid-use-benefit-licensing) *

[Azure Hybrid Use Benefit for Linux - * Server](https://docs.microsoft.com/azure/virtual-machines/linux/azure-hybrid-benefit-linux) + * Server](https://learn.microsoft.com/azure/virtual-machines/linux/azure-hybrid-benefit-linux) *

Minimum api-version: 2015-06-15 */ licenseType?: string; @@ -985,10 +1160,10 @@ export interface VirtualMachineScaleSetOSProfile { * "P@ssword123", "Pa$$word", "pass@word1", "Password!", "Password1", * "Password22", "iloveyou!"

For resetting the password, see [How to * reset the Remote Desktop service or its login password in a Windows - * VM](https://docs.microsoft.com/troubleshoot/azure/virtual-machines/reset-rdp) + * VM](https://learn.microsoft.com/troubleshoot/azure/virtual-machines/reset-rdp) *

For resetting root password, see [Manage users, SSH, and check or * repair disks on Azure Linux VMs using the VMAccess - * Extension](https://docs.microsoft.com/troubleshoot/azure/virtual-machines/troubleshoot-ssh-connection) + * Extension](https://learn.microsoft.com/troubleshoot/azure/virtual-machines/troubleshoot-ssh-connection) */ adminPassword?: string; /** @@ -996,7 +1171,7 @@ export interface VirtualMachineScaleSetOSProfile { * is decoded to a binary array that is saved as a file on the Virtual Machine. * The maximum length of the binary array is 65535 bytes. For using cloud-init for * your VM, see [Using cloud-init to customize a Linux VM during - * creation](https://docs.microsoft.com/azure/virtual-machines/linux/using-cloud-init) + * creation](https://learn.microsoft.com/azure/virtual-machines/linux/using-cloud-init) */ customData?: string; /** Specifies Windows operating system settings on the virtual machine. */ @@ -1004,16 +1179,16 @@ export interface VirtualMachineScaleSetOSProfile { /** * Specifies the Linux operating system settings on the virtual machine. For a * list of supported Linux distributions, see [Linux on Azure-Endorsed - * Distributions](https://docs.microsoft.com/azure/virtual-machines/linux/endorsed-distros). + * Distributions](https://learn.microsoft.com/azure/virtual-machines/linux/endorsed-distros). */ linuxConfiguration?: LinuxConfiguration; /** * Specifies set of certificates that should be installed onto the virtual * machines in the scale set. To install certificates on a virtual machine it is * recommended to use the [Azure Key Vault virtual machine extension for - * Linux](https://docs.microsoft.com/azure/virtual-machines/extensions/key-vault-linux) + * Linux](https://learn.microsoft.com/azure/virtual-machines/extensions/key-vault-linux) * or the [Azure Key Vault virtual machine extension for - * Windows](https://docs.microsoft.com/azure/virtual-machines/extensions/key-vault-windows). + * Windows](https://learn.microsoft.com/azure/virtual-machines/extensions/key-vault-windows). */ secrets?: VaultSecretGroup[]; /** @@ -1086,9 +1261,9 @@ export interface WindowsConfiguration { /** * Specifies the time zone of the virtual machine. e.g. "Pacific Standard Time". * Possible values can be - * [TimeZoneInfo.Id](https://docs.microsoft.com/dotnet/api/system.timezoneinfo.id?#System_TimeZoneInfo_Id) + * [TimeZoneInfo.Id](https://learn.microsoft.com/dotnet/api/system.timezoneinfo.id?#System_TimeZoneInfo_Id) * value from time zones returned by - * [TimeZoneInfo.GetSystemTimeZones](https://docs.microsoft.com/dotnet/api/system.timezoneinfo.getsystemtimezones). + * [TimeZoneInfo.GetSystemTimeZones](https://learn.microsoft.com/dotnet/api/system.timezoneinfo.getsystemtimezones). */ timeZone?: string; /** @@ -1142,6 +1317,22 @@ export function windowsConfigurationDeserializer(item: any): WindowsConfiguratio }; } +export function additionalUnattendContentArraySerializer( + result: Array, +): any[] { + return result.map((item) => { + return additionalUnattendContentSerializer(item); + }); +} + +export function additionalUnattendContentArrayDeserializer( + result: Array, +): any[] { + return result.map((item) => { + return additionalUnattendContentDeserializer(item); + }); +} + /** * Specifies additional XML formatted information that can be included in the * Unattend.xml file, which is used by Windows Setup. Contents are defined by @@ -1208,22 +1399,6 @@ export enum KnownSettingNames { */ export type SettingNames = string; -export function additionalUnattendContentArraySerializer( - result: Array, -): any[] { - return result.map((item) => { - return additionalUnattendContentSerializer(item); - }); -} - -export function additionalUnattendContentArrayDeserializer( - result: Array, -): any[] { - return result.map((item) => { - return additionalUnattendContentDeserializer(item); - }); -} - /** Specifies settings related to VM Guest Patching on Windows. */ export interface PatchSettings { /** @@ -1426,6 +1601,18 @@ export function winRMConfigurationDeserializer(item: any): WinRMConfiguration { }; } +export function winRMListenerArraySerializer(result: Array): any[] { + return result.map((item) => { + return winRMListenerSerializer(item); + }); +} + +export function winRMListenerArrayDeserializer(result: Array): any[] { + return result.map((item) => { + return winRMListenerDeserializer(item); + }); +} + /** Describes Protocol and thumbprint of Windows Remote Management listener */ export interface WinRMListener { /** @@ -1437,16 +1624,16 @@ export interface WinRMListener { * This is the URL of a certificate that has been uploaded to Key Vault as a * secret. For adding a secret to the Key Vault, see [Add a key or secret to the * key - * vault](https://docs.microsoft.com/azure/key-vault/key-vault-get-started/#add). + * vault](https://learn.microsoft.com/azure/key-vault/key-vault-get-started/#add). * In this case, your certificate needs to be the Base64 encoding of the following * JSON Object which is encoded in UTF-8:

{
* "data":"",
"dataType":"pfx",
* "password":""
}
To install certificates on a virtual * machine it is recommended to use the [Azure Key Vault virtual machine extension * for - * Linux](https://docs.microsoft.com/azure/virtual-machines/extensions/key-vault-linux) + * Linux](https://learn.microsoft.com/azure/virtual-machines/extensions/key-vault-linux) * or the [Azure Key Vault virtual machine extension for - * Windows](https://docs.microsoft.com/azure/virtual-machines/extensions/key-vault-windows). + * Windows](https://learn.microsoft.com/azure/virtual-machines/extensions/key-vault-windows). */ certificateUrl?: string; } @@ -1484,22 +1671,10 @@ export enum KnownProtocolTypes { */ export type ProtocolTypes = string; -export function winRMListenerArraySerializer(result: Array): any[] { - return result.map((item) => { - return winRMListenerSerializer(item); - }); -} - -export function winRMListenerArrayDeserializer(result: Array): any[] { - return result.map((item) => { - return winRMListenerDeserializer(item); - }); -} - /** * Specifies the Linux operating system settings on the virtual machine. For a * list of supported Linux distributions, see [Linux on Azure-Endorsed - * Distributions](https://docs.microsoft.com/azure/virtual-machines/linux/endorsed-distros). + * Distributions](https://learn.microsoft.com/azure/virtual-machines/linux/endorsed-distros). */ export interface LinuxConfiguration { /** Specifies whether password authentication should be disabled. */ @@ -1568,6 +1743,18 @@ export function sshConfigurationDeserializer(item: any): SshConfiguration { }; } +export function sshPublicKeyArraySerializer(result: Array): any[] { + return result.map((item) => { + return sshPublicKeySerializer(item); + }); +} + +export function sshPublicKeyArrayDeserializer(result: Array): any[] { + return result.map((item) => { + return sshPublicKeyDeserializer(item); + }); +} + /** * Contains information about SSH certificate public key and the path on the Linux * VM where the public key is placed. @@ -1583,7 +1770,7 @@ export interface SshPublicKey { * SSH public key certificate used to authenticate with the VM through ssh. The * key needs to be at least 2048-bit and in ssh-rsa format. For creating ssh keys, * see [Create SSH keys on Linux and Mac for Linux VMs in - * Azure]https://docs.microsoft.com/azure/virtual-machines/linux/create-ssh-keys-detailed). + * Azure]https://learn.microsoft.com/azure/virtual-machines/linux/create-ssh-keys-detailed). */ keyData?: string; } @@ -1599,18 +1786,6 @@ export function sshPublicKeyDeserializer(item: any): SshPublicKey { }; } -export function sshPublicKeyArraySerializer(result: Array): any[] { - return result.map((item) => { - return sshPublicKeySerializer(item); - }); -} - -export function sshPublicKeyArrayDeserializer(result: Array): any[] { - return result.map((item) => { - return sshPublicKeyDeserializer(item); - }); -} - /** Specifies settings related to VM Guest Patching on Linux. */ export interface LinuxPatchSettings { /** @@ -1771,6 +1946,18 @@ export enum KnownLinuxVMGuestPatchAutomaticByPlatformRebootSetting { */ export type LinuxVMGuestPatchAutomaticByPlatformRebootSetting = string; +export function vaultSecretGroupArraySerializer(result: Array): any[] { + return result.map((item) => { + return vaultSecretGroupSerializer(item); + }); +} + +export function vaultSecretGroupArrayDeserializer(result: Array): any[] { + return result.map((item) => { + return vaultSecretGroupDeserializer(item); + }); +} + /** Describes a set of certificates which are all in the same Key Vault. */ export interface VaultSecretGroup { /** @@ -1820,6 +2007,18 @@ export function subResourceDeserializer(item: any): SubResource { }; } +export function vaultCertificateArraySerializer(result: Array): any[] { + return result.map((item) => { + return vaultCertificateSerializer(item); + }); +} + +export function vaultCertificateArrayDeserializer(result: Array): any[] { + return result.map((item) => { + return vaultCertificateDeserializer(item); + }); +} + /** * Describes a single certificate reference in a Key Vault, and where the * certificate should reside on the VM. @@ -1829,16 +2028,16 @@ export interface VaultCertificate { * This is the URL of a certificate that has been uploaded to Key Vault as a * secret. For adding a secret to the Key Vault, see [Add a key or secret to the * key - * vault](https://docs.microsoft.com/azure/key-vault/key-vault-get-started/#add). + * vault](https://learn.microsoft.com/azure/key-vault/key-vault-get-started/#add). * In this case, your certificate needs to be It is the Base64 encoding of the * following JSON Object which is encoded in UTF-8:

{
* "data":"",
"dataType":"pfx",
* "password":""
}
To install certificates on a virtual * machine it is recommended to use the [Azure Key Vault virtual machine extension * for - * Linux](https://docs.microsoft.com/azure/virtual-machines/extensions/key-vault-linux) + * Linux](https://learn.microsoft.com/azure/virtual-machines/extensions/key-vault-linux) * or the [Azure Key Vault virtual machine extension for - * Windows](https://docs.microsoft.com/azure/virtual-machines/extensions/key-vault-windows). + * Windows](https://learn.microsoft.com/azure/virtual-machines/extensions/key-vault-windows). */ certificateUrl?: string; /** @@ -1867,30 +2066,6 @@ export function vaultCertificateDeserializer(item: any): VaultCertificate { }; } -export function vaultCertificateArraySerializer(result: Array): any[] { - return result.map((item) => { - return vaultCertificateSerializer(item); - }); -} - -export function vaultCertificateArrayDeserializer(result: Array): any[] { - return result.map((item) => { - return vaultCertificateDeserializer(item); - }); -} - -export function vaultSecretGroupArraySerializer(result: Array): any[] { - return result.map((item) => { - return vaultSecretGroupSerializer(item); - }); -} - -export function vaultSecretGroupArrayDeserializer(result: Array): any[] { - return result.map((item) => { - return vaultSecretGroupDeserializer(item); - }); -} - /** Describes a virtual machine scale set storage profile. */ export interface VirtualMachineScaleSetStorageProfile { /** @@ -1904,14 +2079,14 @@ export interface VirtualMachineScaleSetStorageProfile { * Specifies information about the operating system disk used by the virtual * machines in the scale set. For more information about disks, see [About disks * and VHDs for Azure virtual - * machines](https://docs.microsoft.com/azure/virtual-machines/managed-disks-overview). + * machines](https://learn.microsoft.com/azure/virtual-machines/managed-disks-overview). */ osDisk?: VirtualMachineScaleSetOSDisk; /** * Specifies the parameters that are used to add data disks to the virtual * machines in the scale set. For more information about disks, see [About disks * and VHDs for Azure virtual - * machines](https://docs.microsoft.com/azure/virtual-machines/managed-disks-overview). + * machines](https://learn.microsoft.com/azure/virtual-machines/managed-disks-overview). */ dataDisks?: VirtualMachineScaleSetDataDisk[]; /** Specifies the disk controller type configured for the virtual machines in the scale set. Minimum api-version: 2022-08-01 */ @@ -2204,8 +2379,8 @@ export interface DiffDiskSettings { * values are: **CacheDisk,** **ResourceDisk.** The defaulting behavior is: * **CacheDisk** if one is configured for the VM size otherwise **ResourceDisk** * is used. Refer to the VM size documentation for Windows VM at - * https://docs.microsoft.com/azure/virtual-machines/windows/sizes and Linux VM at - * https://docs.microsoft.com/azure/virtual-machines/linux/sizes to check which VM + * https://learn.microsoft.com/azure/virtual-machines/windows/sizes and Linux VM at + * https://learn.microsoft.com/azure/virtual-machines/linux/sizes to check which VM * sizes exposes a cache disk. */ placement?: DiffDiskPlacement; @@ -2243,9 +2418,9 @@ export type DiffDiskOptions = string; * resource disk space for Ephemeral OS disk provisioning. For more information on * Ephemeral OS disk size requirements, please refer Ephemeral OS disk size * requirements for Windows VM at - * https://docs.microsoft.com/azure/virtual-machines/windows/ephemeral-os-disks#size-requirements + * https://learn.microsoft.com/azure/virtual-machines/windows/ephemeral-os-disks#size-requirements * and Linux VM at - * https://docs.microsoft.com/azure/virtual-machines/linux/ephemeral-os-disks#size-requirements + * https://learn.microsoft.com/azure/virtual-machines/linux/ephemeral-os-disks#size-requirements * Minimum api-version for NvmeDisk: 2024-03-01. */ export enum KnownDiffDiskPlacement { @@ -2263,9 +2438,9 @@ export enum KnownDiffDiskPlacement { * resource disk space for Ephemeral OS disk provisioning. For more information on * Ephemeral OS disk size requirements, please refer Ephemeral OS disk size * requirements for Windows VM at - * https://docs.microsoft.com/azure/virtual-machines/windows/ephemeral-os-disks#size-requirements + * https://learn.microsoft.com/azure/virtual-machines/windows/ephemeral-os-disks#size-requirements * and Linux VM at - * https://docs.microsoft.com/azure/virtual-machines/linux/ephemeral-os-disks#size-requirements + * https://learn.microsoft.com/azure/virtual-machines/linux/ephemeral-os-disks#size-requirements * Minimum api-version for NvmeDisk: 2024-03-01. \ * {@link KnownDiffDiskPlacement} can be used interchangeably with DiffDiskPlacement, * this enum contains the known values that the service supports. @@ -2342,7 +2517,7 @@ export function virtualMachineScaleSetManagedDiskParametersSerializer( : diskEncryptionSetParametersSerializer(item["diskEncryptionSet"]), securityProfile: !item["securityProfile"] ? item["securityProfile"] - : vMDiskSecurityProfileSerializer(item["securityProfile"]), + : vmDiskSecurityProfileSerializer(item["securityProfile"]), }; } @@ -2356,7 +2531,7 @@ export function virtualMachineScaleSetManagedDiskParametersDeserializer( : diskEncryptionSetParametersDeserializer(item["diskEncryptionSet"]), securityProfile: !item["securityProfile"] ? item["securityProfile"] - : vMDiskSecurityProfileDeserializer(item["securityProfile"]), + : vmDiskSecurityProfileDeserializer(item["securityProfile"]), }; } @@ -2369,9 +2544,9 @@ export function virtualMachineScaleSetManagedDiskParametersDeserializer( * zone redundant storage. StandardSSD_ZRS uses Standard SSD zone redundant * storage. For more information regarding disks supported for Windows Virtual * Machines, refer to - * https://docs.microsoft.com/azure/virtual-machines/windows/disks-types and, for + * https://learn.microsoft.com/azure/virtual-machines/windows/disks-types and, for * Linux Virtual Machines, refer to - * https://docs.microsoft.com/azure/virtual-machines/linux/disks-types + * https://learn.microsoft.com/azure/virtual-machines/linux/disks-types */ export enum KnownStorageAccountTypes { /** Standard_LRS option. */ @@ -2399,9 +2574,9 @@ export enum KnownStorageAccountTypes { * zone redundant storage. StandardSSD_ZRS uses Standard SSD zone redundant * storage. For more information regarding disks supported for Windows Virtual * Machines, refer to - * https://docs.microsoft.com/azure/virtual-machines/windows/disks-types and, for + * https://learn.microsoft.com/azure/virtual-machines/windows/disks-types and, for * Linux Virtual Machines, refer to - * https://docs.microsoft.com/azure/virtual-machines/linux/disks-types \ + * https://learn.microsoft.com/azure/virtual-machines/linux/disks-types \ * {@link KnownStorageAccountTypes} can be used interchangeably with StorageAccountTypes, * this enum contains the known values that the service supports. * ### Known values supported by the service @@ -2457,7 +2632,7 @@ export interface VMDiskSecurityProfile { diskEncryptionSet?: DiskEncryptionSetParameters; } -export function vMDiskSecurityProfileSerializer(item: VMDiskSecurityProfile): any { +export function vmDiskSecurityProfileSerializer(item: VMDiskSecurityProfile): any { return { securityEncryptionType: item["securityEncryptionType"], diskEncryptionSet: !item["diskEncryptionSet"] @@ -2466,7 +2641,7 @@ export function vMDiskSecurityProfileSerializer(item: VMDiskSecurityProfile): an }; } -export function vMDiskSecurityProfileDeserializer(item: any): VMDiskSecurityProfile { +export function vmDiskSecurityProfileDeserializer(item: any): VMDiskSecurityProfile { return { securityEncryptionType: item["securityEncryptionType"], diskEncryptionSet: !item["diskEncryptionSet"] @@ -2540,6 +2715,22 @@ export enum KnownDiskDeleteOptionTypes { */ export type DiskDeleteOptionTypes = string; +export function virtualMachineScaleSetDataDiskArraySerializer( + result: Array, +): any[] { + return result.map((item) => { + return virtualMachineScaleSetDataDiskSerializer(item); + }); +} + +export function virtualMachineScaleSetDataDiskArrayDeserializer( + result: Array, +): any[] { + return result.map((item) => { + return virtualMachineScaleSetDataDiskDeserializer(item); + }); +} + /** Describes a virtual machine scale set data disk. */ export interface VirtualMachineScaleSetDataDisk { /** The disk name. */ @@ -2574,7 +2765,7 @@ export interface VirtualMachineScaleSetDataDisk { * StorageAccountType is UltraSSD_LRS. If not specified, a default value would be * assigned based on diskSizeGB. */ - diskIOPSReadWrite?: number; + diskIopsReadWrite?: number; /** * Specifies the bandwidth in MB per second for the managed disk. Should be used * only when StorageAccountType is UltraSSD_LRS. If not specified, a default value @@ -2605,7 +2796,7 @@ export function virtualMachineScaleSetDataDiskSerializer( managedDisk: !item["managedDisk"] ? item["managedDisk"] : virtualMachineScaleSetManagedDiskParametersSerializer(item["managedDisk"]), - diskIOPSReadWrite: item["diskIOPSReadWrite"], + diskIOPSReadWrite: item["diskIopsReadWrite"], diskMBpsReadWrite: item["diskMBpsReadWrite"], deleteOption: item["deleteOption"], }; @@ -2624,42 +2815,26 @@ export function virtualMachineScaleSetDataDiskDeserializer( managedDisk: !item["managedDisk"] ? item["managedDisk"] : virtualMachineScaleSetManagedDiskParametersDeserializer(item["managedDisk"]), - diskIOPSReadWrite: item["diskIOPSReadWrite"], + diskIopsReadWrite: item["diskIOPSReadWrite"], diskMBpsReadWrite: item["diskMBpsReadWrite"], deleteOption: item["deleteOption"], }; } -export function virtualMachineScaleSetDataDiskArraySerializer( - result: Array, -): any[] { - return result.map((item) => { - return virtualMachineScaleSetDataDiskSerializer(item); - }); -} - -export function virtualMachineScaleSetDataDiskArrayDeserializer( - result: Array, -): any[] { - return result.map((item) => { - return virtualMachineScaleSetDataDiskDeserializer(item); - }); -} - /** * Specifies the disk controller type configured for the VM and * VirtualMachineScaleSet. This property is only supported for virtual machines * whose operating system disk and VM sku supports Generation 2 - * (https://docs.microsoft.com/en-us/azure/virtual-machines/generation-2), please + * (https://learn.microsoft.com/en-us/azure/virtual-machines/generation-2), please * check the HyperVGenerations capability returned as part of VM sku capabilities * in the response of Microsoft.Compute SKUs api for the region contains V2 - * (https://docs.microsoft.com/rest/api/compute/resourceskus/list). For more + * (https://learn.microsoft.com/rest/api/compute/resourceskus/list). For more * information about Disk Controller Types supported please refer to * https://aka.ms/azure-diskcontrollertypes. */ export enum KnownDiskControllerTypes { /** SCSI disk type */ - SCSI = "SCSI", + Scsi = "SCSI", /** NVMe disk type */ NVMe = "NVMe", } @@ -2668,10 +2843,10 @@ export enum KnownDiskControllerTypes { * Specifies the disk controller type configured for the VM and * VirtualMachineScaleSet. This property is only supported for virtual machines * whose operating system disk and VM sku supports Generation 2 - * (https://docs.microsoft.com/en-us/azure/virtual-machines/generation-2), please + * (https://learn.microsoft.com/en-us/azure/virtual-machines/generation-2), please * check the HyperVGenerations capability returned as part of VM sku capabilities * in the response of Microsoft.Compute SKUs api for the region contains V2 - * (https://docs.microsoft.com/rest/api/compute/resourceskus/list). For more + * (https://learn.microsoft.com/rest/api/compute/resourceskus/list). For more * information about Disk Controller Types supported please refer to * https://aka.ms/azure-diskcontrollertypes. \ * {@link KnownDiskControllerTypes} can be used interchangeably with DiskControllerTypes, @@ -2751,6 +2926,22 @@ export function apiEntityReferenceDeserializer(item: any): ApiEntityReference { }; } +export function virtualMachineScaleSetNetworkConfigurationArraySerializer( + result: Array, +): any[] { + return result.map((item) => { + return virtualMachineScaleSetNetworkConfigurationSerializer(item); + }); +} + +export function virtualMachineScaleSetNetworkConfigurationArrayDeserializer( + result: Array, +): any[] { + return result.map((item) => { + return virtualMachineScaleSetNetworkConfigurationDeserializer(item); + }); +} + /** Describes a virtual machine scale set network profile's network configurations. */ export interface VirtualMachineScaleSetNetworkConfiguration { /** The network configuration name. */ @@ -2894,6 +3085,22 @@ export function virtualMachineScaleSetNetworkConfigurationDnsSettingsDeserialize }; } +export function virtualMachineScaleSetIPConfigurationArraySerializer( + result: Array, +): any[] { + return result.map((item) => { + return virtualMachineScaleSetIPConfigurationSerializer(item); + }); +} + +export function virtualMachineScaleSetIPConfigurationArrayDeserializer( + result: Array, +): any[] { + return result.map((item) => { + return virtualMachineScaleSetIPConfigurationDeserializer(item); + }); +} + /** Describes a virtual machine scale set network profile's IP configuration. */ export interface VirtualMachineScaleSetIPConfiguration { /** The IP configuration name. */ @@ -3201,6 +3408,22 @@ export enum KnownDomainNameLabelScopeTypes { */ export type DomainNameLabelScopeTypes = string; +export function virtualMachineScaleSetIpTagArraySerializer( + result: Array, +): any[] { + return result.map((item) => { + return virtualMachineScaleSetIpTagSerializer(item); + }); +} + +export function virtualMachineScaleSetIpTagArrayDeserializer( + result: Array, +): any[] { + return result.map((item) => { + return virtualMachineScaleSetIpTagDeserializer(item); + }); +} + /** Contains the IP tag associated with the public IP address. */ export interface VirtualMachineScaleSetIpTag { /** IP tag type. Example: FirstPartyUsage. */ @@ -3220,22 +3443,6 @@ export function virtualMachineScaleSetIpTagDeserializer(item: any): VirtualMachi }; } -export function virtualMachineScaleSetIpTagArraySerializer( - result: Array, -): any[] { - return result.map((item) => { - return virtualMachineScaleSetIpTagSerializer(item); - }); -} - -export function virtualMachineScaleSetIpTagArrayDeserializer( - result: Array, -): any[] { - return result.map((item) => { - return virtualMachineScaleSetIpTagDeserializer(item); - }); -} - /** * Available from Api-Version 2017-03-30 onwards, it represents whether the * specific ipconfiguration is IPv4 or IPv6. Default is taken as IPv4. Possible @@ -3348,22 +3555,6 @@ export function subResourceArrayDeserializer(result: Array): any[] }); } -export function virtualMachineScaleSetIPConfigurationArraySerializer( - result: Array, -): any[] { - return result.map((item) => { - return virtualMachineScaleSetIPConfigurationSerializer(item); - }); -} - -export function virtualMachineScaleSetIPConfigurationArrayDeserializer( - result: Array, -): any[] { - return result.map((item) => { - return virtualMachineScaleSetIPConfigurationDeserializer(item); - }); -} - /** * Specifies whether the Auxiliary mode is enabled for the Network Interface * resource. @@ -3420,22 +3611,6 @@ export enum KnownNetworkInterfaceAuxiliarySku { */ export type NetworkInterfaceAuxiliarySku = string; -export function virtualMachineScaleSetNetworkConfigurationArraySerializer( - result: Array, -): any[] { - return result.map((item) => { - return virtualMachineScaleSetNetworkConfigurationSerializer(item); - }); -} - -export function virtualMachineScaleSetNetworkConfigurationArrayDeserializer( - result: Array, -): any[] { - return result.map((item) => { - return virtualMachineScaleSetNetworkConfigurationDeserializer(item); - }); -} - /** * specifies the Microsoft.Network API version used when creating networking * resources in the Network Interface Configurations for Virtual Machine Scale Set @@ -3758,6 +3933,22 @@ export function virtualMachineScaleSetExtensionProfileDeserializer( }; } +export function virtualMachineScaleSetExtensionArraySerializer( + result: Array, +): any[] { + return result.map((item) => { + return virtualMachineScaleSetExtensionSerializer(item); + }); +} + +export function virtualMachineScaleSetExtensionArrayDeserializer( + result: Array, +): any[] { + return result.map((item) => { + return virtualMachineScaleSetExtensionDeserializer(item); + }); +} + /** Describes a Virtual Machine Scale Set Extension. */ export interface VirtualMachineScaleSetExtension { /** Resource Id */ @@ -3917,22 +4108,6 @@ export function keyVaultSecretReferenceDeserializer(item: any): KeyVaultSecretRe }; } -export function virtualMachineScaleSetExtensionArraySerializer( - result: Array, -): any[] { - return result.map((item) => { - return virtualMachineScaleSetExtensionSerializer(item); - }); -} - -export function virtualMachineScaleSetExtensionArrayDeserializer( - result: Array, -): any[] { - return result.map((item) => { - return virtualMachineScaleSetExtensionDeserializer(item); - }); -} - /** Specifies Scheduled Event related configurations. */ export interface ScheduledEventsProfile { /** Specifies Terminate Scheduled Event related configurations. */ @@ -3948,7 +4123,7 @@ export function scheduledEventsProfileSerializer(item: ScheduledEventsProfile): : terminateNotificationProfileSerializer(item["terminateNotificationProfile"]), osImageNotificationProfile: !item["osImageNotificationProfile"] ? item["osImageNotificationProfile"] - : oSImageNotificationProfileSerializer(item["osImageNotificationProfile"]), + : osImageNotificationProfileSerializer(item["osImageNotificationProfile"]), }; } @@ -3959,7 +4134,7 @@ export function scheduledEventsProfileDeserializer(item: any): ScheduledEventsPr : terminateNotificationProfileDeserializer(item["terminateNotificationProfile"]), osImageNotificationProfile: !item["osImageNotificationProfile"] ? item["osImageNotificationProfile"] - : oSImageNotificationProfileDeserializer(item["osImageNotificationProfile"]), + : osImageNotificationProfileDeserializer(item["osImageNotificationProfile"]), }; } @@ -4000,11 +4175,11 @@ export interface OSImageNotificationProfile { enable?: boolean; } -export function oSImageNotificationProfileSerializer(item: OSImageNotificationProfile): any { +export function osImageNotificationProfileSerializer(item: OSImageNotificationProfile): any { return { notBeforeTimeout: item["notBeforeTimeout"], enable: item["enable"] }; } -export function oSImageNotificationProfileDeserializer(item: any): OSImageNotificationProfile { +export function osImageNotificationProfileDeserializer(item: any): OSImageNotificationProfile { return { notBeforeTimeout: item["notBeforeTimeout"], enable: item["enable"], @@ -4051,7 +4226,7 @@ export function applicationProfileSerializer(item: ApplicationProfile): any { return { galleryApplications: !item["galleryApplications"] ? item["galleryApplications"] - : vMGalleryApplicationArraySerializer(item["galleryApplications"]), + : vmGalleryApplicationArraySerializer(item["galleryApplications"]), }; } @@ -4059,10 +4234,22 @@ export function applicationProfileDeserializer(item: any): ApplicationProfile { return { galleryApplications: !item["galleryApplications"] ? item["galleryApplications"] - : vMGalleryApplicationArrayDeserializer(item["galleryApplications"]), + : vmGalleryApplicationArrayDeserializer(item["galleryApplications"]), }; } +export function vmGalleryApplicationArraySerializer(result: Array): any[] { + return result.map((item) => { + return vmGalleryApplicationSerializer(item); + }); +} + +export function vmGalleryApplicationArrayDeserializer(result: Array): any[] { + return result.map((item) => { + return vmGalleryApplicationDeserializer(item); + }); +} + /** * Specifies the required information to reference a compute gallery application * version @@ -4094,7 +4281,7 @@ export interface VMGalleryApplication { enableAutomaticUpgrade?: boolean; } -export function vMGalleryApplicationSerializer(item: VMGalleryApplication): any { +export function vmGalleryApplicationSerializer(item: VMGalleryApplication): any { return { tags: item["tags"], order: item["order"], @@ -4105,7 +4292,7 @@ export function vMGalleryApplicationSerializer(item: VMGalleryApplication): any }; } -export function vMGalleryApplicationDeserializer(item: any): VMGalleryApplication { +export function vmGalleryApplicationDeserializer(item: any): VMGalleryApplication { return { tags: item["tags"], order: item["order"], @@ -4116,18 +4303,6 @@ export function vMGalleryApplicationDeserializer(item: any): VMGalleryApplicatio }; } -export function vMGalleryApplicationArraySerializer(result: Array): any[] { - return result.map((item) => { - return vMGalleryApplicationSerializer(item); - }); -} - -export function vMGalleryApplicationArrayDeserializer(result: Array): any[] { - return result.map((item) => { - return vMGalleryApplicationDeserializer(item); - }); -} - /** Specifies the hardware settings for the virtual machine scale set. */ export interface VirtualMachineScaleSetHardwareProfile { /** @@ -4144,7 +4319,7 @@ export function virtualMachineScaleSetHardwareProfileSerializer( return { vmSizeProperties: !item["vmSizeProperties"] ? item["vmSizeProperties"] - : vMSizePropertiesSerializer(item["vmSizeProperties"]), + : vmSizePropertiesSerializer(item["vmSizeProperties"]), }; } @@ -4154,7 +4329,7 @@ export function virtualMachineScaleSetHardwareProfileDeserializer( return { vmSizeProperties: !item["vmSizeProperties"] ? item["vmSizeProperties"] - : vMSizePropertiesDeserializer(item["vmSizeProperties"]), + : vmSizePropertiesDeserializer(item["vmSizeProperties"]), }; } @@ -4165,7 +4340,7 @@ export interface VMSizeProperties { * specified in the request body the default behavior is to set it to the value of * vCPUs available for that VM size exposed in api response of [List all available * virtual machine sizes in a - * region](https://docs.microsoft.com/en-us/rest/api/compute/resource-skus/list). + * region](https://learn.microsoft.com/en-us/rest/api/compute/resource-skus/list). */ vCPUsAvailable?: number; /** @@ -4173,20 +4348,20 @@ export interface VMSizeProperties { * in the request body the default behavior is set to the value of vCPUsPerCore * for the VM Size exposed in api response of [List all available virtual machine * sizes in a - * region](https://docs.microsoft.com/en-us/rest/api/compute/resource-skus/list). + * region](https://learn.microsoft.com/en-us/rest/api/compute/resource-skus/list). * **Setting this property to 1 also means that hyper-threading is disabled.** */ vCPUsPerCore?: number; } -export function vMSizePropertiesSerializer(item: VMSizeProperties): any { +export function vmSizePropertiesSerializer(item: VMSizeProperties): any { return { vCPUsAvailable: item["vCPUsAvailable"], vCPUsPerCore: item["vCPUsPerCore"], }; } -export function vMSizePropertiesDeserializer(item: any): VMSizeProperties { +export function vmSizePropertiesDeserializer(item: any): VMSizeProperties { return { vCPUsAvailable: item["vCPUsAvailable"], vCPUsPerCore: item["vCPUsPerCore"], @@ -4259,18 +4434,6 @@ export function securityPostureReferenceDeserializer(item: any): SecurityPosture }; } -export function locationProfileArraySerializer(result: Array): any[] { - return result.map((item) => { - return locationProfileSerializer(item); - }); -} - -export function locationProfileArrayDeserializer(result: Array): any[] { - return result.map((item) => { - return locationProfileDeserializer(item); - }); -} - /** Compute Profile to use for running user's workloads. */ export interface ComputeProfile { /** Base Virtual Machine Profile Properties to be specified according to "specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/{computeApiVersion}/virtualMachineScaleSet.json#/definitions/VirtualMachineScaleSetVMProfile" */ @@ -4402,10 +4565,10 @@ export type ManagedServiceIdentityType = string; /** User assigned identity properties */ export interface UserAssignedIdentity { - /** The principal ID of the assigned identity. */ - readonly principalId?: string; /** The client ID of the assigned identity. */ readonly clientId?: string; + /** The principal ID of the assigned identity. */ + readonly principalId?: string; } export function userAssignedIdentitySerializer(item: UserAssignedIdentity): any { @@ -4414,8 +4577,8 @@ export function userAssignedIdentitySerializer(item: UserAssignedIdentity): any export function userAssignedIdentityDeserializer(item: any): UserAssignedIdentity { return { - principalId: item["principalId"], clientId: item["clientId"], + principalId: item["principalId"], }; } @@ -4666,6 +4829,14 @@ export function _virtualMachineScaleSetListResultDeserializer( }; } +export function virtualMachineScaleSetArrayDeserializer( + result: Array, +): any[] { + return result.map((item) => { + return virtualMachineScaleSetDeserializer(item); + }); +} + /** An AzureFleet's virtualMachineScaleSet */ export interface VirtualMachineScaleSet { /** @@ -4685,7 +4856,7 @@ export function virtualMachineScaleSetDeserializer(item: any): VirtualMachineSca return { id: item["id"], type: item["type"], - operationStatus: provisioningStateDeserializer(item["operationStatus"]), + operationStatus: item["operationStatus"], error: !item["error"] ? item["error"] : apiErrorDeserializer(item["error"]), }; } @@ -4716,6 +4887,12 @@ export function apiErrorDeserializer(item: any): ApiError { }; } +export function apiErrorBaseArrayDeserializer(result: Array): any[] { + return result.map((item) => { + return apiErrorBaseDeserializer(item); + }); +} + /** API error base. */ export interface ApiErrorBase { /** The error code. */ @@ -4734,12 +4911,6 @@ export function apiErrorBaseDeserializer(item: any): ApiErrorBase { }; } -export function apiErrorBaseArrayDeserializer(result: Array): any[] { - return result.map((item) => { - return apiErrorBaseDeserializer(item); - }); -} - /** Inner error details. */ export interface InnerError { /** The exception type. */ @@ -4755,112 +4926,10 @@ export function innerErrorDeserializer(item: any): InnerError { }; } -export function virtualMachineScaleSetArrayDeserializer( - result: Array, -): any[] { - return result.map((item) => { - return virtualMachineScaleSetDeserializer(item); - }); -} - -/** 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 { - /** The Operation items on this page */ - value: Operation[]; - /** The link to the next page of items */ - nextLink?: string; -} - -export function _operationListResultDeserializer(item: any): _OperationListResult { - return { - value: operationArrayDeserializer(item["value"]), - nextLink: item["nextLink"], - }; -} - -/** Details of a REST API operation, returned from the Resource Provider Operations API */ -export interface Operation { - /** The name of the operation, as per Resource-Based Access Control (RBAC). Examples: "Microsoft.Compute/virtualMachines/write", "Microsoft.Compute/virtualMachines/capture/action" */ - readonly name?: string; - /** Whether the operation applies to data-plane. This is "true" for data-plane operations and "false" for Azure Resource Manager/control-plane operations. */ - readonly isDataAction?: boolean; - /** Localized display information for this particular operation. */ - readonly display?: OperationDisplay; - /** The intended executor of the operation; as in Resource Based Access Control (RBAC) and audit logs UX. Default value is "user,system" */ - readonly origin?: Origin; - /** Extensible enum. Indicates the action type. "Internal" refers to actions that are for internal only APIs. */ - actionType?: ActionType; -} - -export function operationDeserializer(item: any): Operation { - return { - name: item["name"], - isDataAction: item["isDataAction"], - display: !item["display"] ? item["display"] : operationDisplayDeserializer(item["display"]), - origin: item["origin"], - actionType: item["actionType"], - }; -} - -/** Localized display information for and operation. */ -export interface OperationDisplay { - /** The localized friendly form of the resource provider name, e.g. "Microsoft Monitoring Insights" or "Microsoft Compute". */ - readonly provider?: string; - /** The localized friendly name of the resource type related to this operation. E.g. "Virtual Machines" or "Job Schedule Collections". */ - readonly resource?: string; - /** The concise, localized friendly name for the operation; suitable for dropdowns. E.g. "Create or Update Virtual Machine", "Restart Virtual Machine". */ - readonly operation?: string; - /** The short, localized friendly description of the operation; suitable for tool tips and detailed views. */ - readonly description?: string; -} - -export function operationDisplayDeserializer(item: any): OperationDisplay { - return { - provider: item["provider"], - resource: item["resource"], - operation: item["operation"], - description: item["description"], - }; -} - -/** The intended executor of the operation; as in Resource Based Access Control (RBAC) and audit logs UX. Default value is "user,system" */ -export enum KnownOrigin { - /** Indicates the operation is initiated by a user. */ - User = "user", - /** Indicates the operation is initiated by a system. */ - System = "system", - /** Indicates the operation is initiated by a user or system. */ - UserSystem = "user,system", -} - -/** - * The intended executor of the operation; as in Resource Based Access Control (RBAC) and audit logs UX. Default value is "user,system" \ - * {@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**: Indicates the operation is initiated by a user. \ - * **system**: Indicates the operation is initiated by a system. \ - * **user,system**: Indicates the operation is initiated by a user or system. - */ -export type Origin = string; - -/** Extensible enum. Indicates the action type. "Internal" refers to actions that are for internal only APIs. */ -export enum KnownActionType { - /** Actions are for internal-only APIs. */ - Internal = "Internal", -} - -/** - * Extensible enum. Indicates the action type. "Internal" refers to actions that are for internal only APIs. \ - * {@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**: Actions are for internal-only APIs. - */ -export type ActionType = string; - -export function operationArrayDeserializer(result: Array): any[] { - return result.map((item) => { - return operationDeserializer(item); - }); +/** Api versions */ +export enum KnownVersions { + /** Public Api version */ + V20241101 = "2024-11-01", + /** Public Api version */ + V20250301 = "2025-03-01", } diff --git a/sdk/computefleet/arm-computefleet/src/restorePollerHelpers.ts b/sdk/computefleet/arm-computefleet/src/restorePollerHelpers.ts index bcb23e98509d..74c0256254c4 100644 --- a/sdk/computefleet/arm-computefleet/src/restorePollerHelpers.ts +++ b/sdk/computefleet/arm-computefleet/src/restorePollerHelpers.ts @@ -3,10 +3,10 @@ import { AzureFleetClient } from "./azureFleetClient.js"; import { - _fleetsCreateOrUpdateDeserialize, - _fleetsUpdateDeserialize, - _fleetsDeleteDeserialize, -} from "./api/fleets/index.js"; + _$deleteDeserialize, + _updateDeserialize, + _createOrUpdateDeserialize, +} from "./api/fleets/operations.js"; import { getLongRunningPoller } from "./static-helpers/pollingHelpers.js"; import { OperationOptions, PathUncheckedResponse } from "@azure-rest/core-client"; import { AbortSignalLike } from "@azure/abort-controller"; @@ -80,20 +80,17 @@ interface DeserializationHelper { } const deserializeMap: Record = { - "PUT /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureFleet/fleets/{fleetName}": + "DELETE /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureFleet/fleets/{fleetName}": { - deserializer: _fleetsCreateOrUpdateDeserialize, - expectedStatuses: ["200", "201"], + deserializer: _$deleteDeserialize, + expectedStatuses: ["202", "204", "200"], }, "PATCH /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureFleet/fleets/{fleetName}": + { deserializer: _updateDeserialize, expectedStatuses: ["200", "202"] }, + "PUT /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureFleet/fleets/{fleetName}": { - deserializer: _fleetsUpdateDeserialize, - expectedStatuses: ["200", "202"], - }, - "DELETE /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureFleet/fleets/{fleetName}": - { - deserializer: _fleetsDeleteDeserialize, - expectedStatuses: ["202", "204", "200"], + deserializer: _createOrUpdateDeserialize, + expectedStatuses: ["200", "201"], }, }; diff --git a/sdk/computefleet/arm-computefleet/src/static-helpers/urlTemplate.ts b/sdk/computefleet/arm-computefleet/src/static-helpers/urlTemplate.ts new file mode 100644 index 000000000000..cd03319fda35 --- /dev/null +++ b/sdk/computefleet/arm-computefleet/src/static-helpers/urlTemplate.ts @@ -0,0 +1,197 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +//--------------------- +// interfaces +//--------------------- +interface ValueOptions { + isFirst: boolean; // is first value in the expression + op?: string; // operator + varValue?: any; // variable value + varName?: string; // variable name + modifier?: string; // modifier e.g * + reserved?: boolean; // if true we'll keep reserved words with not encoding +} + +export interface UrlTemplateOptions { + // if set to true, reserved characters will not be encoded + allowReserved?: boolean; +} + +// --------------------- +// helpers +// --------------------- +function encodeComponent(val: string, reserved?: boolean, op?: string) { + return (reserved ?? op === "+") || op === "#" + ? encodeReservedComponent(val) + : encodeRFC3986URIComponent(val); +} + +function encodeReservedComponent(str: string) { + return str + .split(/(%[0-9A-Fa-f]{2})/g) + .map((part) => (!/%[0-9A-Fa-f]/.test(part) ? encodeURI(part) : part)) + .join(""); +} + +function encodeRFC3986URIComponent(str: string) { + return encodeURIComponent(str).replace( + /[!'()*]/g, + (c) => `%${c.charCodeAt(0).toString(16).toUpperCase()}`, + ); +} + +function isDefined(val: any) { + return val !== undefined && val !== null; +} + +function getNamedAndIfEmpty(op?: string): [boolean, string] { + return [!!op && [";", "?", "&"].includes(op), !!op && ["?", "&"].includes(op) ? "=" : ""]; +} + +function getFirstOrSep(op?: string, isFirst = false) { + if (isFirst) { + return !op || op === "+" ? "" : op; + } else if (!op || op === "+" || op === "#") { + return ","; + } else if (op === "?") { + return "&"; + } else { + return op; + } +} + +function getExpandedValue(option: ValueOptions) { + let isFirst = option.isFirst; + const { op, varName, varValue: value, reserved } = option; + const vals: string[] = []; + const [named, ifEmpty] = getNamedAndIfEmpty(op); + + if (Array.isArray(value)) { + for (const val of value.filter(isDefined)) { + // prepare the following parts: separator, varName, value + vals.push(`${getFirstOrSep(op, isFirst)}`); + if (named && varName) { + vals.push(`${encodeURIComponent(varName)}`); + val === "" ? vals.push(ifEmpty) : vals.push("="); + } + vals.push(encodeComponent(val, reserved, op)); + isFirst = false; + } + } else if (typeof value === "object") { + for (const key of Object.keys(value)) { + const val = value[key]; + if (!isDefined(val)) { + continue; + } + // prepare the following parts: separator, key, value + vals.push(`${getFirstOrSep(op, isFirst)}`); + if (key) { + vals.push(`${encodeURIComponent(key)}`); + named && val === "" ? vals.push(ifEmpty) : vals.push("="); + } + vals.push(encodeComponent(val, reserved, op)); + isFirst = false; + } + } + return vals.join(""); +} + +function getNonExpandedValue(option: ValueOptions) { + const { op, varName, varValue: value, isFirst, reserved } = option; + const vals: string[] = []; + const first = getFirstOrSep(op, isFirst); + const [named, ifEmpty] = getNamedAndIfEmpty(op); + if (named && varName) { + vals.push(encodeComponent(varName, reserved, op)); + if (value === "") { + if (!ifEmpty) { + vals.push(ifEmpty); + } + return !vals.join("") ? undefined : `${first}${vals.join("")}`; + } + vals.push("="); + } + + const items = []; + if (Array.isArray(value)) { + for (const val of value.filter(isDefined)) { + items.push(encodeComponent(val, reserved, op)); + } + } else if (typeof value === "object") { + for (const key of Object.keys(value)) { + if (!isDefined(value[key])) { + continue; + } + items.push(encodeRFC3986URIComponent(key)); + items.push(encodeComponent(value[key], reserved, op)); + } + } + vals.push(items.join(",")); + return !vals.join(",") ? undefined : `${first}${vals.join("")}`; +} + +function getVarValue(option: ValueOptions): string | undefined { + const { op, varName, modifier, isFirst, reserved, varValue: value } = option; + + if (!isDefined(value)) { + return undefined; + } else if (["string", "number", "boolean"].includes(typeof value)) { + let val = value.toString(); + const [named, ifEmpty] = getNamedAndIfEmpty(op); + const vals: string[] = [getFirstOrSep(op, isFirst)]; + if (named && varName) { + // No need to encode varName considering it is already encoded + vals.push(varName); + val === "" ? vals.push(ifEmpty) : vals.push("="); + } + if (modifier && modifier !== "*") { + val = val.substring(0, parseInt(modifier, 10)); + } + vals.push(encodeComponent(val, reserved, op)); + return vals.join(""); + } else if (modifier === "*") { + return getExpandedValue(option); + } else { + return getNonExpandedValue(option); + } +} + +// --------------------------------------------------------------------------------------------------- +// This is an implementation of RFC 6570 URI Template: https://datatracker.ietf.org/doc/html/rfc6570. +// --------------------------------------------------------------------------------------------------- +export function expandUrlTemplate( + template: string, + context: Record, + option?: UrlTemplateOptions, +): string { + return template.replace(/\{([^\{\}]+)\}|([^\{\}]+)/g, (_, expr, text) => { + if (!expr) { + return encodeReservedComponent(text); + } + let op; + if (["+", "#", ".", "/", ";", "?", "&"].includes(expr[0])) { + (op = expr[0]), (expr = expr.slice(1)); + } + const varList = expr.split(/,/g); + const result = []; + for (const varSpec of varList) { + const varMatch = /([^:\*]*)(?::(\d+)|(\*))?/.exec(varSpec); + if (!varMatch || !varMatch[1]) { + continue; + } + const varValue = getVarValue({ + isFirst: result.length === 0, + op, + varValue: context[varMatch[1]], + varName: varMatch[1], + modifier: varMatch[2] || varMatch[3], + reserved: option?.allowReserved, + }); + if (varValue) { + result.push(varValue); + } + } + return result.join(""); + }); +} diff --git a/sdk/computefleet/arm-computefleet/test/public/computefleet_operations_test.spec.ts b/sdk/computefleet/arm-computefleet/test/public/computefleet_operations_test.spec.ts deleted file mode 100644 index 6501ac093d6b..000000000000 --- a/sdk/computefleet/arm-computefleet/test/public/computefleet_operations_test.spec.ts +++ /dev/null @@ -1,177 +0,0 @@ -/* - * 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 type { Recorder } from "@azure-tools/test-recorder"; -import { env, isPlaybackMode } from "@azure-tools/test-recorder"; -import { createTestCredential } from "@azure-tools/test-credential"; -import { assert, beforeEach, afterEach, it, describe } from "vitest"; -import { createRecorder } from "./utils/recordedClient.js"; -import { AzureFleetClient } from "../../src/azureFleetClient.js"; - -export const testPollingOptions = { - updateIntervalInMs: isPlaybackMode() ? 0 : undefined, -}; - -describe("AzureFleet test", () => { - let recorder: Recorder; - let subscriptionId: string; - let client: AzureFleetClient; - let location: string; - let resourceGroup: string; - let resourcename: string; - - beforeEach(async (context) => { - process.env.SystemRoot = process.env.SystemRoot || "C:\\Windows"; - recorder = await createRecorder(context); - subscriptionId = env.SUBSCRIPTION_ID || ""; - // This is an example of how the environment variables are used - const credential = createTestCredential(); - client = new AzureFleetClient(credential, subscriptionId, recorder.configureClientOptions({})); - location = "eastus2euap"; - resourceGroup = "myjstest"; - resourcename = "resourcetest"; - }); - - afterEach(async () => { - if (recorder?.recordingId) { - await recorder.stop(); - } - }); - - // first create a networkSecurityGroups named "testnsg" with eastus2euap on portal - // second create a virtual network named "czwtestvn" with eastus2euap and config the ip address as 172.16.0.0/16 when creating a vitrual network on portal - // third create a subnet named "testsub" and before click add button, enable private subnet and link to networkSecurityGroups - it("fleets create test", async () => { - const res = await client.fleets.createOrUpdate( - resourceGroup, - resourcename, - { - location, - properties: { - spotPriorityProfile: { - maxPricePerVM: 1, - evictionPolicy: "Delete", - allocationStrategy: "LowestPrice", - maintain: true, - capacity: 1, - }, - vmSizesProfile: [ - { - name: "Standard_D2s_v3", - }, - { - name: "Standard_D4s_v3", - }, - { - name: "Standard_E2s_v3", - }, - ], - computeProfile: { - baseVirtualMachineProfile: { - storageProfile: { - imageReference: { - publisher: "canonical", - offer: "0001-com-ubuntu-server-focal", - sku: "20_04-lts-gen2", - version: "latest", - }, - osDisk: { - createOption: "fromImage", - caching: "ReadWrite", - osType: "Linux", - managedDisk: { - storageAccountType: "Premium_LRS", - }, - }, - }, - licenseType: "None", - osProfile: { - adminUsername: "azureuser", - adminPassword: "testComputefleet01", - computerNamePrefix: "testfleet", - }, - securityProfile: { - securityType: "TrustedLaunch", - uefiSettings: { - secureBootEnabled: true, - vTpmEnabled: false, - }, - }, - networkProfile: { - networkApiVersion: "2020-11-01", - networkInterfaceConfigurations: [ - { - name: "testnsg", - properties: { - primary: true, - enableAcceleratedNetworking: false, - networkSecurityGroup: { - id: - "/subscriptions/" + - subscriptionId + - "/resourceGroups/myjstest/providers/Microsoft.Network/networkSecurityGroups/testnsg", - }, - ipConfigurations: [ - { - name: "testvn-ipConfig", - properties: { - primary: true, - subnet: { - id: - "/subscriptions/" + - subscriptionId + - "/resourceGroups/myjstest/providers/Microsoft.Network/virtualNetworks/czwtestvn/subnets/testsub", - }, - }, - }, - ], - }, - }, - ], - }, - }, - platformFaultDomainCount: 1, - computeApiVersion: "2023-09-01", - }, - }, - }, - testPollingOptions, - ); - assert.equal(res.name, resourcename); - }); - - it("fleets get test", async () => { - const res = await client.fleets.get(resourceGroup, resourcename); - assert.equal(res.name, resourcename); - }); - - it("fleets list test", async () => { - const resArray = new Array(); - for await (const item of client.fleets.listByResourceGroup(resourceGroup)) { - resArray.push(item); - } - assert.equal(resArray.length, 1); - }); - - it("fleets delete test", async () => { - const resArray = new Array(); - await client.fleets.delete(resourceGroup, resourcename); - for await (const item of client.fleets.listByResourceGroup(resourceGroup)) { - resArray.push(item); - } - assert.equal(resArray.length, 0); - }); - - it("operation list test", async () => { - const resArray = new Array(); - for await (const item of client.operations.list()) { - resArray.push(item); - } - assert.notEqual(resArray.length, 0); - }); -}); diff --git a/sdk/computefleet/arm-computefleet/test/public/sampleTest.spec.ts b/sdk/computefleet/arm-computefleet/test/public/sampleTest.spec.ts new file mode 100644 index 000000000000..e4591bbad342 --- /dev/null +++ b/sdk/computefleet/arm-computefleet/test/public/sampleTest.spec.ts @@ -0,0 +1,20 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { assert, beforeEach, afterEach, it, describe } from "vitest"; + +describe("My test", () => { + // let recorder: Recorder; + + beforeEach(async () => { + // recorder = await createRecorder(this); + }); + + afterEach(async () => { + // await recorder.stop(); + }); + + it("sample test", async function () { + assert.equal(1, 1); + }); +}); diff --git a/sdk/computefleet/arm-computefleet/test/public/utils/recordedClient.ts b/sdk/computefleet/arm-computefleet/test/public/utils/recordedClient.ts index 527ccc9dee86..14dcd9fa397c 100644 --- a/sdk/computefleet/arm-computefleet/test/public/utils/recordedClient.ts +++ b/sdk/computefleet/arm-computefleet/test/public/utils/recordedClient.ts @@ -9,10 +9,6 @@ const replaceableVariables: Record = { const recorderEnvSetup: RecorderStartOptions = { envSetupForPlayback: replaceableVariables, - removeCentralSanitizers: [ - "AZSDK3493", // .name in the body is not a secret and is listed below in the beforeEach section - "AZSDK3430", // .id in the body is not a secret and is listed below in the beforeEach section - ], }; /** diff --git a/sdk/computefleet/arm-computefleet/tsp-location.yaml b/sdk/computefleet/arm-computefleet/tsp-location.yaml index f37d1c6805d5..9f2374996c30 100644 --- a/sdk/computefleet/arm-computefleet/tsp-location.yaml +++ b/sdk/computefleet/arm-computefleet/tsp-location.yaml @@ -1,3 +1,4 @@ directory: specification/azurefleet/AzureFleet.Management -commit: 8ad58020cfafc5ace71d85b31272acf4d6b694d3 -repo: Azure/azure-rest-api-specs +commit: ccca4cf38db09a46941b6d79902d1574dfa6200c +repo: ../azure-rest-api-specs +additionalDirectories: diff --git a/sdk/computefleet/ci.mgmt.yml b/sdk/computefleet/ci.mgmt.yml index 74e7165ed1a2..edd723b51465 100644 --- a/sdk/computefleet/ci.mgmt.yml +++ b/sdk/computefleet/ci.mgmt.yml @@ -13,7 +13,6 @@ trigger: include: - sdk/computefleet/arm-computefleet - sdk/computefleet/ci.mgmt.yml - pr: branches: include: @@ -27,7 +26,6 @@ pr: include: - sdk/computefleet/arm-computefleet - sdk/computefleet/ci.mgmt.yml - extends: template: /eng/pipelines/templates/stages/archetype-sdk-client.yml parameters: