diff --git a/common/config/rush/pnpm-lock.yaml b/common/config/rush/pnpm-lock.yaml index 2461db275cc1..446d55f36387 100644 --- a/common/config/rush/pnpm-lock.yaml +++ b/common/config/rush/pnpm-lock.yaml @@ -11863,7 +11863,7 @@ packages: dev: false file:projects/abort-controller.tgz: - resolution: {integrity: sha512-jrk1v37fK9EmuNhC0czeE0ifI7mkHqXenZYC47n4P8ciatm36N7bxFA4tg6xxsqgY32jIJeQBZJC0xL4YfKEmw==, tarball: file:projects/abort-controller.tgz} + resolution: {integrity: sha512-tsvWnZnzoiICM/UDEYiPHs1fjJp/hOdRIISUY+Pf2v21MgOK2F/oExLkpJCCKHeX/k51hn+6+dUVIKte+FBvvQ==, tarball: file:projects/abort-controller.tgz} name: '@rush-temp/abort-controller' version: 0.0.0 dependencies: @@ -11895,7 +11895,7 @@ packages: dev: false file:projects/agrifood-farming.tgz: - resolution: {integrity: sha512-qsbgUXp/2RcQCa+sDOQ6/J2CKlvsxRR6R2XGX3gjxSRNOSTf3TaBr3T6AEL9ZINSaPPLzVLJr2L3sqdWgt6dRw==, tarball: file:projects/agrifood-farming.tgz} + resolution: {integrity: sha512-2Tw2vVl4liajcKpa0jnb3FJYV4Zgf87HWBTGkLGEqPHxJ7/M2TbK9guKm6/cIKdUwi3vdOsdxGDnZ9o4JWdtSg==, tarball: file:projects/agrifood-farming.tgz} name: '@rush-temp/agrifood-farming' version: 0.0.0 dependencies: @@ -11942,7 +11942,7 @@ packages: dev: false file:projects/ai-anomaly-detector.tgz: - resolution: {integrity: sha512-rzByqDmaaneWm0SE34/dARzxW8OHa7PXg6TwMalLADA5iauKvhp0O86igHMyCrDbTvLLH4iGXxt6B7J8Mg9IRQ==, tarball: file:projects/ai-anomaly-detector.tgz} + resolution: {integrity: sha512-70Gk1gY+TS+T4iZDM79vBBDkmnk3TWh/KVzui4HVVDaRmLoS3TiJeWgCQDErAZ4Nkhwil8Z96vrOfjNmLRfH2w==, tarball: file:projects/ai-anomaly-detector.tgz} name: '@rush-temp/ai-anomaly-detector' version: 0.0.0 dependencies: @@ -11989,7 +11989,7 @@ packages: dev: false file:projects/ai-content-safety.tgz: - resolution: {integrity: sha512-b3ksHaPHKhw7AND4BCk1aRpiC47MZoEhbk223qDOFkmu0PDnEpPqOPWlSA89meXc5/89H9dBoJl06bquFmFagg==, tarball: file:projects/ai-content-safety.tgz} + resolution: {integrity: sha512-+ZubJgUKJpj5LvlUyz52Ds5rbw5OIvPPpMChF9bjVYft6qcY69C81UtUV7tlNx5lvWzbXly4El1zeJgN6TWn0A==, tarball: file:projects/ai-content-safety.tgz} name: '@rush-temp/ai-content-safety' version: 0.0.0 dependencies: @@ -12034,7 +12034,7 @@ packages: dev: false file:projects/ai-document-intelligence.tgz: - resolution: {integrity: sha512-QvBa5KpOmI9lkd20BZGFyjPpJyKuP48pNmmzFmh/E+79s8e1jTO+diYn9QGmSXtNGtx9pbbs85jmpJFFSAMTVg==, tarball: file:projects/ai-document-intelligence.tgz} + resolution: {integrity: sha512-GMXn19nEv6o0B86RTT6MzC2AzCFihulKUNEUb58n1mNJ9kJfRKcszCqo8pBYe4if5+eSlWBzerXNDeyuc1MeQA==, tarball: file:projects/ai-document-intelligence.tgz} name: '@rush-temp/ai-document-intelligence' version: 0.0.0 dependencies: @@ -12081,7 +12081,7 @@ packages: dev: false file:projects/ai-document-translator.tgz: - resolution: {integrity: sha512-bgqrkta2DzAJ15+YteEQCibw05OMI2TzbLlDE6SpGUg1gXAdCymm4dxpduNKiesFmC51WcP+ohZkuNGryFgBmg==, tarball: file:projects/ai-document-translator.tgz} + resolution: {integrity: sha512-GB4F37Agq20zlNVQttSMq9f7/22kWm0ut8v4AiAiCMRLFm+7EKYQiQcY2dPUd+paygunKor168mJM7l49HLf4Q==, tarball: file:projects/ai-document-translator.tgz} name: '@rush-temp/ai-document-translator' version: 0.0.0 dependencies: @@ -12126,7 +12126,7 @@ packages: dev: false file:projects/ai-form-recognizer.tgz: - resolution: {integrity: sha512-mWDpZN/NuWhSf61aK5q7J0bkXHvSZXn4AYMq7FU0w1ovQA48dWvS4PzkZpt+ZFXmNMYBmSZJEbFcTBJQGeJLOA==, tarball: file:projects/ai-form-recognizer.tgz} + resolution: {integrity: sha512-izUpXM5lDqrG/FkQWd8JMRh85pd61fDefl5mYiTYQu57bLlc9Tnp29eTBNlNg1x63Il3oM1gsvLxD75TtoCwag==, tarball: file:projects/ai-form-recognizer.tgz} name: '@rush-temp/ai-form-recognizer' version: 0.0.0 dependencies: @@ -12175,7 +12175,7 @@ packages: dev: false file:projects/ai-inference.tgz: - resolution: {integrity: sha512-RZajZdzu6j7X9C4dVf2rYkuHno03Yvc/IQ/LP5vklugnFc74kluhXdEY6F2aoWK+b0Vh4K9YP0E9IG/yryJMOw==, tarball: file:projects/ai-inference.tgz} + resolution: {integrity: sha512-ooMFB1pe6WJfa5jS/3XBX9YHGkTJfyQNF/UlHC53fXfVdJWzXW8tBjSRLnED1Yku77BTjhdKeriofcFLTjFTQw==, tarball: file:projects/ai-inference.tgz} name: '@rush-temp/ai-inference' version: 0.0.0 dependencies: @@ -12214,7 +12214,7 @@ packages: dev: false file:projects/ai-language-conversations.tgz: - resolution: {integrity: sha512-1MHjPdQAJiC79NNOmcp0ik0PMHTEUa5S1cnf3c7H8V0X61WP8FZfv0Z55pLf7yzXZlCjsRcBL9hQCyZnreua7Q==, tarball: file:projects/ai-language-conversations.tgz} + resolution: {integrity: sha512-U4hFRyz3RnKK09u8g05r3LSXfLSbU/nOnNAQl/euAN2FTXB5uV/i/KBzoDNmuiL4QgJqG1DKJR5tmxkqGRwrnA==, tarball: file:projects/ai-language-conversations.tgz} name: '@rush-temp/ai-language-conversations' version: 0.0.0 dependencies: @@ -12263,7 +12263,7 @@ packages: dev: false file:projects/ai-language-text.tgz: - resolution: {integrity: sha512-QGJ9T/k7VjvdpdhLt5be897aOqygavbNqnGbazn0ymXKxpQ8irU7ezVUNBnKF5dC0EGojxT/nY9IIXd2nQXlzQ==, tarball: file:projects/ai-language-text.tgz} + resolution: {integrity: sha512-d572NPh6Tj3ATo93jl5nyRz7Bu3KeP93/lPWolD/unJ9rBZ70RN+d1JcqJpssKqW4fO+JhiZZjUO/NFWLx++iw==, tarball: file:projects/ai-language-text.tgz} name: '@rush-temp/ai-language-text' version: 0.0.0 dependencies: @@ -12312,7 +12312,7 @@ packages: dev: false file:projects/ai-language-textauthoring.tgz: - resolution: {integrity: sha512-7aAZaIE6ahWWMxXrKlZM93wDSgZZOKX4LslsHX/sraizWXyR22lMKTdKijRHuVBA5xjBRVYOZluYrJx8A6zMRg==, tarball: file:projects/ai-language-textauthoring.tgz} + resolution: {integrity: sha512-wXY0hmfLnoX/QUm7162liqVwLbbK+5Wz5HKkQ13kFx0VD46+RulZvEzCGpLJzuZwZMcVe5Fmx5/cc99apBZHjA==, tarball: file:projects/ai-language-textauthoring.tgz} name: '@rush-temp/ai-language-textauthoring' version: 0.0.0 dependencies: @@ -12339,7 +12339,7 @@ packages: dev: false file:projects/ai-metrics-advisor.tgz: - resolution: {integrity: sha512-Tj+0tIDSDdm2LdIuXTejBPxBgy0gsPU8mBBVBbHKeIb+FasY6yYhc0od5JqAC3l9u5zHXynQydpiYr20Zndb6w==, tarball: file:projects/ai-metrics-advisor.tgz} + resolution: {integrity: sha512-qAI5xIRUS+Ty+eY9S+gLEkotKTSab8Q6+dOGlKaPg72hfPCITvmMUp55CT/ymb9lII1e5TJucB68eoIK7KUOOA==, tarball: file:projects/ai-metrics-advisor.tgz} name: '@rush-temp/ai-metrics-advisor' version: 0.0.0 dependencies: @@ -12384,7 +12384,7 @@ packages: dev: false file:projects/ai-text-analytics.tgz: - resolution: {integrity: sha512-KhEaRw6EXf2LMmw6rbuaep9/G4kKWATXsA5czScbTOkJ3bQKOACslWN3zynn+puHpuyIeANMVovQaNH8oRd1xg==, tarball: file:projects/ai-text-analytics.tgz} + resolution: {integrity: sha512-9AE3KXidyFXViHMYmRWM7WJEg53GZT/h6s+HW5ZEBT566w3KqBU+p+F73H2prhtB7a2qliFImje5qZtaIXAGrA==, tarball: file:projects/ai-text-analytics.tgz} name: '@rush-temp/ai-text-analytics' version: 0.0.0 dependencies: @@ -12432,7 +12432,7 @@ packages: dev: false file:projects/ai-translation-document.tgz: - resolution: {integrity: sha512-CUgcDnP4iLxFoyNL9RodEV0H7fPSYRvXM+/hsZ67V3mhljUkVKJhkpP1iWFUXrvvkGRQQzf82hH1TTVLPOsW1Q==, tarball: file:projects/ai-translation-document.tgz} + resolution: {integrity: sha512-VXTMJzu7K/qqZLWizJuciKoN8Ll44VgLi/W5HAXBMo7Vw/10hQ68lLwOuSiWvaoRvP8pBHHwzfdnlx3QHD8gew==, tarball: file:projects/ai-translation-document.tgz} name: '@rush-temp/ai-translation-document' version: 0.0.0 dependencies: @@ -12478,7 +12478,7 @@ packages: dev: false file:projects/ai-translation-text.tgz: - resolution: {integrity: sha512-qP0fJHmK6pvXHkr/+8VRiaEnMSIDLKA6e/BLWa4191Rs7sY7JHN65mpnaJr6f5AGarsM9DioGCR4vVNVlOZN2A==, tarball: file:projects/ai-translation-text.tgz} + resolution: {integrity: sha512-p3TGmnsHnU7VgkCFrN0Z1ZvV6Wi8RaNMXC7dVMl6pdBsmQfhXvTvU6v5MJB6wG2VosDPuObYl0xZBmA8+/dzyg==, tarball: file:projects/ai-translation-text.tgz} name: '@rush-temp/ai-translation-text' version: 0.0.0 dependencies: @@ -12523,7 +12523,7 @@ packages: dev: false file:projects/ai-vision-face.tgz: - resolution: {integrity: sha512-b7slZpEl1LpjRaYGgklDf65qioXCpNY/pjBqGi8TzgfN+8dHvPFLPhIEVtvgQGrZXApQbIgL/uGyETgZzOxeMw==, tarball: file:projects/ai-vision-face.tgz} + resolution: {integrity: sha512-yrz9WamFIlutlxlZk8+4KpDQZnLox+FQo/VW3IzDeOjl0hLve6LqbqmF8aAPzK8TwYnqj1dCM27VzEP8JV29Qw==, tarball: file:projects/ai-vision-face.tgz} name: '@rush-temp/ai-vision-face' version: 0.0.0 dependencies: @@ -12560,7 +12560,7 @@ packages: dev: false file:projects/ai-vision-image-analysis.tgz: - resolution: {integrity: sha512-zTS3hFS7O8OPYXm4uENfz0YR20bpyVt9q0RelECnrcvwpbx9i4wIU7JbOYwF2VCH+w/Qqyz5Cn6I+sB7HHcb/g==, tarball: file:projects/ai-vision-image-analysis.tgz} + resolution: {integrity: sha512-NjkIybfKy4Rlqmo1/9z5lrfmLbVGAF4CI/UkkXskaeGtoc2vZ353quN9edxsbGgshaON8Ko+cffYZAEgc9lIyg==, tarball: file:projects/ai-vision-image-analysis.tgz} name: '@rush-temp/ai-vision-image-analysis' version: 0.0.0 dependencies: @@ -12605,7 +12605,7 @@ packages: dev: false file:projects/api-management-custom-widgets-scaffolder.tgz: - resolution: {integrity: sha512-FEBfxROLPrkTn0VVZ7aufeYRUdcTjQvGk8lsblwdksfoZKS1BoV1TIbsE9rl8SnxCwR14EOLz3HGH3GSdyG/bA==, tarball: file:projects/api-management-custom-widgets-scaffolder.tgz} + resolution: {integrity: sha512-GZeSyqANNsL9zcWkTlNZbFxBxvYB3OBoWq9YWyZr6+co0Ob66Qa4u/KIageRNg4a/jrLQ4sFTPL5XxbZaxacpg==, tarball: file:projects/api-management-custom-widgets-scaffolder.tgz} name: '@rush-temp/api-management-custom-widgets-scaffolder' version: 0.0.0 dependencies: @@ -12647,7 +12647,7 @@ packages: dev: false file:projects/api-management-custom-widgets-tools.tgz: - resolution: {integrity: sha512-FTroYsXVADLz4ZAkR6SLfqxfaQJkhPKngl9plg05ojybnDayS7zq6tOE+AnLaRgUxcHN1FmWtCZyuoDYuiys/A==, tarball: file:projects/api-management-custom-widgets-tools.tgz} + resolution: {integrity: sha512-A90Q1xxhMyQ+c8B1W266p6Tc2cCtKtI2KeyxxjNPkzvuAMNaucIbY9ISJUbfKRvtOrRgNOfspqI5ILaie5e69A==, tarball: file:projects/api-management-custom-widgets-tools.tgz} name: '@rush-temp/api-management-custom-widgets-tools' version: 0.0.0 dependencies: @@ -12682,7 +12682,7 @@ packages: dev: false file:projects/app-configuration.tgz: - resolution: {integrity: sha512-KwR3Vybd3Ztiy4K9ip+AnUawPzSjeb1Q0fZo2iw3srJV0IiWlyrX2Iro5DWmfbrAh/GPRDEkD4Z+qE68Tjy72w==, tarball: file:projects/app-configuration.tgz} + resolution: {integrity: sha512-vcJ+x5auP8U/c57cs6z9kw1bpv05oepd2Kl9M+TYYMKy5TeWS4Rr7JiQt35wDaCNmzG8uQGAOgxm0rQfm69YdA==, tarball: file:projects/app-configuration.tgz} name: '@rush-temp/app-configuration' version: 0.0.0 dependencies: @@ -12723,7 +12723,7 @@ packages: dev: false file:projects/arm-advisor.tgz: - resolution: {integrity: sha512-7uVXn38MP0I7Z+N8ZhIfrCABbTGDyGUx32sDJnBKYUPjlVqNrYWpVg60fHO+ctJiyYCKkVMK2j7ylLFXwa6nLg==, tarball: file:projects/arm-advisor.tgz} + resolution: {integrity: sha512-ONDZvrOim69rDzQBWt543U5MKPMRStHQEzC16TH/oI8ZygTY84QYTcIWz3FDRwS4lBSZ0Z72TqugbDODzM3++w==, tarball: file:projects/arm-advisor.tgz} name: '@rush-temp/arm-advisor' version: 0.0.0 dependencies: @@ -12751,7 +12751,7 @@ packages: dev: false file:projects/arm-agrifood.tgz: - resolution: {integrity: sha512-jsPaiebyJktur3n88Qm3T2GQXvUADvxtcUeJ4SrQ6dMJ/kG2RkXv0DZLKTqmN24+yutdmTtRMjDDTcMU2YcPow==, tarball: file:projects/arm-agrifood.tgz} + resolution: {integrity: sha512-i1ek0oxoPQwE8tPgFTLIuXwiZKWiasqgMRQr+/dRqKSgGy/hhzs+Gn/jGaotoSZUy0x2RRPZbj9py37h6hlUEg==, tarball: file:projects/arm-agrifood.tgz} name: '@rush-temp/arm-agrifood' version: 0.0.0 dependencies: @@ -12780,7 +12780,7 @@ packages: dev: false file:projects/arm-analysisservices.tgz: - resolution: {integrity: sha512-a0Ja/CJHta1gcIVwDv6n+U42KnLIqrw1IBqfl1D+bsVN5wpkDOAvt++qpxh1Ky+8aWkjWgg21U59YsfOnhOzAg==, tarball: file:projects/arm-analysisservices.tgz} + resolution: {integrity: sha512-qsgQGqt6ljAq0Hmtzp7XWSxvjd9MCE7+q/kjfndlJYx8J6TDMY1smP/aWemHcF7Xmd/bwVjTnPCuTmxWggIpXQ==, tarball: file:projects/arm-analysisservices.tgz} name: '@rush-temp/arm-analysisservices' version: 0.0.0 dependencies: @@ -12809,7 +12809,7 @@ packages: dev: false file:projects/arm-apicenter.tgz: - resolution: {integrity: sha512-uNfhigCN7B1SkHgHM3lhp4R2TdkSf9m4wLxwAgXifm7rnOl0hyQfGw8ygjkOMxuFCPwgX9rM/eXlGw7kQzfcKA==, tarball: file:projects/arm-apicenter.tgz} + resolution: {integrity: sha512-Qh+lHGerbgZWF7GP5VhTWJSQxHXOMs/54f5LUl2Kf4S+vX+Fw4unC2sJYHwF+/o76PuOo1ZDhsSeEhQk+3PiQQ==, tarball: file:projects/arm-apicenter.tgz} name: '@rush-temp/arm-apicenter' version: 0.0.0 dependencies: @@ -12839,7 +12839,7 @@ packages: dev: false file:projects/arm-apimanagement.tgz: - resolution: {integrity: sha512-xef6Zjq6D7heDmdMuBaHpNBGbiD1pb5i1Moz4aF+t3BGK0ucDsGBYXME4DwbmgUb2uhsyR9yhS88MPq4X6Y/Nw==, tarball: file:projects/arm-apimanagement.tgz} + resolution: {integrity: sha512-ZqZou4qud1Z3UFDwOTQW7s3qhGgOB2KzueMtCmx5r21gUDQg/y/hMGXbcfeEaGEbpHe8Gxqtw17gcJWfl6trVQ==, tarball: file:projects/arm-apimanagement.tgz} name: '@rush-temp/arm-apimanagement' version: 0.0.0 dependencies: @@ -12869,7 +12869,7 @@ packages: dev: false file:projects/arm-appcomplianceautomation.tgz: - resolution: {integrity: sha512-5mpGjNpV24Yt2Y7vOFW3X84kN5Bvlm+XzAStkgpeNxDBcGyhwYW7ksiU1HgBIHEp87aeQbrukd3v3o6AfyHl7Q==, tarball: file:projects/arm-appcomplianceautomation.tgz} + resolution: {integrity: sha512-Pd/JqBu05RGe4wqjJVLLa90k+z/AqUhtcGVxmQ9dRJwh8zxDVNHclr7pFXofuO4bQFsy9aQABOYF38wVric9uw==, tarball: file:projects/arm-appcomplianceautomation.tgz} name: '@rush-temp/arm-appcomplianceautomation' version: 0.0.0 dependencies: @@ -12900,7 +12900,7 @@ packages: dev: false file:projects/arm-appconfiguration.tgz: - resolution: {integrity: sha512-lCQNAsbeCwjO9ysZRusChuTJJqx3ZnJxNsrW2iwgJojrw7fU618rnfEL7oWAqO4U/XjNdSIHgR1Njt0emKrnLQ==, tarball: file:projects/arm-appconfiguration.tgz} + resolution: {integrity: sha512-LmhRDolg8axc1KaQr6KvRBgfNM1lC3o6SviyAAreWU0wnh7C1gTGLqjhgjhUk724hG22qykhI8nZWkybJwvrTA==, tarball: file:projects/arm-appconfiguration.tgz} name: '@rush-temp/arm-appconfiguration' version: 0.0.0 dependencies: @@ -12930,7 +12930,7 @@ packages: dev: false file:projects/arm-appcontainers.tgz: - resolution: {integrity: sha512-OLDQ9cIJXarZUMBqrsu4Yxni7ctTNO+xJHgapzZ42fI1r0sX+6GCHxn2KeTeLImDs2i+unsZMtiPGybNhlFnUw==, tarball: file:projects/arm-appcontainers.tgz} + resolution: {integrity: sha512-SMgeN7K2D/LNYdTE9QSMvv0neVWexFww3XY7QWQDfJBXcaBca1Ja1rrFuAp3io9wG/bsb4TJ9tjF4jYc7TugPA==, tarball: file:projects/arm-appcontainers.tgz} name: '@rush-temp/arm-appcontainers' version: 0.0.0 dependencies: @@ -12961,7 +12961,7 @@ packages: dev: false file:projects/arm-appinsights.tgz: - resolution: {integrity: sha512-cnk29PDE3tFVEYSD/sPzYfBzjIL5KOnIxycYJlvMs2sBSfbeN/THEe34sNLOOVQTDyyZQwNyy0M2cwBm0PLbkg==, tarball: file:projects/arm-appinsights.tgz} + resolution: {integrity: sha512-PqNCW0YBSbm10wfJ7Ekze7VWgyYrLRLOhgvyFKEitS+E8RZzsgwmCuBexSv6hJlmtpZ6gHuFTFm/OfXDm09ktA==, tarball: file:projects/arm-appinsights.tgz} name: '@rush-temp/arm-appinsights' version: 0.0.0 dependencies: @@ -12988,7 +12988,7 @@ packages: dev: false file:projects/arm-appplatform.tgz: - resolution: {integrity: sha512-s6Dm7EaIZ0EpvEBmjvWfdxordEua5TIcwc/Cp8y6dvHN4lEZ1tBRd2YG5zNyd+XNWsjFXCWqVi0mbKHhiF3F7g==, tarball: file:projects/arm-appplatform.tgz} + resolution: {integrity: sha512-qT22GdfjSRZcMFcDK0cD5ymkHstpHYz4RkfETJZd+oluUFldDlTQoyeP//uOTAAvVPfjIikFl3B1Ko9eZOXZ0w==, tarball: file:projects/arm-appplatform.tgz} name: '@rush-temp/arm-appplatform' version: 0.0.0 dependencies: @@ -13018,7 +13018,7 @@ packages: dev: false file:projects/arm-appservice-1.tgz: - resolution: {integrity: sha512-XXXsV4q4EQNoLKXSx1noyz448MgLXaTTAcXKm9dlvOVQM0XABZTCM48ivwIPq2vXvSVnFifK+3FX4Irs3ykUtQ==, tarball: file:projects/arm-appservice-1.tgz} + resolution: {integrity: sha512-kQe3MOm7L8EPmfEZEjXBAkXwCCET+Yq9p/LLYKUykS42Nr95zB3QvUQhAnZ83lgSz2OXCbEq/gmEZk6hKZNcYw==, tarball: file:projects/arm-appservice-1.tgz} name: '@rush-temp/arm-appservice-1' version: 0.0.0 dependencies: @@ -13049,7 +13049,7 @@ packages: dev: false file:projects/arm-appservice-profile-2020-09-01-hybrid.tgz: - resolution: {integrity: sha512-ECcJDZNgAm39MjQX5+HTa8lpZRO9c+MdOiR8XBGrDv13jWy//2KVpk7S+nPIH4mGqVs904/zfFmVQOrD7Wr2gQ==, tarball: file:projects/arm-appservice-profile-2020-09-01-hybrid.tgz} + resolution: {integrity: sha512-DVWWsXM84QXXu1e/Xc6M2QSwtF3uACo44vxXY+f8eaI5lmQb0K65YnGn/SltOvCavdUi/ci828R6/1WbxAEHWA==, tarball: file:projects/arm-appservice-profile-2020-09-01-hybrid.tgz} name: '@rush-temp/arm-appservice-profile-2020-09-01-hybrid' version: 0.0.0 dependencies: @@ -13079,7 +13079,7 @@ packages: dev: false file:projects/arm-appservice.tgz: - resolution: {integrity: sha512-2akMZ2GrgqZ4b59N6IMfJYG3jD6p4bHujN0dsqpEkvwPpTfZQYcc9gGW6xeZJzdJjOXhcubKO7sM4WFZPCwMjQ==, tarball: file:projects/arm-appservice.tgz} + resolution: {integrity: sha512-yjfMdED/EYOLCEz+8gc00WPVFsvPTLWOhUQDXnqfWOSib2atSvSbvWxNeCT5jyVM9RF82bCiLQ7fAtAsrmZWEA==, tarball: file:projects/arm-appservice.tgz} name: '@rush-temp/arm-appservice' version: 0.0.0 dependencies: @@ -13125,7 +13125,7 @@ packages: dev: false file:projects/arm-astro.tgz: - resolution: {integrity: sha512-nF21ZZdOGg9T+tyQwgFYHgn8VNsymT+aMOcH3LgU10a2NmYGOayAh6RD6WNCjYwaMHDgFbhyWx3lO8QEnlmoUQ==, tarball: file:projects/arm-astro.tgz} + resolution: {integrity: sha512-BkU280DnWj0UmhHVAVaoIwi7NfOWsuyp+nV49cWTcyuTK75RfVqsy1o5ctw0ASyFqZ7w8R42W8IK0OFwwGEMHA==, tarball: file:projects/arm-astro.tgz} name: '@rush-temp/arm-astro' version: 0.0.0 dependencies: @@ -13155,7 +13155,7 @@ packages: dev: false file:projects/arm-attestation.tgz: - resolution: {integrity: sha512-gqtK+R5NlVQ6UmRdJQljN2z/DUtY+eMpjDaf5TVgMqqNMe9rEfxQCsglTK5Ri2iBbyjwDjNaZXprI4SRNeQ9dg==, tarball: file:projects/arm-attestation.tgz} + resolution: {integrity: sha512-7/MEkicR8Ch4QFzgEvj4q+2HCLnBGFlICmcQsb7wPKkRTL65nBT5zOmMr3hIr7qPhXsYlVTq8+KCZ90XNflxDQ==, tarball: file:projects/arm-attestation.tgz} name: '@rush-temp/arm-attestation' version: 0.0.0 dependencies: @@ -13182,7 +13182,7 @@ packages: dev: false file:projects/arm-authorization-profile-2020-09-01-hybrid.tgz: - resolution: {integrity: sha512-Edd07Pv1abh7Q/emiojC6/bTKFP34XgWhxXvuAqwaMm7p1QlEtuQ8cLPbQCrvIugJij8aHcRB3acYNwLWUvC2g==, tarball: file:projects/arm-authorization-profile-2020-09-01-hybrid.tgz} + resolution: {integrity: sha512-7TLK9EBIt/ZuDkyTnYVES3qLrFyhUVr6D6FTKf7PV59FuzWvva3mfsZAJMdZ16O3nv/RWvnSp+UUhGHpIzQj8w==, tarball: file:projects/arm-authorization-profile-2020-09-01-hybrid.tgz} name: '@rush-temp/arm-authorization-profile-2020-09-01-hybrid' version: 0.0.0 dependencies: @@ -13210,7 +13210,7 @@ packages: dev: false file:projects/arm-authorization.tgz: - resolution: {integrity: sha512-QUXBw75W/xuESE7mouVPCVoBTu6aCXpVXnn2PujkrFGm2n5aDXUkzrklJOagfFDHxffGZHNJR9bKUZwkWZ9zCA==, tarball: file:projects/arm-authorization.tgz} + resolution: {integrity: sha512-tfepyJDCO5hqCTLdhg68cVHYdJt4YQxgBc9d5YwOgYTJT43/YqjraQnX/22NgU4pKpTAzZfEpi2dVZV+PDPTLA==, tarball: file:projects/arm-authorization.tgz} name: '@rush-temp/arm-authorization' version: 0.0.0 dependencies: @@ -13240,7 +13240,7 @@ packages: dev: false file:projects/arm-automanage.tgz: - resolution: {integrity: sha512-RqF7sWkucg+paJB9mIO6cN2ULzL9TJDZkipdMnDby3US53GQFoIeMJ5PvYu5V9WsajHwWJgkvchAMT9Ep16iZA==, tarball: file:projects/arm-automanage.tgz} + resolution: {integrity: sha512-KJzz8fCv09Iyh78FSK11aVd4Xc0bItlDEb0N9pBdoa94N4bPCyZgJQCPgf2oQWJNygUzfhrEfnqRQ5M7NDgMww==, tarball: file:projects/arm-automanage.tgz} name: '@rush-temp/arm-automanage' version: 0.0.0 dependencies: @@ -13268,7 +13268,7 @@ packages: dev: false file:projects/arm-automation.tgz: - resolution: {integrity: sha512-CTauQD4cEtFdQm0QpTfYI0DXAw/aE9w8ZYwcxY8fkPKaVtCJ2mmc5ghSogk5dSjeJQBjBBTfiPVIho14t+uNwQ==, tarball: file:projects/arm-automation.tgz} + resolution: {integrity: sha512-mXhiPEWjDJqAGw6oFlns7O+Gh5Wr5nGeXjHEMTAeVOA2Ve38pNy/I+1Zk4VtyG1nFltJ/QrWJxmEC0VmkBYFeA==, tarball: file:projects/arm-automation.tgz} name: '@rush-temp/arm-automation' version: 0.0.0 dependencies: @@ -13298,7 +13298,7 @@ packages: dev: false file:projects/arm-avs.tgz: - resolution: {integrity: sha512-aVbAeRY+1Nji7SMcF1eh7H94NNAJLm9mnAckJklxyCjycvNkD8zddSRc9XoIyT0BXy8x/e+vrJYpUkwAttUPPA==, tarball: file:projects/arm-avs.tgz} + resolution: {integrity: sha512-+IFz0D29ExLZpKlyxsw0lApXJb7w9Z4vXIsp4VclJOVYjA3ki/xHvIVYgNUgj1FM4t3jUgZHzBzmVa4LEw5xHQ==, tarball: file:projects/arm-avs.tgz} name: '@rush-temp/arm-avs' version: 0.0.0 dependencies: @@ -13329,7 +13329,7 @@ packages: dev: false file:projects/arm-azureadexternalidentities.tgz: - resolution: {integrity: sha512-LboCP/Yr2jO/MKTuLVFTrf43Y9fU6NDTCEsgx1ogNNfZ29g5Wqgb4JkidpaBC9vv0pjtdbh5tD3zMg35sFe3WA==, tarball: file:projects/arm-azureadexternalidentities.tgz} + resolution: {integrity: sha512-i+fwANat6eviAY700xtVUslIYRG/EBechZcHIRl2r91Yip2clTlGSpB3koHx57zMDOR5ithqYuuiwgWtcRzRyw==, tarball: file:projects/arm-azureadexternalidentities.tgz} name: '@rush-temp/arm-azureadexternalidentities' version: 0.0.0 dependencies: @@ -13358,7 +13358,7 @@ packages: dev: false file:projects/arm-azurestack.tgz: - resolution: {integrity: sha512-0mbOPd9c/AT7c2t8J8IDoUe6Zm0YmZpcwwApqq2zERVyD9n+WOgvGaCNa6G2PxN3gTpFEPvLokDZNjfSRCbBzg==, tarball: file:projects/arm-azurestack.tgz} + resolution: {integrity: sha512-N5cccsxzqlInPk7M1kMdiGZPPG91peL4FGuoL42vwXtLJc/C11JMBSipNbPPl2Hc28aYeBKcOSJVERwvUXIjHw==, tarball: file:projects/arm-azurestack.tgz} name: '@rush-temp/arm-azurestack' version: 0.0.0 dependencies: @@ -13385,7 +13385,7 @@ packages: dev: false file:projects/arm-azurestackhci.tgz: - resolution: {integrity: sha512-bsJRg4MkRLuhqXBY+qFlolaUjmWrJ21C+NJY9LY7WuMjhgoTgbcCxlBiBC1B0WqpJzqWIulQD06tpAeiXiBo3w==, tarball: file:projects/arm-azurestackhci.tgz} + resolution: {integrity: sha512-k838V47XP/HxDMeD4fiNtdEwsPE/JTgLyob01bMYrPNxUTy/O/SXde0Wr3RsgcALPe3VUqsEin0Mq/RAv7TD7A==, tarball: file:projects/arm-azurestackhci.tgz} name: '@rush-temp/arm-azurestackhci' version: 0.0.0 dependencies: @@ -13415,7 +13415,7 @@ packages: dev: false file:projects/arm-baremetalinfrastructure.tgz: - resolution: {integrity: sha512-O0WjisLnirZaKLl1bfQ6VhweynhDE3pXOgMMhsGwy7wjAzKpkW4APklwMKdNQ2i8UpwQEl9j5vGJFOwLk5NDvA==, tarball: file:projects/arm-baremetalinfrastructure.tgz} + resolution: {integrity: sha512-jdMMUOeUEWhlQ/aXd5+7i8i49BK8ha4M+AgDepfREAWn1saCpUE8RVKijvEZqikfh4BS5L32sI4JXiI1sKaaGQ==, tarball: file:projects/arm-baremetalinfrastructure.tgz} name: '@rush-temp/arm-baremetalinfrastructure' version: 0.0.0 dependencies: @@ -13445,7 +13445,7 @@ packages: dev: false file:projects/arm-batch.tgz: - resolution: {integrity: sha512-3F4c2h2nkA1K1Cm7LPyjdhyz2Rs2p3JH6xhxN6jGAWaNlgqE1nxVzF/xS4lJyJKCc6VXcx1svN7zbiGbbs89Ag==, tarball: file:projects/arm-batch.tgz} + resolution: {integrity: sha512-3aUIlwYUbSPurjG9yccsqEZNXcvrq5jiPHjchk7qIeNyNozjqZJeDdi6uVKCCbnuXfxpH/Yw7B5cPQsiLvZkrw==, tarball: file:projects/arm-batch.tgz} name: '@rush-temp/arm-batch' version: 0.0.0 dependencies: @@ -13475,7 +13475,7 @@ packages: dev: false file:projects/arm-billing.tgz: - resolution: {integrity: sha512-FARPUh7FdBujg4dHXxguxHOlHOiRabQvrjuPUVXw5eabf7QhTy2FhjqOgYrnQRsIDpZh2a4pSiEfPiEbw0SQzA==, tarball: file:projects/arm-billing.tgz} + resolution: {integrity: sha512-XqVfHJQp30vLd/KaGRST9KZcwTOziUBxt+R6TCq5ul7xeY8fKnJD51WVoS7nfX4EA+r6b090AfWKsa+eBIcimA==, tarball: file:projects/arm-billing.tgz} name: '@rush-temp/arm-billing' version: 0.0.0 dependencies: @@ -13504,7 +13504,7 @@ packages: dev: false file:projects/arm-billingbenefits.tgz: - resolution: {integrity: sha512-apIk0547dfQi4KBASblct0DzcWxZ1cXoeWOtmdRBR8zMQWQWhPXD5Gb8FEB21CgMnLp5EhD7GfsCmWapVheq8A==, tarball: file:projects/arm-billingbenefits.tgz} + resolution: {integrity: sha512-zPOa9UDM7jV3n8ERiszjwDOoc1pZFh3v49EwXAMzIXCwVWMRyneZ2DhGRLWGoGTxuyNtMPXWiEeFt0NKOSbw3A==, tarball: file:projects/arm-billingbenefits.tgz} name: '@rush-temp/arm-billingbenefits' version: 0.0.0 dependencies: @@ -13533,7 +13533,7 @@ packages: dev: false file:projects/arm-botservice.tgz: - resolution: {integrity: sha512-wMCVMuBEdhyh2pXUSDexEvjfqXjqNzr8Y8KnT9jMQ4knY8idnXDP0WNSVhs5Zq8l89rZN13XHzXWwoTf2zUJPQ==, tarball: file:projects/arm-botservice.tgz} + resolution: {integrity: sha512-hu3i3Ofv7/CKCncDACaI5l0u9H9/MHAIczAGozaQj+moBzBHQQExgrLi8O5mycR+Fjn+tRAioau37QaOCizr4g==, tarball: file:projects/arm-botservice.tgz} name: '@rush-temp/arm-botservice' version: 0.0.0 dependencies: @@ -13563,7 +13563,7 @@ packages: dev: false file:projects/arm-cdn.tgz: - resolution: {integrity: sha512-qb9ts7b8hCxIcC+UoonLr7GJTyVE2w4JSzxUYD/cq+d5N7MrKw/MQ6X48jT1TQWX2IJFqyF+4rVUiovt75b3wA==, tarball: file:projects/arm-cdn.tgz} + resolution: {integrity: sha512-3gYIjQuSTOLvxf3QjgF48JT+dEZbJYdk4jF098AkeSmYwrXvOLSGghpldwRpjVuVJlqiwNZRwR3o7R5FXHb/sQ==, tarball: file:projects/arm-cdn.tgz} name: '@rush-temp/arm-cdn' version: 0.0.0 dependencies: @@ -13593,7 +13593,7 @@ packages: dev: false file:projects/arm-changeanalysis.tgz: - resolution: {integrity: sha512-GFfbNDyWcUJbnJn194KZaCemMPGs9IAYlU0vFE4xOO5vuFduQRDSO4cc50fXst2rXPFqlAIE0rK8SOM0fKr3QA==, tarball: file:projects/arm-changeanalysis.tgz} + resolution: {integrity: sha512-fWlQBPipM3/lpPJEHMI8jsfQwft2ek7atdJLQ3lowOE4Z8uHKDG+ilJqiv1EE95NBrmuF+doeuefBAnZS+ZKCw==, tarball: file:projects/arm-changeanalysis.tgz} name: '@rush-temp/arm-changeanalysis' version: 0.0.0 dependencies: @@ -13620,7 +13620,7 @@ packages: dev: false file:projects/arm-changes.tgz: - resolution: {integrity: sha512-seCCegGmOhz6G5p3LB85+3cvpwfJt4vTDDj8dLjKKa0m9ptXuAH8q0z86iQ+TbKVxsO2UpTl+UXUZjyxtkOtNA==, tarball: file:projects/arm-changes.tgz} + resolution: {integrity: sha512-RFhj9PYgucMkojmG/xWi+do0jmguJR5N6CVU/5dpEPMSNTFSOZpJmfhxlhbSCzKFHWC9WtEvecRQKNNNVowjwA==, tarball: file:projects/arm-changes.tgz} name: '@rush-temp/arm-changes' version: 0.0.0 dependencies: @@ -13647,7 +13647,7 @@ packages: dev: false file:projects/arm-chaos.tgz: - resolution: {integrity: sha512-QXFVLF2dA2LGC5B+0uw8mlQcjJKpkJ8TpRff22N4pros7Dflf6GdxnbYA5dM9I2yPiCkHmQHnHkkDVIuEggqzQ==, tarball: file:projects/arm-chaos.tgz} + resolution: {integrity: sha512-3hM3+gdZSqsMiZrXetEK26zwL7KyXZp4THJw7SueBiHoD9zoZe+c8U11KMpN4IDJiFOq7/bDBLo0ag8PnzPZzA==, tarball: file:projects/arm-chaos.tgz} name: '@rush-temp/arm-chaos' version: 0.0.0 dependencies: @@ -13678,7 +13678,7 @@ packages: dev: false file:projects/arm-cognitiveservices.tgz: - resolution: {integrity: sha512-dl27cjyX71D1d4m38cXejpA1O2i4DFb2MTAH/CND4bavP3LaQbIYkpqXSZUc7EoNXoI6jMZMRGcKgqMVUgNLQQ==, tarball: file:projects/arm-cognitiveservices.tgz} + resolution: {integrity: sha512-y9yTVZHuFJI8dPwzEvercZND+2IfBtS4POhKWZt/y6kxrPTlZmxw+opxEDBzl8Yjlvef50gRtFFuIAv3UqAP7g==, tarball: file:projects/arm-cognitiveservices.tgz} name: '@rush-temp/arm-cognitiveservices' version: 0.0.0 dependencies: @@ -13708,7 +13708,7 @@ packages: dev: false file:projects/arm-commerce-profile-2020-09-01-hybrid.tgz: - resolution: {integrity: sha512-bz+19yI1HQFlgrZQQZjZNOSHf+Hh4CrvP+nyOLusea0AWaJs1aChxIMmfs6VkRsc5Ewz/pGmFz0WJPmkMJSTeQ==, tarball: file:projects/arm-commerce-profile-2020-09-01-hybrid.tgz} + resolution: {integrity: sha512-abUvhMDWA+f2jmsVFo3u2Uhgle7OPoyEn0Qm2itWEPLW6KcC3zWsUP87ASqlSOVAcXi+uqqaLYCasMXtNee0uQ==, tarball: file:projects/arm-commerce-profile-2020-09-01-hybrid.tgz} name: '@rush-temp/arm-commerce-profile-2020-09-01-hybrid' version: 0.0.0 dependencies: @@ -13736,7 +13736,7 @@ packages: dev: false file:projects/arm-commerce.tgz: - resolution: {integrity: sha512-LWkAeSCgEawOR2ndN6jJCHy3rg3Rx12DrpITnO8m0UrYoM/I+igLnAmtzFrWuaPPrYIboLBzxNMokfFcXSLS/w==, tarball: file:projects/arm-commerce.tgz} + resolution: {integrity: sha512-C+jpx3gDx5Lyb8oXrbNqttOQnlPoGY97pYY0wyzyABCjLSzV8LGnxK0HbPP+Bs9/IS/KuWoiPrTEW00sgh8jBw==, tarball: file:projects/arm-commerce.tgz} name: '@rush-temp/arm-commerce' version: 0.0.0 dependencies: @@ -13763,7 +13763,7 @@ packages: dev: false file:projects/arm-commitmentplans.tgz: - resolution: {integrity: sha512-whETLRCVXON1vxsXT38mJ5yqCEdwAE+vAlBJEaFbFbSQsZ6xgLvavVlB0mmOqUNZOjI+QHKha9Vu0a/CDw/yZA==, tarball: file:projects/arm-commitmentplans.tgz} + resolution: {integrity: sha512-/Ob9UPZ/v732DkVwUELb9Eymmbdi7h+W6hdYWvY6QkLlrrtywdchXNcVAH5mRafuBfyJayI/+LP5pKwFrsbRpw==, tarball: file:projects/arm-commitmentplans.tgz} name: '@rush-temp/arm-commitmentplans' version: 0.0.0 dependencies: @@ -13790,7 +13790,7 @@ packages: dev: false file:projects/arm-communication.tgz: - resolution: {integrity: sha512-Rq0A6A/jA9bGHTJ8xX8n5QCJb2zKiZQINXv/oF1LEiNsCpmULW38CHvpcCzYzFevY7ZX/RCAp78d7ybuqqg1yw==, tarball: file:projects/arm-communication.tgz} + resolution: {integrity: sha512-2xEGkC1vwagWSicT0dw8cB8tpRwVYDXf4NbYWW53tgeyrW4TIdUiqGDIghLJPiN4cvLhttOYfCXxjEPgFbfOLA==, tarball: file:projects/arm-communication.tgz} name: '@rush-temp/arm-communication' version: 0.0.0 dependencies: @@ -13820,7 +13820,7 @@ packages: dev: false file:projects/arm-compute-1.tgz: - resolution: {integrity: sha512-AM0dsiMAJJ2gP64uWD5ysDFbFhSeYjtTasktK5CUVdqxAXZQuTkLgYw7a0tULebPWwF46L3mrmqQYzz/Gs/dTw==, tarball: file:projects/arm-compute-1.tgz} + resolution: {integrity: sha512-htTzU/qeMbztclayDaALb69likrxG5yfqsxktJ13IrT2EfCQT0inWi5E74C+k9nztbPUvj7111EL4w5Pxi9OaQ==, tarball: file:projects/arm-compute-1.tgz} name: '@rush-temp/arm-compute-1' version: 0.0.0 dependencies: @@ -13852,7 +13852,7 @@ packages: dev: false file:projects/arm-compute-profile-2020-09-01-hybrid.tgz: - resolution: {integrity: sha512-BbmJHyqUYQSUU+BFZdrNijIZh4ffin6Yr6225Nm47Q79+rUflF0lhHz0y7/DZ98dvET8pMy2bayEVQaL3cyoRA==, tarball: file:projects/arm-compute-profile-2020-09-01-hybrid.tgz} + resolution: {integrity: sha512-fNsQuQcpvlHm5zbEFeZydIMJO1FKgjveSOBvuzk4Z8Ls5lHDUys/i3lQdIg0h0RyVp55OrpOsqxGnkWf8uC6jA==, tarball: file:projects/arm-compute-profile-2020-09-01-hybrid.tgz} name: '@rush-temp/arm-compute-profile-2020-09-01-hybrid' version: 0.0.0 dependencies: @@ -13882,7 +13882,7 @@ packages: dev: false file:projects/arm-compute.tgz: - resolution: {integrity: sha512-VYWMdomJKQucZjeoj7vC5sLt+WfOvXijJPZAPSphCz4IYA2GMLSzOOI3plFcTyaIc/DQmoUe8yofCNLc2wb4kA==, tarball: file:projects/arm-compute.tgz} + resolution: {integrity: sha512-7FI/MhP2kRDY0FUaisuP/hIpX62E1NL4eyyPhadmBb4gCYxrukQq7TeE098mPu6VXdp2vrmfaWBviCp27HSM/Q==, tarball: file:projects/arm-compute.tgz} name: '@rush-temp/arm-compute' version: 0.0.0 dependencies: @@ -13929,43 +13929,44 @@ packages: dev: false file:projects/arm-computefleet.tgz: - resolution: {integrity: sha512-gmJQjY5CbvJG5u5rNr14RoC8D2ZIntCSD63pFVcPdvQrQUMZMfTWgfd47GsFgkDwDUMzPknwbcF+neX5D3xqQg==, tarball: file:projects/arm-computefleet.tgz} + resolution: {integrity: sha512-sd+UPimLdPDhIW2cpkMHhUmwMGGpLPtonCUMudy+Ukf4jLm+Kkt2bgBeKuhuvN7iSvnm8jUrBqDly+Bf4XqDog==, tarball: file:projects/arm-computefleet.tgz} name: '@rush-temp/arm-computefleet' version: 0.0.0 dependencies: + '@azure-tools/test-credential': 1.2.0 + '@azure-tools/test-recorder': 3.5.2 + '@azure/core-lro': 2.7.2 '@azure/identity': 4.4.1 '@microsoft/api-extractor': 7.47.5(@types/node@18.19.43) + '@types/chai': 4.3.17 + '@types/mocha': 10.0.7 '@types/node': 18.19.43 '@vitest/browser': 1.6.0(playwright@1.45.3)(vitest@1.6.0) '@vitest/coverage-istanbul': 1.6.0(vitest@1.6.0) + chai: 4.3.10 + cross-env: 7.0.3 dotenv: 16.4.5 eslint: 8.57.0 mkdirp: 3.0.1 + mocha: 10.7.0 playwright: 1.45.3 prettier: 3.3.3 rimraf: 5.0.10 + ts-node: 10.9.2(@types/node@18.19.43)(typescript@5.5.4) tshy: 1.18.0 tslib: 2.6.3 + tsx: 4.16.5 typescript: 5.5.4 + uglify-js: 3.19.1 vitest: 1.6.0(@types/node@18.19.43)(@vitest/browser@1.6.0) transitivePeerDependencies: - - '@edge-runtime/vm' - - '@vitest/ui' - - happy-dom - - jsdom - - less - - lightningcss - - safaridriver - - sass - - stylus - - sugarss + - '@swc/core' + - '@swc/wasm' - supports-color - - terser - - webdriverio dev: false file:projects/arm-confidentialledger.tgz: - resolution: {integrity: sha512-/+COUhTsLVbHeC7HbjPJjUTImMuZwOLH+9XuTudUccVUTz53dY6opFZNtUM7GVaywFK1fGXY2N92bN7H7z3Ilw==, tarball: file:projects/arm-confidentialledger.tgz} + resolution: {integrity: sha512-zxZU/JNsnSaYxiS4gMIh80c4JtSyr80YyLEMDCWMNlHq+C+be/nXEt6p5bpi7kn//tjrzt14eMZnTCi3pE3K2Q==, tarball: file:projects/arm-confidentialledger.tgz} name: '@rush-temp/arm-confidentialledger' version: 0.0.0 dependencies: @@ -13996,7 +13997,7 @@ packages: dev: false file:projects/arm-confluent.tgz: - resolution: {integrity: sha512-2o273gtGPTC2K2/i46A21qYt2qP4tcRSqAfJJP4LqWdzkdt8+XBFjlExZzEmLmuZnnlszOwLurb5b944u+l7HA==, tarball: file:projects/arm-confluent.tgz} + resolution: {integrity: sha512-z/AubcnKHzpxf/9w781YbGNb53vuciy1f76Ar+Do5o5Berokb8x6ocuWrJs+kIDgy0igy7ju0Bt88Sf2avMikw==, tarball: file:projects/arm-confluent.tgz} name: '@rush-temp/arm-confluent' version: 0.0.0 dependencies: @@ -14026,7 +14027,7 @@ packages: dev: false file:projects/arm-connectedvmware.tgz: - resolution: {integrity: sha512-w1T74Hc0+RFb5V3bH0jQuBBUCENQ3/MRlEIOYf3x0nZQ3OzHSAfA1Q6uMm82oZzJ+VF9VLUCBGfxo6wfwmFn0Q==, tarball: file:projects/arm-connectedvmware.tgz} + resolution: {integrity: sha512-PjgIWOJHPB3uSxF1IR1NtM5TfRZ7cGTOylTsjMaA5vvIgMfwcdtq2ADpnhfUPkqcjGJJwcA3vzieQUxb3AbNhg==, tarball: file:projects/arm-connectedvmware.tgz} name: '@rush-temp/arm-connectedvmware' version: 0.0.0 dependencies: @@ -14056,7 +14057,7 @@ packages: dev: false file:projects/arm-consumption.tgz: - resolution: {integrity: sha512-Gcy5nXxsywa4b9F7LFIiS+QtQCf0L9YsdfqyYqLpY/2A/Ix0S34nyU1xhIH2dk2Qzyg93sbNFpOWzXMif2Vugw==, tarball: file:projects/arm-consumption.tgz} + resolution: {integrity: sha512-H3G/xqgawMywQnmbzgmiHgs3i0fO3Vji3LJHZxek4Ep4zkjyzif6svW5QQq0C8uF6fMGrGmyi9FisnIqImjhng==, tarball: file:projects/arm-consumption.tgz} name: '@rush-temp/arm-consumption' version: 0.0.0 dependencies: @@ -14084,7 +14085,7 @@ packages: dev: false file:projects/arm-containerinstance.tgz: - resolution: {integrity: sha512-IeTmSosHKsNS/TA1NqQNs/nksO+D8+6b05enj5Tqe8JkVyyjWdgz0jCVap5GMOd9zmhSZgTlzBXzf7/8JlZAOg==, tarball: file:projects/arm-containerinstance.tgz} + resolution: {integrity: sha512-ki0IumWTAuuvtP5w6e5OEXc7U8NGGPUTJRfQrK74zPExsA60o71EM/2LNlp+Ac16fL6WJgHvueRFRhQyUvHuzg==, tarball: file:projects/arm-containerinstance.tgz} name: '@rush-temp/arm-containerinstance' version: 0.0.0 dependencies: @@ -14114,7 +14115,7 @@ packages: dev: false file:projects/arm-containerregistry.tgz: - resolution: {integrity: sha512-ou0H4p1Lf9vhdrNtJwDAs4apzn2PTEQ+i43Cjf+z3cYejA+mM69a9Ps0vjFniRH0xtYDzyMw+ILLORQKBx3MmQ==, tarball: file:projects/arm-containerregistry.tgz} + resolution: {integrity: sha512-rnNxFSztZHA0UnR05hfe5N5CRQCEDCQsM9cWo+53EWcpc/OOos6gr8znKJoAMRF02hLQFKz7zXVHYyd5lPHiMw==, tarball: file:projects/arm-containerregistry.tgz} name: '@rush-temp/arm-containerregistry' version: 0.0.0 dependencies: @@ -14144,7 +14145,7 @@ packages: dev: false file:projects/arm-containerservice-1.tgz: - resolution: {integrity: sha512-MSE9EQsFt80usJvYiYKfr8QgkOTk0uB7i+d1RvEgz0W1HSWx0r+5sI52jjaQo2s2l3Vb9f+p0N+Vn2Os9LhWPg==, tarball: file:projects/arm-containerservice-1.tgz} + resolution: {integrity: sha512-B9/qkrGTOKFMl1uKG6/YuYHwnQK58VyjOWRr6v5YqzdTXlMrxpc81HJTSnpRv6MloAEedISGePdfBULz1OMvuw==, tarball: file:projects/arm-containerservice-1.tgz} name: '@rush-temp/arm-containerservice-1' version: 0.0.0 dependencies: @@ -14175,7 +14176,7 @@ packages: dev: false file:projects/arm-containerservice.tgz: - resolution: {integrity: sha512-7BoXb1vMgKl/PnaE7JZthEQMaxNxic7BttWWBLpU7ZMvCYhcM2Z7u0biB30PhTs142yT3G+JEp6R1JLpdPFu+Q==, tarball: file:projects/arm-containerservice.tgz} + resolution: {integrity: sha512-0JWrY8HNeTojCQQQuuqZ32zVkxL8Rnv2xlnIUMHLsE5ghlYs39pA6XEU0aeYxm+f1g50D4048djHAJ5lg0HAKA==, tarball: file:projects/arm-containerservice.tgz} name: '@rush-temp/arm-containerservice' version: 0.0.0 dependencies: @@ -14221,7 +14222,7 @@ packages: dev: false file:projects/arm-containerservicefleet.tgz: - resolution: {integrity: sha512-Plqg8H1yVOsiNy5aqEAviSDO03X5onAnB2CYgd6U4qjY0ZvKJVyAcrgEdNqzU7WCqPCVgy605+iEX7xWxjpQUg==, tarball: file:projects/arm-containerservicefleet.tgz} + resolution: {integrity: sha512-Q0BxwTAQnv16ETxkfwg/n4NZAwSelH9Cv9XdsDcGrReeV1pXHlwg7dErxk6ey+ocHUVD7qA1wp21qzffwXSTyA==, tarball: file:projects/arm-containerservicefleet.tgz} name: '@rush-temp/arm-containerservicefleet' version: 0.0.0 dependencies: @@ -14252,7 +14253,7 @@ packages: dev: false file:projects/arm-cosmosdb.tgz: - resolution: {integrity: sha512-EcEo0Mm8/H7VWVbwvb0BVt/nk3JFgPvVRp39nDyt9jY/pevKEPihUH1BfmhuOCQdNaZWhhI4QOzLsFGHweHYCA==, tarball: file:projects/arm-cosmosdb.tgz} + resolution: {integrity: sha512-/Cb2yd9t9k3cmTg9QUJrli800W8j+28xZxoGfymYrZfHxm2geOtI4euBHu9lNCjNcI2TeZX8uuR3BIl9hIQOYg==, tarball: file:projects/arm-cosmosdb.tgz} name: '@rush-temp/arm-cosmosdb' version: 0.0.0 dependencies: @@ -14283,7 +14284,7 @@ packages: dev: false file:projects/arm-cosmosdbforpostgresql.tgz: - resolution: {integrity: sha512-qcPKWxfssW4deS2vRfGT1AixQhA2XK/BBSCxm1G7fo7A4Jqw0GBXRYbYtCVw6rzX5RHouZXYa7LAmJxPGpQ6wQ==, tarball: file:projects/arm-cosmosdbforpostgresql.tgz} + resolution: {integrity: sha512-lX1LJoAhDJjNaSE5A3yi4qJ8BSHkKkV20RZMigPUnz/1ThN0CVUWH2MN4HAZtmPer6xvUMczjJ+wyjekKpK2bA==, tarball: file:projects/arm-cosmosdbforpostgresql.tgz} name: '@rush-temp/arm-cosmosdbforpostgresql' version: 0.0.0 dependencies: @@ -14313,7 +14314,7 @@ packages: dev: false file:projects/arm-costmanagement.tgz: - resolution: {integrity: sha512-5lpA8pqyyAM2ac2mD8Etgdb6v9PzqcrM+DEp4w7lnQNVj9cNtExLPemZT+jQL+hxaJSQL5Xuvak60S7d1QbXAw==, tarball: file:projects/arm-costmanagement.tgz} + resolution: {integrity: sha512-ICAyriWE/1Jebu5380CxWafhOlbO2j+8AmeLt3n70whmJb5UD2V51XYTO5xaqLwGrWmHieAu0g0EYuluewaDWg==, tarball: file:projects/arm-costmanagement.tgz} name: '@rush-temp/arm-costmanagement' version: 0.0.0 dependencies: @@ -14343,7 +14344,7 @@ packages: dev: false file:projects/arm-customerinsights.tgz: - resolution: {integrity: sha512-rB62XQy8dvXMz4M/7aeeFyB23YakTjOxwE6FgpqoJCzE6ZjsoXmq+Ji0AoaanssRvJkETEg5z2IksAg2+vURlQ==, tarball: file:projects/arm-customerinsights.tgz} + resolution: {integrity: sha512-LZLPHeTQuFJL3fPsooEXPQSe+KWznuY0q4Wiicxqa1CLHzL5NnUrpDi3juuOh5JUCctiVj4qPa2W04n23b2A8A==, tarball: file:projects/arm-customerinsights.tgz} name: '@rush-temp/arm-customerinsights' version: 0.0.0 dependencies: @@ -14372,7 +14373,7 @@ packages: dev: false file:projects/arm-dashboard.tgz: - resolution: {integrity: sha512-ADCtf6wHVl4+mj0XkmgezMbzyz1dJbEZWEXokWIuAIUNeMfPomxXikfPVgIWxB5tPFSxHDS7+L2HrfII5sb21A==, tarball: file:projects/arm-dashboard.tgz} + resolution: {integrity: sha512-s/5AttuZg8VGAqE5bB4lXAC2glSpE3Fem/i6oquOwA50duTuCdiMvuiXc/ctmfoT7F+YM1TD/+pwCXTxXyk2tA==, tarball: file:projects/arm-dashboard.tgz} name: '@rush-temp/arm-dashboard' version: 0.0.0 dependencies: @@ -14402,7 +14403,7 @@ packages: dev: false file:projects/arm-databox.tgz: - resolution: {integrity: sha512-Jl0QbnBUPsstqrSz0FBnacdEPWP4pXxLGmCIqcEy5dOqQFh0jxUfQMKe1nFttPrQIsXvSPPZ1dq+Xzg3voJlUA==, tarball: file:projects/arm-databox.tgz} + resolution: {integrity: sha512-Nv3Ub6mRlmbPyFq7Em22lQGHv3iI5kJhTKChNIXhp5BCjGwektVQhjrZ2grjO1gwBv+BTDkfiOMsvwEqiZc8Bw==, tarball: file:projects/arm-databox.tgz} name: '@rush-temp/arm-databox' version: 0.0.0 dependencies: @@ -14432,7 +14433,7 @@ packages: dev: false file:projects/arm-databoxedge-profile-2020-09-01-hybrid.tgz: - resolution: {integrity: sha512-3apwrQnikZL/C1EwsqxokVNwTTuxIgCBimntJkPzmTt6Sl1r3EnvkpCEq3nV9K2PFRLcwomKRGDo/4AFlpqG2g==, tarball: file:projects/arm-databoxedge-profile-2020-09-01-hybrid.tgz} + resolution: {integrity: sha512-iF38cTOLQCdEZFr1xo4K9+83MQJJWq00aF9+6syKOCB2AJMxZ4E9Z6QyP/sDCBFJdVdoxF8FX3SLvQdBlz1t3g==, tarball: file:projects/arm-databoxedge-profile-2020-09-01-hybrid.tgz} name: '@rush-temp/arm-databoxedge-profile-2020-09-01-hybrid' version: 0.0.0 dependencies: @@ -14462,7 +14463,7 @@ packages: dev: false file:projects/arm-databoxedge.tgz: - resolution: {integrity: sha512-pd8wV626yBwXSHjpO3zbIUBBvayYezwyB2iFk3kckdVDaJC4sYdwlr1k+0cmUel5VEM2hzP9ZcrJ8BLzpHHWeQ==, tarball: file:projects/arm-databoxedge.tgz} + resolution: {integrity: sha512-lVHnZW1D9P6WuVY1yYsvXo3VNP4QB9BkVE/19PyFPQQ/HAB9YLDOsWrkVwJuhYSYGpImuA7PT+EKYYaRbHgwxg==, tarball: file:projects/arm-databoxedge.tgz} name: '@rush-temp/arm-databoxedge' version: 0.0.0 dependencies: @@ -14491,7 +14492,7 @@ packages: dev: false file:projects/arm-databricks.tgz: - resolution: {integrity: sha512-ukffrFz9KXG84YZnYgyMVU2WxzeM+UafOjUKGXBQuPDRaRdr4fyH2WbE18S8KSzhgSM2uh9Bajon4PXnfYA5eA==, tarball: file:projects/arm-databricks.tgz} + resolution: {integrity: sha512-tUasK3ua2kjINJZkPGzMcPP6I58AryQuPRH8TMQDznPh60vKKxLPA5QHx8nSSG0qugZkX/0ahb7KbrftgNxlyg==, tarball: file:projects/arm-databricks.tgz} name: '@rush-temp/arm-databricks' version: 0.0.0 dependencies: @@ -14521,7 +14522,7 @@ packages: dev: false file:projects/arm-datacatalog.tgz: - resolution: {integrity: sha512-6Xh58jdmq7AmyrpgyMtP2og8OJmKzGfI4A2o78o9ntzfKPgFg5GvVweJYinUFrHhgVy8wllq8m+DbNmwYJ/SeA==, tarball: file:projects/arm-datacatalog.tgz} + resolution: {integrity: sha512-+W7Fi+B5qVpGDKk8dzHL5qkJGNnB/BkryLKfxxPDLzNOLjhlU/Xq90MVlDxYmj1HnAQRWZ/ZlgLILQQjj4PR/w==, tarball: file:projects/arm-datacatalog.tgz} name: '@rush-temp/arm-datacatalog' version: 0.0.0 dependencies: @@ -14550,7 +14551,7 @@ packages: dev: false file:projects/arm-datadog.tgz: - resolution: {integrity: sha512-4vtDGxEr7bIHpf8wrPt8hOm4Iot3u7ATo7PcgFJ22B1QRo6+fjDt5B8aXBbvx6wUD4pdn8lyxpWNIKDaEwZ0JA==, tarball: file:projects/arm-datadog.tgz} + resolution: {integrity: sha512-tWQ6xPYw4sqDI7Dr1jEKm7amuwojB2LYeaFnClsQkm0GAoia87JGNlWTJTd+UltPWpLsNnBUsLBbeBIxBFNb0Q==, tarball: file:projects/arm-datadog.tgz} name: '@rush-temp/arm-datadog' version: 0.0.0 dependencies: @@ -14580,7 +14581,7 @@ packages: dev: false file:projects/arm-datafactory.tgz: - resolution: {integrity: sha512-Q/UgF/jHUhFWs4a2VHg5BPu4EacOjaoAJqlLqGFX3ZwG0GZDoRx8FtqHRw8p4jzKB5vuOrEV/3GzXjtsgu1WWg==, tarball: file:projects/arm-datafactory.tgz} + resolution: {integrity: sha512-Jx47zRvgQVatq+t+0Sz4w2FGrkpnN+ZovYRIiaE6PXH01ZjvI3z8+eesGhylvYKWzLq15lmPmOoOZsG1Qf5Spw==, tarball: file:projects/arm-datafactory.tgz} name: '@rush-temp/arm-datafactory' version: 0.0.0 dependencies: @@ -14611,7 +14612,7 @@ packages: dev: false file:projects/arm-datalake-analytics.tgz: - resolution: {integrity: sha512-BwKg050DuWAe2bNSn0L7Y6/gxF5is/sUEyI6ey6pbro0hFwUYwrYuWbPvoEXJ0XQh4F3+KAfRuIaBXqwUG0NAw==, tarball: file:projects/arm-datalake-analytics.tgz} + resolution: {integrity: sha512-6pqdujvH7QAEVcGKtGa+Qvy3jc4Jvq6ROXRx52o8gU1qP1pffb/2QKTgDYIFVSWJOtvn7vKWsSv++K3JGYRp0w==, tarball: file:projects/arm-datalake-analytics.tgz} name: '@rush-temp/arm-datalake-analytics' version: 0.0.0 dependencies: @@ -14640,7 +14641,7 @@ packages: dev: false file:projects/arm-datamigration.tgz: - resolution: {integrity: sha512-IEsrSpKapYUOg8ZJtoftvyu8cucFaJYNhfA7aIcIVop729u4EGFXXhRvFhSU8TdU904tqTrdfKU+QQIsrqEeAQ==, tarball: file:projects/arm-datamigration.tgz} + resolution: {integrity: sha512-TNCRVby5YXY0c2e7shxpP9fLOiMuAPzrad82L5d/PsWCiFxay/kHltRhC9yfEuJOLi9SPaHherVuIsUxFyKozA==, tarball: file:projects/arm-datamigration.tgz} name: '@rush-temp/arm-datamigration' version: 0.0.0 dependencies: @@ -14669,7 +14670,7 @@ packages: dev: false file:projects/arm-dataprotection.tgz: - resolution: {integrity: sha512-mPMDI8V3PEYMWzKfjL/WqtwL2gZjPrAQNoT8PZOO4Du7TC4r9oVMjoPoPtPIqEYTMGuCh80/gto9RGc+jL0xxg==, tarball: file:projects/arm-dataprotection.tgz} + resolution: {integrity: sha512-LdVQlNk85WkLK9UFEnJJKKKUL2eAwL6Mqs6VgOGojOomnnQGZg/kNYOgdtbvJ/V0th5JLVzDSD55d+xfUO49vg==, tarball: file:projects/arm-dataprotection.tgz} name: '@rush-temp/arm-dataprotection' version: 0.0.0 dependencies: @@ -14700,7 +14701,7 @@ packages: dev: false file:projects/arm-defendereasm.tgz: - resolution: {integrity: sha512-7ZapL0RxM8uEdo9Rw4fqFSSwB9+oVkAO1tBNtqmGgo4pQSJqAfEounweI8xswwkiraFYuc/BxStTTI6S2D5Z/A==, tarball: file:projects/arm-defendereasm.tgz} + resolution: {integrity: sha512-98fr3fMGLC57z4fOkxQpGGkppirHPusHmoYQqJJ1FJxmacoAygaezvyR7QJ0P/2dYd9MQAVVshAItBnRCX55+w==, tarball: file:projects/arm-defendereasm.tgz} name: '@rush-temp/arm-defendereasm' version: 0.0.0 dependencies: @@ -14730,7 +14731,7 @@ packages: dev: false file:projects/arm-deploymentmanager.tgz: - resolution: {integrity: sha512-RxofYNGQ4TP+HYcb8QI86FIpjvnsmd6s1Lc9SpdDJ+v7xTfZa5lq6Qy/w3pDGeBRlPDm9dZm1K+q79p3JeAqYA==, tarball: file:projects/arm-deploymentmanager.tgz} + resolution: {integrity: sha512-bnUVyGPtkPe8LNSyCy1yClVXU8St7RlUkXoNBlihb5TyJFsyPuXKgYXpcYh9iyHpiKqoLiS7Cj4gPM0C0nmkKA==, tarball: file:projects/arm-deploymentmanager.tgz} name: '@rush-temp/arm-deploymentmanager' version: 0.0.0 dependencies: @@ -14759,7 +14760,7 @@ packages: dev: false file:projects/arm-desktopvirtualization.tgz: - resolution: {integrity: sha512-KO7SOu5mwyQwRnZp5ptYmnZ6oHUIMHsxwKWASnilMZuqST0RRWg3B35U9fhFA/ELowa5fUc+LpnDczPD58r+LQ==, tarball: file:projects/arm-desktopvirtualization.tgz} + resolution: {integrity: sha512-mGgbpMxIDwwPkf1n/Qpmb8nIWXxfBmYKxjaYcxWabnoNdL2keoT0+jqT1fsIU2ttLUMm5Zj4pI6+2pGCI02+DQ==, tarball: file:projects/arm-desktopvirtualization.tgz} name: '@rush-temp/arm-desktopvirtualization' version: 0.0.0 dependencies: @@ -14787,7 +14788,7 @@ packages: dev: false file:projects/arm-devcenter.tgz: - resolution: {integrity: sha512-JurFyM3b6qbeR5PO5zx2jDzOwiMPPUn/RAi0UeM62muO2TmoeBUKLkjbJhCTRillgWeJHVNFIplnyuY54mBLlw==, tarball: file:projects/arm-devcenter.tgz} + resolution: {integrity: sha512-WzOYyZ7sYCs47LFx+uqBrSXVF+Rkif62PG7vbbljUQSsBkrnhtXwMD76F6w2iYLF6nbRbsvkyhoXlBzT/M8tiw==, tarball: file:projects/arm-devcenter.tgz} name: '@rush-temp/arm-devcenter' version: 0.0.0 dependencies: @@ -14818,7 +14819,7 @@ packages: dev: false file:projects/arm-devhub.tgz: - resolution: {integrity: sha512-uM9sv49gEdbbukbPXUkGwEr57/C8G4voHCZVwjayArvzQxpmw0vCRWgmdNtHFUMNF8qxAne7E9v5b0oge6KgsA==, tarball: file:projects/arm-devhub.tgz} + resolution: {integrity: sha512-EdaLVv3eLxnjLGMlbdpAddyXwOZfPmne9ziabI5duyiaNj3LGB3XFzDFXxB5Q14PELzsp7pxO9j8dTOb63tWoQ==, tarball: file:projects/arm-devhub.tgz} name: '@rush-temp/arm-devhub' version: 0.0.0 dependencies: @@ -14846,7 +14847,7 @@ packages: dev: false file:projects/arm-deviceprovisioningservices.tgz: - resolution: {integrity: sha512-D1j7w251vbrba8H1bHgnWhFID6Nf0yN2d2IaXcyB4zNibyi0D8ZI8SvBidMrsGXOo+yAD/jCSp1Ta4n+xgy+Dg==, tarball: file:projects/arm-deviceprovisioningservices.tgz} + resolution: {integrity: sha512-lQqDbv7g9n5GKZZ6XzHJ/1krYnpj7WD+L9eUGsDCYNIvfS820VCD2NWILorCZ1HM3aH60jS+1vE2yYq6rUriVQ==, tarball: file:projects/arm-deviceprovisioningservices.tgz} name: '@rush-temp/arm-deviceprovisioningservices' version: 0.0.0 dependencies: @@ -14876,7 +14877,7 @@ packages: dev: false file:projects/arm-deviceregistry.tgz: - resolution: {integrity: sha512-uorbaXlwdBW4pHmu5isNUlJSOqG2W/3hDKtz+t+cmKhs+exRSXDtKUTjQVQliSIEKvVFnKlguoD85DXlOFi6Bw==, tarball: file:projects/arm-deviceregistry.tgz} + resolution: {integrity: sha512-k8vk0idHyonOoNArlqW4tLfeAxfW8FCbnXT0OzkiNQKp45c6YSsFT1htPCQEQmLDMoDWfuUsmAvrNMdKlEZD6g==, tarball: file:projects/arm-deviceregistry.tgz} name: '@rush-temp/arm-deviceregistry' version: 0.0.0 dependencies: @@ -14907,7 +14908,7 @@ packages: dev: false file:projects/arm-deviceupdate.tgz: - resolution: {integrity: sha512-sxFBXsSKlNJMjF2Z/fHgJ74YDfmEOpvhJBJWng55rnryYJpx18+0tvuY4o7kDQKfo5fNk/dVYJKyBA6mz1Q8tw==, tarball: file:projects/arm-deviceupdate.tgz} + resolution: {integrity: sha512-z6sZ0yLyraPVZIG8aB/OCRUf1V1BKgZmZSmoM88wL1miK+yYSVvRJcNPDW72x4btKJXhfQTGrCjIjyBE9vCPmA==, tarball: file:projects/arm-deviceupdate.tgz} name: '@rush-temp/arm-deviceupdate' version: 0.0.0 dependencies: @@ -14937,7 +14938,7 @@ packages: dev: false file:projects/arm-devopsinfrastructure.tgz: - resolution: {integrity: sha512-4zHK93tKjUT4Aksx+xEV/eCXF5V/jP0XNr6J0V4yt7oWNIh4OEgNpl0i5XG8MRVBVjpxRoWnixbZgnm+nZNogg==, tarball: file:projects/arm-devopsinfrastructure.tgz} + resolution: {integrity: sha512-Xmke4vEWYHy+QQ+/iYtu7ywr+ynW+EXriwXzdXW2rQ8himsYCsyQRz2GXCwJBKYBl1mmtDwAUE4SGZ9NMKFwQA==, tarball: file:projects/arm-devopsinfrastructure.tgz} name: '@rush-temp/arm-devopsinfrastructure' version: 0.0.0 dependencies: @@ -14968,7 +14969,7 @@ packages: dev: false file:projects/arm-devspaces.tgz: - resolution: {integrity: sha512-mIcMSxyuO791Tup/qBtwba/rS/Pbz5qAWnZMacRfMAtRBGIc1/F7MnqNeJVNbMnOu9IuvAzbAN05dLOM2YkRqA==, tarball: file:projects/arm-devspaces.tgz} + resolution: {integrity: sha512-jlFWQo4HQ3JQyIXMlCCenE0wkocWFAkYr/CWnc0NQkX5AsiO/jnh9PMYvFqQuEdyS2jqYGYyu7C3nKUZNHEtzQ==, tarball: file:projects/arm-devspaces.tgz} name: '@rush-temp/arm-devspaces' version: 0.0.0 dependencies: @@ -14997,7 +14998,7 @@ packages: dev: false file:projects/arm-devtestlabs.tgz: - resolution: {integrity: sha512-c7ox4i6D023X+c7vBcY9EF4LP/lQiI9vpslVpCLzYIqY++5AmBtKrzxyumlOnMkQuFFYK9LuRR7T7Jtz8f4ReA==, tarball: file:projects/arm-devtestlabs.tgz} + resolution: {integrity: sha512-gTx80BQNVPreQoy/L1z1UA3lDxk8fXJkRPr9JeqSgoy5vwXN37+fsHcaied4c6lhQjHLj1n2JH3Rbd8iZk1zIw==, tarball: file:projects/arm-devtestlabs.tgz} name: '@rush-temp/arm-devtestlabs' version: 0.0.0 dependencies: @@ -15026,7 +15027,7 @@ packages: dev: false file:projects/arm-digitaltwins.tgz: - resolution: {integrity: sha512-eQT/IMro7HG/g0+aj5gAv1oiShbvUeRzPbGBgWDg4pgpDLBsSTFK//ARjCI7M/qM9Z3XvNjUSTznM8N6LbR6UQ==, tarball: file:projects/arm-digitaltwins.tgz} + resolution: {integrity: sha512-hACmyDTZT5Nue06GH53PNJ4TWpcKbpHpzB/e4J/ojnEFMlTW4oTLU6aWCEKsElp2BQ2xJ/p2l+3uktEQ+2cx/Q==, tarball: file:projects/arm-digitaltwins.tgz} name: '@rush-temp/arm-digitaltwins' version: 0.0.0 dependencies: @@ -15056,7 +15057,7 @@ packages: dev: false file:projects/arm-dns-profile-2020-09-01-hybrid.tgz: - resolution: {integrity: sha512-T0wRLScYsY4szLLWEDd+V9ap7cyXs8jRV93nyNtSV5I9LvyV7tTrFDkFmNvnFHoUYvdmK4TfWPkSv9Vv4COwCg==, tarball: file:projects/arm-dns-profile-2020-09-01-hybrid.tgz} + resolution: {integrity: sha512-6jkA53NekdbstrWe3SvTUdK+CcIEJjdyuwKyqmZlOuVm04+0EZgCjmijZYN/3quQCrFnukBHwrP4d2VVbxwtgA==, tarball: file:projects/arm-dns-profile-2020-09-01-hybrid.tgz} name: '@rush-temp/arm-dns-profile-2020-09-01-hybrid' version: 0.0.0 dependencies: @@ -15086,7 +15087,7 @@ packages: dev: false file:projects/arm-dns.tgz: - resolution: {integrity: sha512-TQido9uO82arRWzrTN0K1remElEhm2ouPkrvQEtOtQRIUl/84aLjasJjjsF2RDLRhwnm7PjDIo/oozZVAQXFyQ==, tarball: file:projects/arm-dns.tgz} + resolution: {integrity: sha512-HEM58a7DcKeutSbQVeZ3jdVaBeQbGn/4b8C58+XTVwaEljTCMbma2Nas20P3ehm2Wy9p3R9kz1ioUA9afWpjdg==, tarball: file:projects/arm-dns.tgz} name: '@rush-temp/arm-dns' version: 0.0.0 dependencies: @@ -15115,7 +15116,7 @@ packages: dev: false file:projects/arm-dnsresolver.tgz: - resolution: {integrity: sha512-cXYXTCEm/jh3jlVQ8d7a1dCCqELzBsFshdreRd5Ly2NOx/IQ26C9fs20Txh16GN6b895cyziWsQd2zXefJajjg==, tarball: file:projects/arm-dnsresolver.tgz} + resolution: {integrity: sha512-DeLf7+7CkmmVIUt9YZSfoBhkxZNdk3QdqtlS8krdPjms6MZczMyc4xtFuXWbXrE8ejCrBvhAur1caIV576e+Gg==, tarball: file:projects/arm-dnsresolver.tgz} name: '@rush-temp/arm-dnsresolver' version: 0.0.0 dependencies: @@ -15145,7 +15146,7 @@ packages: dev: false file:projects/arm-domainservices.tgz: - resolution: {integrity: sha512-56Z4MCVLd1HbrkYnH8JbLj7z1J9OPSPw/9kSyCNju0k5RB8LcJZt6gU8PNmfabcIhr98j9FeReHOIBbTxjzphw==, tarball: file:projects/arm-domainservices.tgz} + resolution: {integrity: sha512-7EqjjV4zyIaCTWxDU+h1f6asLud4RJF4fMBQ4uGizNy0Y4kxBWWa7zG9UJ3MsSkD6U3q+GSGx35QGYt2WaIYUA==, tarball: file:projects/arm-domainservices.tgz} name: '@rush-temp/arm-domainservices' version: 0.0.0 dependencies: @@ -15174,7 +15175,7 @@ packages: dev: false file:projects/arm-dynatrace.tgz: - resolution: {integrity: sha512-7X2We+Y8snc3mGhkUhpBka7+vg42/KySiScTOBtj185VYJJ/LgCGCif+TXh6qY3w3Gh2MKA05FXhkpWeUgJx2g==, tarball: file:projects/arm-dynatrace.tgz} + resolution: {integrity: sha512-Uoemd4Ar2HBsOdh/+FqGAG1YW4h9Qk2GuV/QMlI9ahEvpQz1HeUAGM6azHHbNxDdBV5Lvd3p3JZvMO6QrQFTQQ==, tarball: file:projects/arm-dynatrace.tgz} name: '@rush-temp/arm-dynatrace' version: 0.0.0 dependencies: @@ -15204,7 +15205,7 @@ packages: dev: false file:projects/arm-edgezones.tgz: - resolution: {integrity: sha512-3NBroBpf0z4Jm7ISLqTIrbJvfCA9YSK1prqA9Ydiqwvyl5nQFbH0iA8Sr88JizNQmPtkL0TfOb05aruifG6b4Q==, tarball: file:projects/arm-edgezones.tgz} + resolution: {integrity: sha512-Na4394umHoYsyakR2voSfFcGZtbPSJMUSd2sWjrMAW2W7igl0BjM2lwaqwKdnnJInzoRkaZaguzjFBaSBdqwxQ==, tarball: file:projects/arm-edgezones.tgz} name: '@rush-temp/arm-edgezones' version: 0.0.0 dependencies: @@ -15240,7 +15241,7 @@ packages: dev: false file:projects/arm-education.tgz: - resolution: {integrity: sha512-6s1hwNP3POhgx1UP1s5nCcMk9lCYjVLKaZq96w+AHz3a4CUSAMnrAWepnfqSHXOyzY8JGfUSsVIJ0QlnCbLHaA==, tarball: file:projects/arm-education.tgz} + resolution: {integrity: sha512-x6BSagYZf8VqOMvVwS2MCGtyhVMapl42fkbhFnOZ3QWsD0wzV8erSQ8Yc+xkuZJ2YomexmEaWbimbNCHcyNGrA==, tarball: file:projects/arm-education.tgz} name: '@rush-temp/arm-education' version: 0.0.0 dependencies: @@ -15268,7 +15269,7 @@ packages: dev: false file:projects/arm-elastic.tgz: - resolution: {integrity: sha512-2FKz7gVut3EymfgeZeq6x+sZtiOjZbQIv6ei1YmBfQ+8GObnZvyNY9l7i8DcrLlRUm/c3XpAbnfZWSXjMK4tJA==, tarball: file:projects/arm-elastic.tgz} + resolution: {integrity: sha512-PSzS1KszY3iCaTiQ8PdeNs1dmiUfcvVfUYaOxivul9DmZGa7Fzn7N1w6PXjBcwmK9HhAPa4iFsrCJB/L58IsJQ==, tarball: file:projects/arm-elastic.tgz} name: '@rush-temp/arm-elastic' version: 0.0.0 dependencies: @@ -15298,7 +15299,7 @@ packages: dev: false file:projects/arm-elasticsan.tgz: - resolution: {integrity: sha512-Dq0oe3mUlmgcZODwRVKN6dmH57NPB2jSsbeoFVORgq7fUSpvOatHlJ6rlD7bARKiPY1z0sSKw4zT1FGP6XgsBA==, tarball: file:projects/arm-elasticsan.tgz} + resolution: {integrity: sha512-4MMnTd/nW32J1g50ddHY5IdpRQf+v/I3sNjzV3Ba66iuJ0NGEnPp7bAxYU48fxowbaRUQxICJzV2bOSsfAVRmA==, tarball: file:projects/arm-elasticsan.tgz} name: '@rush-temp/arm-elasticsan' version: 0.0.0 dependencies: @@ -15328,7 +15329,7 @@ packages: dev: false file:projects/arm-eventgrid.tgz: - resolution: {integrity: sha512-4YK9IynwJXon9hJnbaeH4il+Yq2RjMdtBTxhzG52gkxmrNU8Lmyhf1gg2GYo+7sGjzweXu+bmoG7aYnQEDRuIg==, tarball: file:projects/arm-eventgrid.tgz} + resolution: {integrity: sha512-ffWmdtpwL+nEAZ2QP/XA8o3d6Aj4hV4mXQwBVcc+mmUTooGQaKDeRmtM22yHvgsue1adeRspsiEro1C72uxRfw==, tarball: file:projects/arm-eventgrid.tgz} name: '@rush-temp/arm-eventgrid' version: 0.0.0 dependencies: @@ -15358,7 +15359,7 @@ packages: dev: false file:projects/arm-eventhub-profile-2020-09-01-hybrid.tgz: - resolution: {integrity: sha512-q4eSlXelnKFJrtia8RshRPcr7JmE2I1M0l3XJS9CVDgHcq6c9xtMY+8naxW94MK2C4eT2gXc5ahteYeegSBUrA==, tarball: file:projects/arm-eventhub-profile-2020-09-01-hybrid.tgz} + resolution: {integrity: sha512-gKfci7TRJeVa2haPo9T+5O0bCejD+6KISf9tm2zK73w9UdnQ5HjzNoeMK8pULQRRtW1DBIYdIGhpD0wQcq0i2A==, tarball: file:projects/arm-eventhub-profile-2020-09-01-hybrid.tgz} name: '@rush-temp/arm-eventhub-profile-2020-09-01-hybrid' version: 0.0.0 dependencies: @@ -15388,7 +15389,7 @@ packages: dev: false file:projects/arm-eventhub.tgz: - resolution: {integrity: sha512-NK8mDnu6HDMOlxun9X23Jc7OciDr5lidWZb/j0XdcRVaOWKdj4KHU6Pm6oIHAHdRQkJ320EqyErR1zd3uWiElw==, tarball: file:projects/arm-eventhub.tgz} + resolution: {integrity: sha512-lfSe6nQ7fPzbc+L69MCp4abRS9+vrcP1wgn5rtTcwpOAPTk1LmK6+3WOalQcpLwkbXkU/XKce1h0nKfh0iJJBg==, tarball: file:projects/arm-eventhub.tgz} name: '@rush-temp/arm-eventhub' version: 0.0.0 dependencies: @@ -15419,7 +15420,7 @@ packages: dev: false file:projects/arm-extendedlocation.tgz: - resolution: {integrity: sha512-/1oB6Ijpuu0oWvGgxE1qz+FvBRcGQorcbD9w9rnBoph/sHRVSc/ri43q/dZrUHd/0UiyiEtg8r37cEPdld4/vQ==, tarball: file:projects/arm-extendedlocation.tgz} + resolution: {integrity: sha512-euvVbog11FaHgYwp9+Y1UGHlbQ+MCA/UWJF5rutfFaIGSvwXbinRDjCID22NBEbbLvgynb4M+P1tBMldTgaf/g==, tarball: file:projects/arm-extendedlocation.tgz} name: '@rush-temp/arm-extendedlocation' version: 0.0.0 dependencies: @@ -15449,7 +15450,7 @@ packages: dev: false file:projects/arm-features.tgz: - resolution: {integrity: sha512-MGfIHL8E9i2mEsSj2AttXklT/ZhCUZ19LiTlRCilTPfp+Nv+pTncUpKdKRjD+TpDDBKwtt8g1tNbCzqNdUkXMA==, tarball: file:projects/arm-features.tgz} + resolution: {integrity: sha512-JC146AMN2BHFjNnvPP9OFtoz6VpyauZ8Xy1HzlFBtKvRWBbzr2T/ZyQM6tZD6VQqyly61yboTKL+ii7NgHoHzQ==, tarball: file:projects/arm-features.tgz} name: '@rush-temp/arm-features' version: 0.0.0 dependencies: @@ -15476,7 +15477,7 @@ packages: dev: false file:projects/arm-fluidrelay.tgz: - resolution: {integrity: sha512-rXvs39Ibzkg1ZtOgo2uT9dmUDbx6VsRvngh/R2T0+M3PsV7JAOlVcMFkcaoREHabuqVmhb6kPtByc/4PmLLz0g==, tarball: file:projects/arm-fluidrelay.tgz} + resolution: {integrity: sha512-ZegVJMtbz7wanxAKu2VuPOtxsN/8mUauieYW4EdHg5MkbWM3p9XHjjYeXLfZoawMVq/oJmVJet/E31sYu8/L1A==, tarball: file:projects/arm-fluidrelay.tgz} name: '@rush-temp/arm-fluidrelay' version: 0.0.0 dependencies: @@ -15504,7 +15505,7 @@ packages: dev: false file:projects/arm-frontdoor.tgz: - resolution: {integrity: sha512-Q+PsEBRiSD+MP92WrQ+lPLwf/EJ7xN1+s4jDikUujkb7rBZhjKoK2fpmipU0itBTSsk0w9GoGUdI06ou99zriA==, tarball: file:projects/arm-frontdoor.tgz} + resolution: {integrity: sha512-DaJ5QSS7iZIxm8z8+bbSnYZQ55JuGoxN+2AIN/g9WLZs1Za1qIb5CyR/VxtGws/dfl4QA+/CNPmDY+8rTdGjTg==, tarball: file:projects/arm-frontdoor.tgz} name: '@rush-temp/arm-frontdoor' version: 0.0.0 dependencies: @@ -15534,7 +15535,7 @@ packages: dev: false file:projects/arm-graphservices.tgz: - resolution: {integrity: sha512-x9vMJoX3X95EfiVgv4Md4UtITfKsSlGx8njAAXOK7jJG6H1LT8q3TGGU9yr+revgdbM+tOyd7LPHSpYHloUz7w==, tarball: file:projects/arm-graphservices.tgz} + resolution: {integrity: sha512-5L9ydnPtfb1lsXMfxOBtubcmoFn18vOY9nFiutgQtRAqCidqtu1TBgqwr4W7WyM5yVHfSoqFibGn0W6K5DtDeQ==, tarball: file:projects/arm-graphservices.tgz} name: '@rush-temp/arm-graphservices' version: 0.0.0 dependencies: @@ -15564,7 +15565,7 @@ packages: dev: false file:projects/arm-guestconfiguration.tgz: - resolution: {integrity: sha512-KL9d6HUsLs9MzQ/PQjuhRgFRGH8rPhZOiFEZ5jZoTZpRU1rMtHN+NzOcc46B2NG9XY6eaCeeLrWk2g3Gh9F1sw==, tarball: file:projects/arm-guestconfiguration.tgz} + resolution: {integrity: sha512-pwV6vn0IbJGXQuS/Oo6m1DkcH71ClCzZQM47ZzhZxLWX3JPq5ex+gDjPV6/jvwB3JlP2qGn1DDC4tw+4b4ARLg==, tarball: file:projects/arm-guestconfiguration.tgz} name: '@rush-temp/arm-guestconfiguration' version: 0.0.0 dependencies: @@ -15593,7 +15594,7 @@ packages: dev: false file:projects/arm-hanaonazure.tgz: - resolution: {integrity: sha512-wZxajkX2ZA29UZ0z8VWxJ1lRVXCQ7tU8EwPt9C65tzBGzTcPmynTYrOPxf9jvHhEZ3v/PsfFRRw3hMseznWArw==, tarball: file:projects/arm-hanaonazure.tgz} + resolution: {integrity: sha512-eLmdDQCUnf2uwgVHYszlH5lHQ78p/m7JuCHEoPPTJCjcfQzMiTLJeIbMxJ+ihO/snTeFSXM1rWqk6vit2XD1sg==, tarball: file:projects/arm-hanaonazure.tgz} name: '@rush-temp/arm-hanaonazure' version: 0.0.0 dependencies: @@ -15622,7 +15623,7 @@ packages: dev: false file:projects/arm-hardwaresecuritymodules.tgz: - resolution: {integrity: sha512-hBnfSYvy4U1rdxPIrXrbE3V/loLfiq0nz0D0cvuP9hDdCgwpm4uBE0z4Q4oAzPG/JIZlZGhpCBqbzZ6Qk1gMpg==, tarball: file:projects/arm-hardwaresecuritymodules.tgz} + resolution: {integrity: sha512-SxVTbdWxK7Fucy/5J028MoteqC3gQcJBGV7NN16+BdhQeW3C67ESFXy7E3zapWfZq8qBqBjw+M4r4hDPA1sirw==, tarball: file:projects/arm-hardwaresecuritymodules.tgz} name: '@rush-temp/arm-hardwaresecuritymodules' version: 0.0.0 dependencies: @@ -15652,7 +15653,7 @@ packages: dev: false file:projects/arm-hdinsight.tgz: - resolution: {integrity: sha512-eiFm7PPic2gShSdrXChLKrHzziw3RjxQ+cs7C3VChzB3M8ug+f8VOLNrUpc9lb9/AMjMxi6PjDQXAxKuj6M29A==, tarball: file:projects/arm-hdinsight.tgz} + resolution: {integrity: sha512-A4Q0/EIreGCf/t+J6DolGF8wsuBun8IeEpiWzRSKp8fE/okeb/F/Cq+6rJjZmAXopoSaXUAbn+Nqu/z+yOW+wg==, tarball: file:projects/arm-hdinsight.tgz} name: '@rush-temp/arm-hdinsight' version: 0.0.0 dependencies: @@ -15682,7 +15683,7 @@ packages: dev: false file:projects/arm-hdinsightcontainers.tgz: - resolution: {integrity: sha512-hm1Tc36raFlmTzX7tpUJGZdiAn+FK1f0Nr7Vzoy2D8b+3lXIZ+6zEinSI8nXRq/GWlGNqSpIAN4FAyOVbG+qQA==, tarball: file:projects/arm-hdinsightcontainers.tgz} + resolution: {integrity: sha512-bb9vJOVtfI7fzJLpOWd0mvmNqkYBZDF7S1JV5BG0BWGUOXg8KddZ/D3PMY9muhnfotX8Lwrk+LJyPiI5sjifwg==, tarball: file:projects/arm-hdinsightcontainers.tgz} name: '@rush-temp/arm-hdinsightcontainers' version: 0.0.0 dependencies: @@ -15712,7 +15713,7 @@ packages: dev: false file:projects/arm-healthbot.tgz: - resolution: {integrity: sha512-Un9Xwt4cbaqeYJ8q7I2VjYPsPPpRDA+F4xd5buuLouAZ0ClO8Gaxbl4lurygVW7NjgUICSFyE92q5SDyFZ3AkA==, tarball: file:projects/arm-healthbot.tgz} + resolution: {integrity: sha512-djZlyZzHlBCFIYcJ3NySW3fo+BlVJg4cjZoEbaw2sdiikwOeYL2t2lVgeEmpvIN8zT7PKHgt/BAvvRYsV0KCyQ==, tarball: file:projects/arm-healthbot.tgz} name: '@rush-temp/arm-healthbot' version: 0.0.0 dependencies: @@ -15741,7 +15742,7 @@ packages: dev: false file:projects/arm-healthcareapis.tgz: - resolution: {integrity: sha512-6r25yGtz+tFpT29HNr2hsonsx/pZSyrbKyLa/QOuAf1PZwidLMkiKrJP5zDsbdlluRSe2tZMxgp7ZLb/9HwsDA==, tarball: file:projects/arm-healthcareapis.tgz} + resolution: {integrity: sha512-H2TxLJcRhEfs+RFIQe+ffVdrxW6uDcjzfqz6F8avIlJlAhNTz5JuFowd7BLCnU99dJ+q+Aj8psZcINkIIPuYQA==, tarball: file:projects/arm-healthcareapis.tgz} name: '@rush-temp/arm-healthcareapis' version: 0.0.0 dependencies: @@ -15771,7 +15772,7 @@ packages: dev: false file:projects/arm-hybridcompute.tgz: - resolution: {integrity: sha512-piHmNUXYyLYB3zYcjPVPoB2JlkIrf60nv+aGdOG/Uo5lqXDa4vjd2MY2yFITHVKZGDudVNZQPEWgi+27vwKzLg==, tarball: file:projects/arm-hybridcompute.tgz} + resolution: {integrity: sha512-wVSrm4aoTJmUA1s14d3er3Gl9qTN+62er6kypTMV4tOc8+diDsA98xMlu0/GJFes8efUbc6QiJkymgo10+gDag==, tarball: file:projects/arm-hybridcompute.tgz} name: '@rush-temp/arm-hybridcompute' version: 0.0.0 dependencies: @@ -15802,7 +15803,7 @@ packages: dev: false file:projects/arm-hybridconnectivity.tgz: - resolution: {integrity: sha512-1lBPG78GcJzp2UAt2MFD2eH614bbwxd5E+Mtrskcik1ud+X2afpPYCCEh+jpfY0RCQPlelzVeajjyIHVNYWBhg==, tarball: file:projects/arm-hybridconnectivity.tgz} + resolution: {integrity: sha512-J0NmmLjlF9UyHtazlLl3+2q5ql9QKOe32CwTYW4KyPC3GcHWQV9I+A+epI80pWsP2ZRACngdcunGhXnR562pZg==, tarball: file:projects/arm-hybridconnectivity.tgz} name: '@rush-temp/arm-hybridconnectivity' version: 0.0.0 dependencies: @@ -15830,7 +15831,7 @@ packages: dev: false file:projects/arm-hybridcontainerservice.tgz: - resolution: {integrity: sha512-1W5YjPnicefzPEWvpWRyqwe+1D/ZhSH58N5GAFgvoBsjw81E04i/NJbVkLCKCOJ1w/ok6yrsj8Re53Sx/KXWHw==, tarball: file:projects/arm-hybridcontainerservice.tgz} + resolution: {integrity: sha512-ht2gOs6v/de7bvKzQqGcn7F1QAL0Dc0kRWKXL21bamQkBZP3xK8mEoBIYab/bOJY2TfYD/GvrTamTsRnvow5Kg==, tarball: file:projects/arm-hybridcontainerservice.tgz} name: '@rush-temp/arm-hybridcontainerservice' version: 0.0.0 dependencies: @@ -15860,7 +15861,7 @@ packages: dev: false file:projects/arm-hybridkubernetes.tgz: - resolution: {integrity: sha512-RvxwgLVmfXu54T/ctLrBUFnVTKi2bLIxsYyuXagrnsKwp46ftByNLhXFJ3cS5HD9Ks+wwoFhlVIxTxPFqtYQrQ==, tarball: file:projects/arm-hybridkubernetes.tgz} + resolution: {integrity: sha512-v7BI3tLh9LWioPyw1bi7cqIl6qtiFLnymo0AXZ5RP8UJoAK75tFBQv2SDUs8YMwzRnnfFMKeLrVGz9a2weQpgg==, tarball: file:projects/arm-hybridkubernetes.tgz} name: '@rush-temp/arm-hybridkubernetes' version: 0.0.0 dependencies: @@ -15889,7 +15890,7 @@ packages: dev: false file:projects/arm-hybridnetwork.tgz: - resolution: {integrity: sha512-ITLTEI5ghuWfP13b+ABHsD1F4njTNICDQArXeslsT49uH+KEN83aHn7Comw6vL8/27yS6hpUUDX2sQVfUvUktA==, tarball: file:projects/arm-hybridnetwork.tgz} + resolution: {integrity: sha512-si3XV4/fqNlcVL4/y6Vca84ATqwLbyKfyPmHTCErA9xCE/aH3bWXwFjsL8fuJgNgUQQy1QIjO8wJMgJIV+O+ZQ==, tarball: file:projects/arm-hybridnetwork.tgz} name: '@rush-temp/arm-hybridnetwork' version: 0.0.0 dependencies: @@ -15919,7 +15920,7 @@ packages: dev: false file:projects/arm-imagebuilder.tgz: - resolution: {integrity: sha512-pQoZ4wc8j0MjhyKzsQLomLQ1Opl4DtzihWSX2ZdbvXJkS7KYRE6YH1Vh/M1tfYgOeS6XLQuiB0E+0BXhspx4ww==, tarball: file:projects/arm-imagebuilder.tgz} + resolution: {integrity: sha512-islzKXCverh55F/8bwNWnF4ocA6k4XZlCbinA4+4XRneUPoac7nP5XKWj3pfRAPS1p0R9hJwTLHPsAIvwLTxbg==, tarball: file:projects/arm-imagebuilder.tgz} name: '@rush-temp/arm-imagebuilder' version: 0.0.0 dependencies: @@ -15951,7 +15952,7 @@ packages: dev: false file:projects/arm-informaticadatamanagement.tgz: - resolution: {integrity: sha512-4ZoBX8l7MMUojMK0UPDFYD+WekFgLiDDH1gXAxCxbiQK7DsI6slk4e1jA92nZVKhcOeKjQlvxUazv3npWw/7aA==, tarball: file:projects/arm-informaticadatamanagement.tgz} + resolution: {integrity: sha512-0LiOfzmcuztZNeC0aPA8aSrLQwpWuI2m9mtRslQFvuXtIio4lo8KCmWmn52V8Dm4b+6iBV92WnyDpdv6F1Vuew==, tarball: file:projects/arm-informaticadatamanagement.tgz} name: '@rush-temp/arm-informaticadatamanagement' version: 0.0.0 dependencies: @@ -15982,7 +15983,7 @@ packages: dev: false file:projects/arm-iotcentral.tgz: - resolution: {integrity: sha512-fosSiBVeZQ5JB05Itdf3WvfnHR/TefNuVz8d6g5sDnKl7E7T6T82s+k0YD5G/kRenAIBY5kmt4ZlrQxEBaAgJg==, tarball: file:projects/arm-iotcentral.tgz} + resolution: {integrity: sha512-/Qvnnq9+sxa4zdmQN5Eo/wvtOQWMQ79sMuhcLAJYDUVRPqO/EXu+0y26GmEHIKA5WVwk8X2flk994h41h1gs3w==, tarball: file:projects/arm-iotcentral.tgz} name: '@rush-temp/arm-iotcentral' version: 0.0.0 dependencies: @@ -16011,7 +16012,7 @@ packages: dev: false file:projects/arm-iotfirmwaredefense.tgz: - resolution: {integrity: sha512-TfKu8JeMfAq72ebbUwKck2nTo2SWtoOQWh7jq07Hj8y9wLPslALsgA0qcq8Glp6Sn5tHNNMylFM2hJzizsoZAA==, tarball: file:projects/arm-iotfirmwaredefense.tgz} + resolution: {integrity: sha512-doiYgE57iB0TicEeHoMrq630z4WKYXK/ukWmVEHor/WRimO35ibH9I+KyJxLTdcEifSNWnz2ZeUTnijWuZKmtA==, tarball: file:projects/arm-iotfirmwaredefense.tgz} name: '@rush-temp/arm-iotfirmwaredefense' version: 0.0.0 dependencies: @@ -16039,7 +16040,7 @@ packages: dev: false file:projects/arm-iothub-profile-2020-09-01-hybrid.tgz: - resolution: {integrity: sha512-FcawHki0FZv8yC0S8k6sXEGB3nsU+tQNeGgX7B+vYqd7f3P3VgZN38c6NrUoh+OhhMf7ltR2Aowh34nKqVcqgg==, tarball: file:projects/arm-iothub-profile-2020-09-01-hybrid.tgz} + resolution: {integrity: sha512-7qxWlLzN8YRbVTvvVQZlGC/Q6FKSvg159gIppOmZCEWSGcuUyYEltBMei5YMdMcMBjVUz8cGEgboxtxQRk0UKw==, tarball: file:projects/arm-iothub-profile-2020-09-01-hybrid.tgz} name: '@rush-temp/arm-iothub-profile-2020-09-01-hybrid' version: 0.0.0 dependencies: @@ -16069,7 +16070,7 @@ packages: dev: false file:projects/arm-iothub.tgz: - resolution: {integrity: sha512-6crX2NptM1qipMJXg/l8rBrmuQBmqWEtAaDPpZqJEeTkrlD5pLhku4lzWWqGTXWJHF+FxKhUwTnkA+t/IchOUw==, tarball: file:projects/arm-iothub.tgz} + resolution: {integrity: sha512-O/UxFqlG4xDI6fWlDg4tPSftTzbJyEQkiwzGOBxdA8CQRkJ3lRGc+AFnaP8h4J9tQYhjTmqQLnscuf/5x3HF6w==, tarball: file:projects/arm-iothub.tgz} name: '@rush-temp/arm-iothub' version: 0.0.0 dependencies: @@ -16099,7 +16100,7 @@ packages: dev: false file:projects/arm-keyvault-profile-2020-09-01-hybrid.tgz: - resolution: {integrity: sha512-OjdDNN+VYA9TfURM59pA9Obn9bnLeqPk/sEuOIx9w5J1McACr6yZ5yu9yi5bxUxLU0RHoHJ6Ni9SekY1RQmokg==, tarball: file:projects/arm-keyvault-profile-2020-09-01-hybrid.tgz} + resolution: {integrity: sha512-bQrFhpP8CJJfhV/SLL2k9heS+qdcoJL1o8gBRCkLmsD0Gon6ydn9tlOADVmdCfjI5Yz54tZ7+6Abh2/ZedSsoA==, tarball: file:projects/arm-keyvault-profile-2020-09-01-hybrid.tgz} name: '@rush-temp/arm-keyvault-profile-2020-09-01-hybrid' version: 0.0.0 dependencies: @@ -16129,7 +16130,7 @@ packages: dev: false file:projects/arm-keyvault.tgz: - resolution: {integrity: sha512-mAsdypSGZnV860kD/SzwQDh1oRZta3XsBNoodgaaboXIsy/IWLU5eyq52IpW8TKAikgn8+zuSdw5WNtlWMjzag==, tarball: file:projects/arm-keyvault.tgz} + resolution: {integrity: sha512-d4SHaoFUpJ8ih0zU9UoXoyYctaT5i3Loy3CZbIyQzCIXGzfwLFWzL1e5H5n90oqZHTtyuYeIICJajnoY6/3MaQ==, tarball: file:projects/arm-keyvault.tgz} name: '@rush-temp/arm-keyvault' version: 0.0.0 dependencies: @@ -16159,7 +16160,7 @@ packages: dev: false file:projects/arm-kubernetesconfiguration.tgz: - resolution: {integrity: sha512-y3uDo/SkP9RO1w5oC8d4fTIK6sYoN2R8bDfoP+8iYO/UtZMWWYFqTP4uey7TrzvN24Q4zTtj0K7yGnlm4tzQ8w==, tarball: file:projects/arm-kubernetesconfiguration.tgz} + resolution: {integrity: sha512-PeJIHi0FLgfPhWTxibDl9ERZsC2ab3ODUpudD+QNJrrfdRNWdV/hI1tFOTbmkkeszC1KOZnTL/Lnf1XP1heUGg==, tarball: file:projects/arm-kubernetesconfiguration.tgz} name: '@rush-temp/arm-kubernetesconfiguration' version: 0.0.0 dependencies: @@ -16189,7 +16190,7 @@ packages: dev: false file:projects/arm-kusto.tgz: - resolution: {integrity: sha512-1iLqzDmxcFYUWXhy+/4h2fBFd2zcflAIWO+l0oyAOFAdQ483TZhYnj9lZ6Rd3Bju+VJoqnRPFEaY3nsDARfUFQ==, tarball: file:projects/arm-kusto.tgz} + resolution: {integrity: sha512-gqmPjiPvhj7qkkKamq+Oc+rKuEgiEX0WOJU1EV7v8McQ29mN4+9ijv0Zg27ny6Ak5PRs1OJkuajlrOE/a+FQcA==, tarball: file:projects/arm-kusto.tgz} name: '@rush-temp/arm-kusto' version: 0.0.0 dependencies: @@ -16219,7 +16220,7 @@ packages: dev: false file:projects/arm-labservices.tgz: - resolution: {integrity: sha512-XftGsqcYoMhDToF9DoN5u2nRV3n4po2YuQnK6Clmh9GhogTMjlZVgSDpo9m5BJXwNEuQ5aKCZ4lyJ/CpC/P+wg==, tarball: file:projects/arm-labservices.tgz} + resolution: {integrity: sha512-s06WQJqFbyrJo5/Yx/tCqeTwOf7TSkXmR4yiVDLK+JMNo+jkJ0HIeZGsbs0HNUAHvc7bS46QB0YXqjk/DzeLpg==, tarball: file:projects/arm-labservices.tgz} name: '@rush-temp/arm-labservices' version: 0.0.0 dependencies: @@ -16249,7 +16250,7 @@ packages: dev: false file:projects/arm-largeinstance.tgz: - resolution: {integrity: sha512-CeP557neBJiOaz9VTIRAxvkAJZ3JSqzn/V7CbBbSfTzIRuE/7XtalUUC+Y8WMJ1ezCaCAxpbcdpFqxCBl7iQPA==, tarball: file:projects/arm-largeinstance.tgz} + resolution: {integrity: sha512-nxw49eTw7jgUG3juKHFKgTdCOdu3gclWovPnKmR8FVOQVV2e1cbG0kiqayVRbaky5LGJQufkqDG9Fjy/uUaE1Q==, tarball: file:projects/arm-largeinstance.tgz} name: '@rush-temp/arm-largeinstance' version: 0.0.0 dependencies: @@ -16279,7 +16280,7 @@ packages: dev: false file:projects/arm-links.tgz: - resolution: {integrity: sha512-Y+DsaW/LpnG+5Qmc8a0VBSAdq+1su29A6BMyBHj+wMXpeZJ7HImBNBygbhIEcK1bmLkurFNofPkQHsCtNbPUPA==, tarball: file:projects/arm-links.tgz} + resolution: {integrity: sha512-77W4N/QEPk1aUeJ0c7ZuvuEZoa8I2z35s1nsr/AE+vIYShd5nvvzkKpLZu8D9/jMueOUqcfIRMmkw6h5rjWLbA==, tarball: file:projects/arm-links.tgz} name: '@rush-temp/arm-links' version: 0.0.0 dependencies: @@ -16306,7 +16307,7 @@ packages: dev: false file:projects/arm-loadtesting.tgz: - resolution: {integrity: sha512-bZ3xgB1ce48ivsojJyX2Z/bDBrbE3MBrL3b25iT2rL99ch8KfMq+TEag9qmK9PI00d2Vt2OyuHUYF2Xgd+1AoQ==, tarball: file:projects/arm-loadtesting.tgz} + resolution: {integrity: sha512-Uys9CZWTv4+u4g3aPfxf1aeMp82W/tb7U9GKNWY1rMN7gBU/X1Yt3ypbjidVdBg6x6htCpeXMyIRM495PY4o4A==, tarball: file:projects/arm-loadtesting.tgz} name: '@rush-temp/arm-loadtesting' version: 0.0.0 dependencies: @@ -16335,7 +16336,7 @@ packages: dev: false file:projects/arm-locks-profile-2020-09-01-hybrid.tgz: - resolution: {integrity: sha512-teHSP9EbN1mfRR/lCbVqY0oRrIe0TmQSjIsvIPPY5vWhKRLqPZG7w3L28dBGVGbVl5xym1aFNdNA3UUqqM8K2Q==, tarball: file:projects/arm-locks-profile-2020-09-01-hybrid.tgz} + resolution: {integrity: sha512-397ngzkRIA8R4IHxVGDc64H7JorWl0dxb3LmppqSzzZZnu1dHONNdMOQ1qZ+V0LTQ/JHc+ktEAWQw4ri+YsHOA==, tarball: file:projects/arm-locks-profile-2020-09-01-hybrid.tgz} name: '@rush-temp/arm-locks-profile-2020-09-01-hybrid' version: 0.0.0 dependencies: @@ -16363,7 +16364,7 @@ packages: dev: false file:projects/arm-locks.tgz: - resolution: {integrity: sha512-fjx7WwF1FZXvueJlmzW3YvUDLst/opNODcZ5Ynxg0yb6NdT5drCw/UqHI95meMkw3QSHSK9maPVpBNXlTJQ9LQ==, tarball: file:projects/arm-locks.tgz} + resolution: {integrity: sha512-kCLLnPHTxyoHMXmAf3crhdzZU8fknOW6KzzhmY3pneYJeaYAaqEGe1G4O8fm0m3vvovZr0P0BRnnHXDkcKz90g==, tarball: file:projects/arm-locks.tgz} name: '@rush-temp/arm-locks' version: 0.0.0 dependencies: @@ -16390,7 +16391,7 @@ packages: dev: false file:projects/arm-logic.tgz: - resolution: {integrity: sha512-LIvScE9B4gqqPZNMMN3U31LaM0tx1pe5uNJQvMluH4GHsHwDcDas+Z9raikvHFwJN7KAyatyOSk3yaGSqeW40Q==, tarball: file:projects/arm-logic.tgz} + resolution: {integrity: sha512-ZtKW6fgn/4Pdgx8/Ja80iNjOAAw7KjsBSntt+z0AsPh48ZeKaYpsVUShezXGrtVKu+2ys0xWwtzfxvj8+yI6yQ==, tarball: file:projects/arm-logic.tgz} name: '@rush-temp/arm-logic' version: 0.0.0 dependencies: @@ -16420,7 +16421,7 @@ packages: dev: false file:projects/arm-machinelearning.tgz: - resolution: {integrity: sha512-M5XIsO3iqa2ZE6Oz6L77iser+TQJsVUda306A42AVPTONARb8kZryDEuw1wIRW/UJ3O9nxEErWaZlj4KoT6EMA==, tarball: file:projects/arm-machinelearning.tgz} + resolution: {integrity: sha512-ivBIVTHfvuUmyylYEA5RXHcHqvRckkFNe9SE3elSZ4DT6E2r8k2tjjMTQgviOH/CCbgqKirUnXEJzsOmnHhLuA==, tarball: file:projects/arm-machinelearning.tgz} name: '@rush-temp/arm-machinelearning' version: 0.0.0 dependencies: @@ -16451,7 +16452,7 @@ packages: dev: false file:projects/arm-machinelearningcompute.tgz: - resolution: {integrity: sha512-BYuhNPStN7SUpITR06rb8+1r1DaTJzxNDhrK/r+KM3RaIg7AUl0j80dgpFGS3cIXcLI05h+NSoK4cp/ap9vtqA==, tarball: file:projects/arm-machinelearningcompute.tgz} + resolution: {integrity: sha512-Pzj6H7bmxBh5MVaE6b/ZC/8i6EfJm1ORXahqbbDa/McjzbfbktzRNRa9n5+TzomSou8EdoQRmjekG3+OPQbE9w==, tarball: file:projects/arm-machinelearningcompute.tgz} name: '@rush-temp/arm-machinelearningcompute' version: 0.0.0 dependencies: @@ -16480,7 +16481,7 @@ packages: dev: false file:projects/arm-machinelearningexperimentation.tgz: - resolution: {integrity: sha512-SeKlFZD0c/o7e2wddKf9hrorOq6N6BnYj5AuDYUbJU1dXCKxm58yFK7GsSzaD6jgKiXHYJDs4YPSBErX6hGIfw==, tarball: file:projects/arm-machinelearningexperimentation.tgz} + resolution: {integrity: sha512-kAt9wUtbr/YDNSvhJXeFeMlRP/TQF6Rw3yXI+wIlQ9gbZMKUp4v9omKBK5wxjsMvM7HP5080HdKGjIst+OFNdA==, tarball: file:projects/arm-machinelearningexperimentation.tgz} name: '@rush-temp/arm-machinelearningexperimentation' version: 0.0.0 dependencies: @@ -16508,7 +16509,7 @@ packages: dev: false file:projects/arm-maintenance.tgz: - resolution: {integrity: sha512-P1/U3MpI2dKKpUJtvmJw6ooV3RbZO5E8HbaLBTWuX4dtfJn0SmXeQCUkNsjLh3F9bk/OzBzW4380xswaeexeHw==, tarball: file:projects/arm-maintenance.tgz} + resolution: {integrity: sha512-ORZ91RzlksgOwd86ITBlZPukgCaoHDS3mCy3GrhMlQBQedaM6gWxeb4jXKhuaBwB7FwZ37fXs0geZ0IfZdTiSA==, tarball: file:projects/arm-maintenance.tgz} name: '@rush-temp/arm-maintenance' version: 0.0.0 dependencies: @@ -16537,7 +16538,7 @@ packages: dev: false file:projects/arm-managedapplications.tgz: - resolution: {integrity: sha512-CPa8cqojz6HZnY6P/sSYVlHzP91NNQe5BdDJ/CEqshUifWnZRdf/jEu4eZstZG+96v/2iTud0Ks0pibP1tC6lQ==, tarball: file:projects/arm-managedapplications.tgz} + resolution: {integrity: sha512-Tgx2JI0Um66nz+Qvvf5IcIrFqK7m1UP2NrILFqiBnx2YzFdVlYqhkjnnpheYHSfWeFdwNEmmZkpgX9EiS62f1g==, tarball: file:projects/arm-managedapplications.tgz} name: '@rush-temp/arm-managedapplications' version: 0.0.0 dependencies: @@ -16567,7 +16568,7 @@ packages: dev: false file:projects/arm-managednetworkfabric.tgz: - resolution: {integrity: sha512-HYuSPX8VhZnIx7CSh3UZrFjcf5gZ+BM/HSH3qyFXf1hltwAjsL9ybmVbVOQwkESVQNUiYQozkla9c1qUZYzcew==, tarball: file:projects/arm-managednetworkfabric.tgz} + resolution: {integrity: sha512-Oa4tib1P3/Vl/5Zxcehhw/gZ8R9qHX5bqIX6AVlnMPBIE7dh4s1V3nARVhdvOoIW2T71qKkpS3sbrJprbeSIyw==, tarball: file:projects/arm-managednetworkfabric.tgz} name: '@rush-temp/arm-managednetworkfabric' version: 0.0.0 dependencies: @@ -16597,7 +16598,7 @@ packages: dev: false file:projects/arm-managementgroups.tgz: - resolution: {integrity: sha512-9ZS5tvMtUp97EmDzp7I1P9HTS+UcRTomcebl8U1CZ9hsZFMmBs1K7x+CVStcqiDqBQPjUJlEbgXxxnR7UwdIqQ==, tarball: file:projects/arm-managementgroups.tgz} + resolution: {integrity: sha512-KSBCI9eHOxUjjQmeQe1fPMySAX2Q3c1lzZQyOUGEYIMBOmG863BmvLzYjspeNU9wAH4Thg+067BmCrJlNVeELw==, tarball: file:projects/arm-managementgroups.tgz} name: '@rush-temp/arm-managementgroups' version: 0.0.0 dependencies: @@ -16626,7 +16627,7 @@ packages: dev: false file:projects/arm-managementpartner.tgz: - resolution: {integrity: sha512-ekusxRpU6OgcziAqKtSlPiwAsUg6zvFBnT9e1LMPvhMffKamJVCPrRxL20cJsVBEjltmEJ4Hb63mVOYL38QImA==, tarball: file:projects/arm-managementpartner.tgz} + resolution: {integrity: sha512-SYCt5jbdsnqn0cA06a3veCjG3KYMddxT8fxDxcNDXiul1FFW17hz3eowj9XU4nUgw6vaZsQLqKe2lr0C+1U0yw==, tarball: file:projects/arm-managementpartner.tgz} name: '@rush-temp/arm-managementpartner' version: 0.0.0 dependencies: @@ -16654,7 +16655,7 @@ packages: dev: false file:projects/arm-maps.tgz: - resolution: {integrity: sha512-xOZK6H1/fQ4HTN1iBaKgnybbyMYAw1leEjvXZTlELyh7LGzI0aDLR2MUy5c9p+nFRRJ6JrHtF1H2VEaTYPbHYA==, tarball: file:projects/arm-maps.tgz} + resolution: {integrity: sha512-E8odHyxulJUFIBcJrZtdg0n31xTKBxIRMUb8NSWY1ltWfs7xK4Pe9jBLxjO3rcKNd/9ba6yg2ySlw/IPnaOxpQ==, tarball: file:projects/arm-maps.tgz} name: '@rush-temp/arm-maps' version: 0.0.0 dependencies: @@ -16682,7 +16683,7 @@ packages: dev: false file:projects/arm-mariadb.tgz: - resolution: {integrity: sha512-lM0jUZoGL6lmrXuBaBqC32xrLXNNVhQK4rDSDrr5zCRiLcTOhx/Izq1UeH3MeZ6GktHpb44YxWsJ5Mwwy86yxw==, tarball: file:projects/arm-mariadb.tgz} + resolution: {integrity: sha512-Ayr9QSTKJcl22+VC4z5L8sF3IZ3KWqdg4QfzTj9Jcw+9rkmeAljuhffChhFO0fHWZVCSKTc+vg0ukszMsM4LAA==, tarball: file:projects/arm-mariadb.tgz} name: '@rush-temp/arm-mariadb' version: 0.0.0 dependencies: @@ -16711,7 +16712,7 @@ packages: dev: false file:projects/arm-marketplaceordering.tgz: - resolution: {integrity: sha512-llY6+RlVFzuBcEDYRJcepuvqt5pGbwgRO3miV++wjrOy7STHBqbNkpzpKt6YzmkD9OYQ6lOZSLGbuc5kpp/HSw==, tarball: file:projects/arm-marketplaceordering.tgz} + resolution: {integrity: sha512-RCdmOBGZd+KCgKSzERWTS+o6ejsXkFrWgEDSn2+gLMKnhQAkEju8NW3HhJK3mRcL4+Fk71hBvARJZ3tERX9YKw==, tarball: file:projects/arm-marketplaceordering.tgz} name: '@rush-temp/arm-marketplaceordering' version: 0.0.0 dependencies: @@ -16739,7 +16740,7 @@ packages: dev: false file:projects/arm-mediaservices.tgz: - resolution: {integrity: sha512-sbg58adT6WrntwJOrnTm/YB6Hw7uP7qFxoOYpRqTMNTj5Eju72OxjI8xTyLFXGGwmEbePB3Xfcx33nWfLo0wmw==, tarball: file:projects/arm-mediaservices.tgz} + resolution: {integrity: sha512-JXngI++KGqABQ9KdSUTHDUofYRqFis84zld3zXaM0NhYOGzD/VQlt/nna37GeUxPCSzSwGu4wEQCZJmxSOFPcQ==, tarball: file:projects/arm-mediaservices.tgz} name: '@rush-temp/arm-mediaservices' version: 0.0.0 dependencies: @@ -16769,7 +16770,7 @@ packages: dev: false file:projects/arm-migrate.tgz: - resolution: {integrity: sha512-kQsavrqMgvUmMmLVn1hB0k+Tv4JYGbtdu0StZP1G41cAavGEIPoN8gjo80Z+qlA5EoKZMTtsLa9pbYuSX5nG2w==, tarball: file:projects/arm-migrate.tgz} + resolution: {integrity: sha512-D2ziVjUauGJhs0mOugbCt0RaKbARoa/MzwaS3JMyUipuBjW8aP7NYTT5Xxv22L90cp8CS0/7lXeRTC+l0SHOtw==, tarball: file:projects/arm-migrate.tgz} name: '@rush-temp/arm-migrate' version: 0.0.0 dependencies: @@ -16797,7 +16798,7 @@ packages: dev: false file:projects/arm-migrationdiscoverysap.tgz: - resolution: {integrity: sha512-MFas9Xa5dhHjq09P9iuwEQJYJb1Fhad2QPY+C+o9ZmzrEeC0Npn//8gMvGWBFRS/3bKIM4IzDL8mqgQh9TieJA==, tarball: file:projects/arm-migrationdiscoverysap.tgz} + resolution: {integrity: sha512-/P6SYy2B34+g5i6qwjfh93l82yec2/Lggksin90VUk2Fk+XjOTI0bin66U5lGTK5NtKCFgMiK7qqfVwViXaDgQ==, tarball: file:projects/arm-migrationdiscoverysap.tgz} name: '@rush-temp/arm-migrationdiscoverysap' version: 0.0.0 dependencies: @@ -16827,7 +16828,7 @@ packages: dev: false file:projects/arm-mixedreality.tgz: - resolution: {integrity: sha512-zJLTxA4/fqv6xj/LRPpeFgKxVT2qXYd3sKaDjziIxXaKZZFhxHfkVnda42B4Gs1NciT/vhfCMOW8m1+SCjqvdQ==, tarball: file:projects/arm-mixedreality.tgz} + resolution: {integrity: sha512-KIrpFbQr38stzzEaqXBeN2Oc/bn18FJ3FN/+dfyNTvA7uYfMbdjOBkEyNK3TuRV1N8HnECGkKtFEuXKMKAKJLw==, tarball: file:projects/arm-mixedreality.tgz} name: '@rush-temp/arm-mixedreality' version: 0.0.0 dependencies: @@ -16854,7 +16855,7 @@ packages: dev: false file:projects/arm-mobilenetwork.tgz: - resolution: {integrity: sha512-N41+/v5rZblZCQA7UILLXSZKe8Mf2H9zoCe8Lr+CoisBaD7CMqv+LXnt3HKAa4Gs//sLUD5jAl3D/7abg0TImw==, tarball: file:projects/arm-mobilenetwork.tgz} + resolution: {integrity: sha512-r5bB6QxOf0c+TNAEUyfVuu+lFYCsHmAIa4Jx9KyoUcJOFj07VzYzl3hn0WAA35iQznHwfvuEzQGCEXwlLiBxgg==, tarball: file:projects/arm-mobilenetwork.tgz} name: '@rush-temp/arm-mobilenetwork' version: 0.0.0 dependencies: @@ -16885,7 +16886,7 @@ packages: dev: false file:projects/arm-mongocluster.tgz: - resolution: {integrity: sha512-aD1vsMcRmGI/i/Kia6sweBsLmSYbqTyqCVci909kIbpIFpAPPQRCqB44cjGYC8oiuHiKA1HJbzkio0LCCDw+Lg==, tarball: file:projects/arm-mongocluster.tgz} + resolution: {integrity: sha512-yLfc/d1JCf7OviPc/PBlQjg3LMBBL9/RBrwF9zQrImm4bO6sunLSMjtfLYr8votWjYtcSWToLZVTwoywB0Sk3A==, tarball: file:projects/arm-mongocluster.tgz} name: '@rush-temp/arm-mongocluster' version: 0.0.0 dependencies: @@ -16921,7 +16922,7 @@ packages: dev: false file:projects/arm-monitor-profile-2020-09-01-hybrid.tgz: - resolution: {integrity: sha512-iIVKSMObhPtllgldBh5d9PvGgh+4/0POUj8UdtW1VsK6bUAx+UtzTjsv2FjIMZ/0nuKBA0NQ678rKS5dppppbw==, tarball: file:projects/arm-monitor-profile-2020-09-01-hybrid.tgz} + resolution: {integrity: sha512-vqVU8FcJYyIkgypFpf97wUK6SVVl0LMYkmREj0Q7RuwXTSWxtowVzE2uT8Rd3IP0lxnlOcMsLDuVDFpOOYeo4g==, tarball: file:projects/arm-monitor-profile-2020-09-01-hybrid.tgz} name: '@rush-temp/arm-monitor-profile-2020-09-01-hybrid' version: 0.0.0 dependencies: @@ -16949,7 +16950,7 @@ packages: dev: false file:projects/arm-monitor.tgz: - resolution: {integrity: sha512-K+9G34mEgOxgIoTZLVRz12Rde0+aAM0bJXmZV+Mz1rruwrsNjwMk6oh3vwtguLLhts+BN91pJ9YxkEk6GtcYyA==, tarball: file:projects/arm-monitor.tgz} + resolution: {integrity: sha512-iupFHZAXQ0A7LWOq0XZnS9HZiUXCm+vlkkmkv2q45NG9p0mC0VZKRjy/WUHw8b/M5S737+v43wNfFmCuSDb3pA==, tarball: file:projects/arm-monitor.tgz} name: '@rush-temp/arm-monitor' version: 0.0.0 dependencies: @@ -16979,7 +16980,7 @@ packages: dev: false file:projects/arm-msi.tgz: - resolution: {integrity: sha512-Qvub62fkM9C9OM/EystDdNE7G7kcdCdW0omlH6KHr1ioCxeoHe7lQQT4ff2cqLFrOtQ6NYGRvZu6FkFWqolvDw==, tarball: file:projects/arm-msi.tgz} + resolution: {integrity: sha512-JEiQZ7JNjUaLblDWQ06Zj6R0sp1rzBJRL5nJLJzFi3TSeogLkGPWGKPH/kTQX1td8KR1xwTDlklW2VU0OjO0gw==, tarball: file:projects/arm-msi.tgz} name: '@rush-temp/arm-msi' version: 0.0.0 dependencies: @@ -17007,7 +17008,7 @@ packages: dev: false file:projects/arm-mysql-flexible.tgz: - resolution: {integrity: sha512-i2areQQUXO67Rc3EQUFcT7YS5oY8QqV1nh6mgUDbB4ELUwuacl3n419A2uW3gShCuEX6ZZoAzlC3CpGBicbvWw==, tarball: file:projects/arm-mysql-flexible.tgz} + resolution: {integrity: sha512-gqfDjeftl6w5p10xBkccxb5JN3Z/GQKuwkMvK5lxSPLe7ItvCwV5lStvEN/k5SN0fF4qAxLZAdVgQy7l2MYHLg==, tarball: file:projects/arm-mysql-flexible.tgz} name: '@rush-temp/arm-mysql-flexible' version: 0.0.0 dependencies: @@ -17038,7 +17039,7 @@ packages: dev: false file:projects/arm-mysql.tgz: - resolution: {integrity: sha512-BemZE1rhwi7g4Q7R+MV8HJdlq6uvPYmnFNGQiIZyOvMrlw+TB8sAcXWHzMDbTLU+hQ1doDG8XDjG9STHPr+yZg==, tarball: file:projects/arm-mysql.tgz} + resolution: {integrity: sha512-eWALfUMvA2FVHte+eYMBIa6JCB7Z7U97VO8/zz9Y8sP7okTCOloFsvMa4tTZTnHG/KuEFHq3zQpJ5jnSVmrE/Q==, tarball: file:projects/arm-mysql.tgz} name: '@rush-temp/arm-mysql' version: 0.0.0 dependencies: @@ -17067,7 +17068,7 @@ packages: dev: false file:projects/arm-netapp.tgz: - resolution: {integrity: sha512-JlcDJRWLklWlsRA6UjMRKuRVqhe/fZRGYsq0pZGbg/N8zMWI3BQH5q+2RmRKLbfuVXFlkbjsgIvKaY9fp05Kkg==, tarball: file:projects/arm-netapp.tgz} + resolution: {integrity: sha512-IEGA8a8gWKVvL693jv3yzXGR2X7G0nl+y1PfJ4jBEPtc9zdIiH1Pj0b7Bq19Z6xCOW/lJPPJ6G8fI9XKIneZJg==, tarball: file:projects/arm-netapp.tgz} name: '@rush-temp/arm-netapp' version: 0.0.0 dependencies: @@ -17098,7 +17099,7 @@ packages: dev: false file:projects/arm-network-1.tgz: - resolution: {integrity: sha512-jzVX655DGAScA32dW/iYkMYwrm1AYinRpn1bkwNuX6gBHyPTH8Vp6GIu+68bsZeJDDgq2yySBfqUMmtWgYFl3Q==, tarball: file:projects/arm-network-1.tgz} + resolution: {integrity: sha512-nGb7tSO54MnnBUXPNxfBIfWZUT/+wweKaCJaGDc9LocSoDT9hnmrAgFDQqcmOkzjwxWyvM8BsjB7zedacueRcg==, tarball: file:projects/arm-network-1.tgz} name: '@rush-temp/arm-network-1' version: 0.0.0 dependencies: @@ -17129,7 +17130,7 @@ packages: dev: false file:projects/arm-network-profile-2020-09-01-hybrid.tgz: - resolution: {integrity: sha512-RxbOWeZwYYjUmH9aPP+pbuaNo6/wE3nAGR9A4IlAn12O8e/DEoL/GHD0QDQXCUXBxU3KpEwmqVxmyuCHUw+b3w==, tarball: file:projects/arm-network-profile-2020-09-01-hybrid.tgz} + resolution: {integrity: sha512-bXcMkaPXXD1meUSCXIzVfGgmcsnMPTIdkPqmIRZ864UcMrF5lR2qk4xboSguyIIPeXTI6FjJlgcodFWfd1J/mA==, tarball: file:projects/arm-network-profile-2020-09-01-hybrid.tgz} name: '@rush-temp/arm-network-profile-2020-09-01-hybrid' version: 0.0.0 dependencies: @@ -17159,7 +17160,7 @@ packages: dev: false file:projects/arm-network.tgz: - resolution: {integrity: sha512-BwWptmMb8fZVh/LtwjHxY6bdyrwEH3fAO1GXX1m2FLA+zgwtvV7Ubqcv4OYHnuDyNo+SmShXS7KUUPOTPeBgqQ==, tarball: file:projects/arm-network.tgz} + resolution: {integrity: sha512-d7/m+q1Ww3mt/hvDZ5Pzgvp0kP3XhQAd2mQQOYH0BZTJHHkwWbTqUUiOJ493rg3xKRzRWpPPPgoZVLWl00s9gw==, tarball: file:projects/arm-network.tgz} name: '@rush-temp/arm-network' version: 0.0.0 dependencies: @@ -17205,7 +17206,7 @@ packages: dev: false file:projects/arm-networkanalytics.tgz: - resolution: {integrity: sha512-P7nNtXsPtppz3cJnxym2/tzb37SIY9bIym1dwyvK70GwcouC9i1hxzyWDo9nAp1GfZRj7A8iclRmaFCBrYblSw==, tarball: file:projects/arm-networkanalytics.tgz} + resolution: {integrity: sha512-UPRUpiaEKXGW7S8eAmOKTKtPfYweSbDteJndujiMXe7Ykd9Q65OsbG5kRL5xVPLFW92nrdxCf98wskCfF7Ed0Q==, tarball: file:projects/arm-networkanalytics.tgz} name: '@rush-temp/arm-networkanalytics' version: 0.0.0 dependencies: @@ -17235,7 +17236,7 @@ packages: dev: false file:projects/arm-networkcloud.tgz: - resolution: {integrity: sha512-rpw1rhaHH5DbjV9CZzVcdESwR4wOsFa1BTffRibsKh6z+hi6nlqeje+U/GjIXquycvdATjTc2koXh/31aZNl5A==, tarball: file:projects/arm-networkcloud.tgz} + resolution: {integrity: sha512-clwwgWtcUWUoBVVD5fscpZaukSlOx77XujZBubCXSz94dzYMuwQ6uzbqaH714dmLGFtGX0fEh84xJPZSYILsuA==, tarball: file:projects/arm-networkcloud.tgz} name: '@rush-temp/arm-networkcloud' version: 0.0.0 dependencies: @@ -17265,7 +17266,7 @@ packages: dev: false file:projects/arm-networkfunction.tgz: - resolution: {integrity: sha512-tMd2qODOuhXdsgNrYx35EaYybcVP5D/Du4pAhToqTuxDfeftUA8Ry3FhrLZKUxkZCuAl1qhATsS5Jw76HfU+pA==, tarball: file:projects/arm-networkfunction.tgz} + resolution: {integrity: sha512-Xoyz+XtG3PJ/U0Csqxi2kzLdtsmTcCd3Ly3lvusCsH5Fh2phh4QV2CNAoR0haLNcquKoFA566HOihDqQJDwErA==, tarball: file:projects/arm-networkfunction.tgz} name: '@rush-temp/arm-networkfunction' version: 0.0.0 dependencies: @@ -17294,7 +17295,7 @@ packages: dev: false file:projects/arm-newrelicobservability.tgz: - resolution: {integrity: sha512-O4w3wJjlBG8lJxb00WGPRmvBl8pUVFvsUn7KMszAyY5q1LoqRD/P/adX7omQvj+RBYzzLPkG9t9Rd+7sIwnZyA==, tarball: file:projects/arm-newrelicobservability.tgz} + resolution: {integrity: sha512-W4f1IqaxlRivbzfb4TF6tijNCgj+KEBD379z0t0lku5K6Om52AiqTS+CcgwQmpg6pREOPokp4j5RUfaM51HApQ==, tarball: file:projects/arm-newrelicobservability.tgz} name: '@rush-temp/arm-newrelicobservability' version: 0.0.0 dependencies: @@ -17324,7 +17325,7 @@ packages: dev: false file:projects/arm-nginx.tgz: - resolution: {integrity: sha512-pLOdDp54GOwZc31b8TW/PSTjfpxMHN7CSfB3xCblsTskC611sVWqFNIV/vRxK1mDsbyY2NNFMq5ZKyTvoF0fXA==, tarball: file:projects/arm-nginx.tgz} + resolution: {integrity: sha512-qVAjIstMnCDeC16WVu+q386pI/S3bFtobFjuP6YxWFRWUiczGYGRZQiEXIPRctVEptDwLMJs7hRGznIevzwpVA==, tarball: file:projects/arm-nginx.tgz} name: '@rush-temp/arm-nginx' version: 0.0.0 dependencies: @@ -17354,7 +17355,7 @@ packages: dev: false file:projects/arm-notificationhubs.tgz: - resolution: {integrity: sha512-qASxCpPXOL33i5ZL4+D6RNXo7ml424XNUE0Enx1iQ5+txftWvYwtOpmM4huS9oXRUFCkgmkIZ/LVVCL+MQ77Tg==, tarball: file:projects/arm-notificationhubs.tgz} + resolution: {integrity: sha512-C4j8aKYOdwinRyuGeIgttHBVS1A0FtKk+f1aAyUoPKU/lsHlwgES/0Qhkd98qYQCL61VWf24yGLNcfx89n/Cug==, tarball: file:projects/arm-notificationhubs.tgz} name: '@rush-temp/arm-notificationhubs' version: 0.0.0 dependencies: @@ -17384,7 +17385,7 @@ packages: dev: false file:projects/arm-oep.tgz: - resolution: {integrity: sha512-UpRIO2UTpVF3sohVgYkOsdT98JCVzyueEl8qFk6fmzYlet5bdxODjFFnnl5RCbLfT1PQ/bxvpyv6Gn5TBTyJXQ==, tarball: file:projects/arm-oep.tgz} + resolution: {integrity: sha512-yN7in7bSWktptr21JAHRiSY7SCAP6PFn/wZJXguNbMJ1coYdan8qGxDZ+Y98BrWZn/VsvmGIhVPU8Ioi8j70tA==, tarball: file:projects/arm-oep.tgz} name: '@rush-temp/arm-oep' version: 0.0.0 dependencies: @@ -17413,7 +17414,7 @@ packages: dev: false file:projects/arm-operationalinsights.tgz: - resolution: {integrity: sha512-h1KiF0snFuqby40JLK4/G5OS0gczssxCRgexGAx24xoFdoGQ6RO8mAORBmP5AeZSHNirifK8uXczb9OT/+EbIQ==, tarball: file:projects/arm-operationalinsights.tgz} + resolution: {integrity: sha512-os3cEC+iqOVSKMxv1TUP9ftjvGSPXb9eXqk3zKwFk4/+aRGKHVgtl429gM0WIh90QDLNOANuRqQ8mAD89BuQZQ==, tarball: file:projects/arm-operationalinsights.tgz} name: '@rush-temp/arm-operationalinsights' version: 0.0.0 dependencies: @@ -17443,7 +17444,7 @@ packages: dev: false file:projects/arm-operations.tgz: - resolution: {integrity: sha512-imqDBA7XLP7ZTWoH+vP1TuFO4tpWzSjK0KDnokN7Qcd9yjI6ck3T61pb+kV8TEOoBnh0ph8FlIGrat7kE6yncA==, tarball: file:projects/arm-operations.tgz} + resolution: {integrity: sha512-vT+bM8W2s938i0AV7k+gk1JmKbl3dPKm/yF721Ub4iXplRGNeo3zNEzzFkyat3KTvFmtXlp6SQUen32/FL+H8A==, tarball: file:projects/arm-operations.tgz} name: '@rush-temp/arm-operations' version: 0.0.0 dependencies: @@ -17472,7 +17473,7 @@ packages: dev: false file:projects/arm-oracledatabase.tgz: - resolution: {integrity: sha512-MJ2Ba/mM+PlAwFlbctLzh4rw5YD54fY1n0w1Bl5jyicpRfnstlsc/kU7Nj7ACxC5yek3jcU7/ZX/eu8+pbmCTA==, tarball: file:projects/arm-oracledatabase.tgz} + resolution: {integrity: sha512-W/eeXVqPXArSHG38qrmkZ7m8nwFE9ZnjQGoSYvAQSlao0N1Qa1ngVvTh+lDmMxwB0I+uljPIXJxWlN8uQuMPTw==, tarball: file:projects/arm-oracledatabase.tgz} name: '@rush-temp/arm-oracledatabase' version: 0.0.0 dependencies: @@ -17503,7 +17504,7 @@ packages: dev: false file:projects/arm-orbital.tgz: - resolution: {integrity: sha512-b4WJVmbSpiZ6SsWKh5Z4aechH0sM6IKmzz/ilzZFpNLIdsYUNjroAC3MNHPphVf0ZTIMYIXP/4dqtiB6LL4aKA==, tarball: file:projects/arm-orbital.tgz} + resolution: {integrity: sha512-Lz0US9aVz2x4qZHFD2BCG6KIrXbqOszYJYc2FS49wXFRgY4MU2HRiR8YPP1sWc+4QDYd+QKaFS91FN5cEZubrA==, tarball: file:projects/arm-orbital.tgz} name: '@rush-temp/arm-orbital' version: 0.0.0 dependencies: @@ -17533,7 +17534,7 @@ packages: dev: false file:projects/arm-paloaltonetworksngfw.tgz: - resolution: {integrity: sha512-QC9PfRqSzyps9/+U0e9EV0dU+FZI9MTAILjqO5jnIvr65ityj0/USm4Zz7MHxiaZNegpW/+9Yz8w7xQy3ZkMuQ==, tarball: file:projects/arm-paloaltonetworksngfw.tgz} + resolution: {integrity: sha512-JqJkEWDufbXCx9Uo9qxQAqKCZ6sca6DIa0rM8PiFr9CQNBOWHxHP/uZk2sABKoMvH6IKrXL7KRfJ5J4Dalut9g==, tarball: file:projects/arm-paloaltonetworksngfw.tgz} name: '@rush-temp/arm-paloaltonetworksngfw' version: 0.0.0 dependencies: @@ -17563,7 +17564,7 @@ packages: dev: false file:projects/arm-peering.tgz: - resolution: {integrity: sha512-ozcef6TToSOq7CqUvKiRsZBdcUp3pU6MSfx8w2MZXOo3MGzQ3AMnWukrPYoU9nBi35YySyXvF6rYb68WHzj+1w==, tarball: file:projects/arm-peering.tgz} + resolution: {integrity: sha512-Mj/ZXu/A89dBVOGx3nrbeNY8x5ylytw3iCFOypfVe7ADf0G5DGgCRc85+tXwLadYC9+A3Ff7JdRYoopSkamINA==, tarball: file:projects/arm-peering.tgz} name: '@rush-temp/arm-peering' version: 0.0.0 dependencies: @@ -17590,7 +17591,7 @@ packages: dev: false file:projects/arm-playwrighttesting.tgz: - resolution: {integrity: sha512-SfLw2iA6ejViaiilnys6IsWVuaPcxRdPu+pIscYCeijd0HwMZJorXtc1eTFZ7SIn8PuDmGXXzHliIqsJxl4UsQ==, tarball: file:projects/arm-playwrighttesting.tgz} + resolution: {integrity: sha512-1Cu2srWIlqMw2Qphnt8E3hstcdasUVvDtbaXH1PPN54jhQUViw1AiUM10W0gxeMzLnvKdUVnxUsCIn/NUynQVw==, tarball: file:projects/arm-playwrighttesting.tgz} name: '@rush-temp/arm-playwrighttesting' version: 0.0.0 dependencies: @@ -17620,7 +17621,7 @@ packages: dev: false file:projects/arm-policy-profile-2020-09-01-hybrid.tgz: - resolution: {integrity: sha512-9wo1hsVBeEN338Y03EVO2mJsiYsZgTL/CoGjIvqbmfZMPFriFiQNIgGEwKfQvdnRXJM2nadEo/zBBp8XS8vguA==, tarball: file:projects/arm-policy-profile-2020-09-01-hybrid.tgz} + resolution: {integrity: sha512-UnTNCfdqB3lXg9eXx7PnVR3/IGm6n/wnbbtuclbJx6awi/S07a7jlRbSeZ+jba4s01fN+Si78BJibDNT1fi0EQ==, tarball: file:projects/arm-policy-profile-2020-09-01-hybrid.tgz} name: '@rush-temp/arm-policy-profile-2020-09-01-hybrid' version: 0.0.0 dependencies: @@ -17648,7 +17649,7 @@ packages: dev: false file:projects/arm-policy.tgz: - resolution: {integrity: sha512-Z4HMl3VFgkEHROvE0FExAFkrcM3thPAtxzUFnr6zKCrjLviNH0tjFA715mJyqZKqn/xU0aRlANOogB09X8vZmA==, tarball: file:projects/arm-policy.tgz} + resolution: {integrity: sha512-/H2bvmE3EopNXHRnt3BLwbRHR5Y3CD+vQhEIMjaNUHE3QB56VhwFvXZIL2o7Q7oJLeK/PlF+e7u2JZHZtwA+7A==, tarball: file:projects/arm-policy.tgz} name: '@rush-temp/arm-policy' version: 0.0.0 dependencies: @@ -17676,7 +17677,7 @@ packages: dev: false file:projects/arm-policyinsights.tgz: - resolution: {integrity: sha512-ExzAWoOvwWXObqNvQ6bLQ0Fs67HjZJn2femsEfZfxmGPTxfJVfsek98cuXklQEgLe96mllG5uM3QHUyjF1HKKg==, tarball: file:projects/arm-policyinsights.tgz} + resolution: {integrity: sha512-ggElmrDpSqiPAHhUemUGOrdTp0hFFP1ADpRpb8QC+8nsGb8EeT3iCZaBcVSRR2Dv87RILhVzOzjXRXmOg3ZeNg==, tarball: file:projects/arm-policyinsights.tgz} name: '@rush-temp/arm-policyinsights' version: 0.0.0 dependencies: @@ -17706,7 +17707,7 @@ packages: dev: false file:projects/arm-portal.tgz: - resolution: {integrity: sha512-GJeR2EzzpTTKwedoXFiraBc/L6cdEMt3+BRAWSGWooPkis/csp7rvwKgrwUZ3yZ3ktB2pS/N03gQUinN1S+/3Q==, tarball: file:projects/arm-portal.tgz} + resolution: {integrity: sha512-1QapdGZkB+xlwdfxkZYIHcL/z+9X5LMq54Ysm+ckbsL66l4R7nKJUJ94EMtGK7dQYy71Zq54d7kAiKaKhIIw3Q==, tarball: file:projects/arm-portal.tgz} name: '@rush-temp/arm-portal' version: 0.0.0 dependencies: @@ -17734,7 +17735,7 @@ packages: dev: false file:projects/arm-postgresql-flexible.tgz: - resolution: {integrity: sha512-42obwbCkSftt9nWFzb8iHFPqV7E/ArPOnAMS55z7qnfFfzSEO6cQ2dLtJ3n6t8F0yN7F16/pB7/P5CCBqfAxZA==, tarball: file:projects/arm-postgresql-flexible.tgz} + resolution: {integrity: sha512-NSIbK904401vTowcmbyrN6air9mB778Lw4dF+akIyx1RD15Ye2eEdXagrdzoxCeaf+pSrkAQK/ghRW8qmWT8Fw==, tarball: file:projects/arm-postgresql-flexible.tgz} name: '@rush-temp/arm-postgresql-flexible' version: 0.0.0 dependencies: @@ -17764,7 +17765,7 @@ packages: dev: false file:projects/arm-postgresql.tgz: - resolution: {integrity: sha512-rUut4EsMqE0m7A6fpuDpjAX9uRIAgZFGuDP+yYyEcHB6ZST7xpmA97WXqJhECH4xyoyVVQ9/b6BetH/49cVHQA==, tarball: file:projects/arm-postgresql.tgz} + resolution: {integrity: sha512-Cd1CoTd5t3SnvR+KTZJCMP65q8drHeVKfSuRyMz0NntBn+xz2Ou/qwiV6T0+1AqEvlG2KCBNMcTTdcZEoECZ7Q==, tarball: file:projects/arm-postgresql.tgz} name: '@rush-temp/arm-postgresql' version: 0.0.0 dependencies: @@ -17793,7 +17794,7 @@ packages: dev: false file:projects/arm-powerbidedicated.tgz: - resolution: {integrity: sha512-g2Nz33tyJtj2dEp/wbmvlbxbcY8Yjw3+Cnry6VL/+s0AoIY7nkkYFdKT98rVlvXIN+KBN7Zs1T3MoXFlfHhFIQ==, tarball: file:projects/arm-powerbidedicated.tgz} + resolution: {integrity: sha512-dlILYWypLv9jm+6xBYjloorL6ufiEikCv3PaPLz57X4eEVJcZigmOoLw8G1SEiIahsW/te6wrinHFIseMK75Lw==, tarball: file:projects/arm-powerbidedicated.tgz} name: '@rush-temp/arm-powerbidedicated' version: 0.0.0 dependencies: @@ -17823,7 +17824,7 @@ packages: dev: false file:projects/arm-powerbiembedded.tgz: - resolution: {integrity: sha512-g5UQEJN6v86qTZkw2+VBwnJE1QJSD2ZbBZitwz01DigHRDbatVnmhEgjvM7lvDbFChomaWEPocWlZcbQBgMP6Q==, tarball: file:projects/arm-powerbiembedded.tgz} + resolution: {integrity: sha512-lSscL3/6wrUi++hdQVBxR+VePqYFmpjzhZ/4pUtqm0W15XlXcXZccO7XMbhJtnwRTDGYUKpJ5rhR7uYu9337LA==, tarball: file:projects/arm-powerbiembedded.tgz} name: '@rush-temp/arm-powerbiembedded' version: 0.0.0 dependencies: @@ -17852,7 +17853,7 @@ packages: dev: false file:projects/arm-privatedns.tgz: - resolution: {integrity: sha512-te0zKXvLfbSL2nhRF7iu5i35dD8AnHcZkDr+aPyhTviHCpVna0zsrBUZ/McCYQZzNImcXICQy0vXG0Kv0oPHtA==, tarball: file:projects/arm-privatedns.tgz} + resolution: {integrity: sha512-DeLYIZhkysGVmRhymdQar8suXVHuSthEV2/909LcyshuvnT9reEA5pBUnpERwYILnE0v0Pe5cOiYM2zNu5K3jQ==, tarball: file:projects/arm-privatedns.tgz} name: '@rush-temp/arm-privatedns' version: 0.0.0 dependencies: @@ -17882,7 +17883,7 @@ packages: dev: false file:projects/arm-purview.tgz: - resolution: {integrity: sha512-93WGpddENzgKRzQYsjYfSoTPOJAqSKrGkMcwLfOOEAI5FdXK3bW0wIqxSXGJGe6gimeouwHsebL8y/Ta6BbJ2A==, tarball: file:projects/arm-purview.tgz} + resolution: {integrity: sha512-B1h7MW0LspMCjkdtQLXgFe1+CHGq1y8+UGRm9OrWbC+qpQ33GoJX0RhONJJ61mT5JUSpsh0YZla/O8K61lZNfg==, tarball: file:projects/arm-purview.tgz} name: '@rush-temp/arm-purview' version: 0.0.0 dependencies: @@ -17911,7 +17912,7 @@ packages: dev: false file:projects/arm-quantum.tgz: - resolution: {integrity: sha512-bXlLybtVHrxeoeH7Autfo9oAeAgxtLiD4LifjhKJQFDMtKy7XwJeLEP8wjCLIUz4HjPqdATZOy91P+iipaXKWw==, tarball: file:projects/arm-quantum.tgz} + resolution: {integrity: sha512-o7s/NDNGiGHq410Mkf/5TQDqgPd7LqdT99DoBGNIGEFiPnX3OLeGR/9ix5Yoamyc6V2vcpvz53wHba6CkMPtyQ==, tarball: file:projects/arm-quantum.tgz} name: '@rush-temp/arm-quantum' version: 0.0.0 dependencies: @@ -17941,7 +17942,7 @@ packages: dev: false file:projects/arm-qumulo.tgz: - resolution: {integrity: sha512-16kffyI39XON8XY0eZ8FV4msa7hdHziR5iXUAOOcVXnhrlyWeIeZ8BAWNRxdwfSRDIrnWzDx+aJTQnVRKL3E2Q==, tarball: file:projects/arm-qumulo.tgz} + resolution: {integrity: sha512-gYm9C1mxbgueCqF0iXFyNYlYxTSt3z+qziS108LyIOyQGplqBl37wIe2S5Nb0R87vWXYnYJHNhjVMMIvTrshPw==, tarball: file:projects/arm-qumulo.tgz} name: '@rush-temp/arm-qumulo' version: 0.0.0 dependencies: @@ -17972,7 +17973,7 @@ packages: dev: false file:projects/arm-quota.tgz: - resolution: {integrity: sha512-xk059uR7eCCN3t024cWSE4S9muFzgPyN0kwgYPtQ9y/4+OQwdv8wvBqclcnw++X7ttxE5uPz9P6NgkNQS+HINA==, tarball: file:projects/arm-quota.tgz} + resolution: {integrity: sha512-TcVpxc7YC3FWRwcUIO0Uto0RWVGgvHGZ+WvqOVtjLD93cgzO0gaognPjZ7dpaN+f3gyOGs0ksjiJl866jCimGg==, tarball: file:projects/arm-quota.tgz} name: '@rush-temp/arm-quota' version: 0.0.0 dependencies: @@ -18002,7 +18003,7 @@ packages: dev: false file:projects/arm-recoveryservices-siterecovery.tgz: - resolution: {integrity: sha512-xcNv4RDnr33f5crsn2KZvyN0LDD1FGh2n8tcaQFLRAgZtK8y//XRiWtaFER7SKl3TaVrVjy2E9feEwAujZoW6g==, tarball: file:projects/arm-recoveryservices-siterecovery.tgz} + resolution: {integrity: sha512-Zy9s6Cc2SK2Y/qoQVc9ruyPwRaUbukYN4w7zELuTMsGOXAYzwW+GWqW53HVv9ATBkWcSPObZYIYfA9ahNq4Uhw==, tarball: file:projects/arm-recoveryservices-siterecovery.tgz} name: '@rush-temp/arm-recoveryservices-siterecovery' version: 0.0.0 dependencies: @@ -18032,7 +18033,7 @@ packages: dev: false file:projects/arm-recoveryservices.tgz: - resolution: {integrity: sha512-06A+DFamgjqnrd2zLMyYwoU48g7Bbwf/paXpGdKklU7SqcmCxUbtZUJTrZEtYngnXQSeAt58brXVBnGYE0evPA==, tarball: file:projects/arm-recoveryservices.tgz} + resolution: {integrity: sha512-hE9WTZh0MLaXAWCuHvQDjvzeQvxDn4t3x4Ws1o/sArO48yDG0+e9ZdCv/n3cX7NgxehtYb3142vlrosgojb3Ww==, tarball: file:projects/arm-recoveryservices.tgz} name: '@rush-temp/arm-recoveryservices' version: 0.0.0 dependencies: @@ -18063,7 +18064,7 @@ packages: dev: false file:projects/arm-recoveryservicesbackup.tgz: - resolution: {integrity: sha512-2noksR5ZT7zAwxoe62PnPvseK+9e3FTieCHLxCN6JOzEsLohvWLaKA3COBimtzZBsOeEkfNexOjKUXmyMKSvxA==, tarball: file:projects/arm-recoveryservicesbackup.tgz} + resolution: {integrity: sha512-aBxC2pHxknZk9hAvIHRmvw6o2Otg6NGB7/4HHdxTHdwd+5zthSZVMiNlN1lQr9rXZNpBhe9Ao/mm6C30S2/sgg==, tarball: file:projects/arm-recoveryservicesbackup.tgz} name: '@rush-temp/arm-recoveryservicesbackup' version: 0.0.0 dependencies: @@ -18095,7 +18096,7 @@ packages: dev: false file:projects/arm-recoveryservicesdatareplication.tgz: - resolution: {integrity: sha512-psblxki1Yi/bWothwmWqb+En3eL8BhAo7x1SuiHbKn600IaznqexgN/NB2KAB7qyRHUCa/IjiysgZ2dBZ1BqQQ==, tarball: file:projects/arm-recoveryservicesdatareplication.tgz} + resolution: {integrity: sha512-s6rIHw/4pUPO7OWuP638NHaer/fWhpg0x+KLAxRHFtIC5d5i2+ipG/6YL9Tauhr0BozZWzWUMhFYE+ia9nEEKg==, tarball: file:projects/arm-recoveryservicesdatareplication.tgz} name: '@rush-temp/arm-recoveryservicesdatareplication' version: 0.0.0 dependencies: @@ -18125,7 +18126,7 @@ packages: dev: false file:projects/arm-redhatopenshift.tgz: - resolution: {integrity: sha512-BwUzxC6iOJCCVzPqt2faC92BLQ74PN3hlhv1a1SsGdqWz8vXr7ONGB0YF7fiLtCvvn7RuileFsVfjXNrKy9qqA==, tarball: file:projects/arm-redhatopenshift.tgz} + resolution: {integrity: sha512-G7cH1A3bimoSKhWgvtc1mrKbxDvfrT2DCAQK8MXGCP1bQr2BWhEWZe/kCOUIPRCte4R7aVB/ccqnIj7GgECWQw==, tarball: file:projects/arm-redhatopenshift.tgz} name: '@rush-temp/arm-redhatopenshift' version: 0.0.0 dependencies: @@ -18156,7 +18157,7 @@ packages: dev: false file:projects/arm-rediscache.tgz: - resolution: {integrity: sha512-wjKgPDteXSNG7HsflXJ6v7ogpaDCk+Cbx5YNmOr2XQJ7STHcZKl8XlOXagYonaTB/ZXPFI2jDZxiv39SQZr0yA==, tarball: file:projects/arm-rediscache.tgz} + resolution: {integrity: sha512-iaPfdmOfF5ZnFRjtd6JqqvSlPn1JbSoqlEM7968JDg4kMbtRYJj/RSp2OaZ3HbFhcUhYRRC9T4GzDPGmfmqd3w==, tarball: file:projects/arm-rediscache.tgz} name: '@rush-temp/arm-rediscache' version: 0.0.0 dependencies: @@ -18188,7 +18189,7 @@ packages: dev: false file:projects/arm-redisenterprisecache.tgz: - resolution: {integrity: sha512-tn3eCGAuaZ5/WguvYXmmXZuRYRCie4bKR38XnA255/jD2njJ1qxuDCpH/nmT38r0R1L8jniBTlqP0+ylfgGbjg==, tarball: file:projects/arm-redisenterprisecache.tgz} + resolution: {integrity: sha512-aZLFBUEBCOzoZsTUJhc9cMShOYYGbV/6bEuR9NEAsP5N3CruGtH8LgZs3D0zsrPfjyGSaYZwqtIJMYbzzmUxdA==, tarball: file:projects/arm-redisenterprisecache.tgz} name: '@rush-temp/arm-redisenterprisecache' version: 0.0.0 dependencies: @@ -18219,7 +18220,7 @@ packages: dev: false file:projects/arm-relay.tgz: - resolution: {integrity: sha512-uwrO1rzLldkeACmDg6IrzkUcDhEPxYbT7Vd7uz6GJuleJo+U+rlKz4KngctChfIy+H5lXO8M1tG/8HFhO1BDhA==, tarball: file:projects/arm-relay.tgz} + resolution: {integrity: sha512-Th9b0kM7MAcoZ612c8zz9auhr8Hqnb3yMr+KWdRnx9miUJaIjchsiHWANFuvfnHmx8P71p/TskXMbTj8OMWnPg==, tarball: file:projects/arm-relay.tgz} name: '@rush-temp/arm-relay' version: 0.0.0 dependencies: @@ -18249,7 +18250,7 @@ packages: dev: false file:projects/arm-reservations.tgz: - resolution: {integrity: sha512-BqGc0TP5W8b1mEC2QK0JA/Mq+Qv8ITVZXexW4EHOKtDCDETYbwE+OIkAto3+411a6200kIUOzwyqViuUrRt6Bg==, tarball: file:projects/arm-reservations.tgz} + resolution: {integrity: sha512-xaeHLrGZsp6SoH1ojKtx/2HHnEN899g8w71qAZrAoaO3a+5eukKyC9Gfxb1iiKoxXvAqTXeN0TV3NEBGCIbOIg==, tarball: file:projects/arm-reservations.tgz} name: '@rush-temp/arm-reservations' version: 0.0.0 dependencies: @@ -18279,7 +18280,7 @@ packages: dev: false file:projects/arm-resourceconnector.tgz: - resolution: {integrity: sha512-AQ9gUwZYKgMz0em5ab5wekXZZ9aq1mYgME96Go11NxLDmt5CjLB+b0yqaJ1G+ij9sOCl4f0NwN70yyH9oJx7IQ==, tarball: file:projects/arm-resourceconnector.tgz} + resolution: {integrity: sha512-3/GLF0TEU0hxKhW0sP1uBMYfI5n5GSlQ26ls1EH5Jry2K+l9bQco4SvRGFNHHpqtqIjssgdxkhbDIDCpEDxRVg==, tarball: file:projects/arm-resourceconnector.tgz} name: '@rush-temp/arm-resourceconnector' version: 0.0.0 dependencies: @@ -18309,7 +18310,7 @@ packages: dev: false file:projects/arm-resourcegraph.tgz: - resolution: {integrity: sha512-zmk1cZALrBRWYbPPc29vEhHTpdbh+K9cmQT+1xcYOVFAB8rz2U1ZGp+v+eZDCYKbokwkQxj6vO3VGwVmud6spA==, tarball: file:projects/arm-resourcegraph.tgz} + resolution: {integrity: sha512-JdHzFd9wI6JJriyEvlkxEzkrAvHKS8sL1nqZ5F2w/0HctthIdjUM3WHTUPj7nf6NT/JsY11aB6rOUJrwJrrvCw==, tarball: file:projects/arm-resourcegraph.tgz} name: '@rush-temp/arm-resourcegraph' version: 0.0.0 dependencies: @@ -18336,7 +18337,7 @@ packages: dev: false file:projects/arm-resourcehealth.tgz: - resolution: {integrity: sha512-OmXdlZg6o/+pbuha9lGCccqxJKHHfvtRnKVEtd7ScUPrULI58nJvuiXOfMbSIMp95RED3alr8uoV1DH5X/2pJA==, tarball: file:projects/arm-resourcehealth.tgz} + resolution: {integrity: sha512-y8trJZSTDn6b1D10IKVSmb4/+HMZEi5cHfjwJWA12pmEfy8vitnl+YPnab9LbG1tBZq/qKonXdUeGzJSQkZ4Gg==, tarball: file:projects/arm-resourcehealth.tgz} name: '@rush-temp/arm-resourcehealth' version: 0.0.0 dependencies: @@ -18364,7 +18365,7 @@ packages: dev: false file:projects/arm-resourcemover.tgz: - resolution: {integrity: sha512-1D4dAl0mmNVfUStY63phkh4tqdWFTWUTv2U+0ZgTHdE1JPtdfgl/0cuLsmI/CkkLJfPWcPY1lZuHnBkILy8bkA==, tarball: file:projects/arm-resourcemover.tgz} + resolution: {integrity: sha512-x1C2jUcu6IrYMYwK0SjYkthOBecAhlf8/RKxawn4u+UmBJoTceamfVhg46RDC4Q2p4JqoWGa7rsHJvUVT16Aww==, tarball: file:projects/arm-resourcemover.tgz} name: '@rush-temp/arm-resourcemover' version: 0.0.0 dependencies: @@ -18394,7 +18395,7 @@ packages: dev: false file:projects/arm-resources-profile-2020-09-01-hybrid.tgz: - resolution: {integrity: sha512-kkwhL1lPRpgHIar/0p0nPu2s94ksLrvxuovYHcQmCI7+zwQuSnJBAoI/RN21uFBekdcbk5X9lVnZeZrsnBo8mw==, tarball: file:projects/arm-resources-profile-2020-09-01-hybrid.tgz} + resolution: {integrity: sha512-3K2SKWxCM/vXM3wNJxxjfznuSvjK0mNAr3KTfkR8bLZsZw0IYSYcSVlI6V6cfjUi/6pgsfwviNlWmsPdJ+FdtA==, tarball: file:projects/arm-resources-profile-2020-09-01-hybrid.tgz} name: '@rush-temp/arm-resources-profile-2020-09-01-hybrid' version: 0.0.0 dependencies: @@ -18424,7 +18425,7 @@ packages: dev: false file:projects/arm-resources-subscriptions.tgz: - resolution: {integrity: sha512-1rJhKQecqIun9TBKIJuCjb1JJpIHwhP04pqs9P0i0HBuy3Q3xxkJtx8mSAOe8Rw9daDBvZw8SwIN9+nrwf4URg==, tarball: file:projects/arm-resources-subscriptions.tgz} + resolution: {integrity: sha512-ESdS8paAhHR5HfMV7Hk+WSg9BILEmbBPdCJB0321w0xUPEZsIX5dI5JwylMIoxoqI29qJflOPDmP9f83L4+Z7w==, tarball: file:projects/arm-resources-subscriptions.tgz} name: '@rush-temp/arm-resources-subscriptions' version: 0.0.0 dependencies: @@ -18452,7 +18453,7 @@ packages: dev: false file:projects/arm-resources.tgz: - resolution: {integrity: sha512-6a16xYknvpbK19/9j06QEyv4YsWcLEoR9neVni4DcRgPbMELOh/a/9xeOo1Lisn6Jq7LQ4tbaHQWd5xbpgvpow==, tarball: file:projects/arm-resources.tgz} + resolution: {integrity: sha512-8TMFe//8E67q5Nze7yLR6VgxTPgEb1BIBF9AeBVV+Tcu8ijDgV/6siMyoOXafgdQkk2bO0tVO+SGfXQgIol+3g==, tarball: file:projects/arm-resources.tgz} name: '@rush-temp/arm-resources' version: 0.0.0 dependencies: @@ -18482,7 +18483,7 @@ packages: dev: false file:projects/arm-resourcesdeploymentstacks.tgz: - resolution: {integrity: sha512-59nSruSUUf0DBQysuEcADPS0mcz4ct3vHU16Zz2kcmjzO7TFQXA2xsFjNjeJaD2+C5r4XodX72Jn3yD0U22qrQ==, tarball: file:projects/arm-resourcesdeploymentstacks.tgz} + resolution: {integrity: sha512-CViGJPj+s3oFWu5qa59wIKJpNb2JiytehpwUomjfLwJQc7A3qXexcefkLo1ATe/x3xa/8VtGEGmHmcCQD2AbhQ==, tarball: file:projects/arm-resourcesdeploymentstacks.tgz} name: '@rush-temp/arm-resourcesdeploymentstacks' version: 0.0.0 dependencies: @@ -18513,7 +18514,7 @@ packages: dev: false file:projects/arm-scvmm.tgz: - resolution: {integrity: sha512-Ww4OxXaLiQyIXp5EZLfQSG+T/l/3cXm3KG8/T99zwwXdmwPII9/Wsv8SZmid0SMY6GDdb+8E9ZoHGVjC+/yrtA==, tarball: file:projects/arm-scvmm.tgz} + resolution: {integrity: sha512-Fkayn1s6liEmHj04cYJ492qlZh4so3USiiYydFKDLXq+iK5CraI8Y37o9nbgfigc80nJZM57OD13M7BHMEBoSw==, tarball: file:projects/arm-scvmm.tgz} name: '@rush-temp/arm-scvmm' version: 0.0.0 dependencies: @@ -18544,7 +18545,7 @@ packages: dev: false file:projects/arm-search.tgz: - resolution: {integrity: sha512-8uv5If4Z3qbT8dx9W89TzHJJ7AR4OC6k1IlD++vK1O7FZe0oNHYWwfd3cVjI7TbaccMC+Syzr+lAuMdt9FqJMA==, tarball: file:projects/arm-search.tgz} + resolution: {integrity: sha512-n9+MFthVi0kPRyKbesnuxpozFIAXlDtN3AUHhnifFNmk1ljV9L9Qlo6F4jwEUiVDxc3q4Tewg2Z20NXpsl7jcQ==, tarball: file:projects/arm-search.tgz} name: '@rush-temp/arm-search' version: 0.0.0 dependencies: @@ -18575,7 +18576,7 @@ packages: dev: false file:projects/arm-security.tgz: - resolution: {integrity: sha512-B70NAL/cD6aCD6ZFWPaQ2fCRsoA4j8ZnFsGa/y9vDILw/37omK/X06fg1L3eItXDa85rnxAKEyVISb4/CmSlMQ==, tarball: file:projects/arm-security.tgz} + resolution: {integrity: sha512-Px/+niYXJJSBaYURVZ7Sy0ZUBrh5mL5YTdHXKcumWBVaNY6IwcdEbtR3ZfjWS1J2fkZNUCBe28PjEy4+oQBzow==, tarball: file:projects/arm-security.tgz} name: '@rush-temp/arm-security' version: 0.0.0 dependencies: @@ -18606,7 +18607,7 @@ packages: dev: false file:projects/arm-securitydevops.tgz: - resolution: {integrity: sha512-8LQ0CNpQRwNCKE5gn+oP3618AYNtvqNec3Mxu5PGrWUs3i1IiQAOqpnLAl+NLFjYgq/5cD3gm8FVlnmKaRRX+g==, tarball: file:projects/arm-securitydevops.tgz} + resolution: {integrity: sha512-S4pcnEbybi5nmSjXtXKhIsTRuw7imOZmTcOg3bAPgz3KqoLVKXzNIaQ45IelRQ8XXWzbt2FLMruvJXZWGZa/dw==, tarball: file:projects/arm-securitydevops.tgz} name: '@rush-temp/arm-securitydevops' version: 0.0.0 dependencies: @@ -18636,7 +18637,7 @@ packages: dev: false file:projects/arm-securityinsight.tgz: - resolution: {integrity: sha512-ECeHKmdNfMrlWU+ALpyQjR6P1EmyqVmwq333v5RV6lVJmh8P0P/BxUNCXpyzFW1fbzQrNz5PkcxeWk8Dn1OXeg==, tarball: file:projects/arm-securityinsight.tgz} + resolution: {integrity: sha512-z7/bwVywKxYb8/nzlnRHG0naVcEeSHTzxDEQ0c1QiRmlvtuuVReA0sH0eBKCSUWqe2Gad9W6zFjyLoqUxg2iyg==, tarball: file:projects/arm-securityinsight.tgz} name: '@rush-temp/arm-securityinsight' version: 0.0.0 dependencies: @@ -18666,7 +18667,7 @@ packages: dev: false file:projects/arm-selfhelp.tgz: - resolution: {integrity: sha512-Du6qiL/0d6POf7L+oG/79kFrVo1aq/OqOT9GcaPwMgsATyPRJ30MBVglpAz2Y/ZQ2PhOUZlC06LzxW6er51qTA==, tarball: file:projects/arm-selfhelp.tgz} + resolution: {integrity: sha512-qKw7XYBLOZ8gMshNFDUxW6hhf4A60cbTwLA+s1Fh/OPUKopWJ6u8z0uw40ZaodIosbk/c6XPhWaYtUImIblFsA==, tarball: file:projects/arm-selfhelp.tgz} name: '@rush-temp/arm-selfhelp' version: 0.0.0 dependencies: @@ -18697,7 +18698,7 @@ packages: dev: false file:projects/arm-serialconsole.tgz: - resolution: {integrity: sha512-IE4+e1/ccdTPu/DGZ319e0G9sO5zDhKOHYAJ3ys2d1TEgzfyZq701uDZYWj2jRPp+wTbWI1OKHNUchLOv2XFiw==, tarball: file:projects/arm-serialconsole.tgz} + resolution: {integrity: sha512-GMojm865n40ZBB+4kLDKzAoO6dOa4U+Vz7zEFXNcbIHiQUoS6+PwzuDSPvOLSeNxHV7samqCTkge2FnmlQqr2A==, tarball: file:projects/arm-serialconsole.tgz} name: '@rush-temp/arm-serialconsole' version: 0.0.0 dependencies: @@ -18724,7 +18725,7 @@ packages: dev: false file:projects/arm-servicebus.tgz: - resolution: {integrity: sha512-iKMaq8Mpd8NWdBvKvDKFX8HME7Vmks7T44pkpV8l7Py3eFY9JQSE6DVvrY9yD6EJWWxUkoswtZM7/UcoNr8gzw==, tarball: file:projects/arm-servicebus.tgz} + resolution: {integrity: sha512-mX0dwH8mu+GrYq+JsD3AhOjm/K62WRtCNHRwHpyrwCtgc+VUuD6T/mpD3t/oERQ5NcMj/KubhdOk6iQci39eNQ==, tarball: file:projects/arm-servicebus.tgz} name: '@rush-temp/arm-servicebus' version: 0.0.0 dependencies: @@ -18754,7 +18755,7 @@ packages: dev: false file:projects/arm-servicefabric-1.tgz: - resolution: {integrity: sha512-VpD1QplYj7Nk8D1EVFya3hgMbFMKel3IDJZb2DZtxuO2TMU6aDBAm8Fh1ObDEaqFtKS4zG08zC3+Sa6vq/3wFg==, tarball: file:projects/arm-servicefabric-1.tgz} + resolution: {integrity: sha512-mhjzYzaHr459X1YZqYfeMyMf0WE9tGDIS0NolkxvsJHVS4GzfXLk+Qwv94I0Oczd8icANrt5bvtewhMJMN55cA==, tarball: file:projects/arm-servicefabric-1.tgz} name: '@rush-temp/arm-servicefabric-1' version: 0.0.0 dependencies: @@ -18784,7 +18785,7 @@ packages: dev: false file:projects/arm-servicefabric.tgz: - resolution: {integrity: sha512-PYs4dUaMHAw61YrQ+9Gtrcvos/F+ue1jMFIG4K2F49lVjEJ8X3HddH7ewaUHP1GTzevTGSQeeOqipJJ289ui+w==, tarball: file:projects/arm-servicefabric.tgz} + resolution: {integrity: sha512-nBD/gkz9t+npnHpQxhMqmYsiM7g2ORRS9ZTuXy8esCn2ErOSZeus7nndC7bVRSaWUFjw3RCtEaKOGC+k5FeBPQ==, tarball: file:projects/arm-servicefabric.tgz} name: '@rush-temp/arm-servicefabric' version: 0.0.0 dependencies: @@ -18830,7 +18831,7 @@ packages: dev: false file:projects/arm-servicefabricmanagedclusters.tgz: - resolution: {integrity: sha512-aXLhNHWEstwVsLKpmTC2k/xVystn9qlcSGaDg+o6B5saAiAICgXAynb+8X4YUUkH/N7xVIGwB06GhYPhmkDwMw==, tarball: file:projects/arm-servicefabricmanagedclusters.tgz} + resolution: {integrity: sha512-TCi0jp2pkdiaCDttYrLe2lOgb2BLNKzfqy8sCBizSGqbapwU1zr2k1dsdlVPFaBmoPG6T3+MqqBukQ55Qde9NQ==, tarball: file:projects/arm-servicefabricmanagedclusters.tgz} name: '@rush-temp/arm-servicefabricmanagedclusters' version: 0.0.0 dependencies: @@ -18861,7 +18862,7 @@ packages: dev: false file:projects/arm-servicefabricmesh.tgz: - resolution: {integrity: sha512-DAoHYCxEbPvnDOv46/WhvUT+yt66a6vKoaGJpQvqDpKmmpToXECdoprk6D4y0TvRfA1qRjpF8VoNFHjtgOUynA==, tarball: file:projects/arm-servicefabricmesh.tgz} + resolution: {integrity: sha512-VUYEVVtWCIYNADs1mvJKm6x/q9zkLVxBvBgFeh9X0pn5A0I28A8LN8NikklaByhLopV4Yfoqf8iNj07TErM7oA==, tarball: file:projects/arm-servicefabricmesh.tgz} name: '@rush-temp/arm-servicefabricmesh' version: 0.0.0 dependencies: @@ -18889,7 +18890,7 @@ packages: dev: false file:projects/arm-servicelinker.tgz: - resolution: {integrity: sha512-b4I+nEFdfBdbxwWL83hH8Cx8u1tnApKwJ4woUu5sW1oeBY+b1EBHqB1oMRn537e0OKZfa5rYLBVSLSSjXHCgFA==, tarball: file:projects/arm-servicelinker.tgz} + resolution: {integrity: sha512-BI03Uf+B32eQ1/UJ5zwaebq+GqL3BZKvZRhYiHKNZIZ5XkSCj/+RbzWxkrUIYpjvYK1kK8ZdxriBEEge5x+yCQ==, tarball: file:projects/arm-servicelinker.tgz} name: '@rush-temp/arm-servicelinker' version: 0.0.0 dependencies: @@ -18919,7 +18920,7 @@ packages: dev: false file:projects/arm-servicemap.tgz: - resolution: {integrity: sha512-TuOms7H4yauZtgxdgm7wHhfCAg1aGoXBxp+pH1DJYcq5Dv0Hl8OLiASVR76MquUU0hgGWCY8HEk1rnY2gOBmnw==, tarball: file:projects/arm-servicemap.tgz} + resolution: {integrity: sha512-gMlBuke+uVxkC+RHCKU/uqQF3DDItNnnSY8u3/6am2rhQKMmAyNE9cwf9LeOuTaK9Vwyp40/domzBBT3WXHi9g==, tarball: file:projects/arm-servicemap.tgz} name: '@rush-temp/arm-servicemap' version: 0.0.0 dependencies: @@ -18947,7 +18948,7 @@ packages: dev: false file:projects/arm-servicenetworking.tgz: - resolution: {integrity: sha512-i8zywAj3ogUJQ8TsnlaNoWGcHF4DklFscEdWVm0GJEf5kYSb9S6nXg40mVHqKtLLa1EiawVcXaMiHta7qlOlxQ==, tarball: file:projects/arm-servicenetworking.tgz} + resolution: {integrity: sha512-jTqnBRCg8w5P4b+b1zRL8OcqS/V7ZmJdoyobiF3nlybl7r3Yrn8QYjqsNSoDyTfZCPUobdfJXiw02OjvHBKT7A==, tarball: file:projects/arm-servicenetworking.tgz} name: '@rush-temp/arm-servicenetworking' version: 0.0.0 dependencies: @@ -18977,7 +18978,7 @@ packages: dev: false file:projects/arm-signalr.tgz: - resolution: {integrity: sha512-q3he14cTJvsZlGmkKan1jmInCxqH8L9Qjiph4Kk9rNqDNOjDzWjfI5rblwT2rwzrDhwn3LA28zbl8mkEeFUneg==, tarball: file:projects/arm-signalr.tgz} + resolution: {integrity: sha512-zOj+xr0QvdXrIlVyYKgwydI81agrOmG5t5IPn1LBtXKhHc6awL3+j5mBc4UKVb33U4vujVMSAIznx8U/STDDRw==, tarball: file:projects/arm-signalr.tgz} name: '@rush-temp/arm-signalr' version: 0.0.0 dependencies: @@ -19007,7 +19008,7 @@ packages: dev: false file:projects/arm-sphere.tgz: - resolution: {integrity: sha512-zu2ViWjA8Q+zH59tu1TFghRMTpx/o59Njik5kxjhJimusHi2WdVA2tFXy+43JOGZn2y/EOKTx8ByPe3QXXPgJg==, tarball: file:projects/arm-sphere.tgz} + resolution: {integrity: sha512-jQJaQ8K8/TuACKtMzMaljQ+2Lqpx08OCBYb/Hi+D2/5UGS9iW7GEu1nXdyT+vltrr4YYCINZn6n4L2+CHHTlQw==, tarball: file:projects/arm-sphere.tgz} name: '@rush-temp/arm-sphere' version: 0.0.0 dependencies: @@ -19037,7 +19038,7 @@ packages: dev: false file:projects/arm-springappdiscovery.tgz: - resolution: {integrity: sha512-8I6C+bVGH81wWi93y4yWThAN6Jg45vsdz0QJ0aNh8pURiwRSLfYjqpcWFGrrvMtfLPsDvsDmya/sPDTxYfI56w==, tarball: file:projects/arm-springappdiscovery.tgz} + resolution: {integrity: sha512-Zb4tvHVkQFwSBEoyOwiCg+1MXyU0xYDpG6OqyCuWiQvcdHM4UwXcwJSfJznS7GTTmQdCqegVXYLxUYJTpxoobw==, tarball: file:projects/arm-springappdiscovery.tgz} name: '@rush-temp/arm-springappdiscovery' version: 0.0.0 dependencies: @@ -19067,7 +19068,7 @@ packages: dev: false file:projects/arm-sql.tgz: - resolution: {integrity: sha512-jAEmxePLAQYwQA1+pc90ne5yg9S17zaCEdxcWSs+mzffP6aaMgCyTRVsMUWgn8KSw9Yi6zC0xzzf11OOYq3lKg==, tarball: file:projects/arm-sql.tgz} + resolution: {integrity: sha512-73Oet2aISNMPTPVJjDN0whP3J23ZtcbObc8wUifIqF/x+sKGEEWDwH2jdwcy4d+MJ0D99rsnTsEfPNK617tPAQ==, tarball: file:projects/arm-sql.tgz} name: '@rush-temp/arm-sql' version: 0.0.0 dependencies: @@ -19098,7 +19099,7 @@ packages: dev: false file:projects/arm-sqlvirtualmachine.tgz: - resolution: {integrity: sha512-fqfFdEwf0t8GAOh7qfR5g5YhSs8Km6/IaoafYyQVwV6e2jgygHl6zyARRDv8cP2m/KWR6sxj/uo9e6/a/aHLgA==, tarball: file:projects/arm-sqlvirtualmachine.tgz} + resolution: {integrity: sha512-pYNGuK8/84ZrBuewv7yQqhdCo/IVcD+mfYYPZty0OdFkx3SKB3gzBmTQ5m++xVN1ErX3wNPnX6G9OXKLSLX0Ag==, tarball: file:projects/arm-sqlvirtualmachine.tgz} name: '@rush-temp/arm-sqlvirtualmachine' version: 0.0.0 dependencies: @@ -19128,7 +19129,7 @@ packages: dev: false file:projects/arm-standbypool.tgz: - resolution: {integrity: sha512-ad0vpTy1Jgcz8oulGhJAF35Pd2E8h+1IjDqexQoVe9PU4g7piDgfmXu2Enf6ACydU7dentGyCikqr3pZyGDFhw==, tarball: file:projects/arm-standbypool.tgz} + resolution: {integrity: sha512-8XK6tR34ybn9FddKq0+JQ1bZbzRoW715/OlEZGVKxIYwW7ZIZtuTnrhyfhgy2V4dKzfdja3bAe3ytl+WcusCFw==, tarball: file:projects/arm-standbypool.tgz} name: '@rush-temp/arm-standbypool' version: 0.0.0 dependencies: @@ -19159,7 +19160,7 @@ packages: dev: false file:projects/arm-storage-profile-2020-09-01-hybrid.tgz: - resolution: {integrity: sha512-UY/523bFXh4JW89AWbDbZjZl8dsPEytPd2OjzZ8uYdEcPXsb2JiPeS6741E7kE2Z99pBC9DgwfeqMjPVa6PLyg==, tarball: file:projects/arm-storage-profile-2020-09-01-hybrid.tgz} + resolution: {integrity: sha512-pPMG69GBIGTkkAtuzfE0wMCehJB4H2uRdCJvfrFqWL5+4gdqlAzxzw+Dy+3zfzZz+vEOAtlll43csdDB++ixwg==, tarball: file:projects/arm-storage-profile-2020-09-01-hybrid.tgz} name: '@rush-temp/arm-storage-profile-2020-09-01-hybrid' version: 0.0.0 dependencies: @@ -19188,7 +19189,7 @@ packages: dev: false file:projects/arm-storage.tgz: - resolution: {integrity: sha512-CrodZpd6ur66ptS0rc95Au7c0CwIRraHAuxmsgQdaqILR2zcprBEfsdnBWz8QSS6uzLDzZyJ5nl2HHgWZXYknQ==, tarball: file:projects/arm-storage.tgz} + resolution: {integrity: sha512-wu02t2M2e+U75bwlQZdo2YHXfAC4cbHGrhJO159LmJFet0/ICOxk5jUgduvhPS2WPOCHruqra4od6jcGxjJsmA==, tarball: file:projects/arm-storage.tgz} name: '@rush-temp/arm-storage' version: 0.0.0 dependencies: @@ -19218,7 +19219,7 @@ packages: dev: false file:projects/arm-storageactions.tgz: - resolution: {integrity: sha512-y9gBYrOwFnxR6w7ihJHFh+4Ua84IV71PG1QfYKpsYBaCl7Ye6YPSIdsU89rAkb46TKckwsOISqUqij+de8qkuA==, tarball: file:projects/arm-storageactions.tgz} + resolution: {integrity: sha512-ftPPQPoyeEFHPiCjAqjV9TaxJpsoKPjcOWhFGIyyt7UjSnIsqtp4zm9G7SeGiOWTAuog7BoQ0IYWWseg9oi5vA==, tarball: file:projects/arm-storageactions.tgz} name: '@rush-temp/arm-storageactions' version: 0.0.0 dependencies: @@ -19248,7 +19249,7 @@ packages: dev: false file:projects/arm-storagecache.tgz: - resolution: {integrity: sha512-1ZZEylMxUh/nPoxIKGSxpaVoHOcOOABS8qkwf4BlK/0y1/siwnBJSvqHgFcZ3D5YlbbIuj8rRVSNInaIuFUR5A==, tarball: file:projects/arm-storagecache.tgz} + resolution: {integrity: sha512-RO0zn7zgnyBI+/G9/6GQWU/aaiXy4dW9Fqe13gNPaOWQL0Qx+9PFRWqy3Zd2uNoCxa3RjQnwrPuk8Rnsmg8EZg==, tarball: file:projects/arm-storagecache.tgz} name: '@rush-temp/arm-storagecache' version: 0.0.0 dependencies: @@ -19279,7 +19280,7 @@ packages: dev: false file:projects/arm-storageimportexport.tgz: - resolution: {integrity: sha512-yi5HpUSvqmLbhj5gcwqzn3k4pKGorFKZQN5VwuxnFsZos/hwSxe/UKLRE4xijisCJh8NytSx4CDP0SbFpvoXxA==, tarball: file:projects/arm-storageimportexport.tgz} + resolution: {integrity: sha512-FrkH1kkYZWRTmhzUOuNymupxNYkUF/0zi9JWQyDQB3W65DcOZN0w9PxIMF1aTOKHe8s6UlDpbpr1zmvx2r5ZTw==, tarball: file:projects/arm-storageimportexport.tgz} name: '@rush-temp/arm-storageimportexport' version: 0.0.0 dependencies: @@ -19307,7 +19308,7 @@ packages: dev: false file:projects/arm-storagemover.tgz: - resolution: {integrity: sha512-UsX6UCtWlnuZYFIzdOq/F7l72d4ku5XR/9dmaPqmgOz795hO3b5k3M69IBkdEeFMgHNmj5d+K/BIkRtVTA1+nQ==, tarball: file:projects/arm-storagemover.tgz} + resolution: {integrity: sha512-eBTpDLGTC8bzTU5PxS+OILzHHcbDuRDDhLFgBmCUHKoY8wMKK4gLmz/u7l4IXfanLagxihCT395OAmknYxNEsQ==, tarball: file:projects/arm-storagemover.tgz} name: '@rush-temp/arm-storagemover' version: 0.0.0 dependencies: @@ -19338,7 +19339,7 @@ packages: dev: false file:projects/arm-storagesync.tgz: - resolution: {integrity: sha512-4U6POnxYGRyF5vQB9KeQGyWYW/adVrtQku+3xfe3Nj0QQ8VpmN5q5DVwbI+NDLIOvrXm0ReaQzFUtbhgIc9K9w==, tarball: file:projects/arm-storagesync.tgz} + resolution: {integrity: sha512-CVer+JDWP2v9lzFt+s/g9qVJs5OyMa0jtq6OIt0vEEY35B91/0ZX/6FaDZvOil6ogF/fn8HYsLUlpPqk+3GUAg==, tarball: file:projects/arm-storagesync.tgz} name: '@rush-temp/arm-storagesync' version: 0.0.0 dependencies: @@ -19367,7 +19368,7 @@ packages: dev: false file:projects/arm-storsimple1200series.tgz: - resolution: {integrity: sha512-cTFxPvBEBJWkj19CYPT6zqIT9KLwgfdBW4g/w1Z2OEOme1eKMfI8UmpQo8WKk/6JCpXhQLcewHKkn9NJMpbs2A==, tarball: file:projects/arm-storsimple1200series.tgz} + resolution: {integrity: sha512-HoMQdFdLZ9KsB/yvQRQeyCUeXSX2xtZKdqmy6WJgRsi3aMj8MUWduZC4LbbkDb7F/crUzsGJxhMYNm6zZn2G1g==, tarball: file:projects/arm-storsimple1200series.tgz} name: '@rush-temp/arm-storsimple1200series' version: 0.0.0 dependencies: @@ -19396,7 +19397,7 @@ packages: dev: false file:projects/arm-storsimple8000series.tgz: - resolution: {integrity: sha512-i1eh3ERKkdECOuc/BOb5exDZuL7aUTEKiXFpqLlKcfKgXz1pCEYPV8ekhK6U4QXuwNWPan3+y6TzeuoKxCjH3Q==, tarball: file:projects/arm-storsimple8000series.tgz} + resolution: {integrity: sha512-8Y3vrXijr+GNdjDTMU5lMX+lcplFw3T9h2j8XbvHqrzWwHAnN24GMJN1styPzvvTesGtXrsEDAbAIGTkMxswzg==, tarball: file:projects/arm-storsimple8000series.tgz} name: '@rush-temp/arm-storsimple8000series' version: 0.0.0 dependencies: @@ -19425,7 +19426,7 @@ packages: dev: false file:projects/arm-streamanalytics.tgz: - resolution: {integrity: sha512-BftyU/D+V40GmtOKEIBcjM3NQvpPQGefxlOVErMEkTvkRf1Ha7KXL+gcwWfHIWmeDlBYlU9S38yR0veRGvaD3w==, tarball: file:projects/arm-streamanalytics.tgz} + resolution: {integrity: sha512-mMgEakc8HukU0aZNHCjH4JtfdnAjluphyODqWpzS3haO6hwglmw9qTkRFD9OdeTQaNYX9G7tmlnj6KkL9+zJ6A==, tarball: file:projects/arm-streamanalytics.tgz} name: '@rush-temp/arm-streamanalytics' version: 0.0.0 dependencies: @@ -19455,7 +19456,7 @@ packages: dev: false file:projects/arm-subscriptions-profile-2020-09-01-hybrid.tgz: - resolution: {integrity: sha512-FWSgHuhV2hoZPRYrBFbP0I8pIHfK0VWZ1ThRFMhUvBm5bePKJvDm9A8WxQ1UACBYQ+r4sSqccPYxLDAUXQHWjA==, tarball: file:projects/arm-subscriptions-profile-2020-09-01-hybrid.tgz} + resolution: {integrity: sha512-j6JXR3XLuIHwKdUq+YL1sFmI1MfvzIjwFhykeFn0BxUiaEzus6dF9IKfiRYz/oK7lU0EpqbASLAWlWsFtpn3ZA==, tarball: file:projects/arm-subscriptions-profile-2020-09-01-hybrid.tgz} name: '@rush-temp/arm-subscriptions-profile-2020-09-01-hybrid' version: 0.0.0 dependencies: @@ -19483,7 +19484,7 @@ packages: dev: false file:projects/arm-subscriptions.tgz: - resolution: {integrity: sha512-N8BQ0j0ydmfNDRBK6+IVsrcf3+UkmfGNMubsDDoN3FvFRuHIDEN8YLB8NyhvhrMYFaoHGgCR56//I5qlOrllSA==, tarball: file:projects/arm-subscriptions.tgz} + resolution: {integrity: sha512-yxZ6qrSI1iPNoZNTfWjavZhpkUinY4iPqwMSZxL1gQFqGShQOEfgCpBT0DiJXyIYhevwNlQzg8BFFVCLJVDs+w==, tarball: file:projects/arm-subscriptions.tgz} name: '@rush-temp/arm-subscriptions' version: 0.0.0 dependencies: @@ -19512,7 +19513,7 @@ packages: dev: false file:projects/arm-support.tgz: - resolution: {integrity: sha512-mTNhSWriRWm1/pnKKWqwpFL91hPzZxtT3mrVgRhpQyEh2Nu5asIalfe0anZlF41QjSekjraARGS2epcNTRXRLQ==, tarball: file:projects/arm-support.tgz} + resolution: {integrity: sha512-h0HUrgnfJMgkcahpjb48+yRT+pQ//arYnNprAp0WTqgXEeHaXA02keI0rqTvuXM10BQV5CKiaFXWLh1XmK8Nmw==, tarball: file:projects/arm-support.tgz} name: '@rush-temp/arm-support' version: 0.0.0 dependencies: @@ -19542,7 +19543,7 @@ packages: dev: false file:projects/arm-synapse.tgz: - resolution: {integrity: sha512-gnS+AzWwj3uKCAVg064c9Wzgm7hKJq+db8tLe/XAJxXqPWGG9nKtc0q0sC/AGLuT24De6jZGBvNiHb9KYWTsMg==, tarball: file:projects/arm-synapse.tgz} + resolution: {integrity: sha512-PKSs1gos0LMkEvlgcKjm0Rx3t7kt9LrHd2zcHjDQQlj68x2AZqRqixXrs9G7+9InBWFyXL9E/K8q25KKkCe66w==, tarball: file:projects/arm-synapse.tgz} name: '@rush-temp/arm-synapse' version: 0.0.0 dependencies: @@ -19572,7 +19573,7 @@ packages: dev: false file:projects/arm-templatespecs.tgz: - resolution: {integrity: sha512-fK0qpWYE/TPivDe2HG8za6k/rWYQcjsVgKrkwJvTT77G237Bcp9AxuTOSBTr8rhAG43YmzuetLFf2F0a4t/jCw==, tarball: file:projects/arm-templatespecs.tgz} + resolution: {integrity: sha512-i/Zf3P6eq0cqB3hLbsmW5JYGoCsPzTebE/9W3vkLLgPytl6TAXkyVGk705Ubd0uAMOMF9PsAToALULf5zx1xwQ==, tarball: file:projects/arm-templatespecs.tgz} name: '@rush-temp/arm-templatespecs' version: 0.0.0 dependencies: @@ -19599,7 +19600,7 @@ packages: dev: false file:projects/arm-timeseriesinsights.tgz: - resolution: {integrity: sha512-ootvGtM+S6EIlwQFOVaOZFUVjCN3Za3fD3S0j3PDVR4gsJfwnFRGwf/SdNLG1uwJpaGnmalvMjLGph7+E4xO1w==, tarball: file:projects/arm-timeseriesinsights.tgz} + resolution: {integrity: sha512-qcaxrXXHz9j1L7wsQtOSwRBjCtqn049mL7cp2cBleXhZaxwHPBWlEL1yHfc1XXuBH+SGpEw9PsmSV0E7/4Lkhg==, tarball: file:projects/arm-timeseriesinsights.tgz} name: '@rush-temp/arm-timeseriesinsights' version: 0.0.0 dependencies: @@ -19629,7 +19630,7 @@ packages: dev: false file:projects/arm-trafficmanager.tgz: - resolution: {integrity: sha512-3w4+wkFe6S1S57009dFn+AWddYAy73EJhKrrFoZFtgKcY0c9WiqHxQrNqibyB7VMUsGOy3czFdp9+maYnNLuoQ==, tarball: file:projects/arm-trafficmanager.tgz} + resolution: {integrity: sha512-PXGzoriUH8pOZxxsnbDoYkn7UhQWLC0bydW1uXW1aKQNnSZhEWiQ7ebW+kTvJks40b4beaQXfho8nmv2EUI/yQ==, tarball: file:projects/arm-trafficmanager.tgz} name: '@rush-temp/arm-trafficmanager' version: 0.0.0 dependencies: @@ -19657,7 +19658,7 @@ packages: dev: false file:projects/arm-visualstudio.tgz: - resolution: {integrity: sha512-eT8xtQIsuBs4dl4SC+wYDSHgOLuwoyXDb4ponzU+ApjB6tW9nH4qZ2szxGA+u9I7Aur1bhTxE+OEAGArip4e3Q==, tarball: file:projects/arm-visualstudio.tgz} + resolution: {integrity: sha512-ZTBQ5hiO3FmkzfGVnh7eWH2t1rK9fuYbfs4Jh7id9eIv8Uool03CuqDX3HVWR4ybdNtvrO4eW9hxoBulKf43Qw==, tarball: file:projects/arm-visualstudio.tgz} name: '@rush-temp/arm-visualstudio' version: 0.0.0 dependencies: @@ -19686,7 +19687,7 @@ packages: dev: false file:projects/arm-vmwarecloudsimple.tgz: - resolution: {integrity: sha512-GaQkqiFuejshJA9bJvTXwQ9sIP3aIOJbgGbgIfpoQDWkLn/2fRrsE5bZYqoDQ2+RTxzUFsQcPRBiQrd3UD8k7g==, tarball: file:projects/arm-vmwarecloudsimple.tgz} + resolution: {integrity: sha512-iSBoVhQA4YidmDMKm5kXY8ySPBPBPBgbAevjzOoGc0G1am+dmDY2Nrg4rh3WMXPQvKQZzYGEdBi8c31RyBFNaA==, tarball: file:projects/arm-vmwarecloudsimple.tgz} name: '@rush-temp/arm-vmwarecloudsimple' version: 0.0.0 dependencies: @@ -19716,7 +19717,7 @@ packages: dev: false file:projects/arm-voiceservices.tgz: - resolution: {integrity: sha512-nQ4UThLd993Hrj5rgnzcn74jgMoj260kjTtnS2ZFoEs9ZUCLxWDEvVLvMAE7WSUQfJJhdkZYxnOjdvlpk9MNYA==, tarball: file:projects/arm-voiceservices.tgz} + resolution: {integrity: sha512-wjwC1xcsilmM1swl1/rQGu9soDeSlOBUAAKyU682ZVRaqlmqAQf0+Vls59qjnWolQncabYq8pGESLpPq+RqcGg==, tarball: file:projects/arm-voiceservices.tgz} name: '@rush-temp/arm-voiceservices' version: 0.0.0 dependencies: @@ -19746,7 +19747,7 @@ packages: dev: false file:projects/arm-webpubsub.tgz: - resolution: {integrity: sha512-M/la3E8Hmbf4jUjZuJHlcFwh8mj6IwL1DkUhsZPTI8PShkyt62ED0eqkYSjH7Rk3d9eqejzt5ml5kqOD83PVXg==, tarball: file:projects/arm-webpubsub.tgz} + resolution: {integrity: sha512-lDb8BncJGdS8FUQu/OSJfYYzkygPPqZ0P1BJqupO74IWVIAHz8qvMsb16bk0iaVt0S1S1sFUbwRHXYQGtypTrg==, tarball: file:projects/arm-webpubsub.tgz} name: '@rush-temp/arm-webpubsub' version: 0.0.0 dependencies: @@ -19776,7 +19777,7 @@ packages: dev: false file:projects/arm-webservices.tgz: - resolution: {integrity: sha512-ekHUB6FuRw8WckbapaHoIrOBNkM9pyMYpvh3eAoLdJuXtuB+sWhi5AkbqMAAOmG5eTIFVcdFerLM9mF5oe7BpA==, tarball: file:projects/arm-webservices.tgz} + resolution: {integrity: sha512-ZqhbL8SHzp/8DMRisACAogpghLDGbI2CfjuZ530M9uWKVR1/Ft6XdINfIpQuYCzz3gLSB2qhdLV7eOCRYM+Pyw==, tarball: file:projects/arm-webservices.tgz} name: '@rush-temp/arm-webservices' version: 0.0.0 dependencies: @@ -19805,7 +19806,7 @@ packages: dev: false file:projects/arm-workloads.tgz: - resolution: {integrity: sha512-Hq5iuKGfYthKhLV3MwJJnKMBmMp+VWLMrjWtyqL/Hl1oX0I3H8k3/4awBercHCF+UwBQdLZWaJLci3tc5OboxQ==, tarball: file:projects/arm-workloads.tgz} + resolution: {integrity: sha512-MUOiI1Y8zv4ZFDeN6QiFjsgEvJOOnrTbaPkqJfXZjVFmi9lPcjB4AZOEAkuGQGJ7i4foZ6XCuI3/hGXOzE6lwg==, tarball: file:projects/arm-workloads.tgz} name: '@rush-temp/arm-workloads' version: 0.0.0 dependencies: @@ -19835,7 +19836,7 @@ packages: dev: false file:projects/arm-workloadssapvirtualinstance.tgz: - resolution: {integrity: sha512-J+ADBzOKzJs4zOtj19h6zmBJyHdkxMTLzNw6IaXcN7NXmW47p3RxNcmd/Q7Pibowv4MT4bdbbJilJk8rNsMSBw==, tarball: file:projects/arm-workloadssapvirtualinstance.tgz} + resolution: {integrity: sha512-di/H4LlEHmsyf1Te08GxWeR7n8ceyE8AP5CH9ZqwMUb0a/uNTRcDRbb+iY3rBV2iSJLJh4GoSF6i38BsXRLNfQ==, tarball: file:projects/arm-workloadssapvirtualinstance.tgz} name: '@rush-temp/arm-workloadssapvirtualinstance' version: 0.0.0 dependencies: @@ -19865,7 +19866,7 @@ packages: dev: false file:projects/arm-workspaces.tgz: - resolution: {integrity: sha512-x/+dVXfl8FOWCby3FJpwv+qJ73zZVXQArVInVWkY5yar6KmCrN9qxfkLqMESzwPj7cgM2xjBj5j9/lbWa9/Mwg==, tarball: file:projects/arm-workspaces.tgz} + resolution: {integrity: sha512-XzL5da44qxz0ss5sVZ6p89qKs9IH1FTSLHgBh0JgyGZ8HPgM+qFqDtwgaOG+1weAw4GEcPqOH/sNcDBvieDTKg==, tarball: file:projects/arm-workspaces.tgz} name: '@rush-temp/arm-workspaces' version: 0.0.0 dependencies: @@ -19892,7 +19893,7 @@ packages: dev: false file:projects/attestation.tgz: - resolution: {integrity: sha512-l+kGTQVwItgb1fkO9koHefDga+zYn/Rs9d+m8yj02ZPSFOd0a2T9qhHFbXEj7t2uGU1+uiyOBpCrR/Z/45O9+g==, tarball: file:projects/attestation.tgz} + resolution: {integrity: sha512-Cjg+kS2ubVU3V2eKpeOJd9s8k/Afy+Euf0UznscBQQ/p6OhDLcAP3YfVAUSVtoWZCMkeMdEFl2EVs7yeNJ3SDQ==, tarball: file:projects/attestation.tgz} name: '@rush-temp/attestation' version: 0.0.0 dependencies: @@ -19943,7 +19944,7 @@ packages: dev: false file:projects/communication-alpha-ids.tgz: - resolution: {integrity: sha512-GxF9Mrz2Z52WGtnDFiI52dk1UfiaENxco2vJOMdk8rO6EBPSkNzXMpdRI4VNyxdYfTsU38l43fd2J0QVZ3E3dQ==, tarball: file:projects/communication-alpha-ids.tgz} + resolution: {integrity: sha512-Hst9jYwgYIXxOkDOJ3g/8fF2DUb9ufY/6eJf9Li8cszU6rUWkqF3UarbSNtqsENlgkMn8nc38eDR+I062XhlYQ==, tarball: file:projects/communication-alpha-ids.tgz} name: '@rush-temp/communication-alpha-ids' version: 0.0.0 dependencies: @@ -19986,7 +19987,7 @@ packages: dev: false file:projects/communication-call-automation.tgz: - resolution: {integrity: sha512-3WzCsKgqaPTjWBwgZqFPVk6LdO5xnS72jN89U8lgBhi59FFvRYEowDILAR1bTIMN4nGmVC7HB5rkt4Proj4KTg==, tarball: file:projects/communication-call-automation.tgz} + resolution: {integrity: sha512-nPI+6paf8bm+bAp+Nah+UysteBj9B5zhZMo/wPzxE+42lCm1PaIo7SlRFlpWg7xv3QpJ98Pz/Gwy+QshONxy8A==, tarball: file:projects/communication-call-automation.tgz} name: '@rush-temp/communication-call-automation' version: 0.0.0 dependencies: @@ -20032,7 +20033,7 @@ packages: dev: false file:projects/communication-chat.tgz: - resolution: {integrity: sha512-SW3kV3WMqR2jh2SEqertR+xUpkCSMuj8dhH4sBgSrSpkj2rL9bkr6mILw0YJ7+e63+Cgl0yqFTaIUfYi3fZycA==, tarball: file:projects/communication-chat.tgz} + resolution: {integrity: sha512-sMoxDYWNcQKW8VwXQm9X3lc9YBPpuVYJys7lUiudV7lxDZNPbfsZ0x3v7u3S/W4IIJQku3EHzx1lCsi6E7pyUw==, tarball: file:projects/communication-chat.tgz} name: '@rush-temp/communication-chat' version: 0.0.0 dependencies: @@ -20081,7 +20082,7 @@ packages: dev: false file:projects/communication-common.tgz: - resolution: {integrity: sha512-gNfo/2cMkO+kKl5G7MFLUTNujIhJ0eZDWh9k4NTc/l41ajcIpGhFqkCeoqIx2U6QGkq0JqILeNpdmxp40T3RLg==, tarball: file:projects/communication-common.tgz} + resolution: {integrity: sha512-dq2CHqJUj7/jCzwrfvlplosHFpgenNZlnuVtj7P34AjaLKYV3JvkeuAo1I6nRgxf08AnByPplCKgGZMcgvicpA==, tarball: file:projects/communication-common.tgz} name: '@rush-temp/communication-common' version: 0.0.0 dependencies: @@ -20126,7 +20127,7 @@ packages: dev: false file:projects/communication-email.tgz: - resolution: {integrity: sha512-OuCJlT8sUnZ9SsPiqOGk37mDBzEMrl+te6kMREDsr0h8T+kxKGVoeol/fzBU1IBfVL7MpG/5pETgOX0pz1y64Q==, tarball: file:projects/communication-email.tgz} + resolution: {integrity: sha512-x//4ITCLpNDIhQGqn3kWrqEVNnHZqEvT9lj0TxPOQ60XAP1Ff0nsqBMXB9bWPnHRbN+DmHJwzQVyDJkczBKfuQ==, tarball: file:projects/communication-email.tgz} name: '@rush-temp/communication-email' version: 0.0.0 dependencies: @@ -20167,7 +20168,7 @@ packages: dev: false file:projects/communication-identity.tgz: - resolution: {integrity: sha512-4RZHTKD7N4AA8CrjL3Jn+gpIsZzhMqlENpsINrwJNTw9e7ZG6IFG5yOOl7a4PD0tKfscHslLQmkInvwge2hSoA==, tarball: file:projects/communication-identity.tgz} + resolution: {integrity: sha512-CaqJYe9lUMXxkmwkscjMGHgfHrgSoexwfvwzG7VSKwHx77v8c+CtLjyC24ztLyjHXzflYWB6I8rL6uV4TvpYhg==, tarball: file:projects/communication-identity.tgz} name: '@rush-temp/communication-identity' version: 0.0.0 dependencies: @@ -20214,7 +20215,7 @@ packages: dev: false file:projects/communication-job-router-1.tgz: - resolution: {integrity: sha512-Pf7ZICd8zVOyvR9ic3p3osOAwEa8SW++iZMvexgtDYUVj4LGM4+B8jwQT+5eyFQfLWAA9FkD/jtS/9BOFfTuvA==, tarball: file:projects/communication-job-router-1.tgz} + resolution: {integrity: sha512-l+/94wTOHY/DWKf+pdg4pCnjpyNX2CAAHzpvLYTDKSGwk3MDRejHyueAUOHmdogB5wM6Z+D4XUEwOpUV7VTWBQ==, tarball: file:projects/communication-job-router-1.tgz} name: '@rush-temp/communication-job-router-1' version: 0.0.0 dependencies: @@ -20261,7 +20262,7 @@ packages: dev: false file:projects/communication-job-router.tgz: - resolution: {integrity: sha512-dwGWuO/CWPbaFAQDrWofCCHKpNsrpclkRyRcr4Sy9J7UZ2n99Zhrr4E/pBqqahr0lH5fJdbhqRpt2GnPXC1hVg==, tarball: file:projects/communication-job-router.tgz} + resolution: {integrity: sha512-xRuR+PV9qOmg7+H4nEn0dRLdBf2p8e9pBK/ERM+hKXV8bbchzukyM2MeGL+zy4jy1j4Ar+lz+OLpXY2FotlkCw==, tarball: file:projects/communication-job-router.tgz} name: '@rush-temp/communication-job-router' version: 0.0.0 dependencies: @@ -20306,7 +20307,7 @@ packages: dev: false file:projects/communication-messages.tgz: - resolution: {integrity: sha512-cJ+fNIlvMa0D7PzceBoIW4vxkLKrEWB5KyuhwtLRIljU/B08vmrBV9VrsqNgQelE2bnZfeVWZyIDRxwNCsfMBA==, tarball: file:projects/communication-messages.tgz} + resolution: {integrity: sha512-eZvl3T5xmJk+A4A0UFqTpxYV4TQ5eVeOwAOHXMtnZuNFL3FDDET93Ha7Wn+7UaO3nRbAjVjIu+MhaWRXz9r+2w==, tarball: file:projects/communication-messages.tgz} name: '@rush-temp/communication-messages' version: 0.0.0 dependencies: @@ -20351,7 +20352,7 @@ packages: dev: false file:projects/communication-phone-numbers.tgz: - resolution: {integrity: sha512-s+FoHrqA5LFGwD9PbAxmLoARPDZNroSaaGiZkwvLfOT6StsapePnnjLCxiGh1FHTmmuUZOO3+mPoZsoCMdn6rA==, tarball: file:projects/communication-phone-numbers.tgz} + resolution: {integrity: sha512-39/ssP69pw/1OYF2BbJwDdWwEBHKaoGPaapMW5wP2y88dSbJi90RP5fYhTL5AhzErpIgF4jjmY43WsKLT2yJ0g==, tarball: file:projects/communication-phone-numbers.tgz} name: '@rush-temp/communication-phone-numbers' version: 0.0.0 dependencies: @@ -20396,7 +20397,7 @@ packages: dev: false file:projects/communication-recipient-verification.tgz: - resolution: {integrity: sha512-raToxpwaZhkvNijRM5KQQPeyFNNPHPB3xCvpGP8T3400EEbZK8/AXhExgGVfsiWPIh+0T0Qgc4Dc+ZR3ESVM0g==, tarball: file:projects/communication-recipient-verification.tgz} + resolution: {integrity: sha512-pc3kCkUSWUxzjslJkVNVN7jyvmolZPxasuILnp9T49K/ntrcPhLf9HJ/NXpGI30F8sSuBAElCksEiLFWqIYf/g==, tarball: file:projects/communication-recipient-verification.tgz} name: '@rush-temp/communication-recipient-verification' version: 0.0.0 dependencies: @@ -20442,7 +20443,7 @@ packages: dev: false file:projects/communication-rooms.tgz: - resolution: {integrity: sha512-dJUJiVv/PWc8+Daf0d8MK849btRZ6mhKUe9fY8KzDw40szhLu+O4U8geDwVF8aVkMxOg3V0Ve00wVv1+IDMXjg==, tarball: file:projects/communication-rooms.tgz} + resolution: {integrity: sha512-9WzQ8V3bJICGPHvdYp3lr6jnILw7/c3reSRf3pRhpx/Zhq4mXZD19DDf2C+XgkDqYOd0zg0i0Bf6R+n+AdqvZA==, tarball: file:projects/communication-rooms.tgz} name: '@rush-temp/communication-rooms' version: 0.0.0 dependencies: @@ -20477,7 +20478,7 @@ packages: dev: false file:projects/communication-short-codes.tgz: - resolution: {integrity: sha512-Z8LbaHRpitiRHE0hKhjCvlj+mod3lSVab/4sFMz+dINjKLgLK0EkBBKOV1vjSLrm73aB2B0DMrYiQwVM2jVgHg==, tarball: file:projects/communication-short-codes.tgz} + resolution: {integrity: sha512-AvToJvBPGoASzpJvShcF77cxKbXU0SHM1pRrkfhp0SDirGjZcIsYmm6i/sw0URcKocMAONdvuFRKF2DZOhIovA==, tarball: file:projects/communication-short-codes.tgz} name: '@rush-temp/communication-short-codes' version: 0.0.0 dependencies: @@ -20523,7 +20524,7 @@ packages: dev: false file:projects/communication-sms.tgz: - resolution: {integrity: sha512-pTwpMsQDUm8RmgL7Q3aJEuUPnfWeW0GNREITnHUSmDCHCy0ccDzswE759KBr4o5K7VAQhcNVYC85ybVQI27b8w==, tarball: file:projects/communication-sms.tgz} + resolution: {integrity: sha512-Ant+j9sEeDP7tdIEXmLQUqBlxB6gMrBU3Z9yWqGqj20DFv3NHKvcpsucAo0Or9X3q7wnFetfSH7jw/vn0PMQTw==, tarball: file:projects/communication-sms.tgz} name: '@rush-temp/communication-sms' version: 0.0.0 dependencies: @@ -20568,7 +20569,7 @@ packages: dev: false file:projects/communication-tiering.tgz: - resolution: {integrity: sha512-+/lUuj5yujLBlGX7mWu9gPvK8EeeMos07LYd7d+ec+GE5CRWS8nqDFzdv/hMY6w/pi9pFYsMZfhD8wkwfppwRw==, tarball: file:projects/communication-tiering.tgz} + resolution: {integrity: sha512-QuvJOfyK77/npH1OhEMm8tvqXruLnJRDOMML/vSbYxM3QBm83cQQfAM6HHzxNW/JfSNEm9Q+hO0ciKZ71wjVEQ==, tarball: file:projects/communication-tiering.tgz} name: '@rush-temp/communication-tiering' version: 0.0.0 dependencies: @@ -20614,7 +20615,7 @@ packages: dev: false file:projects/communication-toll-free-verification.tgz: - resolution: {integrity: sha512-QL4+IMRWHCSn7IL67HsgXcIcrKUHvvyfrRxh9ZGOrAg5R6UaDlwAcv7vhLq5/xPL8yoTk1jiJaPe9ItsjCHHkg==, tarball: file:projects/communication-toll-free-verification.tgz} + resolution: {integrity: sha512-KkLg37Pnd5NU5R4EZDOOYfZnWdcb0YwELa6T4DNuR/TE3umc8n6zh1xDbwEZw2RH2Vh/ng9R3Q+cc6NNTueQSQ==, tarball: file:projects/communication-toll-free-verification.tgz} name: '@rush-temp/communication-toll-free-verification' version: 0.0.0 dependencies: @@ -20657,7 +20658,7 @@ packages: dev: false file:projects/confidential-ledger.tgz: - resolution: {integrity: sha512-IeHVnoNcL68++YYDWRh2Cbt2e0KQfdL2yhjpvPTNH9Cj9lzmSgrxdN2a/Tq7u5fYXYCqEb7wl2xV4IpIg0pf9w==, tarball: file:projects/confidential-ledger.tgz} + resolution: {integrity: sha512-eFCaoAk2IGaA53SIsOtHu1yJHxoZ1tADhuuw2VY0iFlavHw2BpCiuYYpjE/eQOHIKZlDQDT+fIeLUlPsSoAxGg==, tarball: file:projects/confidential-ledger.tgz} name: '@rush-temp/confidential-ledger' version: 0.0.0 dependencies: @@ -20687,7 +20688,7 @@ packages: dev: false file:projects/container-registry.tgz: - resolution: {integrity: sha512-eSjgV03PUYSzyFVQ0po8aFst87AwDjron9mIonwDGz3odxtGYM2KoDis+6jchKNDRRA4wi9r73RB3bqj72JDsw==, tarball: file:projects/container-registry.tgz} + resolution: {integrity: sha512-PoAp2X+TwZonURuPRPOkOu0N+ZIkLOQ1Ih0GnuWvKIgn+9MqQGy1hw91qpLOXMzPDifDnSIKIh/bqNX743igoQ==, tarball: file:projects/container-registry.tgz} name: '@rush-temp/container-registry' version: 0.0.0 dependencies: @@ -20730,7 +20731,7 @@ packages: dev: false file:projects/core-amqp.tgz: - resolution: {integrity: sha512-ZjYrx5v04yA7RExHNqNQkXV/+B21xqySJj+SbYbdkjSTMtmyBMipPz7X2kkVIRjuU7E6w8/gl2ZhB0gvRd4HcQ==, tarball: file:projects/core-amqp.tgz} + resolution: {integrity: sha512-VeXTJC8jYIwaV9tCJLa8bAKkryIfLDqpI+1aVbAFscah+heh/D3WVOEfCZpzCdPMiL10D8CLehidNmO6NpbCQg==, tarball: file:projects/core-amqp.tgz} name: '@rush-temp/core-amqp' version: 0.0.0 dependencies: @@ -20776,7 +20777,7 @@ packages: dev: false file:projects/core-auth.tgz: - resolution: {integrity: sha512-9VWQfgxgTaK84wuHGrS8uoaCRHfvvgHHMDavE11Jt8Y3Ocv/1qU8X87aQ4r3mfbqpCsxEgeGIvcT+tf1Gp6PAw==, tarball: file:projects/core-auth.tgz} + resolution: {integrity: sha512-7iyjse2g7WxtxBmF6zCY3c/2bMCKAHe9QBpYOo7c+2pJO98i1lngl7kAcTV/mIFHa9o38r7TLhk5sYrIXNMSBA==, tarball: file:projects/core-auth.tgz} name: '@rush-temp/core-auth' version: 0.0.0 dependencies: @@ -20808,7 +20809,7 @@ packages: dev: false file:projects/core-client-1.tgz: - resolution: {integrity: sha512-0nYbq5NuDug7JjQf2cPbnGU5j08stiIYVshxJNET9rY/c3wV4vaLjZz0AB4hH+dMqMPaYS0GtjTc6sEHU2pZRg==, tarball: file:projects/core-client-1.tgz} + resolution: {integrity: sha512-2mV5ZllE/yavgjDaezjpzGs06hbMWyCjd1pOO0P0kiziccxKDv4OyxkDHzeJkHB6hW0RIWnWUXH4ZhK9/J7nJA==, tarball: file:projects/core-client-1.tgz} name: '@rush-temp/core-client-1' version: 0.0.0 dependencies: @@ -20840,7 +20841,7 @@ packages: dev: false file:projects/core-client.tgz: - resolution: {integrity: sha512-KKsaxRn3nqcO11eDCJAvyzxuV+IkVV251+BFvni4DqfnYpROKS5WQKDFKaV46JHXRxxkaadsj/lqSQhq/jkphg==, tarball: file:projects/core-client.tgz} + resolution: {integrity: sha512-fymVoajwSZvZH++oNT9jJHybX3UF9qJyenhnh/vYrc5fPEK5kJzzMh7XNSrusyQf44fCXlMW8IppYBAidKKBhA==, tarball: file:projects/core-client.tgz} name: '@rush-temp/core-client' version: 0.0.0 dependencies: @@ -20872,7 +20873,7 @@ packages: dev: false file:projects/core-http-compat.tgz: - resolution: {integrity: sha512-RE2tHJrgZB9ibLcOSohoO5CU6OrTaAoeXHIa4NX+VfGNupmsXxjz8n9pCyziNalKNNxUoxXOI82sVE/Qz1NcPw==, tarball: file:projects/core-http-compat.tgz} + resolution: {integrity: sha512-mq+o1iBTSxisXhAjPLeV3RZe+hM4uefe1A6gn1pQcGydEpuPy4AB0vXLINpWe5BMT3vY26/pXVzq1OvUNm6DIg==, tarball: file:projects/core-http-compat.tgz} name: '@rush-temp/core-http-compat' version: 0.0.0 dependencies: @@ -20903,7 +20904,7 @@ packages: dev: false file:projects/core-lro.tgz: - resolution: {integrity: sha512-fxatJCYwyEZIIBoNeYNb4A7aH95Aigb3phSM6Ijp8GQRAPPYtsXY1DypmsyTQs5BDrX3Lh02C3xAVVblKLL73g==, tarball: file:projects/core-lro.tgz} + resolution: {integrity: sha512-AwF0waUo4lgqxSlKWqA6Jey9O8wchTNuGHkzykZEHIZBPUMpoUL4IvOs1X3AzAGohMa0KokCpBQojA3n/oxlmg==, tarball: file:projects/core-lro.tgz} name: '@rush-temp/core-lro' version: 0.0.0 dependencies: @@ -20935,7 +20936,7 @@ packages: dev: false file:projects/core-paging.tgz: - resolution: {integrity: sha512-ox65afz9MB+T9Zj90giklpPlMDRiFNUHmOFWdsP9JR58igmrBvduJKdHnejmF9jjIPLOFYDnEOZA2k90VLttIw==, tarball: file:projects/core-paging.tgz} + resolution: {integrity: sha512-ojU9hbVYB9SegNJi6c4Zj1tX1/w1FMs75clNvRzn3al1wOCTdVdNJR4CHkywNqPR2Ga7axAxvWvs1F9v1P/iog==, tarball: file:projects/core-paging.tgz} name: '@rush-temp/core-paging' version: 0.0.0 dependencies: @@ -20967,7 +20968,7 @@ packages: dev: false file:projects/core-rest-pipeline.tgz: - resolution: {integrity: sha512-ASxYbT0SGucrUXvwB5yal4vaqAUZ6uvnBYCaniBxcuc4CnYwBAWE55Fg8weLdOaQ6A69wsObhUjTu4UDGfqpiQ==, tarball: file:projects/core-rest-pipeline.tgz} + resolution: {integrity: sha512-6WcA4ar0BJxVKcnmNb46JLNJrVc4Su+5sCRxYKaqE66pOKvmYf0Dd1TwAH4Sd9qdY48nnfivO2VDi6J6T7U+Jg==, tarball: file:projects/core-rest-pipeline.tgz} name: '@rush-temp/core-rest-pipeline' version: 0.0.0 dependencies: @@ -21001,7 +21002,7 @@ packages: dev: false file:projects/core-sse.tgz: - resolution: {integrity: sha512-3CN7Pjj4NLytg11Ez6OajHQmrXgs0ybUVTzdrQYztBoJYdUPRTqSWOdUci0Z6NkoAb+v+Q8f/w1smeqTNBAAbQ==, tarball: file:projects/core-sse.tgz} + resolution: {integrity: sha512-AuDhXgVXu9jSYj/ZsQGCMi72EQjNfzFy6lAnBQ54kQtOYXafVlPWIUBMFtw7fJCZMX/muevalrGZkxpZyr5y7g==, tarball: file:projects/core-sse.tgz} name: '@rush-temp/core-sse' version: 0.0.0 dependencies: @@ -21034,7 +21035,7 @@ packages: dev: false file:projects/core-tracing.tgz: - resolution: {integrity: sha512-HULrg+t9TvBIa5EUmMAXtQiETAuw0o7UsgK2c5V1DrhGLDedJJETvzPgjJXXgnGq0DJRJgY9H12ElKzb1qWx3g==, tarball: file:projects/core-tracing.tgz} + resolution: {integrity: sha512-bHuJPXtp+OvVMH1KVhHTHZTgr2Q/ND+kpT57ZzUhZq84NWUUYEp6tfkbiGGqeZ6V/F2j6/daYM84XaVqdsdS8A==, tarball: file:projects/core-tracing.tgz} name: '@rush-temp/core-tracing' version: 0.0.0 dependencies: @@ -21066,7 +21067,7 @@ packages: dev: false file:projects/core-util.tgz: - resolution: {integrity: sha512-AK6a/OcUEuDGGCZiPw9nJlQ+48une2YsFOqHTIDtxSemMnjhnTSv/ETtMM3cJGCnqgRFTxyJ2UN2sGMpH1v7MQ==, tarball: file:projects/core-util.tgz} + resolution: {integrity: sha512-mgR/sT3WvDHz/psArcyZJjU6KrgRSuPos68HrEjHUv8JTe6TT48DDlVqnZnKc71w09CxZpdIu2N3V6SvYT1vpQ==, tarball: file:projects/core-util.tgz} name: '@rush-temp/core-util' version: 0.0.0 dependencies: @@ -21098,7 +21099,7 @@ packages: dev: false file:projects/core-xml.tgz: - resolution: {integrity: sha512-a1zwuH3CEl/Lb9O0LSM1pE1FdtXo558qbCfOQ24nohMyy1l7+L9cIJsHIdb1E2tCBcmXjEa+tco89B6Qit50dQ==, tarball: file:projects/core-xml.tgz} + resolution: {integrity: sha512-8MDEt8UlVs4wVG0s9KiMin/U+0RcwA4RvWH+UKnV6dtHNzlPk7DyTSDJwp+3vZR9DN+KR8dlGX7Yx26mSiIcbw==, tarball: file:projects/core-xml.tgz} name: '@rush-temp/core-xml' version: 0.0.0 dependencies: @@ -21132,7 +21133,7 @@ packages: dev: false file:projects/cosmos.tgz: - resolution: {integrity: sha512-4T6aUKuID/YUr6KlCqT6aE2OsbJGosLPxxt/OY3VyPSstF8HgIsXM1HfyWvCpJ1362PhTlX1WaBvVxlVyYZYPQ==, tarball: file:projects/cosmos.tgz} + resolution: {integrity: sha512-6JYVV/edBloz/AlX/hsaHWjnJry75gDvuUiRWs5DGUE44RI7IYxH8qer4cOjqpwTie86waUEf8Bfo0zgNYCZsA==, tarball: file:projects/cosmos.tgz} name: '@rush-temp/cosmos' version: 0.0.0 dependencies: @@ -21173,7 +21174,7 @@ packages: dev: false file:projects/data-tables.tgz: - resolution: {integrity: sha512-uQSpb+axAGR2DiEFq3AMMNAKxHLjZkD8sE5X4K8XidvFweUv1dRdOayMaSDDNdJo4R3dffWw4+Jfs8438o5XKg==, tarball: file:projects/data-tables.tgz} + resolution: {integrity: sha512-0k9NnYVxTlxr90N8QDS6wWZ3748dwnUv3xFk02PWpnt0Gq4pGyc6XoV0mUEmqJuT0udPnp604zLUssa1Fjdu3w==, tarball: file:projects/data-tables.tgz} name: '@rush-temp/data-tables' version: 0.0.0 dependencies: @@ -21217,7 +21218,7 @@ packages: dev: false file:projects/defender-easm.tgz: - resolution: {integrity: sha512-JhUtBnCSyefgcaH4yHS9vFQBO64YTZuqRNH+KJEn034pE+9rZFg111XeCE7TTaocM0eCq4GBdmKo/j10+Kaq0Q==, tarball: file:projects/defender-easm.tgz} + resolution: {integrity: sha512-rvBnctSZ1zRdF13oUGU6cvV6Hw/xCuv7PZ/g+fSeupgkM+BYJOY7SJ8nEODkIwD7DMKYOPN1GSSRd6rQPf655g==, tarball: file:projects/defender-easm.tgz} name: '@rush-temp/defender-easm' version: 0.0.0 dependencies: @@ -21264,7 +21265,7 @@ packages: dev: false file:projects/dev-tool.tgz: - resolution: {integrity: sha512-z9Gvg9Sjq9IevC8b6hbo2nxvosbLBw9y0MX0VOxQY/kI5+ivWEbf7uV3RmhtPfdhqmWPHnpDHUs4v68xMhi1YA==, tarball: file:projects/dev-tool.tgz} + resolution: {integrity: sha512-WQIFIHqJQQD8HLzWVI+4GDMIf5arO9bU5Qd049BOz4+IJ+QfTJVbKTPSvbtIX/2ZuYZjIguk2CxYpzLUJ5293g==, tarball: file:projects/dev-tool.tgz} name: '@rush-temp/dev-tool' version: 0.0.0 dependencies: @@ -21333,7 +21334,7 @@ packages: dev: false file:projects/developer-devcenter.tgz: - resolution: {integrity: sha512-eULjYGsf3lGIRFGnO+mh0pXpXvYJdRa6btD2NKvTgzpMkLFXi+VSFU9bi20GCf/CdyxyTJywj7wV4hZdysDyyg==, tarball: file:projects/developer-devcenter.tgz} + resolution: {integrity: sha512-jdmEUgEnU8EhQYwv7fcdq49kf844QtjHOyGffXxgT4x+Xx9wyv85dsOsrAPWpRiw1cU08iPa/NFRTHWNrlDSbw==, tarball: file:projects/developer-devcenter.tgz} name: '@rush-temp/developer-devcenter' version: 0.0.0 dependencies: @@ -21369,7 +21370,7 @@ packages: dev: false file:projects/digital-twins-core.tgz: - resolution: {integrity: sha512-4+pRlXZu4oNBk8Vp+vPMrfCS+BEA4qoLjs8eEAhjW4h97nrBUMtTqwviiDbKhx1jNzcg80sRoZPKBeaT47DYMw==, tarball: file:projects/digital-twins-core.tgz} + resolution: {integrity: sha512-znhU7vJ4nHimuS/O5H9dLFLSu9g1whygu89tf78A3GR3vdR/Tz4rHYQdtLS2oxrjBL31I+6QWi2gQaUAxKcVDw==, tarball: file:projects/digital-twins-core.tgz} name: '@rush-temp/digital-twins-core' version: 0.0.0 dependencies: @@ -21415,7 +21416,7 @@ packages: dev: false file:projects/eslint-plugin-azure-sdk-helper.tgz: - resolution: {integrity: sha512-xHpH9pq2/ySvOp5t8KNaBzNF4pcAysfUMzfOf2o+7xWwVgHaunwEpXKw6fg1zJoaJM06sjh8TpL2rTcka9yzRg==, tarball: file:projects/eslint-plugin-azure-sdk-helper.tgz} + resolution: {integrity: sha512-Tp1DeMZqynSZf8L6HV+hDb1dx1YM6z6FWmINfy7SHXC/fCD/lQih2N48qpQB05XE+lMzTy4MEn7ment8Vjt47w==, tarball: file:projects/eslint-plugin-azure-sdk-helper.tgz} name: '@rush-temp/eslint-plugin-azure-sdk-helper' version: 0.0.0 dependencies: @@ -21444,7 +21445,7 @@ packages: dev: false file:projects/eslint-plugin-azure-sdk.tgz: - resolution: {integrity: sha512-A0owIVA9YqDG8X7LQ+phP23yxojh7pQ/JoIX2xNdF1ItiZFy+5IIyAUN5QmqC7uShmAPQqL80G+J438xMuF0Ig==, tarball: file:projects/eslint-plugin-azure-sdk.tgz} + resolution: {integrity: sha512-gQHHhQ9KSmUgzqnglRt7qyEPE9g5kCzsCkuxylVDqz5zEAWMR1KinHuyfHz3B8htUQWgjPVPuUw2G8Io4sfQfw==, tarball: file:projects/eslint-plugin-azure-sdk.tgz} name: '@rush-temp/eslint-plugin-azure-sdk' version: 0.0.0 dependencies: @@ -21495,7 +21496,7 @@ packages: dev: false file:projects/event-hubs.tgz: - resolution: {integrity: sha512-ZMRObP+dRt9WwPwJpAx45iMtkorAtpvO4Yq8O2nStVgyOCCcxUb5ILTBn5znt8skZPZ9z6IUBNnVfhjI3PNK9w==, tarball: file:projects/event-hubs.tgz} + resolution: {integrity: sha512-MUvRUbuubRO/jGUN0txI7gmLF3wvEUzrDBOHoGh5m6DGDn42wRMGNN8bjoxsWhGW/Alm+U9vS1BUnJgM4TJtXg==, tarball: file:projects/event-hubs.tgz} name: '@rush-temp/event-hubs' version: 0.0.0 dependencies: @@ -21551,7 +21552,7 @@ packages: dev: false file:projects/eventgrid-namespaces.tgz: - resolution: {integrity: sha512-9PoFq2uCsWu9t+azDxQiQacowRkaO7C99Vp9k5ZVA3otIOMGtaZyMcco04bbhoH5YQjQeLdut07saZkt0a1T6A==, tarball: file:projects/eventgrid-namespaces.tgz} + resolution: {integrity: sha512-MSAg5HuRAKu7XbLpnnpG8gJKF0oe8x0IB7hcWXhwWftzHuthv64uCJ/pzelKlDFxlmMFC+mtSrXNbJJ53SsWjg==, tarball: file:projects/eventgrid-namespaces.tgz} name: '@rush-temp/eventgrid-namespaces' version: 0.0.0 dependencies: @@ -21599,7 +21600,7 @@ packages: dev: false file:projects/eventgrid-system-events.tgz: - resolution: {integrity: sha512-+PlaZmzoItgLPloB0EJh3W+kkB0Sq/oYt4fBLJ/OGdhIEIQYJIY6d4sG0zvsAL3TmJbA0LnKTHyxVHRbdzJDfw==, tarball: file:projects/eventgrid-system-events.tgz} + resolution: {integrity: sha512-8WbGkXYl2meq4wlzgQHRvsUFiHOXS1XABhUJIOPb05FXEpHaDaf72phWQYUuaFUjPEMjJUPw3D70mgoDaDQQqA==, tarball: file:projects/eventgrid-system-events.tgz} name: '@rush-temp/eventgrid-system-events' version: 0.0.0 dependencies: @@ -21647,7 +21648,7 @@ packages: dev: false file:projects/eventgrid.tgz: - resolution: {integrity: sha512-d/axieyfjMweYvEOcRvhXbAG9YtIImODSEF8zPwZVBuh6jiy/eLS/jYJe+twQyd58TPx176KPTqSCiw1GncRjw==, tarball: file:projects/eventgrid.tgz} + resolution: {integrity: sha512-/aIxYWOUqFBmzyifimWB/SUZaSdEp8CoZTZD9/kw/el9YvVs9VcAr8BHvvwZTMy3MflejabDNLAnKnwyoKYkBg==, tarball: file:projects/eventgrid.tgz} name: '@rush-temp/eventgrid' version: 0.0.0 dependencies: @@ -21691,7 +21692,7 @@ packages: dev: false file:projects/eventhubs-checkpointstore-blob.tgz(chai@4.3.10): - resolution: {integrity: sha512-8hRMm5D8/eeF7vvvAmpk+H40H3l7mnxY5GX20cXbtc2j83xnbZCW/ToYk4N+Dd+XyEWTqPlNkWT1Jt1t/r5V+Q==, tarball: file:projects/eventhubs-checkpointstore-blob.tgz} + resolution: {integrity: sha512-1X4Kwz5MwrZWX5mCWb35W1TfkWTD0hr5qRMZooykf5TJ7+MlCWQXpj5/h3I/HGI7pkHKzmJt3GAJl+kRNrJxgA==, tarball: file:projects/eventhubs-checkpointstore-blob.tgz} id: file:projects/eventhubs-checkpointstore-blob.tgz name: '@rush-temp/eventhubs-checkpointstore-blob' version: 0.0.0 @@ -21742,7 +21743,7 @@ packages: dev: false file:projects/eventhubs-checkpointstore-table.tgz(chai@4.3.10): - resolution: {integrity: sha512-A31PNXmLq8hzoouMHp9p2LMvk/E6Hko60lHPhDVRSKgNChgKyC3/DkYqHwOgB5igi0XCCx17CLMTFBQZSgsTcA==, tarball: file:projects/eventhubs-checkpointstore-table.tgz} + resolution: {integrity: sha512-ZYWb0Tmg+lu24w8eBjn+HVc2Nu2s+USiylXLLXWopx1u7UyPqf8Dy+RhMBa2RZ0RCz9j51/uNJDga/nIehuh8w==, tarball: file:projects/eventhubs-checkpointstore-table.tgz} id: file:projects/eventhubs-checkpointstore-table.tgz name: '@rush-temp/eventhubs-checkpointstore-table' version: 0.0.0 @@ -21791,7 +21792,7 @@ packages: dev: false file:projects/functions-authentication-events.tgz: - resolution: {integrity: sha512-HQOnyBSn4Dew4tzB4kwnmnm3hyfj1wb3fbdPE/SnYOzzn+9DK7/vK+gVsSwTVTUqOyr7RLxFYIThyyrRttTbzQ==, tarball: file:projects/functions-authentication-events.tgz} + resolution: {integrity: sha512-aApTAGIYOhQDXKLIYOVHwMjF3f5Zvlr2g33Oizc4aQQ9oRDztcJDp5KHBEtV+pcMOBzE3uXMJhbpmBf8THjEpw==, tarball: file:projects/functions-authentication-events.tgz} name: '@rush-temp/functions-authentication-events' version: 0.0.0 dependencies: @@ -21836,7 +21837,7 @@ packages: dev: false file:projects/health-deidentification.tgz: - resolution: {integrity: sha512-Oq0jsnfYpet5FzCy28OoBfDRTtnEfYN31tYqGenIItoHjikGAgt0hu/FEZWNxcSnYNuIW9T7WRSBVmheeLr7ng==, tarball: file:projects/health-deidentification.tgz} + resolution: {integrity: sha512-vSRaQJqMh0srWkkYRCfiG0ShE+6AqlRoDugGBg5hbt5EdLgM2VvwO7fls4mC5YnZ+eiV5TknyYuHmkZ0JM+LWA==, tarball: file:projects/health-deidentification.tgz} name: '@rush-temp/health-deidentification' version: 0.0.0 dependencies: @@ -21872,7 +21873,7 @@ packages: dev: false file:projects/health-insights-cancerprofiling.tgz: - resolution: {integrity: sha512-qZASX+wdO+x8kPONr0yOUPpZcNw0IKUZFINTfsCFzJqNibiod7Ap9FxZt0n3vOBbEHAf/BSiF+IzddBfO7iqkA==, tarball: file:projects/health-insights-cancerprofiling.tgz} + resolution: {integrity: sha512-iaLOhJmMJm++SARTYyq0zF/HqQOt+X4cthNz+4HPsorM9Vl3l4CfKQGx7D54XNpJMxnXls+/W/ibLNrXluGHhw==, tarball: file:projects/health-insights-cancerprofiling.tgz} name: '@rush-temp/health-insights-cancerprofiling' version: 0.0.0 dependencies: @@ -21919,7 +21920,7 @@ packages: dev: false file:projects/health-insights-clinicalmatching.tgz: - resolution: {integrity: sha512-QNp0IcY46zw6+LB5UIh6MjD6gs/oXIiwjNtXDmWmYxhssBvu3GayP4K6Ut3SFvTd7xn579W/3WeQZDbDBIUlpQ==, tarball: file:projects/health-insights-clinicalmatching.tgz} + resolution: {integrity: sha512-G1r3XaWFx8dG1fjDTjL0baWEuJK4GyNTWgHIiwOrcwGqrtv6FvXh95VfrV8rtbvYHVRH8GL7uUaSY3B3ufJiow==, tarball: file:projects/health-insights-clinicalmatching.tgz} name: '@rush-temp/health-insights-clinicalmatching' version: 0.0.0 dependencies: @@ -21966,7 +21967,7 @@ packages: dev: false file:projects/health-insights-radiologyinsights.tgz: - resolution: {integrity: sha512-44JXAxsojj6fQ7ct3Sb+gX0xZfDYHMWZhDHpp8jz16OI1LV+kOFcqKuoTcNCxdP0Yl5r69V7sCA4I4bwyun4bg==, tarball: file:projects/health-insights-radiologyinsights.tgz} + resolution: {integrity: sha512-4YeJpaqgwEWqufa1UWVwYiRpuYJqfjtl97249uisM3EMwqtcEL/VEGUCiJhI8E2v+FadetiAUAtueSGeIyCdbA==, tarball: file:projects/health-insights-radiologyinsights.tgz} name: '@rush-temp/health-insights-radiologyinsights' version: 0.0.0 dependencies: @@ -22013,7 +22014,7 @@ packages: dev: false file:projects/identity-broker.tgz: - resolution: {integrity: sha512-fFxoBUwTIwp06whhm3vREJLLy5YgI0x8zABleFZDBXaCfIWLrG1+k9rNCJ8GReO1pEWaxykjoa99x/1+WkY5Gw==, tarball: file:projects/identity-broker.tgz} + resolution: {integrity: sha512-1zx9qcMAlAs9FrRCc5hPrNNqvvrf4xR60nOGTmc58FrmYCkFMoimVlOke/F11ldQPJcuslEuTCfkJch6w9YOQg==, tarball: file:projects/identity-broker.tgz} name: '@rush-temp/identity-broker' version: 0.0.0 dependencies: @@ -22041,7 +22042,7 @@ packages: dev: false file:projects/identity-cache-persistence.tgz: - resolution: {integrity: sha512-1++RRLsr+GtRBs1rH0GZl+eeBhLm0MNFvp2EkloAadieusTQKDIJw21qdbdH5ls0CkXUSkbl04cXDhXdOiWC3Q==, tarball: file:projects/identity-cache-persistence.tgz} + resolution: {integrity: sha512-8wzeg1by75ffB8iIcebu6AUA7ctKfvVciTkhQ6rb1xYKTJdK3tdinhTq3821y9g3B+L+HB/yFZXSHwYSMNWsjg==, tarball: file:projects/identity-cache-persistence.tgz} name: '@rush-temp/identity-cache-persistence' version: 0.0.0 dependencies: @@ -22077,7 +22078,7 @@ packages: dev: false file:projects/identity-vscode.tgz: - resolution: {integrity: sha512-M2xAQvSrF15o3/WtEY6CVqYJs+Sd0G51cbRaq9P49c5aw8KRfvXQUaXp9691pCjUp+ZopSPxdQGJ/YZJUpZ5lw==, tarball: file:projects/identity-vscode.tgz} + resolution: {integrity: sha512-Fby7PIWf7z+IF24dATaG5HGtv3S8CN3G4nknI6Wl4x8zg/J4zE0AOisyAWqQK9mGZOoCyphEhd7mzygPOMuygQ==, tarball: file:projects/identity-vscode.tgz} name: '@rush-temp/identity-vscode' version: 0.0.0 dependencies: @@ -22112,7 +22113,7 @@ packages: dev: false file:projects/identity.tgz: - resolution: {integrity: sha512-1Idr5tRIogSilKIpe6w5K6mskMB1ec2SSf2CzRW0Rlg4a9YHELjWHYr1Mpp9Y+asz3HfaWzsc/b5DF8dQCM7TQ==, tarball: file:projects/identity.tgz} + resolution: {integrity: sha512-AMCYfh47P+0hvh1oLAAmEg3cSGQcX02qMN9p7EzWIkAGZ5oIgdSMj7cCd+BZekAx4SEGlLp93PRrWwAVX+iHig==, tarball: file:projects/identity.tgz} name: '@rush-temp/identity' version: 0.0.0 dependencies: @@ -22168,7 +22169,7 @@ packages: dev: false file:projects/iot-device-update.tgz: - resolution: {integrity: sha512-NIgNsJXGBuXSfW4WwjQotagmMMKnamlEOPUZYptkQeCRy/3rIqc81WWSXxRau3e3TEI6Xi/KjxguY/CTzeMCBw==, tarball: file:projects/iot-device-update.tgz} + resolution: {integrity: sha512-zk2ybn46growB0yFOMyVGZQ9VxGCtcG6+uQlHcMuz77JbjC4I4uk3pwq1KtwcLLXMrvGhn0JvLbhCWfB4rWmkQ==, tarball: file:projects/iot-device-update.tgz} name: '@rush-temp/iot-device-update' version: 0.0.0 dependencies: @@ -22215,7 +22216,7 @@ packages: dev: false file:projects/iot-modelsrepository.tgz: - resolution: {integrity: sha512-BckB8vSfxgT61GGc6n0zF5nEzoE8UJeZMgvqqA/1JiniYwHn3ykExCp8kUvW64G8wpcqXcY+he+MrOoiITZlRQ==, tarball: file:projects/iot-modelsrepository.tgz} + resolution: {integrity: sha512-t60+FhsdAnE22BzXtH/yp8RKsM/wRnCUM8WnlmCDeIpjzktE2sSs0nJgi8sW/6XXZqHdZMAVX6l7Co1Jx55FpA==, tarball: file:projects/iot-modelsrepository.tgz} name: '@rush-temp/iot-modelsrepository' version: 0.0.0 dependencies: @@ -22259,7 +22260,7 @@ packages: dev: false file:projects/keyvault-admin.tgz: - resolution: {integrity: sha512-KAKxTBVa7+qfXy8br0vdhBg4lqnY+tD5zcNqJJigHlbv+4MI7SNzy9YE/DyxDJqOh+tfPTlvGE0/iXyHQvRiQg==, tarball: file:projects/keyvault-admin.tgz} + resolution: {integrity: sha512-NnrMdLiDEYD7Bkyfp2oSUh1LApsc7c+/ZRv1Sa0gFcwNyc0+90walofLCEGKbQhnDZemIyTsVT5k8xAyegX7zw==, tarball: file:projects/keyvault-admin.tgz} name: '@rush-temp/keyvault-admin' version: 0.0.0 dependencies: @@ -22292,7 +22293,7 @@ packages: dev: false file:projects/keyvault-certificates.tgz: - resolution: {integrity: sha512-syQdyV+qIoCLwdpbsJKIJZZQijA5yFKAgLuOeojwWmN/2YPkaVLNQK9Axqmnex49amruOBMkIQ3f+daYdi9iPA==, tarball: file:projects/keyvault-certificates.tgz} + resolution: {integrity: sha512-YMhCsECO5lmvUfYCSZ9/cgwO+ZpL2JCR0AVyve5TodJjGXtywaItwN1HbU3k8x6xHcg4mltRsjpu9gmqBjmsgw==, tarball: file:projects/keyvault-certificates.tgz} name: '@rush-temp/keyvault-certificates' version: 0.0.0 dependencies: @@ -22337,7 +22338,7 @@ packages: dev: false file:projects/keyvault-common.tgz: - resolution: {integrity: sha512-T7vlwIzNApKBTQeUnz+P5JNkTh2uUx3lckWyscHJqQ364ykv6dDSSECIilLHQWR0TCm+LWWpMEOuxk3RUqKe7g==, tarball: file:projects/keyvault-common.tgz} + resolution: {integrity: sha512-slnUAKh7sSMLKlC0pIWSAF2uYSB2C21JO+04y3E3qZt7hAMy3AAyZwjP1LEQyYz5yfeKGBsgM56AXUqaz9c0Yw==, tarball: file:projects/keyvault-common.tgz} name: '@rush-temp/keyvault-common' version: 0.0.0 dependencies: @@ -22364,7 +22365,7 @@ packages: dev: false file:projects/keyvault-keys.tgz: - resolution: {integrity: sha512-nhh9i78LdkrgYMvT/jgfuhooDI9ekoIAAAYn3UdywmYr6uQH31czHRsAEW1fHW8+Yncq0FJafgFgmnFFKtXVQw==, tarball: file:projects/keyvault-keys.tgz} + resolution: {integrity: sha512-VMc5bBeUvzRQsLkE3IUoUr66Lb7HkjFtTQbOlPybz/QVgsuadWc+5IX3E3d4Ap0U2LOc5IuWNQ9V72APwbnwGg==, tarball: file:projects/keyvault-keys.tgz} name: '@rush-temp/keyvault-keys' version: 0.0.0 dependencies: @@ -22410,7 +22411,7 @@ packages: dev: false file:projects/keyvault-secrets.tgz: - resolution: {integrity: sha512-IBBRr0lPUALo42NP/ao5CvKoR15VR+G19vEt5YV9ZPwmh7qsxd44tLy4PBdZ6mDxWzaUXVAtQKtVxefrCzioaQ==, tarball: file:projects/keyvault-secrets.tgz} + resolution: {integrity: sha512-VUo+oYhnsy0FhWyLastx1WWXe0lo1wVAVV//o3IYPlJixfZKU4fNVzrZ/w/5yDfHd/bB51+RmG8+wz8HFRzlfg==, tarball: file:projects/keyvault-secrets.tgz} name: '@rush-temp/keyvault-secrets' version: 0.0.0 dependencies: @@ -22453,7 +22454,7 @@ packages: dev: false file:projects/load-testing.tgz: - resolution: {integrity: sha512-2jBNN0e/ojZ4JuwLmwda6pyV37Pc3kKeYaqe6wnYmk6uyLypJq/6o2p1EKlOSB/dN4I5A8CTh8ehsdnb+7OOAg==, tarball: file:projects/load-testing.tgz} + resolution: {integrity: sha512-UVEdI4STub3eQDH51YsW5HxzBZp/YB+ovlVwawirNDIn2L6JpIVfjrlsjphxnKSM9APAfpGKpvcu7C18PdQzQg==, tarball: file:projects/load-testing.tgz} name: '@rush-temp/load-testing' version: 0.0.0 dependencies: @@ -22501,7 +22502,7 @@ packages: dev: false file:projects/logger.tgz: - resolution: {integrity: sha512-YEifo8hRqS2gPKOEhhZWpoa/0VkQQYfeHBzYXY0f1Ijz1/iOBINWzpsPoJ81Zg5IyjbMtKdoBO1GbvfkJ3mvGw==, tarball: file:projects/logger.tgz} + resolution: {integrity: sha512-QndpT+F5PaincETzvQEpL0rQDlyhscmkjRq8uZiCFF9RLsS90bO+28gbnDNZjZrJrloC7tPBPgHgR7a8KbM2zg==, tarball: file:projects/logger.tgz} name: '@rush-temp/logger' version: 0.0.0 dependencies: @@ -22534,7 +22535,7 @@ packages: dev: false file:projects/maps-common.tgz: - resolution: {integrity: sha512-EV966yIMO5f7uK/9KkDxD6VAmE5LNw7Lm1OOc73c1Mch5zPDgjeMAMtiOe1yEuVW6PaQb/Bu9LVLg5w9DiFgDQ==, tarball: file:projects/maps-common.tgz} + resolution: {integrity: sha512-Scmb3fdFE7LS6CWNHJJBhihI+8U9v1K6eM/YyqLNgRG3HCKdv5mGHiGuAimXP4phBtlNyR0yJuijZQzM1pWNTA==, tarball: file:projects/maps-common.tgz} name: '@rush-temp/maps-common' version: 0.0.0 dependencies: @@ -22552,7 +22553,7 @@ packages: dev: false file:projects/maps-geolocation.tgz: - resolution: {integrity: sha512-B32BArCBNnzAVbittEOG3gCu/Sa/lrETT49YR674Ak2amg1B0PeXHhRIOvx7WdcPdVfWLzPyERFHwaBUrCxxiA==, tarball: file:projects/maps-geolocation.tgz} + resolution: {integrity: sha512-gTtxwimbxkskwgPt9cKiYiy3iZl+RRglzPwid6UeBCxz7fVVWHRj2p1bnZ+vX/QtAbRUkb4cqXFjOpimRVGPzw==, tarball: file:projects/maps-geolocation.tgz} name: '@rush-temp/maps-geolocation' version: 0.0.0 dependencies: @@ -22598,7 +22599,7 @@ packages: dev: false file:projects/maps-render.tgz: - resolution: {integrity: sha512-mxIGWKhN6Wd9Vse/Cw1czC0pd0AELj30/E2Y3KCQz2sYv1qjLNUkhVV3AfN8kAjdbTKgPlLu3K4BCWVS4RfGvQ==, tarball: file:projects/maps-render.tgz} + resolution: {integrity: sha512-TiH597tRmg6pScwBjUdnDoGftilr1SyHJuFGgpZs2l56yVDY6Jb/SjegtKV6cH84iSGSJSq9e999JJ5NYzr0sQ==, tarball: file:projects/maps-render.tgz} name: '@rush-temp/maps-render' version: 0.0.0 dependencies: @@ -22644,7 +22645,7 @@ packages: dev: false file:projects/maps-route.tgz: - resolution: {integrity: sha512-BLcJ2RFitpTOSAlafh07/0secT/Iwj3bBxuLTEeouvYQS4C3hTlrUCwYcglPI5aglo6du82YWKM6Ph1Bb5wncQ==, tarball: file:projects/maps-route.tgz} + resolution: {integrity: sha512-W5gYVlNKM5TluV8iP+uE+/dBJEGYD2thLp5f5UPL/WK15hmPWlljOj6I0MP52/8t9noWXQWl5Apx+5DYH/49Uw==, tarball: file:projects/maps-route.tgz} name: '@rush-temp/maps-route' version: 0.0.0 dependencies: @@ -22691,7 +22692,7 @@ packages: dev: false file:projects/maps-search.tgz: - resolution: {integrity: sha512-VpxWxc7rI52RgpBxO83u2jxBs2cBrwSe1NMlXNv6BROPLMkT9tpyw72A0mAoa4TKbSucxZ+MjD3x8zmif3RK3Q==, tarball: file:projects/maps-search.tgz} + resolution: {integrity: sha512-qc4dU/o9vIowyU7WlvnEhwr2+ElkexTxWWwZpRVE8BS5ft3mwMkivWp2yNJ9hGLawzljvtsKJrgBp8TJ0/3mlQ==, tarball: file:projects/maps-search.tgz} name: '@rush-temp/maps-search' version: 0.0.0 dependencies: @@ -22738,7 +22739,7 @@ packages: dev: false file:projects/mixed-reality-authentication.tgz: - resolution: {integrity: sha512-2lGfF6hN64COe2qoohcBPdnw9zFX8JarL4VqEjSz+aClIT0sCt1XW9+u5HUDb2BrLe2uBJZtHFQKy02CZH8yHw==, tarball: file:projects/mixed-reality-authentication.tgz} + resolution: {integrity: sha512-adXYa6cLCcF45ztJ7aE2CgyUpR5mEQzxnWxqvkoEmnE5yRMx7G6371i0SFmOXTZMYEjiSnUbaG9v4TwpOgkK6A==, tarball: file:projects/mixed-reality-authentication.tgz} name: '@rush-temp/mixed-reality-authentication' version: 0.0.0 dependencies: @@ -22781,7 +22782,7 @@ packages: dev: false file:projects/mixed-reality-remote-rendering.tgz: - resolution: {integrity: sha512-OSPAcLNxfo7AWdAlKcLv2CgIRuxkuwzJM4bogvZGk9j334+iw7FYY52wcuUg3X7LceW34pi+RQUGy86MRDy9Mg==, tarball: file:projects/mixed-reality-remote-rendering.tgz} + resolution: {integrity: sha512-PWWJq0EsC2ofw5kTftrGmXNxTr5vymKgYrgbdNXMIrImEpvq5reH799Twww6Yoot6OC4XyN2jjnvJHZquLjtCA==, tarball: file:projects/mixed-reality-remote-rendering.tgz} name: '@rush-temp/mixed-reality-remote-rendering' version: 0.0.0 dependencies: @@ -22828,7 +22829,7 @@ packages: dev: false file:projects/mock-hub.tgz: - resolution: {integrity: sha512-Lva10kWsU93EapbyWUIrqmCxc3TwfsGR1JFlySLmV1J2vtt3eW5ykdvnkzaJFJXSAiClaREtqkuWMFZ++VBByQ==, tarball: file:projects/mock-hub.tgz} + resolution: {integrity: sha512-fdZiN6hEOeSRR4qPmBE/oL2xfaxf9zruzdqq5+pt2u5+pbiXxd0fO6dLVijZ0znR/0AsfdVM/JAzxxB4tkIFXQ==, tarball: file:projects/mock-hub.tgz} name: '@rush-temp/mock-hub' version: 0.0.0 dependencies: @@ -22861,7 +22862,7 @@ packages: dev: false file:projects/monitor-ingestion.tgz: - resolution: {integrity: sha512-FLWDgJiVixkS7DwF9IeUeKDIpls7LeNletvRwKguOw688OWY9vqN/xxtsC6RnrjX4+P3YLEpNlNyugjSLAsEGQ==, tarball: file:projects/monitor-ingestion.tgz} + resolution: {integrity: sha512-2TuFFxs/9AvRHA/BhWDwrODaVrHXR2FGH2sGeaw4ZCP9yhbdvtGfZiJvRHD533laO4yr6fQBLz0/OK5wqYd9qg==, tarball: file:projects/monitor-ingestion.tgz} name: '@rush-temp/monitor-ingestion' version: 0.0.0 dependencies: @@ -22909,7 +22910,7 @@ packages: dev: false file:projects/monitor-opentelemetry-exporter.tgz: - resolution: {integrity: sha512-aMvFIVpBs0KJZonV1omJln3lR47yFT/PRhbT8sVARBMoN6onDj5PcN5JfL+p+ZFKEaYcS4rz0GohigC5AZe4ug==, tarball: file:projects/monitor-opentelemetry-exporter.tgz} + resolution: {integrity: sha512-lF4HckcGeFQz1QyZ2X1P2QXMAyrAL1wK+O73PWrqipkdGRQOvxEei03pBV2RQ6uQtMp0VuNruFB2hi1SRAbxUg==, tarball: file:projects/monitor-opentelemetry-exporter.tgz} name: '@rush-temp/monitor-opentelemetry-exporter' version: 0.0.0 dependencies: @@ -22944,7 +22945,7 @@ packages: dev: false file:projects/monitor-opentelemetry.tgz: - resolution: {integrity: sha512-5Gl35CDEuoqfATvL1SM2nAgJx8BY0l19+YfQxqq/+kwmgI2PRDPmJBynU3ydy7O+QQoVgQ/03F6E3Vu0dExI9Q==, tarball: file:projects/monitor-opentelemetry.tgz} + resolution: {integrity: sha512-OjXRoQi1aKd2VoGtN5yPkRq/mGTbxQe3CaPNlGrh2azX8dt8khNAdZ8+rrr178wkdHrrs4rKtDnTGfqf/K1qDw==, tarball: file:projects/monitor-opentelemetry.tgz} name: '@rush-temp/monitor-opentelemetry' version: 0.0.0 dependencies: @@ -22993,7 +22994,7 @@ packages: dev: false file:projects/monitor-query.tgz: - resolution: {integrity: sha512-vRRhoDDl9G/JIP7BOJlh+fKfjhQovoKNJ5nsgpu1ikOVYiTpEvOKsQ/FxMC+Bx8kD6TwuhAr/8CLpSLa7tDXSw==, tarball: file:projects/monitor-query.tgz} + resolution: {integrity: sha512-4UVI9t0J51tpBAVz62p1/jZThDcWPHbqhka9Fx/l25/nz8MoY9EQUEsZdiRy8MRW0ZzcMhjfkvVF6Z5E28+Naw==, tarball: file:projects/monitor-query.tgz} name: '@rush-temp/monitor-query' version: 0.0.0 dependencies: @@ -23038,7 +23039,7 @@ packages: dev: false file:projects/notification-hubs.tgz: - resolution: {integrity: sha512-9X7n3eHV7pvBIBeeCKWAvJCdi5mV6BurnW3xlnWz+oVPyoO8qdy/VyJ90Lh9Gq2YSUawHKqJPlejh6ZE16o6Iw==, tarball: file:projects/notification-hubs.tgz} + resolution: {integrity: sha512-GdcZTYC2d2GYAnr+Hw/rDxDN6oFoCjQfpMHewtM+YUohSG08NWD1934VeLXumqPSlIqtl189DwPyETod5cg6hA==, tarball: file:projects/notification-hubs.tgz} name: '@rush-temp/notification-hubs' version: 0.0.0 dependencies: @@ -23072,7 +23073,7 @@ packages: dev: false file:projects/openai.tgz: - resolution: {integrity: sha512-H/gPYnq5D7UtybK+ZV0Y1kYmbx/lMlyTkJJYfuwgs6bz67EGAqkolYpESX1juwJNgzYYmDs9/Zi+fxqaMPIcNQ==, tarball: file:projects/openai.tgz} + resolution: {integrity: sha512-UJtybaV+/dtctUPy0hbAZgJ6qPvP+GnCk2MxaFD7iRPoXC28fMCLeNdOxaecbKMJ4llENlYbsZrTFH40b72FUA==, tarball: file:projects/openai.tgz} name: '@rush-temp/openai' version: 0.0.0 dependencies: @@ -23094,7 +23095,7 @@ packages: dev: false file:projects/opentelemetry-instrumentation-azure-sdk.tgz: - resolution: {integrity: sha512-bNg2Of+sm8+U1hIvc+8hWiR3+GWLnx5OcGw6QzzGEqKsKAJ51r478wpaexNQcCDShoZHfxmeBMxNeZccs/PZPw==, tarball: file:projects/opentelemetry-instrumentation-azure-sdk.tgz} + resolution: {integrity: sha512-oxiwObvPjqIopSkQAIu0tV9pGGn/wVKeh09VnP8IOVnyobPxU8ywRACBixNofoiBctZqcNmLlQ4fGHwTLAe0Tg==, tarball: file:projects/opentelemetry-instrumentation-azure-sdk.tgz} name: '@rush-temp/opentelemetry-instrumentation-azure-sdk' version: 0.0.0 dependencies: @@ -23138,7 +23139,7 @@ packages: dev: false file:projects/perf-ai-form-recognizer.tgz: - resolution: {integrity: sha512-+2sdLr5s1rQuWZmjNq61hKRTw4MofspwVuLr2M1xJqvJzMvS9uaEiHzQhGL8SQnDCAiriEGWlOKE0cPTwk1OaA==, tarball: file:projects/perf-ai-form-recognizer.tgz} + resolution: {integrity: sha512-14Z2OGcez6o4kuJqT5LARgYMXY71LNEWP0Fj8c2agUWUutBuwFiwe9k60QDdCNurIsE0D6+mrvJArAjP/ogaqw==, tarball: file:projects/perf-ai-form-recognizer.tgz} name: '@rush-temp/perf-ai-form-recognizer' version: 0.0.0 dependencies: @@ -23157,7 +23158,7 @@ packages: dev: false file:projects/perf-ai-language-text.tgz: - resolution: {integrity: sha512-dTrpF9+EBstw1nnG9iqZ+dxBNWk5dVSHzvkLWmXMPmSS2Zrp+PmnZdpeTCbSicv8duSiCuJKk3QAdPqrJBxvDw==, tarball: file:projects/perf-ai-language-text.tgz} + resolution: {integrity: sha512-THEXis+HUzrI4Ub+OOaaWD5/SY2rIIanXw48LqbV//79LeBWU85rfQAcc2L+GVvUvfEetgeuP2ujto9QO9Vg4w==, tarball: file:projects/perf-ai-language-text.tgz} name: '@rush-temp/perf-ai-language-text' version: 0.0.0 dependencies: @@ -23176,7 +23177,7 @@ packages: dev: false file:projects/perf-ai-metrics-advisor.tgz: - resolution: {integrity: sha512-uFklYxMKebBVlMr+MfLCoHnh+blJN/nyNCckjRwF8c8QrO4hQG/7TP0rNn8bRZH1YPlETazOzdhm9Ze7ReDC+A==, tarball: file:projects/perf-ai-metrics-advisor.tgz} + resolution: {integrity: sha512-riEJQZzStyZFOn9DFvVALh1u7l4m1LE2gJR539zMtCG35DtvYIpXctYBFQiSk2yNz2iF4NBJx2Mb/w+UouPryA==, tarball: file:projects/perf-ai-metrics-advisor.tgz} name: '@rush-temp/perf-ai-metrics-advisor' version: 0.0.0 dependencies: @@ -23194,7 +23195,7 @@ packages: dev: false file:projects/perf-ai-text-analytics.tgz: - resolution: {integrity: sha512-OJXISLbv9M5c4mxqAxcLReTivG7P+03AtPfhrUDqfTv+Q0NK3FUWpRrj3yvXycArK1Lr0jYk6+ntp17T9T5iqw==, tarball: file:projects/perf-ai-text-analytics.tgz} + resolution: {integrity: sha512-E3nPJDBtbXwiLo2wjkNL14OdPCpsy2Jd22/1Mhcoc9OQ/4GvyuKHnDScRvQnyuovP9GkbfCYg8YOMQ53qJPMKw==, tarball: file:projects/perf-ai-text-analytics.tgz} name: '@rush-temp/perf-ai-text-analytics' version: 0.0.0 dependencies: @@ -23213,7 +23214,7 @@ packages: dev: false file:projects/perf-app-configuration.tgz: - resolution: {integrity: sha512-yH3GCyUaVFuIc5Fx/xHuToZK0NanODuc0k8TRzfcaEN0+xEr0j8bOkHGZ5F7ryyROO9jaJzc/pz7b6hyxOqtnw==, tarball: file:projects/perf-app-configuration.tgz} + resolution: {integrity: sha512-jIpIH7Psl3P7saITtpqFL77GAPSmJ7HaOI9UT2u8vumSrFWGko26d5rpM+EFE0s6VSEenLN/8xxFGXmDO1/1zw==, tarball: file:projects/perf-app-configuration.tgz} name: '@rush-temp/perf-app-configuration' version: 0.0.0 dependencies: @@ -23232,7 +23233,7 @@ packages: dev: false file:projects/perf-container-registry.tgz: - resolution: {integrity: sha512-PP4GcU3xYYApVoB1YxZ+mbp+WkmPKNvPV5tB3IgShYa/yrDfrCGMAaSKZS4UpMzOde7++xi93R9aHhnZnOhqzg==, tarball: file:projects/perf-container-registry.tgz} + resolution: {integrity: sha512-W9DFe+27HoYl8e9bCYWQPaFjtRxJPG8sJkPOON4aIHELO22NDNY4oPlQ6OYFKrOfApORU207jYaQV/xIS8pblg==, tarball: file:projects/perf-container-registry.tgz} name: '@rush-temp/perf-container-registry' version: 0.0.0 dependencies: @@ -23250,7 +23251,7 @@ packages: dev: false file:projects/perf-core-rest-pipeline.tgz: - resolution: {integrity: sha512-gUEA7TVFT7UbP+NwVhQYhS9SML8v7EbO/WdcqoN3cRNIuyYRJ0ON6sEHrjm5h2vgGyv+9BpLipxvJ/CsCz7hWw==, tarball: file:projects/perf-core-rest-pipeline.tgz} + resolution: {integrity: sha512-332Okh8wMvpl53GnWplq/bz9rXOJr5Loe5NsUr+BWzHyZ582cQLfKxEOC0laNQkcn5ijCRuvBRXjzHj5L4c/MQ==, tarball: file:projects/perf-core-rest-pipeline.tgz} name: '@rush-temp/perf-core-rest-pipeline' version: 0.0.0 dependencies: @@ -23272,7 +23273,7 @@ packages: dev: false file:projects/perf-data-tables.tgz: - resolution: {integrity: sha512-CuECh5wyMvGA21e1ZxnnKsD0OHmJ6u9iIzn58P37BMp2U6AOdzA1+6Ve/6I+GP82FdehQzHP4DILidorrZrdnw==, tarball: file:projects/perf-data-tables.tgz} + resolution: {integrity: sha512-CJ8Nveln5WMWkLqE06GVZtTumulIwjnQX3dWnCqi8lytwoGrH8H+fFGpkXcJCAVhWtGKHsVtV9Cu6xFyzYr/Ng==, tarball: file:projects/perf-data-tables.tgz} name: '@rush-temp/perf-data-tables' version: 0.0.0 dependencies: @@ -23290,7 +23291,7 @@ packages: dev: false file:projects/perf-event-hubs.tgz: - resolution: {integrity: sha512-XcspnaxQqDYmY/ATVfrjDlzOgx1LzCFQuWvOkXDYydfUTYwOEEtZhz5ZVXIJ26vVmDTWg5AlBs1vZ+UAOCItsQ==, tarball: file:projects/perf-event-hubs.tgz} + resolution: {integrity: sha512-meAKpjq71yJrPhlM9k9d7zyWdAGXF/YppSZIvyM7UgkrTESMlXScx/rCkeK1c3IfM9PuV380C4xM//0UGiCmLQ==, tarball: file:projects/perf-event-hubs.tgz} name: '@rush-temp/perf-event-hubs' version: 0.0.0 dependencies: @@ -23313,7 +23314,7 @@ packages: dev: false file:projects/perf-eventgrid.tgz: - resolution: {integrity: sha512-UNKjJtAuoW6BpkNXnjYeyREI/tjYC40HaFGK0yS8UZabqUOImYQ+soj3WdMmbB08T9uz1t0BggIWwKHW9lX2mw==, tarball: file:projects/perf-eventgrid.tgz} + resolution: {integrity: sha512-rfPtLsSSCICLcAc4tY6LPolQ1k5BkEPYAmLu806stsdp40OMn1m7HFPOQiezG8eL22FbUjfiTMWKd9f5AvxTLg==, tarball: file:projects/perf-eventgrid.tgz} name: '@rush-temp/perf-eventgrid' version: 0.0.0 dependencies: @@ -23331,7 +23332,7 @@ packages: dev: false file:projects/perf-identity.tgz: - resolution: {integrity: sha512-GTXGJ32TSMYU25L64IKFzf3eLwEGhNtYzbqT2WmCBItZLeKLafEEgP50RE8Gz0vG8fa2lrcIpzttoUWS34ZVtQ==, tarball: file:projects/perf-identity.tgz} + resolution: {integrity: sha512-t8U5+Jl5k0oPD+fi0Tckwix7WmhLWQks6ZLZqMTQgcxlX6BloaXdvO3vY6Ghxx73I9wKA3yEri0mlSBFXTRxQA==, tarball: file:projects/perf-identity.tgz} name: '@rush-temp/perf-identity' version: 0.0.0 dependencies: @@ -23351,7 +23352,7 @@ packages: dev: false file:projects/perf-keyvault-certificates.tgz: - resolution: {integrity: sha512-YTQ7Gv3hfyaG46QXcgEqp0aicllEnEjaCSuvuDUAg2iHlfrDs3I56WI7kNvwHPTW7sD7XrMu3fYCAW07HVTBlg==, tarball: file:projects/perf-keyvault-certificates.tgz} + resolution: {integrity: sha512-bNXleSNXtGTvBJOeTg3AGMwnP8cDvrKCidhC+301nupDCWVlMgysscG/ZldzTYKVEPMl7sf0eTtGuoiRHfLxaA==, tarball: file:projects/perf-keyvault-certificates.tgz} name: '@rush-temp/perf-keyvault-certificates' version: 0.0.0 dependencies: @@ -23372,7 +23373,7 @@ packages: dev: false file:projects/perf-keyvault-keys.tgz: - resolution: {integrity: sha512-qdbunS9P9zV1knHd3/bHRDM6Tqktcq1ssFmzZKx0V9t8ulxOwTf1F77emaxTpFT4X3iJeWA9IV9mZwr374shLQ==, tarball: file:projects/perf-keyvault-keys.tgz} + resolution: {integrity: sha512-5w9jdKCWBk5RAHCGV7dyO9p7F4euChvaBsXy6FpEE2iw1fTKvgJNIvPE+mXqp8FZg7+Q4T7+0zZtN1ouXR6ROA==, tarball: file:projects/perf-keyvault-keys.tgz} name: '@rush-temp/perf-keyvault-keys' version: 0.0.0 dependencies: @@ -23393,7 +23394,7 @@ packages: dev: false file:projects/perf-keyvault-secrets.tgz: - resolution: {integrity: sha512-5hBxFCxNy2PAbBwL9ro7PU9yER84QNNRXP+TUBJB4U4zHuXFgFdqPcKEaiWeUNkvB3Dq/mHr31oZlvF4012Q7w==, tarball: file:projects/perf-keyvault-secrets.tgz} + resolution: {integrity: sha512-9xVStxVSepvYkdchGFy2MYUqWIVcAQ6PJsNi9V9Kk02dXgsRgtoJVIgZguSry2gUfnRYNSa0pMI6rSKBniEPUQ==, tarball: file:projects/perf-keyvault-secrets.tgz} name: '@rush-temp/perf-keyvault-secrets' version: 0.0.0 dependencies: @@ -23414,7 +23415,7 @@ packages: dev: false file:projects/perf-monitor-ingestion.tgz: - resolution: {integrity: sha512-zh4+v7/7MFpXAZDZFZI0v9IhUx1RWqnfb7XhcYc/yG5uvROql1FvMOHeF/yX6c33vi88ddW2jslGxBKuxLKD1w==, tarball: file:projects/perf-monitor-ingestion.tgz} + resolution: {integrity: sha512-5nuNgkFm00A1iRUEx1tZYpwiYzhIdIhBCio8sYea0db1Jz4BmJPaN7oOWyNYIKgkffZuDLiaCZ1ctf+3vm+kIw==, tarball: file:projects/perf-monitor-ingestion.tgz} name: '@rush-temp/perf-monitor-ingestion' version: 0.0.0 dependencies: @@ -23433,7 +23434,7 @@ packages: dev: false file:projects/perf-monitor-opentelemetry.tgz: - resolution: {integrity: sha512-7aa3K5UlWLk7fS516+aDrAhhWZ7dIYr2twHaUkk57LeSfiLeEIL8zoL3GjTdmB4iwKNhjfE2Lq4dE+5bHAKhjw==, tarball: file:projects/perf-monitor-opentelemetry.tgz} + resolution: {integrity: sha512-axTb/vVvsa0+4wQKyfRY/F8L8K9dvGrtsNWoewj9szgkuNYM3qZGnXTfNzC/fG6mpSvHqsX4+YZI3tBKjplJpA==, tarball: file:projects/perf-monitor-opentelemetry.tgz} name: '@rush-temp/perf-monitor-opentelemetry' version: 0.0.0 dependencies: @@ -23451,7 +23452,7 @@ packages: dev: false file:projects/perf-monitor-query.tgz: - resolution: {integrity: sha512-CEXnEZX18YBKd0OGlQbJuomtGSCxpWUVD6wFEV2v+sM6z5upzey8Jc1BW/NqOcVa1LedXtVQsJSmD5gb85dNhA==, tarball: file:projects/perf-monitor-query.tgz} + resolution: {integrity: sha512-qY1mM94xTgkK2yRC5tMXLQ80JKYB4goqAd23p4jQ8/XSRLQ6sfu27GnjN25wlJHuo0XZ6gLzlZ2vHYbmMb3yIA==, tarball: file:projects/perf-monitor-query.tgz} name: '@rush-temp/perf-monitor-query' version: 0.0.0 dependencies: @@ -23470,7 +23471,7 @@ packages: dev: false file:projects/perf-schema-registry-avro.tgz: - resolution: {integrity: sha512-kgs3jPjkAEmUVnS9ilcM9A9RyirvSaSR5kEItqZyUq4e6woFAyOEP60V10hX7xzloQ9qccy1h1acU+4FkC4z1g==, tarball: file:projects/perf-schema-registry-avro.tgz} + resolution: {integrity: sha512-4hBmGbfBBKawsHQsFi51yZCFKLiOxR0VF+7TTIMGs63zdH0qM06fzxVx6wUfLiPppY4p+c88kMoopdSPbolBXg==, tarball: file:projects/perf-schema-registry-avro.tgz} name: '@rush-temp/perf-schema-registry-avro' version: 0.0.0 dependencies: @@ -23489,7 +23490,7 @@ packages: dev: false file:projects/perf-search-documents.tgz: - resolution: {integrity: sha512-sGnIwo+w2CXlRmezb7lUHUTvNAI/7L0Hx+rM0GmGQ+KjqmHCP5Ew8QGHJqRR5xpiZrKio0ib6VDV2zTMlbCLug==, tarball: file:projects/perf-search-documents.tgz} + resolution: {integrity: sha512-fuLfe2e53ag5IsFZC0P5YQZGDPMKz70rK4zXonHLKHQaRm2iqki4YOVE+2oapyVpzl39WWFHHzwiaqZbksFSIA==, tarball: file:projects/perf-search-documents.tgz} name: '@rush-temp/perf-search-documents' version: 0.0.0 dependencies: @@ -23509,7 +23510,7 @@ packages: dev: false file:projects/perf-service-bus.tgz: - resolution: {integrity: sha512-BEwGslYbUSg8CGxjLxn+dXxWy11xELFDFH964lrP1DV8g1eVypQND/FTFCZyFUjyQ5a+Q9SAy8ISQ0m8Kk9n9Q==, tarball: file:projects/perf-service-bus.tgz} + resolution: {integrity: sha512-x4szD9pboHyqNa0Zc2HU/3teE3PlPsHnwF+vEXNjR2YFfrfVo6sGEk9KmEzpO9lYKHF5AKh8HvBAltXdFpwEaw==, tarball: file:projects/perf-service-bus.tgz} name: '@rush-temp/perf-service-bus' version: 0.0.0 dependencies: @@ -23529,7 +23530,7 @@ packages: dev: false file:projects/perf-storage-blob.tgz: - resolution: {integrity: sha512-HO3Ow/sdxUYYCufct5rNZIUMWU4ffwtxLJnRJqD1IGIVxlr7xWHQXEfnVW7LcNWrZBWi6M7F2XRjr9z4bAAehg==, tarball: file:projects/perf-storage-blob.tgz} + resolution: {integrity: sha512-/Ott52ZrIkdgxfGUz89CXK+6U2J2l1xEn3jBWDujEQ6vgkiMBj1kpXK/lmmX+4zkeJv5j+ohBCXmNQODix+VWQ==, tarball: file:projects/perf-storage-blob.tgz} name: '@rush-temp/perf-storage-blob' version: 0.0.0 dependencies: @@ -23547,7 +23548,7 @@ packages: dev: false file:projects/perf-storage-file-datalake.tgz: - resolution: {integrity: sha512-GL51kVCPOG1gcV6ALffUekO5jHlytDSR9+/uf5HeVBHIvo0nGaa/93il7Hyx6BaG9557JQsEIGyqJo+u+dUHgA==, tarball: file:projects/perf-storage-file-datalake.tgz} + resolution: {integrity: sha512-ZaiWfvEhLnnbRgFQAsPOkdecgS8XlW2iRcX1nz0oEDSKbPyarcTCNnnPu4aVdwJcNZ5Qqd8av1NWpysOjbhJWA==, tarball: file:projects/perf-storage-file-datalake.tgz} name: '@rush-temp/perf-storage-file-datalake' version: 0.0.0 dependencies: @@ -23565,7 +23566,7 @@ packages: dev: false file:projects/perf-storage-file-share.tgz: - resolution: {integrity: sha512-x55TGONYz7LTZyOIBkmev1mmdBrZBF/C9rclUItbP1qDIE7m1ufZpnqYdy267w6GG7GcPqJuLsTBk1Yp5Y4Ppw==, tarball: file:projects/perf-storage-file-share.tgz} + resolution: {integrity: sha512-y4ZDUCVAMmr5PiLjnMLzZqbig8Dvk1ezl3ljV1zsW08z6FCphP1nyektuGlDrHdfG8qgvazLjbhycJGM7YwYIg==, tarball: file:projects/perf-storage-file-share.tgz} name: '@rush-temp/perf-storage-file-share' version: 0.0.0 dependencies: @@ -23583,7 +23584,7 @@ packages: dev: false file:projects/perf-template.tgz: - resolution: {integrity: sha512-biEyZTz/EjEE/EF9kIccf93THbNNIEEa7RszNKzN3VeWAoJL8U2L7t4orFIlwEf32r8z0I7fr3Pwup/3X56cbA==, tarball: file:projects/perf-template.tgz} + resolution: {integrity: sha512-XqwpPOdDEEWzgmI3K2u1UL8o+5kCvRqt4MIISy3dCBd4TLl8sdtOF/ppE1MnGo1aTyKhXNlCccQIz7GOdIazxA==, tarball: file:projects/perf-template.tgz} name: '@rush-temp/perf-template' version: 0.0.0 dependencies: @@ -23603,7 +23604,7 @@ packages: dev: false file:projects/purview-administration.tgz: - resolution: {integrity: sha512-/ofcTlQ3DUdVjAQNXADQp5Olr8AVFHH6avNuInXyN6UN+nv8Mr/oyYvJ/a9bmMbw+V2PwHZcUvOSkw/1yiOLcw==, tarball: file:projects/purview-administration.tgz} + resolution: {integrity: sha512-RSJpHcbBm53FlgPtxxLd9xjZX44X0X10kEoya4Efa7cKA9m129ovLO03XnVSAzEv80VAuZL2xCwn7yHasCg7pg==, tarball: file:projects/purview-administration.tgz} name: '@rush-temp/purview-administration' version: 0.0.0 dependencies: @@ -23647,7 +23648,7 @@ packages: dev: false file:projects/purview-catalog.tgz: - resolution: {integrity: sha512-BzQH39jZqCdUDPKuloeaxdUYHgHg0Dy4TBc1YUt9KpBdKxiNaAYupB1T5CmLvqI8Ry5h6UpfyVkOZSzW4VJ9SQ==, tarball: file:projects/purview-catalog.tgz} + resolution: {integrity: sha512-ovkJVLgj0ZJJNINdkn9lPa87GR7yztShipZV3QD5FhvtY/GaxzVRSPkP6MIH/WN2zbzEYpVN+r/wl7FNXdD8Qw==, tarball: file:projects/purview-catalog.tgz} name: '@rush-temp/purview-catalog' version: 0.0.0 dependencies: @@ -23692,7 +23693,7 @@ packages: dev: false file:projects/purview-datamap.tgz: - resolution: {integrity: sha512-W4wufES6gQ8aAIBSmdmXhr2+Mw+RScw4vv/f9WoNd30uU3FJyKBe0gujNcJEZLsOXQ/ob6u2k3wuVYZAo2WhPw==, tarball: file:projects/purview-datamap.tgz} + resolution: {integrity: sha512-9ita2YmoNvIfe6h/7yvt897vRwKsT4LDxpBH5c9zAOpJouPNsAhZWQ+VBnBNds8CgnM35vLKW4/ZdOv/tUjRrg==, tarball: file:projects/purview-datamap.tgz} name: '@rush-temp/purview-datamap' version: 0.0.0 dependencies: @@ -23737,7 +23738,7 @@ packages: dev: false file:projects/purview-scanning.tgz: - resolution: {integrity: sha512-la1JpJqPRhD2tFr62OPIHDd3UG9+74a1GH5Acu6Y0ec1CZxw6aaCjSmg+Xnd9/11qxZNjvRD+IvPQXBAxSJHgw==, tarball: file:projects/purview-scanning.tgz} + resolution: {integrity: sha512-NG0a0EFj+UYj8+8ysNxJ4wNo+d+kAqSw3iCouV9nascWUd9Ih+goKtd/xXD+5N2si3jrL203RTwpQMdBi7rLvw==, tarball: file:projects/purview-scanning.tgz} name: '@rush-temp/purview-scanning' version: 0.0.0 dependencies: @@ -23781,7 +23782,7 @@ packages: dev: false file:projects/purview-sharing.tgz: - resolution: {integrity: sha512-yupdEKrPU+CfTg0cYTYNyUJrrpXhb62GhO7YNr0cKlEVu2jFYTDvcq7/uyVTSeJbfrwHSXVFprXX8hcTwmDfcw==, tarball: file:projects/purview-sharing.tgz} + resolution: {integrity: sha512-sq0hf2kHfmj8TB3AlOU28kDgkLYpSb9FcNhjFwLYwpx1dhkMqzdrUxNsp0Xw30KBrc6/5i8ioxkcByvgQtZpLg==, tarball: file:projects/purview-sharing.tgz} name: '@rush-temp/purview-sharing' version: 0.0.0 dependencies: @@ -23828,7 +23829,7 @@ packages: dev: false file:projects/purview-workflow.tgz: - resolution: {integrity: sha512-yLuvkhDEC+Wim6OEctUa7HOhkfzg7vdmnPRUm74iGebhWM9dXCnaGz38EFcyQCiNMHNa2ccc5JqUZ2PutMvn2A==, tarball: file:projects/purview-workflow.tgz} + resolution: {integrity: sha512-TtPgVd0jncMynyYLz041QpSEn/Yt4wHaSwu9g/YcWu2ZxZI5ONcLPIfhREfF5cPU5uELyLeqTuMgD9aqxZjRpw==, tarball: file:projects/purview-workflow.tgz} name: '@rush-temp/purview-workflow' version: 0.0.0 dependencies: @@ -23873,7 +23874,7 @@ packages: dev: false file:projects/quantum-jobs.tgz: - resolution: {integrity: sha512-UMQJfkWHvIDIYsFkZtDAgIe5Mc1YVP7e0+5bbc1/mbB9Ow7mTjjU26YBDoEkvFg58z2GVI3kfyQjlgaU05nmJA==, tarball: file:projects/quantum-jobs.tgz} + resolution: {integrity: sha512-qb6sjTIFhp+u12nxVUSVLhixUhmNoUUW6s+Wkb02kLRZ0OoTOO5JYQgR+z3mgvfhGue37gn6fP2LKn5ItojAnQ==, tarball: file:projects/quantum-jobs.tgz} name: '@rush-temp/quantum-jobs' version: 0.0.0 dependencies: @@ -23918,7 +23919,7 @@ packages: dev: false file:projects/schema-registry-avro.tgz: - resolution: {integrity: sha512-aOuyogD9Sg+gRV1zU1StVI8UOhjMlITcP5JGyS1nA9nIjb89XmoPhVvOwaZmhIaZzl6HXWAu5STIcVW+MrVYXg==, tarball: file:projects/schema-registry-avro.tgz} + resolution: {integrity: sha512-or0Anl9W9acTyeU/D9fhoGG9SmgN580YeiALqaz1ipRqxKCpRd5k4OxMJGAD16yZDKmNQrdGOJAb8Kr4r0ryGg==, tarball: file:projects/schema-registry-avro.tgz} name: '@rush-temp/schema-registry-avro' version: 0.0.0 dependencies: @@ -23971,7 +23972,7 @@ packages: dev: false file:projects/schema-registry-json.tgz: - resolution: {integrity: sha512-Ceo41vIyXjwwMYxrAQULe4hYvRPkYRa/XtDLPlCGN0p8V2dvZok/jG1dnhbT4mS2SrJwL33ITnshqbhTK3Qm2w==, tarball: file:projects/schema-registry-json.tgz} + resolution: {integrity: sha512-g4Hn5V9bTN2ZHCm4HrYFu4h9wbMJAh7TiFPY6aDiKtmHyco8a4SDjKY5abZhB6YipsQ4ucKGhUZjPbRl+o7YbA==, tarball: file:projects/schema-registry-json.tgz} name: '@rush-temp/schema-registry-json' version: 0.0.0 dependencies: @@ -24014,7 +24015,7 @@ packages: dev: false file:projects/schema-registry.tgz: - resolution: {integrity: sha512-lTKvaSVAs+bx4vnHtG85rIZfyNjFfx2uvqwhNdw8SkWqgxQ7AyW53RtPklVwVhd3KCrwOk7HSKMvWLVFCISWZQ==, tarball: file:projects/schema-registry.tgz} + resolution: {integrity: sha512-XmJTse42Anbjn61axGhnFmOpx12CpgGUZRVwZaaBrtWQH9nSX3c8AZ8Wgq8njUc85FIlYvk6v1OmTapERBCdnQ==, tarball: file:projects/schema-registry.tgz} name: '@rush-temp/schema-registry' version: 0.0.0 dependencies: @@ -24054,7 +24055,7 @@ packages: dev: false file:projects/search-documents.tgz: - resolution: {integrity: sha512-TQPou1xuoYFGXUZYg+kgNvuBoQjULHSb9HelaZ7aOiyljlRGFCVfg37p9aqZWL2/1DZtKGkppFfdm30+AnZ7BQ==, tarball: file:projects/search-documents.tgz} + resolution: {integrity: sha512-UtQzUbFJpxBbW2P5e8zRUmg3fP1mDW5w6IKNqtNtdnTppJBYWnEaNYjX/yQ7UEIo2CFFOIO4GcixqY566YmPtA==, tarball: file:projects/search-documents.tgz} name: '@rush-temp/search-documents' version: 0.0.0 dependencies: @@ -24101,7 +24102,7 @@ packages: dev: false file:projects/service-bus.tgz: - resolution: {integrity: sha512-pfeEzNWjWkY3UslPZiBbMrutD2+50KdgM0nc5z5px1bLVEyRC2+swU/F8K4DtmQt7VTAhZ6J9LmEbY52rf48Pw==, tarball: file:projects/service-bus.tgz} + resolution: {integrity: sha512-ihRlPjYjF1gnrmZ0ztwG8pYU8TAh9/cQK5ZUP+C+nbIgGDqzpGmhLn0oLtRNDAmRV6DqMiFsUfGypDeE0cETtQ==, tarball: file:projects/service-bus.tgz} name: '@rush-temp/service-bus' version: 0.0.0 dependencies: @@ -24162,7 +24163,7 @@ packages: dev: false file:projects/storage-blob-changefeed.tgz: - resolution: {integrity: sha512-fwmHZho2lwmrVWSRPByBqwivzbKwwKmIDpmhhbByJV+LA4Ygh4Psy2iqkNPWrMgxp3DEFM8vGzbc3YwpKsHPAA==, tarball: file:projects/storage-blob-changefeed.tgz} + resolution: {integrity: sha512-Za4kJ8Y4f8+DH11A/rWgUkg9Fz3BGUfUSBRJnQZjo9IBHcKUc0h0v9SQwPNf43jMiF9N2ePY3DYo5lbW+76K+Q==, tarball: file:projects/storage-blob-changefeed.tgz} name: '@rush-temp/storage-blob-changefeed' version: 0.0.0 dependencies: @@ -24211,7 +24212,7 @@ packages: dev: false file:projects/storage-blob.tgz: - resolution: {integrity: sha512-yUxQENJ01CZgt3pQ+Hc1KBPbiMQCiUnDCY6hUEkbjCiZQPiYl0WOZh19gPRbbL47r/XWQM5a1pMaMdSfTkTgog==, tarball: file:projects/storage-blob.tgz} + resolution: {integrity: sha512-apbbVy4eb0kT30GpFWsfwEmAKG3MR/j6DVtjrXNmxXbAIVi3SeENmex/FU4fT9eUqHcEt0ZqszKpu5YjW3qB5w==, tarball: file:projects/storage-blob.tgz} name: '@rush-temp/storage-blob' version: 0.0.0 dependencies: @@ -24258,7 +24259,7 @@ packages: dev: false file:projects/storage-file-datalake.tgz: - resolution: {integrity: sha512-9x6G40Mst6ksYXM/ufVBtrPHw8Y+GQek1BUQLZ/lED8NoA0F3LrdWAimybrvYToVqvpWwkdbY9B20jEe4ocYJw==, tarball: file:projects/storage-file-datalake.tgz} + resolution: {integrity: sha512-ClBgR27z04cQhec2s/V2+Absc/qheLa+i3UkI4FgnoZCcMBMsYVrzSrhmv0qdRMaBClS9Y0wqGW1Lru5IeS5CQ==, tarball: file:projects/storage-file-datalake.tgz} name: '@rush-temp/storage-file-datalake' version: 0.0.0 dependencies: @@ -24308,7 +24309,7 @@ packages: dev: false file:projects/storage-file-share.tgz: - resolution: {integrity: sha512-pnrJFe23mI79MQvoYd3TAW2xdxacOf+8XIQ0ejcr9vqC7xuRQ6C8nTU7Q+Gs/YLQsGQVNQVVrzUWaRbuZsZ2eQ==, tarball: file:projects/storage-file-share.tgz} + resolution: {integrity: sha512-tZ6VuS2zsUxSfbA/IhSImz3lqaq1h5SzUc82TE6VMK6x2ml5ROnnPadL4UQacEcP8a1md/ZQK1qqHQsczPVasg==, tarball: file:projects/storage-file-share.tgz} name: '@rush-temp/storage-file-share' version: 0.0.0 dependencies: @@ -24356,7 +24357,7 @@ packages: dev: false file:projects/storage-internal-avro.tgz: - resolution: {integrity: sha512-MQ2mQDvJArx+qkWz6lh1DNC25q8Mfw6DyorvnHPCgDWShVD1OyNbkR3FdBtXF3ApGx3OXWvGagwN48dnPU7+lw==, tarball: file:projects/storage-internal-avro.tgz} + resolution: {integrity: sha512-Khu0RFtj9ShPEpRH4J12sqpT3UB9vuYtImm1o3blbe8+PCIiuyEy0BOOAuATukTl7KMrx+kQFlt2quiP3nD+6g==, tarball: file:projects/storage-internal-avro.tgz} name: '@rush-temp/storage-internal-avro' version: 0.0.0 dependencies: @@ -24398,7 +24399,7 @@ packages: dev: false file:projects/storage-queue.tgz: - resolution: {integrity: sha512-ZoZpfV3mA8Y0taJ2+TS1FURVeCdqeHyNx1STH+c3npYsbeXx1EM7zdjlxFy9AzW8WqC98Ljw1CuG94DjdS8lNQ==, tarball: file:projects/storage-queue.tgz} + resolution: {integrity: sha512-SbtG59eSWeXIH6cl8NkBVNF6VaRqzKBiLHWcvJPjbsFHhIrMbtVP/oZOJLtyzc0Qo3XTHOnjvsSEP3ZDhm36gw==, tarball: file:projects/storage-queue.tgz} name: '@rush-temp/storage-queue' version: 0.0.0 dependencies: @@ -24443,7 +24444,7 @@ packages: dev: false file:projects/synapse-access-control-1.tgz: - resolution: {integrity: sha512-YF8ESmemr1ONKVGjHravsd0aF7i4JF+qc1M8VSW/1lfzEqws/zFR0miEwmUBKuuq3e+ZdfxRwjs55Nr1SE1cyg==, tarball: file:projects/synapse-access-control-1.tgz} + resolution: {integrity: sha512-a/9dZpl4XgeJ+haQiZNpkZSYy9orW5z5bQB7Oyxydpc/U7TZljmv9uLIZOA8aQuUQVpDh4p8UBDbxmOg572mow==, tarball: file:projects/synapse-access-control-1.tgz} name: '@rush-temp/synapse-access-control-1' version: 0.0.0 dependencies: @@ -24489,7 +24490,7 @@ packages: dev: false file:projects/synapse-access-control.tgz: - resolution: {integrity: sha512-mOVshMTg1mw1kPHfUj4CuN2rRe7i1iyJ03tog9j4BUiXvNgvKuz6FmYKoz50PD+Vm1Y1kX4BhNSeIqFINU1ZUg==, tarball: file:projects/synapse-access-control.tgz} + resolution: {integrity: sha512-xpKpKCs2aLWbl5fnHEdU+PFcMUKipbH+Wu+VZIfcNajLDCQYjxTekQs9DGFH+r1UTDgrpdudE2ixGOp5C69NEg==, tarball: file:projects/synapse-access-control.tgz} name: '@rush-temp/synapse-access-control' version: 0.0.0 dependencies: @@ -24538,7 +24539,7 @@ packages: dev: false file:projects/synapse-artifacts.tgz: - resolution: {integrity: sha512-biKQiiUVwTmrhOl8eI8fn4dFKytg7k2xdFqPsyKT1L4XNoOSW2wmi5yOlIfhYd4gwpd8iuPcimnG9SsShQF25Q==, tarball: file:projects/synapse-artifacts.tgz} + resolution: {integrity: sha512-BqyLvu/C6vnlOoL0p0uiVCPMiuZgqIQW75f2v4D+VXxEg8BUllx0d7tQUcP8BkzdYZZ5nAd9Y0e30qJW1WjnHw==, tarball: file:projects/synapse-artifacts.tgz} name: '@rush-temp/synapse-artifacts' version: 0.0.0 dependencies: @@ -24588,7 +24589,7 @@ packages: dev: false file:projects/synapse-managed-private-endpoints.tgz: - resolution: {integrity: sha512-1iRvwOJt5zFH9cFtaWGHntCTqqDjVD+fKM0Y39fW8aw9AMTEzkZxAmhiQKxsAubwcddWJgxqIkDn4b7jg1jmQQ==, tarball: file:projects/synapse-managed-private-endpoints.tgz} + resolution: {integrity: sha512-0FONmRyT374Y0xbcOo1xHkLuIIBhouvH5Me2+ZNUOlgfwLqDqrp+F3XgFamLOF2oVsKcs+aN4+kd/bhsUWrPyA==, tarball: file:projects/synapse-managed-private-endpoints.tgz} name: '@rush-temp/synapse-managed-private-endpoints' version: 0.0.0 dependencies: @@ -24631,7 +24632,7 @@ packages: dev: false file:projects/synapse-monitoring.tgz: - resolution: {integrity: sha512-P5Fd8EPEmT9YnQzs/cAm0P6tCrCLRmCe813RAomQqwS+VEh3qSfhkcwFUU0ZZ41aPTDM0pWi1QA+UI0XEYSljw==, tarball: file:projects/synapse-monitoring.tgz} + resolution: {integrity: sha512-g+ViDkGo+YoqD/9+6UekM5d/AUy9d03el1qY54IsvDxiEoSWt8eGm/eYLvNSEEO+L7SO0wWuSkcXMwZPzVUnJA==, tarball: file:projects/synapse-monitoring.tgz} name: '@rush-temp/synapse-monitoring' version: 0.0.0 dependencies: @@ -24668,7 +24669,7 @@ packages: dev: false file:projects/synapse-spark.tgz: - resolution: {integrity: sha512-9Ecly4K6TLNWdqwlBcuLDwGv58STtdODBMMhSp5CSHTDepi+CjkGn0ip9wboIJMViYNIQ0brK+VoDs10tdS/+A==, tarball: file:projects/synapse-spark.tgz} + resolution: {integrity: sha512-AjZYhUxgZjKU3vweVyykeN0cd2OuXrFV3TTiX1XEnPS9QMyMvA1tS5ZjaMcDyW+Xj8CS+uEbICKfW+64uCsskg==, tarball: file:projects/synapse-spark.tgz} name: '@rush-temp/synapse-spark' version: 0.0.0 dependencies: @@ -24711,7 +24712,7 @@ packages: dev: false file:projects/template-dpg.tgz: - resolution: {integrity: sha512-FGFRCXKGxrgO/p86CzaSu30Va+ouEEz+eERbrLB42v2qD/NQwkGqZYUm488IvvEphPPG5Zo6Ko25CR0FCHREwA==, tarball: file:projects/template-dpg.tgz} + resolution: {integrity: sha512-K7U5XtGU2ce8ny2y+gaDEBOaqsEErd9ZtatTo91UnWAsUunX6FQs95Aew5buHrg8hpRyI9K2DJ4di/PVnNuVag==, tarball: file:projects/template-dpg.tgz} name: '@rush-temp/template-dpg' version: 0.0.0 dependencies: @@ -24754,7 +24755,7 @@ packages: dev: false file:projects/template.tgz: - resolution: {integrity: sha512-1hUPmhbc0aklb4uXcIjlHsKB2+MjgAnmdAMASkU7J8xreT6MYSsblzTi8vWkPoMnX/+imEZe7Qh0homNK+0ssA==, tarball: file:projects/template.tgz} + resolution: {integrity: sha512-z5L7StzQU1hUhss+ey1nopvsmApXdTSBkUZQ36LO4J3GA61Ett4tX7YCZusa5alnZ2+6S6pmQaYd+dEvqRMzUQ==, tarball: file:projects/template.tgz} name: '@rush-temp/template' version: 0.0.0 dependencies: @@ -24792,7 +24793,7 @@ packages: dev: false file:projects/test-credential.tgz: - resolution: {integrity: sha512-cbe9jS0cDsx7r6RTxQBlDSwmyNsRItg/BIXo/1aAblLlSzN9eJVBc0qRtClNGgp2Cwc8kHIRj5AfAvJHBENTag==, tarball: file:projects/test-credential.tgz} + resolution: {integrity: sha512-Yay5YvJ3iO6GkS03WE9EAOHzpGFsNVb/yfv5n2aRGxlbJSiSRlDmH4lYeAtHmcjH5HZcTokOW15Zl+9gohNIEQ==, tarball: file:projects/test-credential.tgz} name: '@rush-temp/test-credential' version: 0.0.0 dependencies: @@ -24811,7 +24812,7 @@ packages: dev: false file:projects/test-perf.tgz: - resolution: {integrity: sha512-dV5mAryJelTRusThrDkqIKakjuFlNr1LfE8QZVyTIOMZf+mxjaYa+gItkPOXhU7wnHAHVQGVGgSbdJFT/RF+IA==, tarball: file:projects/test-perf.tgz} + resolution: {integrity: sha512-dX/wq5312VP4IMXht+BTHOav8o0LunXWx0mcsyUKnzAuhD4HGg00AYZcAIuP4S93TsS+sNEJ2IUSPfDfdhrLTA==, tarball: file:projects/test-perf.tgz} name: '@rush-temp/test-perf' version: 0.0.0 dependencies: @@ -24839,7 +24840,7 @@ packages: dev: false file:projects/test-recorder.tgz: - resolution: {integrity: sha512-W7qvPnEPSlcY1eGGqfIwpnuOy34md69n8TaPcZIUMQnDWN8PchMnIeWfWLwifhBMZ8HaxHpgnUbIkQjWbl0Kuw==, tarball: file:projects/test-recorder.tgz} + resolution: {integrity: sha512-/t/b+ayJuVLALnuZn2kUJrs9nNQWyPfRY20j9b1/KLHhvwNHcZlztu+OtdjgDCo6eMhpxtmBEvCqfMpwDMJq/A==, tarball: file:projects/test-recorder.tgz} name: '@rush-temp/test-recorder' version: 0.0.0 dependencies: @@ -24875,7 +24876,7 @@ packages: dev: false file:projects/test-utils.tgz: - resolution: {integrity: sha512-dy4yWOviUvykLKxFyvx0+Gm2BCVCmsoPEPu6zkl0yOe8nmR7y0Ee0O2/h03m7Nvj0p+qaP9s+iVOoy3tcV0vFg==, tarball: file:projects/test-utils.tgz} + resolution: {integrity: sha512-/zW3HGJRjx4SIrcG1OW/0MELjHiqK+jzymjKCSQScVVjjsV9Bay/8Yy4KJD4DVkYMu6zcObo92mFgbWca33XGg==, tarball: file:projects/test-utils.tgz} name: '@rush-temp/test-utils' version: 0.0.0 dependencies: @@ -24912,7 +24913,7 @@ packages: dev: false file:projects/ts-http-runtime.tgz: - resolution: {integrity: sha512-RqLmduToy03M0cnWkM6DITq/0n0r8AUQ7XuYOMKj5X/ZU1MCJ3IBaRpAkCRrVoShf1HLkD8MKjFE/cxBfU44LQ==, tarball: file:projects/ts-http-runtime.tgz} + resolution: {integrity: sha512-gYsRh+AQMdE3oMy/aR5ZP5HvrZro4FlLtA+EwS396BCSNp7zCeVHQbjZwJrIYZCj6M0GWrnsawwer80v3mykFg==, tarball: file:projects/ts-http-runtime.tgz} name: '@rush-temp/ts-http-runtime' version: 0.0.0 dependencies: @@ -24947,7 +24948,7 @@ packages: dev: false file:projects/vite-plugin-browser-test-map.tgz: - resolution: {integrity: sha512-7mABgnyVZKGwgwpS8yU/p5u/1RZvlFEC8yv37YpY3YrapxkpdmPCxbnGFc6O92CDbinUZb3yTvN1nbFsZ6Y9VA==, tarball: file:projects/vite-plugin-browser-test-map.tgz} + resolution: {integrity: sha512-OfgBiUirU0lvcttCRGp55ht3Mia/hYzXunldhwPadyhLLZS2CfmFe/YMqTY1mGKv0i31rk1ub5ldRGIIjyUSCg==, tarball: file:projects/vite-plugin-browser-test-map.tgz} name: '@rush-temp/vite-plugin-browser-test-map' version: 0.0.0 dependencies: @@ -24962,7 +24963,7 @@ packages: dev: false file:projects/web-pubsub-client-protobuf.tgz: - resolution: {integrity: sha512-mQTkQKaFDYzaxKpvffb8cgxOf/DajobTANJ6eEeOSek0fTFCbdwWn6J3Uou+dK61cELyQMuaxcKB66kKClbZTQ==, tarball: file:projects/web-pubsub-client-protobuf.tgz} + resolution: {integrity: sha512-wVESRObySO4PLnbkLpHwMlpN49wQC/tqptYIhxb8mIhtbFFHc5w7kWwy1RQp9qkXy121pYR4Ygnx40XaqtQFFw==, tarball: file:projects/web-pubsub-client-protobuf.tgz} name: '@rush-temp/web-pubsub-client-protobuf' version: 0.0.0 dependencies: @@ -25021,7 +25022,7 @@ packages: dev: false file:projects/web-pubsub-client.tgz: - resolution: {integrity: sha512-gew2iNf4DCi1CpeyojCqC7Qzv13YAEgvAPYH2SbxdUegFD5SMqOZ8lEm+cNeiCtTkaUZ7tWw1XS0i9VsBAxx0g==, tarball: file:projects/web-pubsub-client.tgz} + resolution: {integrity: sha512-reC2+Ua6WCDqpaP0KhZwjZSlDKbtISB9CgoT21qNDYJF1g/D39C+EpS74iJ5gK8f1ziIPjRODzwVdjpH1KLXtQ==, tarball: file:projects/web-pubsub-client.tgz} name: '@rush-temp/web-pubsub-client' version: 0.0.0 dependencies: @@ -25075,7 +25076,7 @@ packages: dev: false file:projects/web-pubsub-express.tgz: - resolution: {integrity: sha512-oyJcorTyJRrRe1foDzPTCsdJpAJiJtXjo3pKdaxHihBVGc/9yX/6z6SwrI7h//OFU4z9rfza4GRQMglyVJn3rQ==, tarball: file:projects/web-pubsub-express.tgz} + resolution: {integrity: sha512-6Pl4j+FJLbABdaBsq2PzPdKgFBlKeHMcEfVo2kAassvFEhiahSG7k0br3DidGJ/ZODKSLL1kFgRPrQTrC/5aoA==, tarball: file:projects/web-pubsub-express.tgz} name: '@rush-temp/web-pubsub-express' version: 0.0.0 dependencies: @@ -25112,7 +25113,7 @@ packages: dev: false file:projects/web-pubsub.tgz: - resolution: {integrity: sha512-n0OPorulrRol6sRw3kjX4ETvSTRIGd/oqyS7yApVzMM4skHd5HQVJ/+K77Bcv8zzDIEmO92sMNbFSemld95ExA==, tarball: file:projects/web-pubsub.tgz} + resolution: {integrity: sha512-lbfKcpXc6tDMH+XbxiAa6VKzd3J+SpIDwm4OSZxA0jeuIkzGiL23vZIP/ddbXXMTNvqAfgGl7EVZ02JHyoEDhg==, tarball: file:projects/web-pubsub.tgz} name: '@rush-temp/web-pubsub' version: 0.0.0 dependencies: diff --git a/sdk/computefleet/arm-computefleet/.eslintrc.json b/sdk/computefleet/arm-computefleet/.eslintrc.json deleted file mode 100644 index 8793fba07e9d..000000000000 --- a/sdk/computefleet/arm-computefleet/.eslintrc.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "plugins": ["@azure/azure-sdk"], - "extends": ["plugin:@azure/azure-sdk/azure-sdk-base"], - "rules": { - "@azure/azure-sdk/ts-modules-only-named": "warn", - "@azure/azure-sdk/ts-apiextractor-json-types": "warn", - "@azure/azure-sdk/ts-package-json-types": "warn", - "@azure/azure-sdk/ts-package-json-engine-is-present": "warn", - "tsdoc/syntax": "warn", - "@azure/azure-sdk/ts-package-json-module": "off", - "@azure/azure-sdk/ts-package-json-files-required": "off", - "@azure/azure-sdk/ts-package-json-main-is-cjs": "off" - } -} diff --git a/sdk/computefleet/arm-computefleet/CHANGELOG.md b/sdk/computefleet/arm-computefleet/CHANGELOG.md index 4d192a09d478..7be7bd5fda55 100644 --- a/sdk/computefleet/arm-computefleet/CHANGELOG.md +++ b/sdk/computefleet/arm-computefleet/CHANGELOG.md @@ -1,5 +1,117 @@ # Release History +## 1.0.0-beta.2 (2024-08-08) +Compared with version 1.0.0-beta.1 + +### Features Added + + - Added operation Fleets.beginCreateOrUpdate + - Added operation Fleets.beginCreateOrUpdateAndWait + - Added operation Fleets.beginDelete + - Added operation Fleets.beginDeleteAndWait + - Added operation Fleets.beginUpdate + - Added operation Fleets.beginUpdateAndWait + - Added Interface BasePriorityProfile + - Added Interface ComponentsQjfoe3SchemasManagedserviceidentityupdatePropertiesUserassignedidentitiesAdditionalproperties + - Added Interface FleetListResult + - Added Interface FleetsCreateOrUpdateHeaders + - Added Interface FleetsDeleteHeaders + - Added Interface FleetsListByResourceGroupNextOptionalParams + - Added Interface FleetsListBySubscriptionNextOptionalParams + - Added Interface FleetsListVirtualMachineScaleSetsNextOptionalParams + - Added Interface FleetsUpdateHeaders + - Added Interface MicrosoftAzureFleetForTestingOptionalParams + - Added Interface OperationListResult + - Added Interface OperationsListNextOptionalParams + - Added Interface SubResourceReadOnly + - Added Interface VirtualMachineScaleSetListResult + - Added Class MicrosoftAzureFleetForTesting + - Added Type Alias FleetsCreateOrUpdateResponse + - Added Type Alias FleetsDeleteResponse + - Added Type Alias FleetsGetResponse + - Added Type Alias FleetsListByResourceGroupNextResponse + - Added Type Alias FleetsListByResourceGroupResponse + - Added Type Alias FleetsListBySubscriptionNextResponse + - Added Type Alias FleetsListBySubscriptionResponse + - Added Type Alias FleetsListVirtualMachineScaleSetsNextResponse + - Added Type Alias FleetsListVirtualMachineScaleSetsResponse + - Added Type Alias FleetsUpdateResponse + - Added Type Alias OperationsListNextResponse + - Added Type Alias OperationsListResponse + - Added Type Alias StatusLevelTypes + - Interface Fleet has a new optional parameter computeProfile + - Interface Fleet has a new optional parameter provisioningState + - Interface Fleet has a new optional parameter regularPriorityProfile + - Interface Fleet has a new optional parameter spotPriorityProfile + - Interface Fleet has a new optional parameter timeCreated + - Interface Fleet has a new optional parameter uniqueId + - Interface Fleet has a new optional parameter vmSizesProfile + - Interface FleetsCreateOrUpdateOptionalParams has a new optional parameter resumeFrom + - Interface FleetsDeleteOptionalParams has a new optional parameter resumeFrom + - Interface FleetsUpdateOptionalParams has a new optional parameter resumeFrom + - Interface VirtualMachineScaleSetDataDisk has a new optional parameter diskIopsReadWrite + - Added Enum KnownProvisioningState + - Added Enum KnownStatusLevelTypes + - Enum KnownDiskControllerTypes has a new value Scsi + - Enum KnownManagedServiceIdentityType has a new value SystemAssignedUserAssigned + - Enum KnownNetworkApiVersion has a new value TwoThousandTwenty1101 + - Enum KnownOrigin has a new value System + - Enum KnownOrigin has a new value User + - Enum KnownOrigin has a new value UserSystem + - Enum KnownStorageAccountTypes has a new value PremiumLRS + - Enum KnownStorageAccountTypes has a new value PremiumV2LRS + - Enum KnownStorageAccountTypes has a new value PremiumZRS + - Enum KnownStorageAccountTypes has a new value StandardLRS + - Enum KnownStorageAccountTypes has a new value StandardSSDLRS + - Enum KnownStorageAccountTypes has a new value StandardSSDZRS + - Enum KnownStorageAccountTypes has a new value UltraSSDLRS + - Added function getContinuationToken + +### Breaking Changes + + - Removed operation FleetsOperations.createOrUpdate + - Removed operation FleetsOperations.delete + - Removed operation FleetsOperations.update + - Deleted Class AzureFleetClient + - Interface Fleet no longer has parameter properties + - Interface VirtualMachineScaleSetDataDisk no longer has parameter diskIOPSReadWrite + - Interface VirtualMachineScaleSet has a new required parameter name + - Type of parameter info of interface ErrorAdditionalInfo is changed from Record to Record + - Type of parameter tags of interface FleetUpdate is changed from Record to { + [propertyName: string]: string; + } + - Type of parameter userAssignedIdentities of interface ManagedServiceIdentity is changed from Record to { + [propertyName: string]: UserAssignedIdentity | null; + } + - Type of parameter userAssignedIdentities of interface ManagedServiceIdentityUpdate is changed from Record to { + [propertyName: string]: ComponentsQjfoe3SchemasManagedserviceidentityupdatePropertiesUserassignedidentitiesAdditionalproperties | null; + } + - Type of parameter tags of interface TrackedResource is changed from Record to { + [propertyName: string]: string; + } + - Type of parameter protectedSettings of interface VirtualMachineScaleSetExtensionProperties is changed from Record to { + [propertyName: string]: any; + } + - Type of parameter settings of interface VirtualMachineScaleSetExtensionProperties is changed from Record to { + [propertyName: string]: any; + } + - Removed Enum KnownResourceProvisioningState + - Enum KnownDiskControllerTypes no longer has value SCSI + - Enum KnownManagedServiceIdentityType no longer has value "SystemAssigned,UserAssigned" + - Enum KnownNetworkApiVersion no longer has value "2020-11-01" + - Enum KnownOrigin no longer has value "user,system" + - Enum KnownOrigin no longer has value system + - Enum KnownOrigin no longer has value user + - Enum KnownStorageAccountTypes no longer has value Premium_LRS + - Enum KnownStorageAccountTypes no longer has value Premium_ZRS + - Enum KnownStorageAccountTypes no longer has value PremiumV2_LRS + - Enum KnownStorageAccountTypes no longer has value Standard_LRS + - Enum KnownStorageAccountTypes no longer has value StandardSSD_LRS + - Enum KnownStorageAccountTypes no longer has value StandardSSD_ZRS + - Enum KnownStorageAccountTypes no longer has value UltraSSD_LRS + - Removed function restorePoller + + ## 1.0.0-beta.1 (2024-07-22) ### Features Added diff --git a/sdk/computefleet/arm-computefleet/README.md b/sdk/computefleet/arm-computefleet/README.md index 79b65bb2da61..3c48eb2e7ace 100644 --- a/sdk/computefleet/arm-computefleet/README.md +++ b/sdk/computefleet/arm-computefleet/README.md @@ -1,12 +1,13 @@ -# AzureFleet client library for JavaScript +# Azure MicrosoftAzureFleetForTesting client library for JavaScript + +This package contains an isomorphic SDK (runs both in Node.js and in browsers) for Azure MicrosoftAzureFleetForTesting client. -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://docs.microsoft.com/javascript/api/@azure/arm-computefleet?view=azure-node-preview) | +[Samples](https://github.com/Azure-Samples/azure-samples-js-management) ## Getting started @@ -23,16 +24,16 @@ See our [support policy](https://github.com/Azure/azure-sdk-for-js/blob/main/SUP ### Install the `@azure/arm-computefleet` package -Install the AzureFleet client library for JavaScript with `npm`: +Install the Azure MicrosoftAzureFleetForTesting client library for JavaScript with `npm`: ```bash npm install @azure/arm-computefleet ``` -### Create and authenticate a `AzureFleetClient` +### Create and authenticate a `MicrosoftAzureFleetForTesting` -To create a client object to access the AzureFleet API, you will need the `endpoint` of your AzureFleet resource and a `credential`. The AzureFleet client can use Azure Active Directory credentials to authenticate. -You can find the endpoint for your AzureFleet resource in the [Azure Portal][azure_portal]. +To create a client object to access the Azure MicrosoftAzureFleetForTesting API, you will need the `endpoint` of your Azure MicrosoftAzureFleetForTesting resource and a `credential`. The Azure MicrosoftAzureFleetForTesting client can use Azure Active Directory credentials to authenticate. +You can find the endpoint for your Azure MicrosoftAzureFleetForTesting resource in the [Azure Portal][azure_portal]. You can authenticate with Azure Active Directory using a credential from the [@azure/identity][azure_identity] library or [an existing AAD Token](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/identity/identity/samples/AzureIdentityExamples.md#authenticating-with-a-pre-fetched-access-token). @@ -42,25 +43,25 @@ To use the [DefaultAzureCredential][defaultazurecredential] provider shown below 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). +You will also need to **register a new AAD application and grant access to Azure MicrosoftAzureFleetForTesting** 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://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal). ```javascript -const { AzureFleetClient } = require("@azure/arm-computefleet"); +const { MicrosoftAzureFleetForTesting } = require("@azure/arm-computefleet"); const { DefaultAzureCredential } = require("@azure/identity"); // For client-side applications running in the browser, use InteractiveBrowserCredential instead of DefaultAzureCredential. See https://aka.ms/azsdk/js/identity/examples for more details. const subscriptionId = "00000000-0000-0000-0000-000000000000"; -const client = new AzureFleetClient(new DefaultAzureCredential(), subscriptionId); +const client = new MicrosoftAzureFleetForTesting(new DefaultAzureCredential(), subscriptionId); // For client-side applications running in the browser, use this code instead: // const credential = new InteractiveBrowserCredential({ // tenantId: "", // clientId: "" // }); -// const client = new AzureFleetClient(credential, subscriptionId); +// const client = new MicrosoftAzureFleetForTesting(credential, subscriptionId); ``` @@ -69,9 +70,9 @@ To use this client library in the browser, first you need to use a bundler. For ## Key concepts -### AzureFleetClient +### MicrosoftAzureFleetForTesting -`AzureFleetClient` is the primary interface for developers using the AzureFleet client library. Explore the methods on this client object to understand the different features of the AzureFleet service that you can access. +`MicrosoftAzureFleetForTesting` is the primary interface for developers using the Azure MicrosoftAzureFleetForTesting client library. Explore the methods on this client object to understand the different features of the Azure MicrosoftAzureFleetForTesting service that you can access. ## Troubleshooting @@ -86,6 +87,9 @@ setLogLevel("info"); For more detailed instructions on how to enable logs, you can look at the [@azure/logger package docs](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/core/logger). +## Next steps + +Please take a look at the [samples](https://github.com/Azure-Samples/azure-samples-js-management) directory for detailed examples on how to use this library. ## Contributing @@ -95,6 +99,10 @@ If you'd like to contribute to this library, please read the [contributing guide - [Microsoft Azure SDK for JavaScript](https://github.com/Azure/azure-sdk-for-js) +![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js%2Fsdk%2Fcomputefleet%2Farm-computefleet%2FREADME.png) + +[azure_cli]: https://docs.microsoft.com/cli/azure +[azure_sub]: https://azure.microsoft.com/free/ [azure_sub]: https://azure.microsoft.com/free/ [azure_portal]: https://portal.azure.com [azure_identity]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/identity/identity diff --git a/sdk/computefleet/arm-computefleet/_meta.json b/sdk/computefleet/arm-computefleet/_meta.json new file mode 100644 index 000000000000..1df402497c97 --- /dev/null +++ b/sdk/computefleet/arm-computefleet/_meta.json @@ -0,0 +1,8 @@ +{ + "commit": "bc35ae3b67f3c1ed5ca85817337647bfd89f92c8", + "readme": "specification/azurefleet/resource-manager/readme.md", + "autorest_command": "autorest --version=3.9.7 --typescript --modelerfour.lenient-model-deduplication --azure-arm --head-as-boolean=true --license-header=MICROSOFT_MIT_NO_VERSION --generate-test --typescript-sdks-folder=/mnt/vss/_work/1/s/azure-sdk-for-js ../azure-rest-api-specs/specification/azurefleet/resource-manager/readme.md --use=@autorest/typescript@^6.0.12", + "repository_url": "https://github.com/test-repo-billy/azure-rest-api-specs.git", + "release_tool": "js-sdk-release-tools@2.7.18-beta", + "use": "@autorest/typescript@^6.0.12" +} \ No newline at end of file diff --git a/sdk/computefleet/arm-computefleet/api-extractor.json b/sdk/computefleet/arm-computefleet/api-extractor.json index 201b9e5d75a7..fa0d77031dac 100644 --- a/sdk/computefleet/arm-computefleet/api-extractor.json +++ b/sdk/computefleet/arm-computefleet/api-extractor.json @@ -1,18 +1,31 @@ { "$schema": "https://developer.microsoft.com/json-schemas/api-extractor/v7/api-extractor.schema.json", - "mainEntryPointFilePath": "./dist/esm/index.d.ts", - "docModel": { "enabled": true }, - "apiReport": { "enabled": true, "reportFolder": "./review" }, + "mainEntryPointFilePath": "./dist-esm/src/index.d.ts", + "docModel": { + "enabled": true + }, + "apiReport": { + "enabled": true, + "reportFolder": "./review" + }, "dtsRollup": { "enabled": true, "untrimmedFilePath": "", "publicTrimmedFilePath": "./types/arm-computefleet.d.ts" }, "messages": { - "tsdocMessageReporting": { "default": { "logLevel": "none" } }, + "tsdocMessageReporting": { + "default": { + "logLevel": "none" + } + }, "extractorMessageReporting": { - "ae-missing-release-tag": { "logLevel": "none" }, - "ae-unresolved-link": { "logLevel": "none" } + "ae-missing-release-tag": { + "logLevel": "none" + }, + "ae-unresolved-link": { + "logLevel": "none" + } } } -} +} \ No newline at end of file diff --git a/sdk/computefleet/arm-computefleet/assets.json b/sdk/computefleet/arm-computefleet/assets.json deleted file mode 100644 index ba3bf3c384b4..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_e84d79a3e6" -} diff --git a/sdk/computefleet/arm-computefleet/package.json b/sdk/computefleet/arm-computefleet/package.json index 2a32fdf685a7..7acb97502294 100644 --- a/sdk/computefleet/arm-computefleet/package.json +++ b/sdk/computefleet/arm-computefleet/package.json @@ -1,187 +1,110 @@ { "name": "@azure/arm-computefleet", - "version": "1.0.0-beta.1", - "description": "Azure Fleet Service", + "sdk-type": "mgmt", + "author": "Microsoft Corporation", + "description": "A generated SDK for MicrosoftAzureFleetForTesting.", + "version": "1.0.0-beta.2", "engines": { "node": ">=18.0.0" }, - "sideEffects": false, - "autoPublish": false, - "tshy": { - "exports": { - "./package.json": "./package.json", - ".": "./src/index.ts", - "./api": "./src/api/index.ts", - "./models": "./src/models/index.ts" - }, - "dialects": [ - "esm", - "commonjs" - ], - "esmDialects": [ - "browser", - "react-native" - ], - "selfLink": false + "dependencies": { + "@azure/core-lro": "^2.5.4", + "@azure/abort-controller": "^2.1.2", + "@azure/core-paging": "^1.2.0", + "@azure/core-client": "^1.7.0", + "@azure/core-auth": "^1.6.0", + "@azure/core-rest-pipeline": "^1.14.0", + "tslib": "^2.2.0" }, - "type": "module", "keywords": [ "node", "azure", - "cloud", "typescript", "browser", "isomorphic" ], - "author": "Microsoft Corporation", "license": "MIT", - "files": [ - "dist", - "README.md", - "LICENSE", - "review/*", - "CHANGELOG.md" - ], - "sdk-type": "mgmt", - "repository": "github:Azure/azure-sdk-for-js", - "bugs": { - "url": "https://github.com/Azure/azure-sdk-for-js/issues" - }, - "prettier": "@azure/eslint-plugin-azure-sdk/prettier.json", - "//metadata": { - "constantPaths": [ - { - "path": "src/rest/azureFleetClient.ts", - "prefix": "userAgentInfo" - } - ] - }, - "dependencies": { - "@azure-rest/core-client": "^2.1.0", - "@azure/core-auth": "^1.6.0", - "@azure/core-rest-pipeline": "^1.5.0", - "@azure/logger": "^1.0.0", - "tslib": "^2.6.2", - "@azure/core-lro": "^3.0.0", - "@azure/abort-controller": "^2.1.2", - "@azure/core-paging": "^1.5.0" - }, + "main": "./dist/index.js", + "module": "./dist-esm/src/index.js", + "types": "./types/arm-computefleet.d.ts", "devDependencies": { - "dotenv": "^16.0.0", - "@microsoft/api-extractor": "^7.40.3", - "@types/node": "^18.0.0", - "eslint": "^8.55.0", - "prettier": "^3.2.5", - "rimraf": "^5.0.5", + "@microsoft/api-extractor": "^7.31.1", "mkdirp": "^3.0.1", "typescript": "~5.5.3", - "tshy": "^1.11.1", - "@azure/core-util": "^1.0.0", - "@azure/identity": "^4.2.1", - "@vitest/browser": "^1.3.1", - "@vitest/coverage-istanbul": "^1.3.1", - "playwright": "^1.41.2", - "vitest": "^1.3.1", - "@azure-tools/test-credential": "^2.0.0", - "@azure-tools/test-recorder": "^4.0.0", + "uglify-js": "^3.4.9", + "rimraf": "^5.0.0", + "dotenv": "^16.0.0", "@azure/dev-tool": "^1.0.0", - "@azure/eslint-plugin-azure-sdk": "^3.0.0" + "@azure/identity": "^4.2.1", + "@azure-tools/test-recorder": "^3.0.0", + "@azure-tools/test-credential": "^1.1.0", + "mocha": "^10.0.0", + "@types/mocha": "^10.0.0", + "tsx": "^4.7.1", + "@types/chai": "^4.2.8", + "chai": "^4.2.0", + "cross-env": "^7.0.2", + "@types/node": "^18.0.0", + "ts-node": "^10.0.0" + }, + "repository": { + "type": "git", + "url": "https://github.com/Azure/azure-sdk-for-js.git" + }, + "bugs": { + "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, + "files": [ + "dist/**/*.js", + "dist/**/*.js.map", + "dist/**/*.d.ts", + "dist/**/*.d.ts.map", + "dist-esm/**/*.js", + "dist-esm/**/*.js.map", + "dist-esm/**/*.d.ts", + "dist-esm/**/*.d.ts.map", + "src/**/*.ts", + "README.md", + "LICENSE", + "tsconfig.json", + "review/*", + "CHANGELOG.md", + "types/*" + ], "scripts": { - "clean": "rimraf --glob dist dist-browser dist-esm test-dist temp types *.tgz *.log", - "extract-api": "rimraf review && mkdirp ./review && dev-tool run extract-api", + "build": "npm run clean && tsc && dev-tool run bundle && npm run minify && mkdirp ./review && npm run extract-api", + "minify": "uglifyjs -c -m --comments --source-map \"content='./dist/index.js.map'\" -o ./dist/index.min.js ./dist/index.js", + "prepack": "npm run build", "pack": "npm pack 2>&1", + "extract-api": "dev-tool run extract-api", "lint": "echo skipped", - "lint:fix": "echo skipped", + "clean": "rimraf --glob dist dist-browser dist-esm test-dist temp types *.tgz *.log", + "build:node": "echo skipped", + "build:browser": "echo skipped", + "build:test": "echo skipped", + "build:samples": "echo skipped.", + "check-format": "echo skipped", + "execute:samples": "echo skipped", + "format": "echo skipped", + "test": "npm run integration-test", + "test:node": "echo skipped", + "test:browser": "echo skipped", "unit-test": "npm run unit-test:node && npm run unit-test:browser", - "unit-test:browser": "npm run build:test && dev-tool run test:vitest --browser", - "unit-test:node": "dev-tool run test:vitest", + "unit-test:node": "cross-env TEST_MODE=playback npm run integration-test:node", + "unit-test:browser": "echo skipped", "integration-test": "npm run integration-test:node && npm run integration-test:browser", - "integration-test:browser": "echo skipped", - "integration-test:node": "echo skipped", - "audit": "node ../../../common/scripts/rush-audit.js && rimraf node_modules package-lock.json && npm i --package-lock-only 2>&1 && npm audit", - "build:samples": "echo skipped", - "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}\"", - "execute:samples": "echo skipped", - "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", - "test:browser": "npm run clean && npm run build:test && npm run unit-test:browser && npm run integration-test:browser", - "minify": "uglifyjs -c -m --comments --source-map \"content='./dist/index.js.map'\" -o ./dist/index.min.js ./dist/index.js", - "build:test": "npm run clean && tshy && dev-tool run build-test", - "build": "npm run clean && tshy && mkdirp ./review && dev-tool run extract-api", - "test:node": "npm run clean && tshy && npm run unit-test:node && npm run integration-test:node", - "test": "npm run clean && tshy && npm run unit-test:node && dev-tool run bundle && npm run unit-test:browser && npm run integration-test" + "integration-test:node": "dev-tool run test:node-ts-input -- --timeout 1200000 'test/*.ts'", + "integration-test:browser": "echo skipped" }, - "exports": { - "./package.json": "./package.json", - ".": { - "browser": { - "source": "./src/index.ts", - "types": "./dist/browser/index.d.ts", - "default": "./dist/browser/index.js" - }, - "react-native": { - "source": "./src/index.ts", - "types": "./dist/react-native/index.d.ts", - "default": "./dist/react-native/index.js" - }, - "import": { - "source": "./src/index.ts", - "types": "./dist/esm/index.d.ts", - "default": "./dist/esm/index.js" - }, - "require": { - "source": "./src/index.ts", - "types": "./dist/commonjs/index.d.ts", - "default": "./dist/commonjs/index.js" - } - }, - "./api": { - "browser": { - "source": "./src/api/index.ts", - "types": "./dist/browser/api/index.d.ts", - "default": "./dist/browser/api/index.js" - }, - "react-native": { - "source": "./src/api/index.ts", - "types": "./dist/react-native/api/index.d.ts", - "default": "./dist/react-native/api/index.js" - }, - "import": { - "source": "./src/api/index.ts", - "types": "./dist/esm/api/index.d.ts", - "default": "./dist/esm/api/index.js" - }, - "require": { - "source": "./src/api/index.ts", - "types": "./dist/commonjs/api/index.d.ts", - "default": "./dist/commonjs/api/index.js" - } - }, - "./models": { - "browser": { - "source": "./src/models/index.ts", - "types": "./dist/browser/models/index.d.ts", - "default": "./dist/browser/models/index.js" - }, - "react-native": { - "source": "./src/models/index.ts", - "types": "./dist/react-native/models/index.d.ts", - "default": "./dist/react-native/models/index.js" - }, - "import": { - "source": "./src/models/index.ts", - "types": "./dist/esm/models/index.d.ts", - "default": "./dist/esm/models/index.js" - }, - "require": { - "source": "./src/models/index.ts", - "types": "./dist/commonjs/models/index.d.ts", - "default": "./dist/commonjs/models/index.js" + "sideEffects": false, + "//metadata": { + "constantPaths": [ + { + "path": "src/microsoftAzureFleetForTesting.ts", + "prefix": "packageDetails" } - } + ] }, - "main": "./dist/commonjs/index.js", - "types": "./dist/commonjs/index.d.ts", - "module": "./dist/esm/index.js" -} + "autoPublish": true, + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/computefleet/arm-computefleet" +} \ No newline at end of file diff --git a/sdk/computefleet/arm-computefleet/review/arm-computefleet-api.api.md b/sdk/computefleet/arm-computefleet/review/arm-computefleet-api.api.md deleted file mode 100644 index 31312edb9456..000000000000 --- a/sdk/computefleet/arm-computefleet/review/arm-computefleet-api.api.md +++ /dev/null @@ -1,58 +0,0 @@ -## 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 { 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 -export interface AzureFleetClientOptionalParams extends ClientOptions { - apiVersion?: string; -} - -// @public (undocumented) -export type AzureFleetContext = Client & { - path: Routes; -}; - -// @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; - -// (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 deleted file mode 100644 index 598d2e57279f..000000000000 --- a/sdk/computefleet/arm-computefleet/review/arm-computefleet-models.api.md +++ /dev/null @@ -1,1026 +0,0 @@ -## 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 { OperationOptions } from '@azure-rest/core-client'; - -// @public -export type ActionType = string; - -// @public -export interface AdditionalUnattendContent { - componentName?: "Microsoft-Windows-Shell-Setup"; - content?: string; - passName?: "OobeSystem"; - settingName?: SettingNames; -} - -// @public -export interface ApiEntityReference { - id?: string; -} - -// @public -export interface ApiError { - code?: string; - details?: ApiErrorBase[]; - innererror?: InnerError; - message?: string; - target?: string; -} - -// @public -export interface ApiErrorBase { - code?: string; - message?: string; - target?: string; -} - -// @public -export interface ApplicationProfile { - galleryApplications?: VMGalleryApplication[]; -} - -// @public -export interface BaseVirtualMachineProfile { - applicationProfile?: ApplicationProfile; - capacityReservation?: CapacityReservationProfile; - diagnosticsProfile?: DiagnosticsProfile; - extensionProfile?: VirtualMachineScaleSetExtensionProfile; - hardwareProfile?: VirtualMachineScaleSetHardwareProfile; - licenseType?: string; - networkProfile?: VirtualMachineScaleSetNetworkProfile; - osProfile?: VirtualMachineScaleSetOSProfile; - scheduledEventsProfile?: ScheduledEventsProfile; - securityPostureReference?: SecurityPostureReference; - securityProfile?: SecurityProfile; - serviceArtifactReference?: ServiceArtifactReference; - storageProfile?: VirtualMachineScaleSetStorageProfile; - readonly timeCreated?: Date; - userData?: string; -} - -// @public -export interface BootDiagnostics { - enabled?: boolean; - storageUri?: string; -} - -// @public -export type CachingTypes = string; - -// @public -export interface CapacityReservationProfile { - capacityReservationGroup?: SubResource; -} - -// @public -export interface ComputeProfile { - baseVirtualMachineProfile: BaseVirtualMachineProfile; - computeApiVersion?: string; - platformFaultDomainCount?: number; -} - -// @public -export type ContinuablePage = TPage & { - continuationToken?: string; -}; - -// @public -export type CreatedByType = string; - -// @public -export type DeleteOptions = string; - -// @public -export interface DiagnosticsProfile { - bootDiagnostics?: BootDiagnostics; -} - -// @public -export type DiffDiskOptions = string; - -// @public -export type DiffDiskPlacement = string; - -// @public -export interface DiffDiskSettings { - option?: DiffDiskOptions; - placement?: DiffDiskPlacement; -} - -// @public -export type DiskControllerTypes = string; - -// @public -export type DiskCreateOptionTypes = string; - -// @public -export type DiskDeleteOptionTypes = string; - -// @public -export interface DiskEncryptionSetParameters { - id?: string; -} - -// @public -export type DomainNameLabelScopeTypes = string; - -// @public -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; - -// @public -export interface Fleet extends TrackedResource { - identity?: ManagedServiceIdentity; - plan?: Plan; - properties?: FleetProperties; - zones?: string[]; -} - -// @public -export interface FleetProperties { - computeProfile: ComputeProfile; - readonly provisioningState?: ProvisioningState; - regularPriorityProfile?: RegularPriorityProfile; - spotPriorityProfile?: SpotPriorityProfile; - readonly timeCreated?: Date; - readonly uniqueId?: string; - vmSizesProfile: VmSizeProfile[]; -} - -// @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 interface FleetUpdate { - identity?: ManagedServiceIdentityUpdate; - plan?: ResourcePlanUpdate; - properties?: FleetProperties; - tags?: Record; -} - -// @public -export interface ImageReference { - communityGalleryImageId?: string; - readonly exactVersion?: string; - id?: string; - offer?: string; - publisher?: string; - sharedGalleryImageId?: string; - sku?: string; - version?: string; -} - -// @public -export interface InnerError { - errorDetail?: string; - exceptionType?: string; -} - -// @public -export type IPVersion = string; - -// @public -export interface KeyVaultSecretReference { - secretUrl: string; - sourceVault: SubResource; -} - -// @public -export enum KnownActionType { - Internal = "Internal" -} - -// @public -export enum KnownCachingTypes { - None = "None", - ReadOnly = "ReadOnly", - ReadWrite = "ReadWrite" -} - -// @public -export enum KnownCreatedByType { - Application = "Application", - Key = "Key", - ManagedIdentity = "ManagedIdentity", - User = "User" -} - -// @public -export enum KnownDeleteOptions { - Delete = "Delete", - Detach = "Detach" -} - -// @public -export enum KnownDiffDiskOptions { - Local = "Local" -} - -// @public -export enum KnownDiffDiskPlacement { - CacheDisk = "CacheDisk", - NvmeDisk = "NvmeDisk", - ResourceDisk = "ResourceDisk" -} - -// @public -export enum KnownDiskControllerTypes { - NVMe = "NVMe", - SCSI = "SCSI" -} - -// @public -export enum KnownDiskCreateOptionTypes { - Attach = "Attach", - Copy = "Copy", - Empty = "Empty", - FromImage = "FromImage", - Restore = "Restore" -} - -// @public -export enum KnownDiskDeleteOptionTypes { - Delete = "Delete", - Detach = "Detach" -} - -// @public -export enum KnownDomainNameLabelScopeTypes { - NoReuse = "NoReuse", - ResourceGroupReuse = "ResourceGroupReuse", - SubscriptionReuse = "SubscriptionReuse", - TenantReuse = "TenantReuse" -} - -// @public -export enum KnownEvictionPolicy { - Deallocate = "Deallocate", - Delete = "Delete" -} - -// @public -export enum KnownIPVersion { - IPv4 = "IPv4", - IPv6 = "IPv6" -} - -// @public -export enum KnownLinuxPatchAssessmentMode { - AutomaticByPlatform = "AutomaticByPlatform", - ImageDefault = "ImageDefault" -} - -// @public -export enum KnownLinuxVMGuestPatchAutomaticByPlatformRebootSetting { - Always = "Always", - IfRequired = "IfRequired", - Never = "Never", - Unknown = "Unknown" -} - -// @public -export enum KnownLinuxVMGuestPatchMode { - AutomaticByPlatform = "AutomaticByPlatform", - ImageDefault = "ImageDefault" -} - -// @public -export enum KnownManagedServiceIdentityType { - "SystemAssigned,UserAssigned" = "SystemAssigned,UserAssigned", - None = "None", - SystemAssigned = "SystemAssigned", - UserAssigned = "UserAssigned" -} - -// @public -export enum KnownMode { - Audit = "Audit", - Enforce = "Enforce" -} - -// @public -export enum KnownNetworkApiVersion { - "2020-11-01" = "2020-11-01" -} - -// @public -export enum KnownNetworkInterfaceAuxiliaryMode { - AcceleratedConnections = "AcceleratedConnections", - Floating = "Floating", - None = "None" -} - -// @public -export enum KnownNetworkInterfaceAuxiliarySku { - A1 = "A1", - A2 = "A2", - A4 = "A4", - A8 = "A8", - None = "None" -} - -// @public -export enum KnownOperatingSystemTypes { - Linux = "Linux", - Windows = "Windows" -} - -// @public -export enum KnownOrigin { - "user,system" = "user,system", - system = "system", - user = "user" -} - -// @public -export enum KnownProtocolTypes { - Http = "Http", - Https = "Https" -} - -// @public -export enum KnownPublicIPAddressSkuName { - Basic = "Basic", - Standard = "Standard" -} - -// @public -export enum KnownPublicIPAddressSkuTier { - Global = "Global", - Regional = "Regional" -} - -// @public -export enum KnownRegularPriorityAllocationStrategy { - LowestPrice = "LowestPrice", - Prioritized = "Prioritized" -} - -// @public -export enum KnownResourceProvisioningState { - Canceled = "Canceled", - Failed = "Failed", - Succeeded = "Succeeded" -} - -// @public -export enum KnownSecurityEncryptionTypes { - DiskWithVMGuestState = "DiskWithVMGuestState", - NonPersistedTPM = "NonPersistedTPM", - VMGuestStateOnly = "VMGuestStateOnly" -} - -// @public -export enum KnownSecurityTypes { - ConfidentialVM = "ConfidentialVM", - TrustedLaunch = "TrustedLaunch" -} - -// @public -export enum KnownSettingNames { - AutoLogon = "AutoLogon", - FirstLogonCommands = "FirstLogonCommands" -} - -// @public -export enum KnownSpotAllocationStrategy { - CapacityOptimized = "CapacityOptimized", - LowestPrice = "LowestPrice", - PriceCapacityOptimized = "PriceCapacityOptimized" -} - -// @public -export enum KnownStorageAccountTypes { - Premium_LRS = "Premium_LRS", - Premium_ZRS = "Premium_ZRS", - PremiumV2_LRS = "PremiumV2_LRS", - Standard_LRS = "Standard_LRS", - StandardSSD_LRS = "StandardSSD_LRS", - StandardSSD_ZRS = "StandardSSD_ZRS", - UltraSSD_LRS = "UltraSSD_LRS" -} - -// @public -export enum KnownWindowsPatchAssessmentMode { - AutomaticByPlatform = "AutomaticByPlatform", - ImageDefault = "ImageDefault" -} - -// @public -export enum KnownWindowsVMGuestPatchAutomaticByPlatformRebootSetting { - Always = "Always", - IfRequired = "IfRequired", - Never = "Never", - Unknown = "Unknown" -} - -// @public -export enum KnownWindowsVMGuestPatchMode { - AutomaticByOS = "AutomaticByOS", - AutomaticByPlatform = "AutomaticByPlatform", - Manual = "Manual" -} - -// @public -export interface LinuxConfiguration { - disablePasswordAuthentication?: boolean; - enableVMAgentPlatformUpdates?: boolean; - patchSettings?: LinuxPatchSettings; - provisionVMAgent?: boolean; - ssh?: SshConfiguration; -} - -// @public -export type LinuxPatchAssessmentMode = string; - -// @public -export interface LinuxPatchSettings { - assessmentMode?: LinuxPatchAssessmentMode; - automaticByPlatformSettings?: LinuxVMGuestPatchAutomaticByPlatformSettings; - patchMode?: LinuxVMGuestPatchMode; -} - -// @public -export type LinuxVMGuestPatchAutomaticByPlatformRebootSetting = string; - -// @public -export interface LinuxVMGuestPatchAutomaticByPlatformSettings { - bypassPlatformSafetyChecksOnUserSchedule?: boolean; - rebootSetting?: LinuxVMGuestPatchAutomaticByPlatformRebootSetting; -} - -// @public -export type LinuxVMGuestPatchMode = string; - -// @public -export interface ManagedServiceIdentity { - readonly principalId?: string; - readonly tenantId?: string; - type: ManagedServiceIdentityType; - userAssignedIdentities?: Record; -} - -// @public -export type ManagedServiceIdentityType = string; - -// @public -export interface ManagedServiceIdentityUpdate { - type?: ManagedServiceIdentityType; - userAssignedIdentities?: Record; -} - -// @public -export type Mode = string; - -// @public -export type NetworkApiVersion = string; - -// @public -export type NetworkInterfaceAuxiliaryMode = string; - -// @public -export type NetworkInterfaceAuxiliarySku = string; - -// @public -export type OperatingSystemTypes = string; - -// @public -export interface Operation { - actionType?: ActionType; - readonly display?: OperationDisplay; - readonly isDataAction?: boolean; - readonly name?: string; - readonly origin?: Origin; -} - -// @public -export interface OperationDisplay { - readonly description?: string; - readonly operation?: string; - readonly provider?: string; - readonly resource?: string; -} - -// @public -export interface OperationsListOptionalParams extends OperationOptions { -} - -// @public -export type Origin = string; - -// @public -export interface OSImageNotificationProfile { - enable?: boolean; - notBeforeTimeout?: string; -} - -// @public -export interface PagedAsyncIterableIterator { - [Symbol.asyncIterator](): PagedAsyncIterableIterator; - byPage: (settings?: TPageSettings) => AsyncIterableIterator>; - next(): Promise>; -} - -// @public -export interface PageSettings { - continuationToken?: string; -} - -// @public -export interface PatchSettings { - assessmentMode?: WindowsPatchAssessmentMode; - automaticByPlatformSettings?: WindowsVMGuestPatchAutomaticByPlatformSettings; - enableHotpatching?: boolean; - patchMode?: WindowsVMGuestPatchMode; -} - -// @public -export interface Plan { - name: string; - product: string; - promotionCode?: string; - publisher: string; - version?: string; -} - -// @public -export type ProtocolTypes = string; - -// @public -export type ProvisioningState = string | ResourceProvisioningState | "Creating" | "Updating" | "Deleting" | "Migrating"; - -// @public -export interface ProxyAgentSettings { - enabled?: boolean; - keyIncarnationId?: number; - mode?: Mode; -} - -// @public -export interface PublicIPAddressSku { - name?: PublicIPAddressSkuName; - tier?: PublicIPAddressSkuTier; -} - -// @public -export type PublicIPAddressSkuName = string; - -// @public -export type PublicIPAddressSkuTier = string; - -// @public -export type RegularPriorityAllocationStrategy = string; - -// @public -export interface RegularPriorityProfile { - allocationStrategy?: RegularPriorityAllocationStrategy; - capacity?: number; - minCapacity?: number; -} - -// @public -export interface Resource { - readonly id?: string; - readonly name?: string; - readonly systemData?: SystemData; - readonly type?: string; -} - -// @public -export interface ResourcePlanUpdate { - name?: string; - product?: string; - promotionCode?: string; - publisher?: string; - version?: string; -} - -// @public -export type ResourceProvisioningState = string; - -// @public -export interface ScheduledEventsProfile { - osImageNotificationProfile?: OSImageNotificationProfile; - terminateNotificationProfile?: TerminateNotificationProfile; -} - -// @public -export type SecurityEncryptionTypes = string; - -// @public -export interface SecurityPostureReference { - excludeExtensions?: string[]; - id?: string; - isOverridable?: boolean; -} - -// @public -export interface SecurityProfile { - encryptionAtHost?: boolean; - encryptionIdentity?: EncryptionIdentity; - proxyAgentSettings?: ProxyAgentSettings; - securityType?: SecurityTypes; - uefiSettings?: UefiSettings; -} - -// @public -export type SecurityTypes = string; - -// @public -export interface ServiceArtifactReference { - id?: string; -} - -// @public -export type SettingNames = string; - -// @public -export type SpotAllocationStrategy = string; - -// @public -export interface SpotPriorityProfile { - allocationStrategy?: SpotAllocationStrategy; - capacity?: number; - evictionPolicy?: EvictionPolicy; - maintain?: boolean; - maxPricePerVM?: number; - minCapacity?: number; -} - -// @public -export interface SshConfiguration { - publicKeys?: SshPublicKey[]; -} - -// @public -export interface SshPublicKey { - keyData?: string; - path?: string; -} - -// @public -export type StorageAccountTypes = string; - -// @public -export interface SubResource { - id?: string; -} - -// @public -export interface SystemData { - createdAt?: Date; - createdBy?: string; - createdByType?: CreatedByType; - lastModifiedAt?: Date; - lastModifiedBy?: string; - lastModifiedByType?: CreatedByType; -} - -// @public -export interface TerminateNotificationProfile { - enable?: boolean; - notBeforeTimeout?: string; -} - -// @public -export interface TrackedResource extends Resource { - location: string; - tags?: Record; -} - -// @public -export interface UefiSettings { - secureBootEnabled?: boolean; - vTpmEnabled?: boolean; -} - -// @public -export interface UserAssignedIdentity { - readonly clientId?: string; - readonly principalId?: string; -} - -// @public -export interface VaultCertificate { - certificateStore?: string; - certificateUrl?: string; -} - -// @public -export interface VaultSecretGroup { - sourceVault?: SubResource; - vaultCertificates?: VaultCertificate[]; -} - -// @public -export type Versions = "2023-11-01-preview" | "2024-05-01-preview"; - -// @public -export interface VirtualHardDisk { - uri?: string; -} - -// @public -export interface VirtualMachineScaleSet { - readonly error?: ApiError; - readonly id: string; - readonly operationStatus: ProvisioningState; - readonly type?: string; -} - -// @public -export interface VirtualMachineScaleSetDataDisk { - caching?: CachingTypes; - createOption: DiskCreateOptionTypes; - deleteOption?: DiskDeleteOptionTypes; - diskIOPSReadWrite?: number; - diskMBpsReadWrite?: number; - diskSizeGB?: number; - lun: number; - managedDisk?: VirtualMachineScaleSetManagedDiskParameters; - name?: string; - writeAcceleratorEnabled?: boolean; -} - -// @public -export interface VirtualMachineScaleSetExtension { - readonly id?: string; - name?: string; - properties?: VirtualMachineScaleSetExtensionProperties; - readonly type?: string; -} - -// @public -export interface VirtualMachineScaleSetExtensionProfile { - extensions?: VirtualMachineScaleSetExtension[]; - extensionsTimeBudget?: string; -} - -// @public -export interface VirtualMachineScaleSetExtensionProperties { - autoUpgradeMinorVersion?: boolean; - enableAutomaticUpgrade?: boolean; - forceUpdateTag?: string; - protectedSettings?: Record; - protectedSettingsFromKeyVault?: KeyVaultSecretReference; - provisionAfterExtensions?: string[]; - readonly provisioningState?: string; - publisher?: string; - settings?: Record; - suppressFailures?: boolean; - type?: string; - typeHandlerVersion?: string; -} - -// @public -export interface VirtualMachineScaleSetHardwareProfile { - vmSizeProperties?: VMSizeProperties; -} - -// @public -export interface VirtualMachineScaleSetIPConfiguration { - name: string; - properties?: VirtualMachineScaleSetIPConfigurationProperties; -} - -// @public -export interface VirtualMachineScaleSetIPConfigurationProperties { - applicationGatewayBackendAddressPools?: SubResource[]; - applicationSecurityGroups?: SubResource[]; - loadBalancerBackendAddressPools?: SubResource[]; - loadBalancerInboundNatPools?: SubResource[]; - primary?: boolean; - privateIPAddressVersion?: IPVersion; - publicIPAddressConfiguration?: VirtualMachineScaleSetPublicIPAddressConfiguration; - subnet?: ApiEntityReference; -} - -// @public -export interface VirtualMachineScaleSetIpTag { - ipTagType?: string; - tag?: string; -} - -// @public -export interface VirtualMachineScaleSetManagedDiskParameters { - diskEncryptionSet?: DiskEncryptionSetParameters; - securityProfile?: VMDiskSecurityProfile; - storageAccountType?: StorageAccountTypes; -} - -// @public -export interface VirtualMachineScaleSetNetworkConfiguration { - name: string; - properties?: VirtualMachineScaleSetNetworkConfigurationProperties; -} - -// @public -export interface VirtualMachineScaleSetNetworkConfigurationDnsSettings { - dnsServers?: string[]; -} - -// @public -export interface VirtualMachineScaleSetNetworkConfigurationProperties { - auxiliaryMode?: NetworkInterfaceAuxiliaryMode; - auxiliarySku?: NetworkInterfaceAuxiliarySku; - deleteOption?: DeleteOptions; - disableTcpStateTracking?: boolean; - dnsSettings?: VirtualMachineScaleSetNetworkConfigurationDnsSettings; - enableAcceleratedNetworking?: boolean; - enableFpga?: boolean; - enableIPForwarding?: boolean; - ipConfigurations: VirtualMachineScaleSetIPConfiguration[]; - networkSecurityGroup?: SubResource; - primary?: boolean; -} - -// @public -export interface VirtualMachineScaleSetNetworkProfile { - healthProbe?: ApiEntityReference; - networkApiVersion?: NetworkApiVersion; - networkInterfaceConfigurations?: VirtualMachineScaleSetNetworkConfiguration[]; -} - -// @public -export interface VirtualMachineScaleSetOSDisk { - caching?: CachingTypes; - createOption: DiskCreateOptionTypes; - deleteOption?: DiskDeleteOptionTypes; - diffDiskSettings?: DiffDiskSettings; - diskSizeGB?: number; - image?: VirtualHardDisk; - managedDisk?: VirtualMachineScaleSetManagedDiskParameters; - name?: string; - osType?: OperatingSystemTypes; - vhdContainers?: string[]; - writeAcceleratorEnabled?: boolean; -} - -// @public -export interface VirtualMachineScaleSetOSProfile { - adminPassword?: string; - adminUsername?: string; - allowExtensionOperations?: boolean; - computerNamePrefix?: string; - customData?: string; - linuxConfiguration?: LinuxConfiguration; - requireGuestProvisionSignal?: boolean; - secrets?: VaultSecretGroup[]; - windowsConfiguration?: WindowsConfiguration; -} - -// @public -export interface VirtualMachineScaleSetPublicIPAddressConfiguration { - name: string; - properties?: VirtualMachineScaleSetPublicIPAddressConfigurationProperties; - sku?: PublicIPAddressSku; -} - -// @public -export interface VirtualMachineScaleSetPublicIPAddressConfigurationDnsSettings { - domainNameLabel: string; - domainNameLabelScope?: DomainNameLabelScopeTypes; -} - -// @public -export interface VirtualMachineScaleSetPublicIPAddressConfigurationProperties { - deleteOption?: DeleteOptions; - dnsSettings?: VirtualMachineScaleSetPublicIPAddressConfigurationDnsSettings; - idleTimeoutInMinutes?: number; - ipTags?: VirtualMachineScaleSetIpTag[]; - publicIPAddressVersion?: IPVersion; - publicIPPrefix?: SubResource; -} - -// @public -export interface VirtualMachineScaleSetStorageProfile { - dataDisks?: VirtualMachineScaleSetDataDisk[]; - diskControllerType?: DiskControllerTypes; - imageReference?: ImageReference; - osDisk?: VirtualMachineScaleSetOSDisk; -} - -// @public -export interface VMDiskSecurityProfile { - diskEncryptionSet?: DiskEncryptionSetParameters; - securityEncryptionType?: SecurityEncryptionTypes; -} - -// @public -export interface VMGalleryApplication { - configurationReference?: string; - enableAutomaticUpgrade?: boolean; - order?: number; - packageReferenceId: string; - tags?: string; - treatFailureAsDeploymentFailure?: boolean; -} - -// @public -export interface VmSizeProfile { - name: string; - rank?: number; -} - -// @public -export interface VMSizeProperties { - vCPUsAvailable?: number; - vCPUsPerCore?: number; -} - -// @public -export interface WindowsConfiguration { - additionalUnattendContent?: AdditionalUnattendContent[]; - enableAutomaticUpdates?: boolean; - enableVMAgentPlatformUpdates?: boolean; - patchSettings?: PatchSettings; - provisionVMAgent?: boolean; - timeZone?: string; - winRM?: WinRMConfiguration; -} - -// @public -export type WindowsPatchAssessmentMode = string; - -// @public -export type WindowsVMGuestPatchAutomaticByPlatformRebootSetting = string; - -// @public -export interface WindowsVMGuestPatchAutomaticByPlatformSettings { - bypassPlatformSafetyChecksOnUserSchedule?: boolean; - rebootSetting?: WindowsVMGuestPatchAutomaticByPlatformRebootSetting; -} - -// @public -export type WindowsVMGuestPatchMode = string; - -// @public -export interface WinRMConfiguration { - listeners?: WinRMListener[]; -} - -// @public -export interface WinRMListener { - certificateUrl?: string; - protocol?: ProtocolTypes; -} - -// (No @packageDocumentation comment for this package) - -``` diff --git a/sdk/computefleet/arm-computefleet/review/arm-computefleet.api.md b/sdk/computefleet/arm-computefleet/review/arm-computefleet.api.md index b0d56ddc2422..ec5bf410bae7 100644 --- a/sdk/computefleet/arm-computefleet/review/arm-computefleet.api.md +++ b/sdk/computefleet/arm-computefleet/review/arm-computefleet.api.md @@ -4,14 +4,11 @@ ```ts -import { AbortSignalLike } from '@azure/abort-controller'; -import { ClientOptions } from '@azure-rest/core-client'; -import { OperationOptions } from '@azure-rest/core-client'; +import * as coreAuth from '@azure/core-auth'; +import * as coreClient from '@azure/core-client'; import { OperationState } from '@azure/core-lro'; -import { PathUncheckedResponse } from '@azure-rest/core-client'; -import { Pipeline } from '@azure/core-rest-pipeline'; -import { PollerLike } from '@azure/core-lro'; -import { TokenCredential } from '@azure/core-auth'; +import { PagedAsyncIterableIterator } from '@azure/core-paging'; +import { SimplePollerLike } from '@azure/core-lro'; // @public export type ActionType = string; @@ -50,17 +47,10 @@ export interface ApplicationProfile { galleryApplications?: VMGalleryApplication[]; } -// @public (undocumented) -export class AzureFleetClient { - constructor(credential: TokenCredential, subscriptionId: string, options?: AzureFleetClientOptionalParams); - readonly fleets: FleetsOperations; - readonly operations: OperationsOperations; - readonly pipeline: Pipeline; -} - // @public -export interface AzureFleetClientOptionalParams extends ClientOptions { - apiVersion?: string; +export interface BasePriorityProfile { + capacity?: number; + minCapacity?: number; } // @public @@ -96,6 +86,10 @@ export interface CapacityReservationProfile { capacityReservationGroup?: SubResource; } +// @public (undocumented) +export interface ComponentsQjfoe3SchemasManagedserviceidentityupdatePropertiesUserassignedidentitiesAdditionalproperties extends UserAssignedIdentity { +} + // @public export interface ComputeProfile { baseVirtualMachineProfile: BaseVirtualMachineProfile; @@ -103,11 +97,6 @@ export interface ComputeProfile { platformFaultDomainCount?: number; } -// @public -export type ContinuablePage = TPage & { - continuationToken?: string; -}; - // @public export type CreatedByType = string; @@ -155,7 +144,7 @@ export interface EncryptionIdentity { // @public export interface ErrorAdditionalInfo { - readonly info?: Record; + readonly info?: Record; readonly type?: string; } @@ -178,12 +167,24 @@ export type EvictionPolicy = string; // @public export interface Fleet extends TrackedResource { + computeProfile?: ComputeProfile; identity?: ManagedServiceIdentity; plan?: Plan; - properties?: FleetProperties; + readonly provisioningState?: ProvisioningState; + regularPriorityProfile?: RegularPriorityProfile; + spotPriorityProfile?: SpotPriorityProfile; + readonly timeCreated?: Date; + readonly uniqueId?: string; + vmSizesProfile?: VmSizeProfile[]; zones?: string[]; } +// @public +export interface FleetListResult { + nextLink?: string; + value: Fleet[]; +} + // @public export interface FleetProperties { computeProfile: ComputeProfile; @@ -196,55 +197,125 @@ export interface FleetProperties { } // @public -export interface FleetsCreateOrUpdateOptionalParams extends OperationOptions { +export interface Fleets { + beginCreateOrUpdate(resourceGroupName: string, fleetName: string, resource: Fleet, options?: FleetsCreateOrUpdateOptionalParams): Promise, FleetsCreateOrUpdateResponse>>; + beginCreateOrUpdateAndWait(resourceGroupName: string, fleetName: string, resource: Fleet, options?: FleetsCreateOrUpdateOptionalParams): Promise; + beginDelete(resourceGroupName: string, fleetName: string, options?: FleetsDeleteOptionalParams): Promise, FleetsDeleteResponse>>; + beginDeleteAndWait(resourceGroupName: string, fleetName: string, options?: FleetsDeleteOptionalParams): Promise; + beginUpdate(resourceGroupName: string, fleetName: string, properties: FleetUpdate, options?: FleetsUpdateOptionalParams): Promise, FleetsUpdateResponse>>; + beginUpdateAndWait(resourceGroupName: string, fleetName: string, properties: FleetUpdate, options?: FleetsUpdateOptionalParams): Promise; + get(resourceGroupName: string, fleetName: string, options?: FleetsGetOptionalParams): Promise; + listByResourceGroup(resourceGroupName: string, options?: FleetsListByResourceGroupOptionalParams): PagedAsyncIterableIterator; + listBySubscription(options?: FleetsListBySubscriptionOptionalParams): PagedAsyncIterableIterator; + listVirtualMachineScaleSets(resourceGroupName: string, name: string, options?: FleetsListVirtualMachineScaleSetsOptionalParams): PagedAsyncIterableIterator; +} + +// @public +export interface FleetsCreateOrUpdateHeaders { + retryAfter?: number; +} + +// @public +export interface FleetsCreateOrUpdateOptionalParams extends coreClient.OperationOptions { + resumeFrom?: string; updateIntervalInMs?: number; } // @public -export interface FleetsDeleteOptionalParams extends OperationOptions { +export type FleetsCreateOrUpdateResponse = Fleet; + +// @public +export interface FleetsDeleteHeaders { + location?: string; + retryAfter?: number; +} + +// @public +export interface FleetsDeleteOptionalParams extends coreClient.OperationOptions { + resumeFrom?: string; updateIntervalInMs?: number; } // @public -export interface FleetsGetOptionalParams extends OperationOptions { +export type FleetsDeleteResponse = FleetsDeleteHeaders; + +// @public +export interface FleetsGetOptionalParams extends coreClient.OperationOptions { } // @public -export interface FleetsListByResourceGroupOptionalParams extends OperationOptions { +export type FleetsGetResponse = Fleet; + +// @public +export interface FleetsListByResourceGroupNextOptionalParams extends coreClient.OperationOptions { } // @public -export interface FleetsListBySubscriptionOptionalParams extends OperationOptions { +export type FleetsListByResourceGroupNextResponse = FleetListResult; + +// @public +export interface FleetsListByResourceGroupOptionalParams extends coreClient.OperationOptions { } // @public -export interface FleetsListVirtualMachineScaleSetsOptionalParams extends OperationOptions { +export type FleetsListByResourceGroupResponse = FleetListResult; + +// @public +export interface FleetsListBySubscriptionNextOptionalParams extends coreClient.OperationOptions { } // @public -export interface FleetsOperations { - createOrUpdate: (resourceGroupName: string, fleetName: string, resource: Fleet, options?: FleetsCreateOrUpdateOptionalParams) => PollerLike, Fleet>; - delete: (resourceGroupName: string, fleetName: string, options?: FleetsDeleteOptionalParams) => PollerLike, void>; - get: (resourceGroupName: string, fleetName: string, options?: FleetsGetOptionalParams) => Promise; - listByResourceGroup: (resourceGroupName: string, options?: FleetsListByResourceGroupOptionalParams) => PagedAsyncIterableIterator; - listBySubscription: (options?: FleetsListBySubscriptionOptionalParams) => PagedAsyncIterableIterator; - listVirtualMachineScaleSets: (resourceGroupName: string, name: string, options?: FleetsListVirtualMachineScaleSetsOptionalParams) => PagedAsyncIterableIterator; - update: (resourceGroupName: string, fleetName: string, properties: FleetUpdate, options?: FleetsUpdateOptionalParams) => PollerLike, Fleet>; +export type FleetsListBySubscriptionNextResponse = FleetListResult; + +// @public +export interface FleetsListBySubscriptionOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type FleetsListBySubscriptionResponse = FleetListResult; + +// @public +export interface FleetsListVirtualMachineScaleSetsNextOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type FleetsListVirtualMachineScaleSetsNextResponse = VirtualMachineScaleSetListResult; + +// @public +export interface FleetsListVirtualMachineScaleSetsOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type FleetsListVirtualMachineScaleSetsResponse = VirtualMachineScaleSetListResult; + +// @public +export interface FleetsUpdateHeaders { + location?: string; + retryAfter?: number; } // @public -export interface FleetsUpdateOptionalParams extends OperationOptions { +export interface FleetsUpdateOptionalParams extends coreClient.OperationOptions { + resumeFrom?: string; updateIntervalInMs?: number; } +// @public +export type FleetsUpdateResponse = Fleet; + // @public export interface FleetUpdate { identity?: ManagedServiceIdentityUpdate; plan?: ResourcePlanUpdate; properties?: FleetProperties; - tags?: Record; + tags?: { + [propertyName: string]: string; + }; } +// @public +export function getContinuationToken(page: unknown): string | undefined; + // @public export interface ImageReference { communityGalleryImageId?: string; @@ -313,7 +384,7 @@ export enum KnownDiffDiskPlacement { // @public export enum KnownDiskControllerTypes { NVMe = "NVMe", - SCSI = "SCSI" + Scsi = "SCSI" } // @public @@ -373,9 +444,9 @@ export enum KnownLinuxVMGuestPatchMode { // @public export enum KnownManagedServiceIdentityType { - "SystemAssigned,UserAssigned" = "SystemAssigned,UserAssigned", None = "None", SystemAssigned = "SystemAssigned", + SystemAssignedUserAssigned = "SystemAssigned,UserAssigned", UserAssigned = "UserAssigned" } @@ -387,7 +458,7 @@ export enum KnownMode { // @public export enum KnownNetworkApiVersion { - "2020-11-01" = "2020-11-01" + TwoThousandTwenty1101 = "2020-11-01" } // @public @@ -414,9 +485,9 @@ export enum KnownOperatingSystemTypes { // @public export enum KnownOrigin { - "user,system" = "user,system", - system = "system", - user = "user" + System = "system", + User = "user", + UserSystem = "user,system" } // @public @@ -425,6 +496,17 @@ export enum KnownProtocolTypes { Https = "Https" } +// @public +export enum KnownProvisioningState { + Canceled = "Canceled", + Creating = "Creating", + Deleting = "Deleting", + Failed = "Failed", + Migrating = "Migrating", + Succeeded = "Succeeded", + Updating = "Updating" +} + // @public export enum KnownPublicIPAddressSkuName { Basic = "Basic", @@ -443,13 +525,6 @@ export enum KnownRegularPriorityAllocationStrategy { Prioritized = "Prioritized" } -// @public -export enum KnownResourceProvisioningState { - Canceled = "Canceled", - Failed = "Failed", - Succeeded = "Succeeded" -} - // @public export enum KnownSecurityEncryptionTypes { DiskWithVMGuestState = "DiskWithVMGuestState", @@ -476,15 +551,22 @@ export enum KnownSpotAllocationStrategy { PriceCapacityOptimized = "PriceCapacityOptimized" } +// @public +export enum KnownStatusLevelTypes { + Error = "Error", + Info = "Info", + Warning = "Warning" +} + // @public export enum KnownStorageAccountTypes { - Premium_LRS = "Premium_LRS", - Premium_ZRS = "Premium_ZRS", - PremiumV2_LRS = "PremiumV2_LRS", - Standard_LRS = "Standard_LRS", - StandardSSD_LRS = "StandardSSD_LRS", - StandardSSD_ZRS = "StandardSSD_ZRS", - UltraSSD_LRS = "UltraSSD_LRS" + PremiumLRS = "Premium_LRS", + PremiumV2LRS = "PremiumV2_LRS", + PremiumZRS = "Premium_ZRS", + StandardLRS = "Standard_LRS", + StandardSSDLRS = "StandardSSD_LRS", + StandardSSDZRS = "StandardSSD_ZRS", + UltraSSDLRS = "UltraSSD_LRS" } // @public @@ -544,7 +626,9 @@ export interface ManagedServiceIdentity { readonly principalId?: string; readonly tenantId?: string; type: ManagedServiceIdentityType; - userAssignedIdentities?: Record; + userAssignedIdentities?: { + [propertyName: string]: UserAssignedIdentity | null; + }; } // @public @@ -553,7 +637,31 @@ export type ManagedServiceIdentityType = string; // @public export interface ManagedServiceIdentityUpdate { type?: ManagedServiceIdentityType; - userAssignedIdentities?: Record; + userAssignedIdentities?: { + [propertyName: string]: ComponentsQjfoe3SchemasManagedserviceidentityupdatePropertiesUserassignedidentitiesAdditionalproperties | null; + }; +} + +// @public (undocumented) +export class MicrosoftAzureFleetForTesting extends coreClient.ServiceClient { + // (undocumented) + $host: string; + constructor(credentials: coreAuth.TokenCredential, subscriptionId: string, options?: MicrosoftAzureFleetForTestingOptionalParams); + // (undocumented) + apiVersion: string; + // (undocumented) + fleets: Fleets; + // (undocumented) + operations: Operations; + // (undocumented) + subscriptionId: string; +} + +// @public +export interface MicrosoftAzureFleetForTestingOptionalParams extends coreClient.ServiceClientOptions { + $host?: string; + apiVersion?: string; + endpoint?: string; } // @public @@ -573,8 +681,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; @@ -589,33 +697,37 @@ export interface OperationDisplay { } // @public -export interface OperationsListOptionalParams extends OperationOptions { +export interface OperationListResult { + readonly nextLink?: string; + readonly value?: Operation[]; } // @public -export interface OperationsOperations { - list: (options?: OperationsListOptionalParams) => PagedAsyncIterableIterator; +export interface Operations { + list(options?: OperationsListOptionalParams): PagedAsyncIterableIterator; } // @public -export type Origin = string; +export interface OperationsListNextOptionalParams extends coreClient.OperationOptions { +} // @public -export interface OSImageNotificationProfile { - enable?: boolean; - notBeforeTimeout?: string; -} +export type OperationsListNextResponse = OperationListResult; // @public -export interface PagedAsyncIterableIterator { - [Symbol.asyncIterator](): PagedAsyncIterableIterator; - byPage: (settings?: TPageSettings) => AsyncIterableIterator>; - next(): Promise>; +export interface OperationsListOptionalParams extends coreClient.OperationOptions { } // @public -export interface PageSettings { - continuationToken?: string; +export type OperationsListResponse = OperationListResult; + +// @public +export type Origin = string; + +// @public +export interface OSImageNotificationProfile { + enable?: boolean; + notBeforeTimeout?: string; } // @public @@ -639,7 +751,7 @@ export interface Plan { export type ProtocolTypes = string; // @public -export type ProvisioningState = string | ResourceProvisioningState | "Creating" | "Updating" | "Deleting" | "Migrating"; +export type ProvisioningState = string; // @public export interface ProxyAgentSettings { @@ -687,19 +799,6 @@ export interface ResourcePlanUpdate { version?: string; } -// @public -export type ResourceProvisioningState = string; - -// @public -export function restorePoller(client: AzureFleetClient, serializedState: string, sourceOperation: (...args: any[]) => PollerLike, TResult>, options?: RestorePollerOptions): PollerLike, TResult>; - -// @public (undocumented) -export interface RestorePollerOptions extends OperationOptions { - abortSignal?: AbortSignalLike; - processResponseBody?: (result: TResponse) => Promise; - updateIntervalInMs?: number; -} - // @public export interface ScheduledEventsProfile { osImageNotificationProfile?: OSImageNotificationProfile; @@ -760,6 +859,9 @@ export interface SshPublicKey { path?: string; } +// @public +export type StatusLevelTypes = string; + // @public export type StorageAccountTypes = string; @@ -768,6 +870,11 @@ export interface SubResource { id?: string; } +// @public +export interface SubResourceReadOnly { + readonly id?: string; +} + // @public export interface SystemData { createdAt?: Date; @@ -787,7 +894,9 @@ export interface TerminateNotificationProfile { // @public export interface TrackedResource extends Resource { location: string; - tags?: Record; + tags?: { + [propertyName: string]: string; + }; } // @public @@ -814,9 +923,6 @@ export interface VaultSecretGroup { vaultCertificates?: VaultCertificate[]; } -// @public -export type Versions = "2023-11-01-preview" | "2024-05-01-preview"; - // @public export interface VirtualHardDisk { uri?: string; @@ -826,6 +932,7 @@ export interface VirtualHardDisk { export interface VirtualMachineScaleSet { readonly error?: ApiError; readonly id: string; + readonly name: string; readonly operationStatus: ProvisioningState; readonly type?: string; } @@ -835,7 +942,7 @@ export interface VirtualMachineScaleSetDataDisk { caching?: CachingTypes; createOption: DiskCreateOptionTypes; deleteOption?: DiskDeleteOptionTypes; - diskIOPSReadWrite?: number; + diskIopsReadWrite?: number; diskMBpsReadWrite?: number; diskSizeGB?: number; lun: number; @@ -863,12 +970,16 @@ export interface VirtualMachineScaleSetExtensionProperties { autoUpgradeMinorVersion?: boolean; enableAutomaticUpgrade?: boolean; forceUpdateTag?: string; - protectedSettings?: Record; + protectedSettings?: { + [propertyName: string]: any; + }; protectedSettingsFromKeyVault?: KeyVaultSecretReference; provisionAfterExtensions?: string[]; readonly provisioningState?: string; publisher?: string; - settings?: Record; + settings?: { + [propertyName: string]: any; + }; suppressFailures?: boolean; type?: string; typeHandlerVersion?: string; @@ -903,6 +1014,12 @@ export interface VirtualMachineScaleSetIpTag { tag?: string; } +// @public +export interface VirtualMachineScaleSetListResult { + nextLink?: string; + value: VirtualMachineScaleSet[]; +} + // @public export interface VirtualMachineScaleSetManagedDiskParameters { diskEncryptionSet?: DiskEncryptionSetParameters; diff --git a/sdk/computefleet/arm-computefleet/sample.env b/sdk/computefleet/arm-computefleet/sample.env new file mode 100644 index 000000000000..672847a3fea0 --- /dev/null +++ b/sdk/computefleet/arm-computefleet/sample.env @@ -0,0 +1,4 @@ +# App registration secret for AAD authentication +AZURE_CLIENT_SECRET= +AZURE_CLIENT_ID= +AZURE_TENANT_ID= \ No newline at end of file diff --git a/sdk/computefleet/arm-computefleet/src/api/azureFleetContext.ts b/sdk/computefleet/arm-computefleet/src/api/azureFleetContext.ts deleted file mode 100644 index c4f9e7100358..000000000000 --- a/sdk/computefleet/arm-computefleet/src/api/azureFleetContext.ts +++ /dev/null @@ -1,29 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT license. - -import { TokenCredential } from "@azure/core-auth"; -import { ClientOptions } from "@azure-rest/core-client"; -import { AzureFleetContext } from "../rest/index.js"; -import getClient from "../rest/index.js"; - -/** Optional parameters for the client. */ -export interface AzureFleetClientOptionalParams extends ClientOptions { - /** The API version to use for this operation. */ - apiVersion?: string; -} - -export { AzureFleetContext } from "../rest/index.js"; - -export function createAzureFleet( - credential: TokenCredential, - options: AzureFleetClientOptionalParams = {}, -): AzureFleetContext { - const prefixFromOptions = options?.userAgentOptions?.userAgentPrefix; - const userAgentPrefix = prefixFromOptions ? `${prefixFromOptions} azsdk-js-api` : "azsdk-js-api"; - - const clientContext = getClient(credential, { - ...options, - userAgentOptions: { userAgentPrefix }, - }); - return clientContext; -} diff --git a/sdk/computefleet/arm-computefleet/src/api/fleets/index.ts b/sdk/computefleet/arm-computefleet/src/api/fleets/index.ts deleted file mode 100644 index 9668852f68fc..000000000000 --- a/sdk/computefleet/arm-computefleet/src/api/fleets/index.ts +++ /dev/null @@ -1,4895 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT license. - -import { getLongRunningPoller } from "../pollingHelpers.js"; -import { PollerLike, OperationState } from "@azure/core-lro"; -import { - fleetPropertiesSerializer, - managedServiceIdentitySerializer, - planSerializer, - managedServiceIdentityUpdateSerializer, - resourcePlanUpdateSerializer, - Fleet, - FleetUpdate, - VirtualMachineScaleSet, - _FleetListResult, - _VirtualMachineScaleSetListResult, -} from "../../models/models.js"; -import { PagedAsyncIterableIterator } from "../../models/pagingTypes.js"; -import { buildPagedAsyncIterator } from "../pagingHelpers.js"; -import { - isUnexpected, - AzureFleetContext as Client, - FleetsCreateOrUpdate200Response, - FleetsCreateOrUpdate201Response, - FleetsCreateOrUpdateDefaultResponse, - FleetsCreateOrUpdateLogicalResponse, - FleetsDelete202Response, - FleetsDelete204Response, - FleetsDeleteDefaultResponse, - FleetsDeleteLogicalResponse, - FleetsGet200Response, - FleetsGetDefaultResponse, - FleetsListByResourceGroup200Response, - FleetsListByResourceGroupDefaultResponse, - FleetsListBySubscription200Response, - FleetsListBySubscriptionDefaultResponse, - FleetsListVirtualMachineScaleSets200Response, - FleetsListVirtualMachineScaleSetsDefaultResponse, - FleetsUpdate200Response, - FleetsUpdate202Response, - FleetsUpdateDefaultResponse, - FleetsUpdateLogicalResponse, -} from "../../rest/index.js"; -import { - StreamableMethod, - operationOptionsToRequestParameters, - createRestError, -} from "@azure-rest/core-client"; -import { serializeRecord } from "../../helpers/serializerHelpers.js"; -import { - FleetsGetOptionalParams, - FleetsCreateOrUpdateOptionalParams, - FleetsUpdateOptionalParams, - FleetsDeleteOptionalParams, - FleetsListByResourceGroupOptionalParams, - FleetsListBySubscriptionOptionalParams, - FleetsListVirtualMachineScaleSetsOptionalParams, -} from "../../models/options.js"; - -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: FleetsGet200Response | FleetsGetDefaultResponse, -): Promise { - if (isUnexpected(result)) { - throw createRestError(result); - } - - return { - tags: result.body["tags"], - location: result.body["location"], - id: result.body["id"], - name: result.body["name"], - type: result.body["type"], - systemData: !result.body.systemData - ? undefined - : { - createdBy: result.body.systemData?.["createdBy"], - createdByType: result.body.systemData?.["createdByType"], - createdAt: - result.body.systemData?.["createdAt"] !== undefined - ? new Date(result.body.systemData?.["createdAt"]) - : undefined, - lastModifiedBy: result.body.systemData?.["lastModifiedBy"], - lastModifiedByType: result.body.systemData?.["lastModifiedByType"], - lastModifiedAt: - result.body.systemData?.["lastModifiedAt"] !== undefined - ? new Date(result.body.systemData?.["lastModifiedAt"]) - : undefined, - }, - properties: !result.body.properties - ? undefined - : { - provisioningState: result.body.properties?.["provisioningState"], - spotPriorityProfile: !result.body.properties?.spotPriorityProfile - ? undefined - : { - capacity: result.body.properties?.spotPriorityProfile?.["capacity"], - minCapacity: result.body.properties?.spotPriorityProfile?.["minCapacity"], - maxPricePerVM: result.body.properties?.spotPriorityProfile?.["maxPricePerVM"], - evictionPolicy: result.body.properties?.spotPriorityProfile?.["evictionPolicy"], - allocationStrategy: - result.body.properties?.spotPriorityProfile?.["allocationStrategy"], - maintain: result.body.properties?.spotPriorityProfile?.["maintain"], - }, - regularPriorityProfile: !result.body.properties?.regularPriorityProfile - ? undefined - : { - capacity: result.body.properties?.regularPriorityProfile?.["capacity"], - minCapacity: result.body.properties?.regularPriorityProfile?.["minCapacity"], - allocationStrategy: - result.body.properties?.regularPriorityProfile?.["allocationStrategy"], - }, - vmSizesProfile: result.body.properties?.["vmSizesProfile"].map((p) => { - return { name: p["name"], rank: p["rank"] }; - }), - computeProfile: { - baseVirtualMachineProfile: { - osProfile: !result.body.properties?.computeProfile.baseVirtualMachineProfile.osProfile - ? undefined - : { - computerNamePrefix: - result.body.properties?.computeProfile.baseVirtualMachineProfile.osProfile?.[ - "computerNamePrefix" - ], - adminUsername: - result.body.properties?.computeProfile.baseVirtualMachineProfile.osProfile?.[ - "adminUsername" - ], - adminPassword: - result.body.properties?.computeProfile.baseVirtualMachineProfile.osProfile?.[ - "adminPassword" - ], - customData: - result.body.properties?.computeProfile.baseVirtualMachineProfile.osProfile?.[ - "customData" - ], - windowsConfiguration: !result.body.properties?.computeProfile - .baseVirtualMachineProfile.osProfile?.windowsConfiguration - ? undefined - : { - provisionVMAgent: - result.body.properties?.computeProfile.baseVirtualMachineProfile - .osProfile?.windowsConfiguration?.["provisionVMAgent"], - enableAutomaticUpdates: - result.body.properties?.computeProfile.baseVirtualMachineProfile - .osProfile?.windowsConfiguration?.["enableAutomaticUpdates"], - timeZone: - result.body.properties?.computeProfile.baseVirtualMachineProfile - .osProfile?.windowsConfiguration?.["timeZone"], - additionalUnattendContent: - result.body.properties?.computeProfile.baseVirtualMachineProfile - .osProfile?.windowsConfiguration?.["additionalUnattendContent"] === - undefined - ? result.body.properties?.computeProfile.baseVirtualMachineProfile - .osProfile?.windowsConfiguration?.["additionalUnattendContent"] - : result.body.properties?.computeProfile.baseVirtualMachineProfile.osProfile?.windowsConfiguration?.[ - "additionalUnattendContent" - ].map((p) => { - return { - passName: p["passName"], - componentName: p["componentName"], - settingName: p["settingName"], - content: p["content"], - }; - }), - patchSettings: !result.body.properties?.computeProfile - .baseVirtualMachineProfile.osProfile?.windowsConfiguration - ?.patchSettings - ? undefined - : { - patchMode: - result.body.properties?.computeProfile.baseVirtualMachineProfile - .osProfile?.windowsConfiguration?.patchSettings?.["patchMode"], - enableHotpatching: - result.body.properties?.computeProfile.baseVirtualMachineProfile - .osProfile?.windowsConfiguration?.patchSettings?.[ - "enableHotpatching" - ], - assessmentMode: - result.body.properties?.computeProfile.baseVirtualMachineProfile - .osProfile?.windowsConfiguration?.patchSettings?.[ - "assessmentMode" - ], - automaticByPlatformSettings: !result.body.properties?.computeProfile - .baseVirtualMachineProfile.osProfile?.windowsConfiguration - ?.patchSettings?.automaticByPlatformSettings - ? undefined - : { - rebootSetting: - result.body.properties?.computeProfile - .baseVirtualMachineProfile.osProfile?.windowsConfiguration - ?.patchSettings?.automaticByPlatformSettings?.[ - "rebootSetting" - ], - bypassPlatformSafetyChecksOnUserSchedule: - result.body.properties?.computeProfile - .baseVirtualMachineProfile.osProfile?.windowsConfiguration - ?.patchSettings?.automaticByPlatformSettings?.[ - "bypassPlatformSafetyChecksOnUserSchedule" - ], - }, - }, - winRM: !result.body.properties?.computeProfile.baseVirtualMachineProfile - .osProfile?.windowsConfiguration?.winRM - ? undefined - : { - listeners: - result.body.properties?.computeProfile.baseVirtualMachineProfile - .osProfile?.windowsConfiguration?.winRM?.["listeners"] === - undefined - ? result.body.properties?.computeProfile - .baseVirtualMachineProfile.osProfile?.windowsConfiguration - ?.winRM?.["listeners"] - : result.body.properties?.computeProfile.baseVirtualMachineProfile.osProfile?.windowsConfiguration?.winRM?.[ - "listeners" - ].map((p) => { - return { - protocol: p["protocol"], - certificateUrl: p["certificateUrl"], - }; - }), - }, - enableVMAgentPlatformUpdates: - result.body.properties?.computeProfile.baseVirtualMachineProfile - .osProfile?.windowsConfiguration?.["enableVMAgentPlatformUpdates"], - }, - linuxConfiguration: !result.body.properties?.computeProfile - .baseVirtualMachineProfile.osProfile?.linuxConfiguration - ? undefined - : { - disablePasswordAuthentication: - result.body.properties?.computeProfile.baseVirtualMachineProfile - .osProfile?.linuxConfiguration?.["disablePasswordAuthentication"], - ssh: !result.body.properties?.computeProfile.baseVirtualMachineProfile - .osProfile?.linuxConfiguration?.ssh - ? undefined - : { - publicKeys: - result.body.properties?.computeProfile.baseVirtualMachineProfile - .osProfile?.linuxConfiguration?.ssh?.["publicKeys"] === - undefined - ? result.body.properties?.computeProfile - .baseVirtualMachineProfile.osProfile?.linuxConfiguration - ?.ssh?.["publicKeys"] - : result.body.properties?.computeProfile.baseVirtualMachineProfile.osProfile?.linuxConfiguration?.ssh?.[ - "publicKeys" - ].map((p) => { - return { - path: p["path"], - keyData: p["keyData"], - }; - }), - }, - provisionVMAgent: - result.body.properties?.computeProfile.baseVirtualMachineProfile - .osProfile?.linuxConfiguration?.["provisionVMAgent"], - patchSettings: !result.body.properties?.computeProfile - .baseVirtualMachineProfile.osProfile?.linuxConfiguration?.patchSettings - ? undefined - : { - patchMode: - result.body.properties?.computeProfile.baseVirtualMachineProfile - .osProfile?.linuxConfiguration?.patchSettings?.["patchMode"], - assessmentMode: - result.body.properties?.computeProfile.baseVirtualMachineProfile - .osProfile?.linuxConfiguration?.patchSettings?.[ - "assessmentMode" - ], - automaticByPlatformSettings: !result.body.properties?.computeProfile - .baseVirtualMachineProfile.osProfile?.linuxConfiguration - ?.patchSettings?.automaticByPlatformSettings - ? undefined - : { - rebootSetting: - result.body.properties?.computeProfile - .baseVirtualMachineProfile.osProfile?.linuxConfiguration - ?.patchSettings?.automaticByPlatformSettings?.[ - "rebootSetting" - ], - bypassPlatformSafetyChecksOnUserSchedule: - result.body.properties?.computeProfile - .baseVirtualMachineProfile.osProfile?.linuxConfiguration - ?.patchSettings?.automaticByPlatformSettings?.[ - "bypassPlatformSafetyChecksOnUserSchedule" - ], - }, - }, - enableVMAgentPlatformUpdates: - result.body.properties?.computeProfile.baseVirtualMachineProfile - .osProfile?.linuxConfiguration?.["enableVMAgentPlatformUpdates"], - }, - secrets: - result.body.properties?.computeProfile.baseVirtualMachineProfile.osProfile?.[ - "secrets" - ] === undefined - ? result.body.properties?.computeProfile.baseVirtualMachineProfile - .osProfile?.["secrets"] - : result.body.properties?.computeProfile.baseVirtualMachineProfile.osProfile?.[ - "secrets" - ].map((p) => { - return { - sourceVault: !p.sourceVault - ? undefined - : { id: p.sourceVault?.["id"] }, - vaultCertificates: - p["vaultCertificates"] === undefined - ? p["vaultCertificates"] - : p["vaultCertificates"].map((p) => { - return { - certificateUrl: p["certificateUrl"], - certificateStore: p["certificateStore"], - }; - }), - }; - }), - allowExtensionOperations: - result.body.properties?.computeProfile.baseVirtualMachineProfile.osProfile?.[ - "allowExtensionOperations" - ], - requireGuestProvisionSignal: - result.body.properties?.computeProfile.baseVirtualMachineProfile.osProfile?.[ - "requireGuestProvisionSignal" - ], - }, - storageProfile: !result.body.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile - ? undefined - : { - imageReference: !result.body.properties?.computeProfile - .baseVirtualMachineProfile.storageProfile?.imageReference - ? undefined - : { - id: result.body.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.imageReference?.["id"], - publisher: - result.body.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.imageReference?.["publisher"], - offer: - result.body.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.imageReference?.["offer"], - sku: result.body.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.imageReference?.["sku"], - version: - result.body.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.imageReference?.["version"], - exactVersion: - result.body.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.imageReference?.["exactVersion"], - sharedGalleryImageId: - result.body.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.imageReference?.["sharedGalleryImageId"], - communityGalleryImageId: - result.body.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.imageReference?.["communityGalleryImageId"], - }, - osDisk: !result.body.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.osDisk - ? undefined - : { - name: result.body.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.osDisk?.["name"], - caching: - result.body.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.osDisk?.["caching"], - writeAcceleratorEnabled: - result.body.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.osDisk?.["writeAcceleratorEnabled"], - createOption: - result.body.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.osDisk?.["createOption"], - diffDiskSettings: !result.body.properties?.computeProfile - .baseVirtualMachineProfile.storageProfile?.osDisk?.diffDiskSettings - ? undefined - : { - option: - result.body.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.osDisk?.diffDiskSettings?.["option"], - placement: - result.body.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.osDisk?.diffDiskSettings?.["placement"], - }, - diskSizeGB: - result.body.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.osDisk?.["diskSizeGB"], - osType: - result.body.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.osDisk?.["osType"], - image: !result.body.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.osDisk?.image - ? undefined - : { - uri: result.body.properties?.computeProfile - .baseVirtualMachineProfile.storageProfile?.osDisk?.image?.["uri"], - }, - vhdContainers: - result.body.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.osDisk?.["vhdContainers"], - managedDisk: !result.body.properties?.computeProfile - .baseVirtualMachineProfile.storageProfile?.osDisk?.managedDisk - ? undefined - : { - storageAccountType: - result.body.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.osDisk?.managedDisk?.["storageAccountType"], - diskEncryptionSet: !result.body.properties?.computeProfile - .baseVirtualMachineProfile.storageProfile?.osDisk?.managedDisk - ?.diskEncryptionSet - ? undefined - : { - id: result.body.properties?.computeProfile - .baseVirtualMachineProfile.storageProfile?.osDisk - ?.managedDisk?.diskEncryptionSet?.["id"], - }, - securityProfile: !result.body.properties?.computeProfile - .baseVirtualMachineProfile.storageProfile?.osDisk?.managedDisk - ?.securityProfile - ? undefined - : { - securityEncryptionType: - result.body.properties?.computeProfile - .baseVirtualMachineProfile.storageProfile?.osDisk - ?.managedDisk?.securityProfile?.[ - "securityEncryptionType" - ], - diskEncryptionSet: !result.body.properties?.computeProfile - .baseVirtualMachineProfile.storageProfile?.osDisk - ?.managedDisk?.securityProfile?.diskEncryptionSet - ? undefined - : { - id: result.body.properties?.computeProfile - .baseVirtualMachineProfile.storageProfile?.osDisk - ?.managedDisk?.securityProfile?.diskEncryptionSet?.[ - "id" - ], - }, - }, - }, - deleteOption: - result.body.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.osDisk?.["deleteOption"], - }, - dataDisks: - result.body.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.["dataDisks"] === undefined - ? result.body.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.["dataDisks"] - : result.body.properties?.computeProfile.baseVirtualMachineProfile.storageProfile?.[ - "dataDisks" - ].map((p) => { - return { - name: p["name"], - lun: p["lun"], - caching: p["caching"], - writeAcceleratorEnabled: p["writeAcceleratorEnabled"], - createOption: p["createOption"], - diskSizeGB: p["diskSizeGB"], - managedDisk: !p.managedDisk - ? undefined - : { - storageAccountType: p.managedDisk?.["storageAccountType"], - diskEncryptionSet: !p.managedDisk?.diskEncryptionSet - ? undefined - : { - id: p.managedDisk?.diskEncryptionSet?.["id"], - }, - securityProfile: !p.managedDisk?.securityProfile - ? undefined - : { - securityEncryptionType: - p.managedDisk?.securityProfile?.[ - "securityEncryptionType" - ], - diskEncryptionSet: !p.managedDisk?.securityProfile - ?.diskEncryptionSet - ? undefined - : { - id: p.managedDisk?.securityProfile - ?.diskEncryptionSet?.["id"], - }, - }, - }, - diskIOPSReadWrite: p["diskIOPSReadWrite"], - diskMBpsReadWrite: p["diskMBpsReadWrite"], - deleteOption: p["deleteOption"], - }; - }), - diskControllerType: - result.body.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.["diskControllerType"], - }, - networkProfile: !result.body.properties?.computeProfile.baseVirtualMachineProfile - .networkProfile - ? undefined - : { - healthProbe: !result.body.properties?.computeProfile.baseVirtualMachineProfile - .networkProfile?.healthProbe - ? undefined - : { - id: result.body.properties?.computeProfile.baseVirtualMachineProfile - .networkProfile?.healthProbe?.["id"], - }, - networkInterfaceConfigurations: - result.body.properties?.computeProfile.baseVirtualMachineProfile - .networkProfile?.["networkInterfaceConfigurations"] === undefined - ? result.body.properties?.computeProfile.baseVirtualMachineProfile - .networkProfile?.["networkInterfaceConfigurations"] - : result.body.properties?.computeProfile.baseVirtualMachineProfile.networkProfile?.[ - "networkInterfaceConfigurations" - ].map((p) => { - return { - name: p["name"], - properties: !p.properties - ? undefined - : { - primary: p.properties?.["primary"], - enableAcceleratedNetworking: - p.properties?.["enableAcceleratedNetworking"], - disableTcpStateTracking: - p.properties?.["disableTcpStateTracking"], - enableFpga: p.properties?.["enableFpga"], - networkSecurityGroup: !p.properties?.networkSecurityGroup - ? undefined - : { - id: p.properties?.networkSecurityGroup?.["id"], - }, - dnsSettings: !p.properties?.dnsSettings - ? undefined - : { - dnsServers: p.properties?.dnsSettings?.["dnsServers"], - }, - ipConfigurations: p.properties?.["ipConfigurations"].map( - (p) => { - return { - name: p["name"], - properties: !p.properties - ? undefined - : { - subnet: !p.properties?.subnet - ? undefined - : { - id: p.properties?.subnet?.["id"], - }, - primary: p.properties?.["primary"], - publicIPAddressConfiguration: !p.properties - ?.publicIPAddressConfiguration - ? undefined - : { - name: p.properties - ?.publicIPAddressConfiguration?.["name"], - properties: !p.properties - ?.publicIPAddressConfiguration?.properties - ? undefined - : { - idleTimeoutInMinutes: - p.properties - ?.publicIPAddressConfiguration - ?.properties?.[ - "idleTimeoutInMinutes" - ], - dnsSettings: !p.properties - ?.publicIPAddressConfiguration - ?.properties?.dnsSettings - ? undefined - : { - domainNameLabel: - p.properties - ?.publicIPAddressConfiguration - ?.properties?.dnsSettings?.[ - "domainNameLabel" - ], - domainNameLabelScope: - p.properties - ?.publicIPAddressConfiguration - ?.properties?.dnsSettings?.[ - "domainNameLabelScope" - ], - }, - ipTags: - p.properties - ?.publicIPAddressConfiguration - ?.properties?.["ipTags"] === - undefined - ? p.properties - ?.publicIPAddressConfiguration - ?.properties?.["ipTags"] - : p.properties?.publicIPAddressConfiguration?.properties?.[ - "ipTags" - ].map((p) => { - return { - ipTagType: p["ipTagType"], - tag: p["tag"], - }; - }), - publicIPPrefix: !p.properties - ?.publicIPAddressConfiguration - ?.properties?.publicIPPrefix - ? undefined - : { - id: p.properties - ?.publicIPAddressConfiguration - ?.properties?.publicIPPrefix?.[ - "id" - ], - }, - publicIPAddressVersion: - p.properties - ?.publicIPAddressConfiguration - ?.properties?.[ - "publicIPAddressVersion" - ], - deleteOption: - p.properties - ?.publicIPAddressConfiguration - ?.properties?.["deleteOption"], - }, - sku: !p.properties - ?.publicIPAddressConfiguration?.sku - ? undefined - : { - name: p.properties - ?.publicIPAddressConfiguration?.sku?.[ - "name" - ], - tier: p.properties - ?.publicIPAddressConfiguration?.sku?.[ - "tier" - ], - }, - }, - privateIPAddressVersion: - p.properties?.["privateIPAddressVersion"], - applicationGatewayBackendAddressPools: - p.properties?.[ - "applicationGatewayBackendAddressPools" - ] === undefined - ? p.properties?.[ - "applicationGatewayBackendAddressPools" - ] - : p.properties?.[ - "applicationGatewayBackendAddressPools" - ].map((p) => { - return { id: p["id"] }; - }), - applicationSecurityGroups: - p.properties?.["applicationSecurityGroups"] === - undefined - ? p.properties?.["applicationSecurityGroups"] - : p.properties?.[ - "applicationSecurityGroups" - ].map((p) => { - return { id: p["id"] }; - }), - loadBalancerBackendAddressPools: - p.properties?.[ - "loadBalancerBackendAddressPools" - ] === undefined - ? p.properties?.[ - "loadBalancerBackendAddressPools" - ] - : p.properties?.[ - "loadBalancerBackendAddressPools" - ].map((p) => { - return { id: p["id"] }; - }), - loadBalancerInboundNatPools: - p.properties?.["loadBalancerInboundNatPools"] === - undefined - ? p.properties?.["loadBalancerInboundNatPools"] - : p.properties?.[ - "loadBalancerInboundNatPools" - ].map((p) => { - return { id: p["id"] }; - }), - }, - }; - }, - ), - enableIPForwarding: p.properties?.["enableIPForwarding"], - deleteOption: p.properties?.["deleteOption"], - auxiliaryMode: p.properties?.["auxiliaryMode"], - auxiliarySku: p.properties?.["auxiliarySku"], - }, - }; - }), - networkApiVersion: - result.body.properties?.computeProfile.baseVirtualMachineProfile - .networkProfile?.["networkApiVersion"], - }, - securityProfile: !result.body.properties?.computeProfile.baseVirtualMachineProfile - .securityProfile - ? undefined - : { - uefiSettings: !result.body.properties?.computeProfile.baseVirtualMachineProfile - .securityProfile?.uefiSettings - ? undefined - : { - secureBootEnabled: - result.body.properties?.computeProfile.baseVirtualMachineProfile - .securityProfile?.uefiSettings?.["secureBootEnabled"], - vTpmEnabled: - result.body.properties?.computeProfile.baseVirtualMachineProfile - .securityProfile?.uefiSettings?.["vTpmEnabled"], - }, - encryptionAtHost: - result.body.properties?.computeProfile.baseVirtualMachineProfile - .securityProfile?.["encryptionAtHost"], - securityType: - result.body.properties?.computeProfile.baseVirtualMachineProfile - .securityProfile?.["securityType"], - encryptionIdentity: !result.body.properties?.computeProfile - .baseVirtualMachineProfile.securityProfile?.encryptionIdentity - ? undefined - : { - userAssignedIdentityResourceId: - result.body.properties?.computeProfile.baseVirtualMachineProfile - .securityProfile?.encryptionIdentity?.[ - "userAssignedIdentityResourceId" - ], - }, - proxyAgentSettings: !result.body.properties?.computeProfile - .baseVirtualMachineProfile.securityProfile?.proxyAgentSettings - ? undefined - : { - enabled: - result.body.properties?.computeProfile.baseVirtualMachineProfile - .securityProfile?.proxyAgentSettings?.["enabled"], - mode: result.body.properties?.computeProfile.baseVirtualMachineProfile - .securityProfile?.proxyAgentSettings?.["mode"], - keyIncarnationId: - result.body.properties?.computeProfile.baseVirtualMachineProfile - .securityProfile?.proxyAgentSettings?.["keyIncarnationId"], - }, - }, - diagnosticsProfile: !result.body.properties?.computeProfile.baseVirtualMachineProfile - .diagnosticsProfile - ? undefined - : { - bootDiagnostics: !result.body.properties?.computeProfile - .baseVirtualMachineProfile.diagnosticsProfile?.bootDiagnostics - ? undefined - : { - enabled: - result.body.properties?.computeProfile.baseVirtualMachineProfile - .diagnosticsProfile?.bootDiagnostics?.["enabled"], - storageUri: - result.body.properties?.computeProfile.baseVirtualMachineProfile - .diagnosticsProfile?.bootDiagnostics?.["storageUri"], - }, - }, - extensionProfile: !result.body.properties?.computeProfile.baseVirtualMachineProfile - .extensionProfile - ? undefined - : { - extensions: - result.body.properties?.computeProfile.baseVirtualMachineProfile - .extensionProfile?.["extensions"] === undefined - ? result.body.properties?.computeProfile.baseVirtualMachineProfile - .extensionProfile?.["extensions"] - : result.body.properties?.computeProfile.baseVirtualMachineProfile.extensionProfile?.[ - "extensions" - ].map((p) => { - return { - id: p["id"], - name: p["name"], - type: p["type"], - properties: !p.properties - ? undefined - : { - forceUpdateTag: p.properties?.["forceUpdateTag"], - publisher: p.properties?.["publisher"], - type: p.properties?.["type"], - typeHandlerVersion: p.properties?.["typeHandlerVersion"], - autoUpgradeMinorVersion: - p.properties?.["autoUpgradeMinorVersion"], - enableAutomaticUpgrade: - p.properties?.["enableAutomaticUpgrade"], - settings: p.properties?.["settings"], - protectedSettings: p.properties?.["protectedSettings"], - provisioningState: p.properties?.["provisioningState"], - provisionAfterExtensions: - p.properties?.["provisionAfterExtensions"], - suppressFailures: p.properties?.["suppressFailures"], - protectedSettingsFromKeyVault: !p.properties - ?.protectedSettingsFromKeyVault - ? undefined - : { - secretUrl: - p.properties?.protectedSettingsFromKeyVault?.[ - "secretUrl" - ], - sourceVault: { - id: p.properties?.protectedSettingsFromKeyVault - ?.sourceVault["id"], - }, - }, - }, - }; - }), - extensionsTimeBudget: - result.body.properties?.computeProfile.baseVirtualMachineProfile - .extensionProfile?.["extensionsTimeBudget"], - }, - licenseType: - result.body.properties?.computeProfile.baseVirtualMachineProfile["licenseType"], - scheduledEventsProfile: !result.body.properties?.computeProfile - .baseVirtualMachineProfile.scheduledEventsProfile - ? undefined - : { - terminateNotificationProfile: !result.body.properties?.computeProfile - .baseVirtualMachineProfile.scheduledEventsProfile - ?.terminateNotificationProfile - ? undefined - : { - notBeforeTimeout: - result.body.properties?.computeProfile.baseVirtualMachineProfile - .scheduledEventsProfile?.terminateNotificationProfile?.[ - "notBeforeTimeout" - ], - enable: - result.body.properties?.computeProfile.baseVirtualMachineProfile - .scheduledEventsProfile?.terminateNotificationProfile?.["enable"], - }, - osImageNotificationProfile: !result.body.properties?.computeProfile - .baseVirtualMachineProfile.scheduledEventsProfile?.osImageNotificationProfile - ? undefined - : { - notBeforeTimeout: - result.body.properties?.computeProfile.baseVirtualMachineProfile - .scheduledEventsProfile?.osImageNotificationProfile?.[ - "notBeforeTimeout" - ], - enable: - result.body.properties?.computeProfile.baseVirtualMachineProfile - .scheduledEventsProfile?.osImageNotificationProfile?.["enable"], - }, - }, - userData: - result.body.properties?.computeProfile.baseVirtualMachineProfile["userData"], - capacityReservation: !result.body.properties?.computeProfile.baseVirtualMachineProfile - .capacityReservation - ? undefined - : { - capacityReservationGroup: !result.body.properties?.computeProfile - .baseVirtualMachineProfile.capacityReservation?.capacityReservationGroup - ? undefined - : { - id: result.body.properties?.computeProfile.baseVirtualMachineProfile - .capacityReservation?.capacityReservationGroup?.["id"], - }, - }, - applicationProfile: !result.body.properties?.computeProfile.baseVirtualMachineProfile - .applicationProfile - ? undefined - : { - galleryApplications: - result.body.properties?.computeProfile.baseVirtualMachineProfile - .applicationProfile?.["galleryApplications"] === undefined - ? result.body.properties?.computeProfile.baseVirtualMachineProfile - .applicationProfile?.["galleryApplications"] - : result.body.properties?.computeProfile.baseVirtualMachineProfile.applicationProfile?.[ - "galleryApplications" - ].map((p) => { - return { - tags: p["tags"], - order: p["order"], - packageReferenceId: p["packageReferenceId"], - configurationReference: p["configurationReference"], - treatFailureAsDeploymentFailure: p["treatFailureAsDeploymentFailure"], - enableAutomaticUpgrade: p["enableAutomaticUpgrade"], - }; - }), - }, - hardwareProfile: !result.body.properties?.computeProfile.baseVirtualMachineProfile - .hardwareProfile - ? undefined - : { - vmSizeProperties: !result.body.properties?.computeProfile - .baseVirtualMachineProfile.hardwareProfile?.vmSizeProperties - ? undefined - : { - vCPUsAvailable: - result.body.properties?.computeProfile.baseVirtualMachineProfile - .hardwareProfile?.vmSizeProperties?.["vCPUsAvailable"], - vCPUsPerCore: - result.body.properties?.computeProfile.baseVirtualMachineProfile - .hardwareProfile?.vmSizeProperties?.["vCPUsPerCore"], - }, - }, - serviceArtifactReference: !result.body.properties?.computeProfile - .baseVirtualMachineProfile.serviceArtifactReference - ? undefined - : { - id: result.body.properties?.computeProfile.baseVirtualMachineProfile - .serviceArtifactReference?.["id"], - }, - securityPostureReference: !result.body.properties?.computeProfile - .baseVirtualMachineProfile.securityPostureReference - ? undefined - : { - id: result.body.properties?.computeProfile.baseVirtualMachineProfile - .securityPostureReference?.["id"], - excludeExtensions: - result.body.properties?.computeProfile.baseVirtualMachineProfile - .securityPostureReference?.["excludeExtensions"], - isOverridable: - result.body.properties?.computeProfile.baseVirtualMachineProfile - .securityPostureReference?.["isOverridable"], - }, - timeCreated: - result.body.properties?.computeProfile.baseVirtualMachineProfile["timeCreated"] !== - undefined - ? new Date( - result.body.properties?.computeProfile.baseVirtualMachineProfile[ - "timeCreated" - ], - ) - : undefined, - }, - computeApiVersion: result.body.properties?.computeProfile["computeApiVersion"], - platformFaultDomainCount: - result.body.properties?.computeProfile["platformFaultDomainCount"], - }, - timeCreated: - result.body.properties?.["timeCreated"] !== undefined - ? new Date(result.body.properties?.["timeCreated"]) - : undefined, - uniqueId: result.body.properties?.["uniqueId"], - }, - zones: result.body["zones"], - identity: !result.body.identity - ? undefined - : { - principalId: result.body.identity?.["principalId"], - tenantId: result.body.identity?.["tenantId"], - type: result.body.identity?.["type"], - userAssignedIdentities: result.body.identity?.["userAssignedIdentities"], - }, - plan: !result.body.plan - ? undefined - : { - name: result.body.plan?.["name"], - publisher: result.body.plan?.["publisher"], - product: result.body.plan?.["product"], - promotionCode: result.body.plan?.["promotionCode"], - version: result.body.plan?.["version"], - }, - }; -} - -/** 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< - | FleetsCreateOrUpdate200Response - | FleetsCreateOrUpdate201Response - | FleetsCreateOrUpdateDefaultResponse - | FleetsCreateOrUpdateLogicalResponse -> { - return context - .path( - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureFleet/fleets/{fleetName}", - subscriptionId, - resourceGroupName, - fleetName, - ) - .put({ - ...operationOptionsToRequestParameters(options), - body: { - tags: !resource.tags ? resource.tags : (serializeRecord(resource.tags as any) as any), - location: resource["location"], - properties: !resource.properties - ? resource.properties - : fleetPropertiesSerializer(resource.properties), - zones: resource["zones"], - identity: !resource.identity - ? resource.identity - : managedServiceIdentitySerializer(resource.identity), - plan: !resource.plan ? resource.plan : planSerializer(resource.plan), - }, - }); -} - -export async function _fleetsCreateOrUpdateDeserialize( - result: - | FleetsCreateOrUpdate200Response - | FleetsCreateOrUpdate201Response - | FleetsCreateOrUpdateDefaultResponse - | FleetsCreateOrUpdateLogicalResponse, -): Promise { - if (isUnexpected(result)) { - throw createRestError(result); - } - - const res = result as unknown as FleetsCreateOrUpdateLogicalResponse; - return { - tags: res.body["tags"], - location: res.body["location"], - id: res.body["id"], - name: res.body["name"], - type: res.body["type"], - systemData: !res.body.systemData - ? undefined - : { - createdBy: res.body.systemData?.["createdBy"], - createdByType: res.body.systemData?.["createdByType"], - createdAt: - res.body.systemData?.["createdAt"] !== undefined - ? new Date(res.body.systemData?.["createdAt"]) - : undefined, - lastModifiedBy: res.body.systemData?.["lastModifiedBy"], - lastModifiedByType: res.body.systemData?.["lastModifiedByType"], - lastModifiedAt: - res.body.systemData?.["lastModifiedAt"] !== undefined - ? new Date(res.body.systemData?.["lastModifiedAt"]) - : undefined, - }, - properties: !res.body.properties - ? undefined - : { - provisioningState: res.body.properties?.["provisioningState"], - spotPriorityProfile: !res.body.properties?.spotPriorityProfile - ? undefined - : { - capacity: res.body.properties?.spotPriorityProfile?.["capacity"], - minCapacity: res.body.properties?.spotPriorityProfile?.["minCapacity"], - maxPricePerVM: res.body.properties?.spotPriorityProfile?.["maxPricePerVM"], - evictionPolicy: res.body.properties?.spotPriorityProfile?.["evictionPolicy"], - allocationStrategy: - res.body.properties?.spotPriorityProfile?.["allocationStrategy"], - maintain: res.body.properties?.spotPriorityProfile?.["maintain"], - }, - regularPriorityProfile: !res.body.properties?.regularPriorityProfile - ? undefined - : { - capacity: res.body.properties?.regularPriorityProfile?.["capacity"], - minCapacity: res.body.properties?.regularPriorityProfile?.["minCapacity"], - allocationStrategy: - res.body.properties?.regularPriorityProfile?.["allocationStrategy"], - }, - vmSizesProfile: res.body.properties?.["vmSizesProfile"].map((p) => { - return { name: p["name"], rank: p["rank"] }; - }), - computeProfile: { - baseVirtualMachineProfile: { - osProfile: !res.body.properties?.computeProfile.baseVirtualMachineProfile.osProfile - ? undefined - : { - computerNamePrefix: - res.body.properties?.computeProfile.baseVirtualMachineProfile.osProfile?.[ - "computerNamePrefix" - ], - adminUsername: - res.body.properties?.computeProfile.baseVirtualMachineProfile.osProfile?.[ - "adminUsername" - ], - adminPassword: - res.body.properties?.computeProfile.baseVirtualMachineProfile.osProfile?.[ - "adminPassword" - ], - customData: - res.body.properties?.computeProfile.baseVirtualMachineProfile.osProfile?.[ - "customData" - ], - windowsConfiguration: !res.body.properties?.computeProfile - .baseVirtualMachineProfile.osProfile?.windowsConfiguration - ? undefined - : { - provisionVMAgent: - res.body.properties?.computeProfile.baseVirtualMachineProfile.osProfile - ?.windowsConfiguration?.["provisionVMAgent"], - enableAutomaticUpdates: - res.body.properties?.computeProfile.baseVirtualMachineProfile.osProfile - ?.windowsConfiguration?.["enableAutomaticUpdates"], - timeZone: - res.body.properties?.computeProfile.baseVirtualMachineProfile.osProfile - ?.windowsConfiguration?.["timeZone"], - additionalUnattendContent: - res.body.properties?.computeProfile.baseVirtualMachineProfile.osProfile - ?.windowsConfiguration?.["additionalUnattendContent"] === undefined - ? res.body.properties?.computeProfile.baseVirtualMachineProfile - .osProfile?.windowsConfiguration?.["additionalUnattendContent"] - : res.body.properties?.computeProfile.baseVirtualMachineProfile.osProfile?.windowsConfiguration?.[ - "additionalUnattendContent" - ].map((p) => { - return { - passName: p["passName"], - componentName: p["componentName"], - settingName: p["settingName"], - content: p["content"], - }; - }), - patchSettings: !res.body.properties?.computeProfile - .baseVirtualMachineProfile.osProfile?.windowsConfiguration - ?.patchSettings - ? undefined - : { - patchMode: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .osProfile?.windowsConfiguration?.patchSettings?.["patchMode"], - enableHotpatching: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .osProfile?.windowsConfiguration?.patchSettings?.[ - "enableHotpatching" - ], - assessmentMode: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .osProfile?.windowsConfiguration?.patchSettings?.[ - "assessmentMode" - ], - automaticByPlatformSettings: !res.body.properties?.computeProfile - .baseVirtualMachineProfile.osProfile?.windowsConfiguration - ?.patchSettings?.automaticByPlatformSettings - ? undefined - : { - rebootSetting: - res.body.properties?.computeProfile - .baseVirtualMachineProfile.osProfile?.windowsConfiguration - ?.patchSettings?.automaticByPlatformSettings?.[ - "rebootSetting" - ], - bypassPlatformSafetyChecksOnUserSchedule: - res.body.properties?.computeProfile - .baseVirtualMachineProfile.osProfile?.windowsConfiguration - ?.patchSettings?.automaticByPlatformSettings?.[ - "bypassPlatformSafetyChecksOnUserSchedule" - ], - }, - }, - winRM: !res.body.properties?.computeProfile.baseVirtualMachineProfile - .osProfile?.windowsConfiguration?.winRM - ? undefined - : { - listeners: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .osProfile?.windowsConfiguration?.winRM?.["listeners"] === - undefined - ? res.body.properties?.computeProfile.baseVirtualMachineProfile - .osProfile?.windowsConfiguration?.winRM?.["listeners"] - : res.body.properties?.computeProfile.baseVirtualMachineProfile.osProfile?.windowsConfiguration?.winRM?.[ - "listeners" - ].map((p) => { - return { - protocol: p["protocol"], - certificateUrl: p["certificateUrl"], - }; - }), - }, - enableVMAgentPlatformUpdates: - res.body.properties?.computeProfile.baseVirtualMachineProfile.osProfile - ?.windowsConfiguration?.["enableVMAgentPlatformUpdates"], - }, - linuxConfiguration: !res.body.properties?.computeProfile - .baseVirtualMachineProfile.osProfile?.linuxConfiguration - ? undefined - : { - disablePasswordAuthentication: - res.body.properties?.computeProfile.baseVirtualMachineProfile.osProfile - ?.linuxConfiguration?.["disablePasswordAuthentication"], - ssh: !res.body.properties?.computeProfile.baseVirtualMachineProfile - .osProfile?.linuxConfiguration?.ssh - ? undefined - : { - publicKeys: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .osProfile?.linuxConfiguration?.ssh?.["publicKeys"] === - undefined - ? res.body.properties?.computeProfile.baseVirtualMachineProfile - .osProfile?.linuxConfiguration?.ssh?.["publicKeys"] - : res.body.properties?.computeProfile.baseVirtualMachineProfile.osProfile?.linuxConfiguration?.ssh?.[ - "publicKeys" - ].map((p) => { - return { - path: p["path"], - keyData: p["keyData"], - }; - }), - }, - provisionVMAgent: - res.body.properties?.computeProfile.baseVirtualMachineProfile.osProfile - ?.linuxConfiguration?.["provisionVMAgent"], - patchSettings: !res.body.properties?.computeProfile - .baseVirtualMachineProfile.osProfile?.linuxConfiguration?.patchSettings - ? undefined - : { - patchMode: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .osProfile?.linuxConfiguration?.patchSettings?.["patchMode"], - assessmentMode: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .osProfile?.linuxConfiguration?.patchSettings?.[ - "assessmentMode" - ], - automaticByPlatformSettings: !res.body.properties?.computeProfile - .baseVirtualMachineProfile.osProfile?.linuxConfiguration - ?.patchSettings?.automaticByPlatformSettings - ? undefined - : { - rebootSetting: - res.body.properties?.computeProfile - .baseVirtualMachineProfile.osProfile?.linuxConfiguration - ?.patchSettings?.automaticByPlatformSettings?.[ - "rebootSetting" - ], - bypassPlatformSafetyChecksOnUserSchedule: - res.body.properties?.computeProfile - .baseVirtualMachineProfile.osProfile?.linuxConfiguration - ?.patchSettings?.automaticByPlatformSettings?.[ - "bypassPlatformSafetyChecksOnUserSchedule" - ], - }, - }, - enableVMAgentPlatformUpdates: - res.body.properties?.computeProfile.baseVirtualMachineProfile.osProfile - ?.linuxConfiguration?.["enableVMAgentPlatformUpdates"], - }, - secrets: - res.body.properties?.computeProfile.baseVirtualMachineProfile.osProfile?.[ - "secrets" - ] === undefined - ? res.body.properties?.computeProfile.baseVirtualMachineProfile.osProfile?.[ - "secrets" - ] - : res.body.properties?.computeProfile.baseVirtualMachineProfile.osProfile?.[ - "secrets" - ].map((p) => { - return { - sourceVault: !p.sourceVault - ? undefined - : { id: p.sourceVault?.["id"] }, - vaultCertificates: - p["vaultCertificates"] === undefined - ? p["vaultCertificates"] - : p["vaultCertificates"].map((p) => { - return { - certificateUrl: p["certificateUrl"], - certificateStore: p["certificateStore"], - }; - }), - }; - }), - allowExtensionOperations: - res.body.properties?.computeProfile.baseVirtualMachineProfile.osProfile?.[ - "allowExtensionOperations" - ], - requireGuestProvisionSignal: - res.body.properties?.computeProfile.baseVirtualMachineProfile.osProfile?.[ - "requireGuestProvisionSignal" - ], - }, - storageProfile: !res.body.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile - ? undefined - : { - imageReference: !res.body.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.imageReference - ? undefined - : { - id: res.body.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.imageReference?.["id"], - publisher: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.imageReference?.["publisher"], - offer: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.imageReference?.["offer"], - sku: res.body.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.imageReference?.["sku"], - version: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.imageReference?.["version"], - exactVersion: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.imageReference?.["exactVersion"], - sharedGalleryImageId: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.imageReference?.["sharedGalleryImageId"], - communityGalleryImageId: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.imageReference?.["communityGalleryImageId"], - }, - osDisk: !res.body.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.osDisk - ? undefined - : { - name: res.body.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.osDisk?.["name"], - caching: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.osDisk?.["caching"], - writeAcceleratorEnabled: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.osDisk?.["writeAcceleratorEnabled"], - createOption: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.osDisk?.["createOption"], - diffDiskSettings: !res.body.properties?.computeProfile - .baseVirtualMachineProfile.storageProfile?.osDisk?.diffDiskSettings - ? undefined - : { - option: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.osDisk?.diffDiskSettings?.["option"], - placement: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.osDisk?.diffDiskSettings?.["placement"], - }, - diskSizeGB: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.osDisk?.["diskSizeGB"], - osType: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.osDisk?.["osType"], - image: !res.body.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.osDisk?.image - ? undefined - : { - uri: res.body.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.osDisk?.image?.["uri"], - }, - vhdContainers: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.osDisk?.["vhdContainers"], - managedDisk: !res.body.properties?.computeProfile - .baseVirtualMachineProfile.storageProfile?.osDisk?.managedDisk - ? undefined - : { - storageAccountType: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.osDisk?.managedDisk?.["storageAccountType"], - diskEncryptionSet: !res.body.properties?.computeProfile - .baseVirtualMachineProfile.storageProfile?.osDisk?.managedDisk - ?.diskEncryptionSet - ? undefined - : { - id: res.body.properties?.computeProfile - .baseVirtualMachineProfile.storageProfile?.osDisk - ?.managedDisk?.diskEncryptionSet?.["id"], - }, - securityProfile: !res.body.properties?.computeProfile - .baseVirtualMachineProfile.storageProfile?.osDisk?.managedDisk - ?.securityProfile - ? undefined - : { - securityEncryptionType: - res.body.properties?.computeProfile - .baseVirtualMachineProfile.storageProfile?.osDisk - ?.managedDisk?.securityProfile?.[ - "securityEncryptionType" - ], - diskEncryptionSet: !res.body.properties?.computeProfile - .baseVirtualMachineProfile.storageProfile?.osDisk - ?.managedDisk?.securityProfile?.diskEncryptionSet - ? undefined - : { - id: res.body.properties?.computeProfile - .baseVirtualMachineProfile.storageProfile?.osDisk - ?.managedDisk?.securityProfile?.diskEncryptionSet?.[ - "id" - ], - }, - }, - }, - deleteOption: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.osDisk?.["deleteOption"], - }, - dataDisks: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.["dataDisks"] === undefined - ? res.body.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.["dataDisks"] - : res.body.properties?.computeProfile.baseVirtualMachineProfile.storageProfile?.[ - "dataDisks" - ].map((p) => { - return { - name: p["name"], - lun: p["lun"], - caching: p["caching"], - writeAcceleratorEnabled: p["writeAcceleratorEnabled"], - createOption: p["createOption"], - diskSizeGB: p["diskSizeGB"], - managedDisk: !p.managedDisk - ? undefined - : { - storageAccountType: p.managedDisk?.["storageAccountType"], - diskEncryptionSet: !p.managedDisk?.diskEncryptionSet - ? undefined - : { - id: p.managedDisk?.diskEncryptionSet?.["id"], - }, - securityProfile: !p.managedDisk?.securityProfile - ? undefined - : { - securityEncryptionType: - p.managedDisk?.securityProfile?.[ - "securityEncryptionType" - ], - diskEncryptionSet: !p.managedDisk?.securityProfile - ?.diskEncryptionSet - ? undefined - : { - id: p.managedDisk?.securityProfile - ?.diskEncryptionSet?.["id"], - }, - }, - }, - diskIOPSReadWrite: p["diskIOPSReadWrite"], - diskMBpsReadWrite: p["diskMBpsReadWrite"], - deleteOption: p["deleteOption"], - }; - }), - diskControllerType: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.["diskControllerType"], - }, - networkProfile: !res.body.properties?.computeProfile.baseVirtualMachineProfile - .networkProfile - ? undefined - : { - healthProbe: !res.body.properties?.computeProfile.baseVirtualMachineProfile - .networkProfile?.healthProbe - ? undefined - : { - id: res.body.properties?.computeProfile.baseVirtualMachineProfile - .networkProfile?.healthProbe?.["id"], - }, - networkInterfaceConfigurations: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .networkProfile?.["networkInterfaceConfigurations"] === undefined - ? res.body.properties?.computeProfile.baseVirtualMachineProfile - .networkProfile?.["networkInterfaceConfigurations"] - : res.body.properties?.computeProfile.baseVirtualMachineProfile.networkProfile?.[ - "networkInterfaceConfigurations" - ].map((p) => { - return { - name: p["name"], - properties: !p.properties - ? undefined - : { - primary: p.properties?.["primary"], - enableAcceleratedNetworking: - p.properties?.["enableAcceleratedNetworking"], - disableTcpStateTracking: - p.properties?.["disableTcpStateTracking"], - enableFpga: p.properties?.["enableFpga"], - networkSecurityGroup: !p.properties?.networkSecurityGroup - ? undefined - : { - id: p.properties?.networkSecurityGroup?.["id"], - }, - dnsSettings: !p.properties?.dnsSettings - ? undefined - : { - dnsServers: p.properties?.dnsSettings?.["dnsServers"], - }, - ipConfigurations: p.properties?.["ipConfigurations"].map( - (p) => { - return { - name: p["name"], - properties: !p.properties - ? undefined - : { - subnet: !p.properties?.subnet - ? undefined - : { - id: p.properties?.subnet?.["id"], - }, - primary: p.properties?.["primary"], - publicIPAddressConfiguration: !p.properties - ?.publicIPAddressConfiguration - ? undefined - : { - name: p.properties - ?.publicIPAddressConfiguration?.["name"], - properties: !p.properties - ?.publicIPAddressConfiguration?.properties - ? undefined - : { - idleTimeoutInMinutes: - p.properties - ?.publicIPAddressConfiguration - ?.properties?.[ - "idleTimeoutInMinutes" - ], - dnsSettings: !p.properties - ?.publicIPAddressConfiguration - ?.properties?.dnsSettings - ? undefined - : { - domainNameLabel: - p.properties - ?.publicIPAddressConfiguration - ?.properties?.dnsSettings?.[ - "domainNameLabel" - ], - domainNameLabelScope: - p.properties - ?.publicIPAddressConfiguration - ?.properties?.dnsSettings?.[ - "domainNameLabelScope" - ], - }, - ipTags: - p.properties - ?.publicIPAddressConfiguration - ?.properties?.["ipTags"] === - undefined - ? p.properties - ?.publicIPAddressConfiguration - ?.properties?.["ipTags"] - : p.properties?.publicIPAddressConfiguration?.properties?.[ - "ipTags" - ].map((p) => { - return { - ipTagType: p["ipTagType"], - tag: p["tag"], - }; - }), - publicIPPrefix: !p.properties - ?.publicIPAddressConfiguration - ?.properties?.publicIPPrefix - ? undefined - : { - id: p.properties - ?.publicIPAddressConfiguration - ?.properties?.publicIPPrefix?.[ - "id" - ], - }, - publicIPAddressVersion: - p.properties - ?.publicIPAddressConfiguration - ?.properties?.[ - "publicIPAddressVersion" - ], - deleteOption: - p.properties - ?.publicIPAddressConfiguration - ?.properties?.["deleteOption"], - }, - sku: !p.properties - ?.publicIPAddressConfiguration?.sku - ? undefined - : { - name: p.properties - ?.publicIPAddressConfiguration?.sku?.[ - "name" - ], - tier: p.properties - ?.publicIPAddressConfiguration?.sku?.[ - "tier" - ], - }, - }, - privateIPAddressVersion: - p.properties?.["privateIPAddressVersion"], - applicationGatewayBackendAddressPools: - p.properties?.[ - "applicationGatewayBackendAddressPools" - ] === undefined - ? p.properties?.[ - "applicationGatewayBackendAddressPools" - ] - : p.properties?.[ - "applicationGatewayBackendAddressPools" - ].map((p) => { - return { id: p["id"] }; - }), - applicationSecurityGroups: - p.properties?.["applicationSecurityGroups"] === - undefined - ? p.properties?.["applicationSecurityGroups"] - : p.properties?.[ - "applicationSecurityGroups" - ].map((p) => { - return { id: p["id"] }; - }), - loadBalancerBackendAddressPools: - p.properties?.[ - "loadBalancerBackendAddressPools" - ] === undefined - ? p.properties?.[ - "loadBalancerBackendAddressPools" - ] - : p.properties?.[ - "loadBalancerBackendAddressPools" - ].map((p) => { - return { id: p["id"] }; - }), - loadBalancerInboundNatPools: - p.properties?.["loadBalancerInboundNatPools"] === - undefined - ? p.properties?.["loadBalancerInboundNatPools"] - : p.properties?.[ - "loadBalancerInboundNatPools" - ].map((p) => { - return { id: p["id"] }; - }), - }, - }; - }, - ), - enableIPForwarding: p.properties?.["enableIPForwarding"], - deleteOption: p.properties?.["deleteOption"], - auxiliaryMode: p.properties?.["auxiliaryMode"], - auxiliarySku: p.properties?.["auxiliarySku"], - }, - }; - }), - networkApiVersion: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .networkProfile?.["networkApiVersion"], - }, - securityProfile: !res.body.properties?.computeProfile.baseVirtualMachineProfile - .securityProfile - ? undefined - : { - uefiSettings: !res.body.properties?.computeProfile.baseVirtualMachineProfile - .securityProfile?.uefiSettings - ? undefined - : { - secureBootEnabled: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .securityProfile?.uefiSettings?.["secureBootEnabled"], - vTpmEnabled: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .securityProfile?.uefiSettings?.["vTpmEnabled"], - }, - encryptionAtHost: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .securityProfile?.["encryptionAtHost"], - securityType: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .securityProfile?.["securityType"], - encryptionIdentity: !res.body.properties?.computeProfile - .baseVirtualMachineProfile.securityProfile?.encryptionIdentity - ? undefined - : { - userAssignedIdentityResourceId: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .securityProfile?.encryptionIdentity?.[ - "userAssignedIdentityResourceId" - ], - }, - proxyAgentSettings: !res.body.properties?.computeProfile - .baseVirtualMachineProfile.securityProfile?.proxyAgentSettings - ? undefined - : { - enabled: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .securityProfile?.proxyAgentSettings?.["enabled"], - mode: res.body.properties?.computeProfile.baseVirtualMachineProfile - .securityProfile?.proxyAgentSettings?.["mode"], - keyIncarnationId: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .securityProfile?.proxyAgentSettings?.["keyIncarnationId"], - }, - }, - diagnosticsProfile: !res.body.properties?.computeProfile.baseVirtualMachineProfile - .diagnosticsProfile - ? undefined - : { - bootDiagnostics: !res.body.properties?.computeProfile.baseVirtualMachineProfile - .diagnosticsProfile?.bootDiagnostics - ? undefined - : { - enabled: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .diagnosticsProfile?.bootDiagnostics?.["enabled"], - storageUri: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .diagnosticsProfile?.bootDiagnostics?.["storageUri"], - }, - }, - extensionProfile: !res.body.properties?.computeProfile.baseVirtualMachineProfile - .extensionProfile - ? undefined - : { - extensions: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .extensionProfile?.["extensions"] === undefined - ? res.body.properties?.computeProfile.baseVirtualMachineProfile - .extensionProfile?.["extensions"] - : res.body.properties?.computeProfile.baseVirtualMachineProfile.extensionProfile?.[ - "extensions" - ].map((p) => { - return { - id: p["id"], - name: p["name"], - type: p["type"], - properties: !p.properties - ? undefined - : { - forceUpdateTag: p.properties?.["forceUpdateTag"], - publisher: p.properties?.["publisher"], - type: p.properties?.["type"], - typeHandlerVersion: p.properties?.["typeHandlerVersion"], - autoUpgradeMinorVersion: - p.properties?.["autoUpgradeMinorVersion"], - enableAutomaticUpgrade: - p.properties?.["enableAutomaticUpgrade"], - settings: p.properties?.["settings"], - protectedSettings: p.properties?.["protectedSettings"], - provisioningState: p.properties?.["provisioningState"], - provisionAfterExtensions: - p.properties?.["provisionAfterExtensions"], - suppressFailures: p.properties?.["suppressFailures"], - protectedSettingsFromKeyVault: !p.properties - ?.protectedSettingsFromKeyVault - ? undefined - : { - secretUrl: - p.properties?.protectedSettingsFromKeyVault?.[ - "secretUrl" - ], - sourceVault: { - id: p.properties?.protectedSettingsFromKeyVault - ?.sourceVault["id"], - }, - }, - }, - }; - }), - extensionsTimeBudget: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .extensionProfile?.["extensionsTimeBudget"], - }, - licenseType: - res.body.properties?.computeProfile.baseVirtualMachineProfile["licenseType"], - scheduledEventsProfile: !res.body.properties?.computeProfile.baseVirtualMachineProfile - .scheduledEventsProfile - ? undefined - : { - terminateNotificationProfile: !res.body.properties?.computeProfile - .baseVirtualMachineProfile.scheduledEventsProfile - ?.terminateNotificationProfile - ? undefined - : { - notBeforeTimeout: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .scheduledEventsProfile?.terminateNotificationProfile?.[ - "notBeforeTimeout" - ], - enable: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .scheduledEventsProfile?.terminateNotificationProfile?.["enable"], - }, - osImageNotificationProfile: !res.body.properties?.computeProfile - .baseVirtualMachineProfile.scheduledEventsProfile?.osImageNotificationProfile - ? undefined - : { - notBeforeTimeout: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .scheduledEventsProfile?.osImageNotificationProfile?.[ - "notBeforeTimeout" - ], - enable: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .scheduledEventsProfile?.osImageNotificationProfile?.["enable"], - }, - }, - userData: res.body.properties?.computeProfile.baseVirtualMachineProfile["userData"], - capacityReservation: !res.body.properties?.computeProfile.baseVirtualMachineProfile - .capacityReservation - ? undefined - : { - capacityReservationGroup: !res.body.properties?.computeProfile - .baseVirtualMachineProfile.capacityReservation?.capacityReservationGroup - ? undefined - : { - id: res.body.properties?.computeProfile.baseVirtualMachineProfile - .capacityReservation?.capacityReservationGroup?.["id"], - }, - }, - applicationProfile: !res.body.properties?.computeProfile.baseVirtualMachineProfile - .applicationProfile - ? undefined - : { - galleryApplications: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .applicationProfile?.["galleryApplications"] === undefined - ? res.body.properties?.computeProfile.baseVirtualMachineProfile - .applicationProfile?.["galleryApplications"] - : res.body.properties?.computeProfile.baseVirtualMachineProfile.applicationProfile?.[ - "galleryApplications" - ].map((p) => { - return { - tags: p["tags"], - order: p["order"], - packageReferenceId: p["packageReferenceId"], - configurationReference: p["configurationReference"], - treatFailureAsDeploymentFailure: p["treatFailureAsDeploymentFailure"], - enableAutomaticUpgrade: p["enableAutomaticUpgrade"], - }; - }), - }, - hardwareProfile: !res.body.properties?.computeProfile.baseVirtualMachineProfile - .hardwareProfile - ? undefined - : { - vmSizeProperties: !res.body.properties?.computeProfile.baseVirtualMachineProfile - .hardwareProfile?.vmSizeProperties - ? undefined - : { - vCPUsAvailable: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .hardwareProfile?.vmSizeProperties?.["vCPUsAvailable"], - vCPUsPerCore: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .hardwareProfile?.vmSizeProperties?.["vCPUsPerCore"], - }, - }, - serviceArtifactReference: !res.body.properties?.computeProfile - .baseVirtualMachineProfile.serviceArtifactReference - ? undefined - : { - id: res.body.properties?.computeProfile.baseVirtualMachineProfile - .serviceArtifactReference?.["id"], - }, - securityPostureReference: !res.body.properties?.computeProfile - .baseVirtualMachineProfile.securityPostureReference - ? undefined - : { - id: res.body.properties?.computeProfile.baseVirtualMachineProfile - .securityPostureReference?.["id"], - excludeExtensions: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .securityPostureReference?.["excludeExtensions"], - isOverridable: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .securityPostureReference?.["isOverridable"], - }, - timeCreated: - res.body.properties?.computeProfile.baseVirtualMachineProfile["timeCreated"] !== - undefined - ? new Date( - res.body.properties?.computeProfile.baseVirtualMachineProfile["timeCreated"], - ) - : undefined, - }, - computeApiVersion: res.body.properties?.computeProfile["computeApiVersion"], - platformFaultDomainCount: - res.body.properties?.computeProfile["platformFaultDomainCount"], - }, - timeCreated: - res.body.properties?.["timeCreated"] !== undefined - ? new Date(res.body.properties?.["timeCreated"]) - : undefined, - uniqueId: res.body.properties?.["uniqueId"], - }, - zones: res.body["zones"], - identity: !res.body.identity - ? undefined - : { - principalId: res.body.identity?.["principalId"], - tenantId: res.body.identity?.["tenantId"], - type: res.body.identity?.["type"], - userAssignedIdentities: res.body.identity?.["userAssignedIdentities"], - }, - plan: !res.body.plan - ? undefined - : { - name: res.body.plan?.["name"], - publisher: res.body.plan?.["publisher"], - product: res.body.plan?.["product"], - promotionCode: res.body.plan?.["promotionCode"], - version: res.body.plan?.["version"], - }, - }; -} - -/** 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, { - updateIntervalInMs: options?.updateIntervalInMs, - abortSignal: options?.abortSignal, - getInitialResponse: () => - _fleetsCreateOrUpdateSend( - context, - subscriptionId, - resourceGroupName, - fleetName, - resource, - options, - ), - }) as PollerLike, Fleet>; -} - -export function _fleetsUpdateSend( - context: Client, - subscriptionId: string, - resourceGroupName: string, - fleetName: string, - properties: FleetUpdate, - options: FleetsUpdateOptionalParams = { requestOptions: {} }, -): StreamableMethod< - | FleetsUpdate200Response - | FleetsUpdate202Response - | FleetsUpdateDefaultResponse - | FleetsUpdateLogicalResponse -> { - return context - .path( - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureFleet/fleets/{fleetName}", - subscriptionId, - resourceGroupName, - fleetName, - ) - .patch({ - ...operationOptionsToRequestParameters(options), - body: { - tags: !properties.tags ? properties.tags : (serializeRecord(properties.tags as any) as any), - identity: !properties.identity - ? properties.identity - : managedServiceIdentityUpdateSerializer(properties.identity), - plan: !properties.plan ? properties.plan : resourcePlanUpdateSerializer(properties.plan), - properties: !properties.properties - ? properties.properties - : fleetPropertiesSerializer(properties.properties), - }, - }); -} - -export async function _fleetsUpdateDeserialize( - result: - | FleetsUpdate200Response - | FleetsUpdate202Response - | FleetsUpdateDefaultResponse - | FleetsUpdateLogicalResponse, -): Promise { - if (isUnexpected(result)) { - throw createRestError(result); - } - - const res = result as unknown as FleetsUpdateLogicalResponse; - return { - tags: res.body["tags"], - location: res.body["location"], - id: res.body["id"], - name: res.body["name"], - type: res.body["type"], - systemData: !res.body.systemData - ? undefined - : { - createdBy: res.body.systemData?.["createdBy"], - createdByType: res.body.systemData?.["createdByType"], - createdAt: - res.body.systemData?.["createdAt"] !== undefined - ? new Date(res.body.systemData?.["createdAt"]) - : undefined, - lastModifiedBy: res.body.systemData?.["lastModifiedBy"], - lastModifiedByType: res.body.systemData?.["lastModifiedByType"], - lastModifiedAt: - res.body.systemData?.["lastModifiedAt"] !== undefined - ? new Date(res.body.systemData?.["lastModifiedAt"]) - : undefined, - }, - properties: !res.body.properties - ? undefined - : { - provisioningState: res.body.properties?.["provisioningState"], - spotPriorityProfile: !res.body.properties?.spotPriorityProfile - ? undefined - : { - capacity: res.body.properties?.spotPriorityProfile?.["capacity"], - minCapacity: res.body.properties?.spotPriorityProfile?.["minCapacity"], - maxPricePerVM: res.body.properties?.spotPriorityProfile?.["maxPricePerVM"], - evictionPolicy: res.body.properties?.spotPriorityProfile?.["evictionPolicy"], - allocationStrategy: - res.body.properties?.spotPriorityProfile?.["allocationStrategy"], - maintain: res.body.properties?.spotPriorityProfile?.["maintain"], - }, - regularPriorityProfile: !res.body.properties?.regularPriorityProfile - ? undefined - : { - capacity: res.body.properties?.regularPriorityProfile?.["capacity"], - minCapacity: res.body.properties?.regularPriorityProfile?.["minCapacity"], - allocationStrategy: - res.body.properties?.regularPriorityProfile?.["allocationStrategy"], - }, - vmSizesProfile: res.body.properties?.["vmSizesProfile"].map((p) => { - return { name: p["name"], rank: p["rank"] }; - }), - computeProfile: { - baseVirtualMachineProfile: { - osProfile: !res.body.properties?.computeProfile.baseVirtualMachineProfile.osProfile - ? undefined - : { - computerNamePrefix: - res.body.properties?.computeProfile.baseVirtualMachineProfile.osProfile?.[ - "computerNamePrefix" - ], - adminUsername: - res.body.properties?.computeProfile.baseVirtualMachineProfile.osProfile?.[ - "adminUsername" - ], - adminPassword: - res.body.properties?.computeProfile.baseVirtualMachineProfile.osProfile?.[ - "adminPassword" - ], - customData: - res.body.properties?.computeProfile.baseVirtualMachineProfile.osProfile?.[ - "customData" - ], - windowsConfiguration: !res.body.properties?.computeProfile - .baseVirtualMachineProfile.osProfile?.windowsConfiguration - ? undefined - : { - provisionVMAgent: - res.body.properties?.computeProfile.baseVirtualMachineProfile.osProfile - ?.windowsConfiguration?.["provisionVMAgent"], - enableAutomaticUpdates: - res.body.properties?.computeProfile.baseVirtualMachineProfile.osProfile - ?.windowsConfiguration?.["enableAutomaticUpdates"], - timeZone: - res.body.properties?.computeProfile.baseVirtualMachineProfile.osProfile - ?.windowsConfiguration?.["timeZone"], - additionalUnattendContent: - res.body.properties?.computeProfile.baseVirtualMachineProfile.osProfile - ?.windowsConfiguration?.["additionalUnattendContent"] === undefined - ? res.body.properties?.computeProfile.baseVirtualMachineProfile - .osProfile?.windowsConfiguration?.["additionalUnattendContent"] - : res.body.properties?.computeProfile.baseVirtualMachineProfile.osProfile?.windowsConfiguration?.[ - "additionalUnattendContent" - ].map((p) => { - return { - passName: p["passName"], - componentName: p["componentName"], - settingName: p["settingName"], - content: p["content"], - }; - }), - patchSettings: !res.body.properties?.computeProfile - .baseVirtualMachineProfile.osProfile?.windowsConfiguration - ?.patchSettings - ? undefined - : { - patchMode: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .osProfile?.windowsConfiguration?.patchSettings?.["patchMode"], - enableHotpatching: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .osProfile?.windowsConfiguration?.patchSettings?.[ - "enableHotpatching" - ], - assessmentMode: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .osProfile?.windowsConfiguration?.patchSettings?.[ - "assessmentMode" - ], - automaticByPlatformSettings: !res.body.properties?.computeProfile - .baseVirtualMachineProfile.osProfile?.windowsConfiguration - ?.patchSettings?.automaticByPlatformSettings - ? undefined - : { - rebootSetting: - res.body.properties?.computeProfile - .baseVirtualMachineProfile.osProfile?.windowsConfiguration - ?.patchSettings?.automaticByPlatformSettings?.[ - "rebootSetting" - ], - bypassPlatformSafetyChecksOnUserSchedule: - res.body.properties?.computeProfile - .baseVirtualMachineProfile.osProfile?.windowsConfiguration - ?.patchSettings?.automaticByPlatformSettings?.[ - "bypassPlatformSafetyChecksOnUserSchedule" - ], - }, - }, - winRM: !res.body.properties?.computeProfile.baseVirtualMachineProfile - .osProfile?.windowsConfiguration?.winRM - ? undefined - : { - listeners: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .osProfile?.windowsConfiguration?.winRM?.["listeners"] === - undefined - ? res.body.properties?.computeProfile.baseVirtualMachineProfile - .osProfile?.windowsConfiguration?.winRM?.["listeners"] - : res.body.properties?.computeProfile.baseVirtualMachineProfile.osProfile?.windowsConfiguration?.winRM?.[ - "listeners" - ].map((p) => { - return { - protocol: p["protocol"], - certificateUrl: p["certificateUrl"], - }; - }), - }, - enableVMAgentPlatformUpdates: - res.body.properties?.computeProfile.baseVirtualMachineProfile.osProfile - ?.windowsConfiguration?.["enableVMAgentPlatformUpdates"], - }, - linuxConfiguration: !res.body.properties?.computeProfile - .baseVirtualMachineProfile.osProfile?.linuxConfiguration - ? undefined - : { - disablePasswordAuthentication: - res.body.properties?.computeProfile.baseVirtualMachineProfile.osProfile - ?.linuxConfiguration?.["disablePasswordAuthentication"], - ssh: !res.body.properties?.computeProfile.baseVirtualMachineProfile - .osProfile?.linuxConfiguration?.ssh - ? undefined - : { - publicKeys: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .osProfile?.linuxConfiguration?.ssh?.["publicKeys"] === - undefined - ? res.body.properties?.computeProfile.baseVirtualMachineProfile - .osProfile?.linuxConfiguration?.ssh?.["publicKeys"] - : res.body.properties?.computeProfile.baseVirtualMachineProfile.osProfile?.linuxConfiguration?.ssh?.[ - "publicKeys" - ].map((p) => { - return { - path: p["path"], - keyData: p["keyData"], - }; - }), - }, - provisionVMAgent: - res.body.properties?.computeProfile.baseVirtualMachineProfile.osProfile - ?.linuxConfiguration?.["provisionVMAgent"], - patchSettings: !res.body.properties?.computeProfile - .baseVirtualMachineProfile.osProfile?.linuxConfiguration?.patchSettings - ? undefined - : { - patchMode: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .osProfile?.linuxConfiguration?.patchSettings?.["patchMode"], - assessmentMode: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .osProfile?.linuxConfiguration?.patchSettings?.[ - "assessmentMode" - ], - automaticByPlatformSettings: !res.body.properties?.computeProfile - .baseVirtualMachineProfile.osProfile?.linuxConfiguration - ?.patchSettings?.automaticByPlatformSettings - ? undefined - : { - rebootSetting: - res.body.properties?.computeProfile - .baseVirtualMachineProfile.osProfile?.linuxConfiguration - ?.patchSettings?.automaticByPlatformSettings?.[ - "rebootSetting" - ], - bypassPlatformSafetyChecksOnUserSchedule: - res.body.properties?.computeProfile - .baseVirtualMachineProfile.osProfile?.linuxConfiguration - ?.patchSettings?.automaticByPlatformSettings?.[ - "bypassPlatformSafetyChecksOnUserSchedule" - ], - }, - }, - enableVMAgentPlatformUpdates: - res.body.properties?.computeProfile.baseVirtualMachineProfile.osProfile - ?.linuxConfiguration?.["enableVMAgentPlatformUpdates"], - }, - secrets: - res.body.properties?.computeProfile.baseVirtualMachineProfile.osProfile?.[ - "secrets" - ] === undefined - ? res.body.properties?.computeProfile.baseVirtualMachineProfile.osProfile?.[ - "secrets" - ] - : res.body.properties?.computeProfile.baseVirtualMachineProfile.osProfile?.[ - "secrets" - ].map((p) => { - return { - sourceVault: !p.sourceVault - ? undefined - : { id: p.sourceVault?.["id"] }, - vaultCertificates: - p["vaultCertificates"] === undefined - ? p["vaultCertificates"] - : p["vaultCertificates"].map((p) => { - return { - certificateUrl: p["certificateUrl"], - certificateStore: p["certificateStore"], - }; - }), - }; - }), - allowExtensionOperations: - res.body.properties?.computeProfile.baseVirtualMachineProfile.osProfile?.[ - "allowExtensionOperations" - ], - requireGuestProvisionSignal: - res.body.properties?.computeProfile.baseVirtualMachineProfile.osProfile?.[ - "requireGuestProvisionSignal" - ], - }, - storageProfile: !res.body.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile - ? undefined - : { - imageReference: !res.body.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.imageReference - ? undefined - : { - id: res.body.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.imageReference?.["id"], - publisher: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.imageReference?.["publisher"], - offer: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.imageReference?.["offer"], - sku: res.body.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.imageReference?.["sku"], - version: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.imageReference?.["version"], - exactVersion: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.imageReference?.["exactVersion"], - sharedGalleryImageId: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.imageReference?.["sharedGalleryImageId"], - communityGalleryImageId: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.imageReference?.["communityGalleryImageId"], - }, - osDisk: !res.body.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.osDisk - ? undefined - : { - name: res.body.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.osDisk?.["name"], - caching: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.osDisk?.["caching"], - writeAcceleratorEnabled: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.osDisk?.["writeAcceleratorEnabled"], - createOption: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.osDisk?.["createOption"], - diffDiskSettings: !res.body.properties?.computeProfile - .baseVirtualMachineProfile.storageProfile?.osDisk?.diffDiskSettings - ? undefined - : { - option: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.osDisk?.diffDiskSettings?.["option"], - placement: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.osDisk?.diffDiskSettings?.["placement"], - }, - diskSizeGB: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.osDisk?.["diskSizeGB"], - osType: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.osDisk?.["osType"], - image: !res.body.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.osDisk?.image - ? undefined - : { - uri: res.body.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.osDisk?.image?.["uri"], - }, - vhdContainers: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.osDisk?.["vhdContainers"], - managedDisk: !res.body.properties?.computeProfile - .baseVirtualMachineProfile.storageProfile?.osDisk?.managedDisk - ? undefined - : { - storageAccountType: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.osDisk?.managedDisk?.["storageAccountType"], - diskEncryptionSet: !res.body.properties?.computeProfile - .baseVirtualMachineProfile.storageProfile?.osDisk?.managedDisk - ?.diskEncryptionSet - ? undefined - : { - id: res.body.properties?.computeProfile - .baseVirtualMachineProfile.storageProfile?.osDisk - ?.managedDisk?.diskEncryptionSet?.["id"], - }, - securityProfile: !res.body.properties?.computeProfile - .baseVirtualMachineProfile.storageProfile?.osDisk?.managedDisk - ?.securityProfile - ? undefined - : { - securityEncryptionType: - res.body.properties?.computeProfile - .baseVirtualMachineProfile.storageProfile?.osDisk - ?.managedDisk?.securityProfile?.[ - "securityEncryptionType" - ], - diskEncryptionSet: !res.body.properties?.computeProfile - .baseVirtualMachineProfile.storageProfile?.osDisk - ?.managedDisk?.securityProfile?.diskEncryptionSet - ? undefined - : { - id: res.body.properties?.computeProfile - .baseVirtualMachineProfile.storageProfile?.osDisk - ?.managedDisk?.securityProfile?.diskEncryptionSet?.[ - "id" - ], - }, - }, - }, - deleteOption: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.osDisk?.["deleteOption"], - }, - dataDisks: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.["dataDisks"] === undefined - ? res.body.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.["dataDisks"] - : res.body.properties?.computeProfile.baseVirtualMachineProfile.storageProfile?.[ - "dataDisks" - ].map((p) => { - return { - name: p["name"], - lun: p["lun"], - caching: p["caching"], - writeAcceleratorEnabled: p["writeAcceleratorEnabled"], - createOption: p["createOption"], - diskSizeGB: p["diskSizeGB"], - managedDisk: !p.managedDisk - ? undefined - : { - storageAccountType: p.managedDisk?.["storageAccountType"], - diskEncryptionSet: !p.managedDisk?.diskEncryptionSet - ? undefined - : { - id: p.managedDisk?.diskEncryptionSet?.["id"], - }, - securityProfile: !p.managedDisk?.securityProfile - ? undefined - : { - securityEncryptionType: - p.managedDisk?.securityProfile?.[ - "securityEncryptionType" - ], - diskEncryptionSet: !p.managedDisk?.securityProfile - ?.diskEncryptionSet - ? undefined - : { - id: p.managedDisk?.securityProfile - ?.diskEncryptionSet?.["id"], - }, - }, - }, - diskIOPSReadWrite: p["diskIOPSReadWrite"], - diskMBpsReadWrite: p["diskMBpsReadWrite"], - deleteOption: p["deleteOption"], - }; - }), - diskControllerType: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.["diskControllerType"], - }, - networkProfile: !res.body.properties?.computeProfile.baseVirtualMachineProfile - .networkProfile - ? undefined - : { - healthProbe: !res.body.properties?.computeProfile.baseVirtualMachineProfile - .networkProfile?.healthProbe - ? undefined - : { - id: res.body.properties?.computeProfile.baseVirtualMachineProfile - .networkProfile?.healthProbe?.["id"], - }, - networkInterfaceConfigurations: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .networkProfile?.["networkInterfaceConfigurations"] === undefined - ? res.body.properties?.computeProfile.baseVirtualMachineProfile - .networkProfile?.["networkInterfaceConfigurations"] - : res.body.properties?.computeProfile.baseVirtualMachineProfile.networkProfile?.[ - "networkInterfaceConfigurations" - ].map((p) => { - return { - name: p["name"], - properties: !p.properties - ? undefined - : { - primary: p.properties?.["primary"], - enableAcceleratedNetworking: - p.properties?.["enableAcceleratedNetworking"], - disableTcpStateTracking: - p.properties?.["disableTcpStateTracking"], - enableFpga: p.properties?.["enableFpga"], - networkSecurityGroup: !p.properties?.networkSecurityGroup - ? undefined - : { - id: p.properties?.networkSecurityGroup?.["id"], - }, - dnsSettings: !p.properties?.dnsSettings - ? undefined - : { - dnsServers: p.properties?.dnsSettings?.["dnsServers"], - }, - ipConfigurations: p.properties?.["ipConfigurations"].map( - (p) => { - return { - name: p["name"], - properties: !p.properties - ? undefined - : { - subnet: !p.properties?.subnet - ? undefined - : { - id: p.properties?.subnet?.["id"], - }, - primary: p.properties?.["primary"], - publicIPAddressConfiguration: !p.properties - ?.publicIPAddressConfiguration - ? undefined - : { - name: p.properties - ?.publicIPAddressConfiguration?.["name"], - properties: !p.properties - ?.publicIPAddressConfiguration?.properties - ? undefined - : { - idleTimeoutInMinutes: - p.properties - ?.publicIPAddressConfiguration - ?.properties?.[ - "idleTimeoutInMinutes" - ], - dnsSettings: !p.properties - ?.publicIPAddressConfiguration - ?.properties?.dnsSettings - ? undefined - : { - domainNameLabel: - p.properties - ?.publicIPAddressConfiguration - ?.properties?.dnsSettings?.[ - "domainNameLabel" - ], - domainNameLabelScope: - p.properties - ?.publicIPAddressConfiguration - ?.properties?.dnsSettings?.[ - "domainNameLabelScope" - ], - }, - ipTags: - p.properties - ?.publicIPAddressConfiguration - ?.properties?.["ipTags"] === - undefined - ? p.properties - ?.publicIPAddressConfiguration - ?.properties?.["ipTags"] - : p.properties?.publicIPAddressConfiguration?.properties?.[ - "ipTags" - ].map((p) => { - return { - ipTagType: p["ipTagType"], - tag: p["tag"], - }; - }), - publicIPPrefix: !p.properties - ?.publicIPAddressConfiguration - ?.properties?.publicIPPrefix - ? undefined - : { - id: p.properties - ?.publicIPAddressConfiguration - ?.properties?.publicIPPrefix?.[ - "id" - ], - }, - publicIPAddressVersion: - p.properties - ?.publicIPAddressConfiguration - ?.properties?.[ - "publicIPAddressVersion" - ], - deleteOption: - p.properties - ?.publicIPAddressConfiguration - ?.properties?.["deleteOption"], - }, - sku: !p.properties - ?.publicIPAddressConfiguration?.sku - ? undefined - : { - name: p.properties - ?.publicIPAddressConfiguration?.sku?.[ - "name" - ], - tier: p.properties - ?.publicIPAddressConfiguration?.sku?.[ - "tier" - ], - }, - }, - privateIPAddressVersion: - p.properties?.["privateIPAddressVersion"], - applicationGatewayBackendAddressPools: - p.properties?.[ - "applicationGatewayBackendAddressPools" - ] === undefined - ? p.properties?.[ - "applicationGatewayBackendAddressPools" - ] - : p.properties?.[ - "applicationGatewayBackendAddressPools" - ].map((p) => { - return { id: p["id"] }; - }), - applicationSecurityGroups: - p.properties?.["applicationSecurityGroups"] === - undefined - ? p.properties?.["applicationSecurityGroups"] - : p.properties?.[ - "applicationSecurityGroups" - ].map((p) => { - return { id: p["id"] }; - }), - loadBalancerBackendAddressPools: - p.properties?.[ - "loadBalancerBackendAddressPools" - ] === undefined - ? p.properties?.[ - "loadBalancerBackendAddressPools" - ] - : p.properties?.[ - "loadBalancerBackendAddressPools" - ].map((p) => { - return { id: p["id"] }; - }), - loadBalancerInboundNatPools: - p.properties?.["loadBalancerInboundNatPools"] === - undefined - ? p.properties?.["loadBalancerInboundNatPools"] - : p.properties?.[ - "loadBalancerInboundNatPools" - ].map((p) => { - return { id: p["id"] }; - }), - }, - }; - }, - ), - enableIPForwarding: p.properties?.["enableIPForwarding"], - deleteOption: p.properties?.["deleteOption"], - auxiliaryMode: p.properties?.["auxiliaryMode"], - auxiliarySku: p.properties?.["auxiliarySku"], - }, - }; - }), - networkApiVersion: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .networkProfile?.["networkApiVersion"], - }, - securityProfile: !res.body.properties?.computeProfile.baseVirtualMachineProfile - .securityProfile - ? undefined - : { - uefiSettings: !res.body.properties?.computeProfile.baseVirtualMachineProfile - .securityProfile?.uefiSettings - ? undefined - : { - secureBootEnabled: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .securityProfile?.uefiSettings?.["secureBootEnabled"], - vTpmEnabled: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .securityProfile?.uefiSettings?.["vTpmEnabled"], - }, - encryptionAtHost: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .securityProfile?.["encryptionAtHost"], - securityType: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .securityProfile?.["securityType"], - encryptionIdentity: !res.body.properties?.computeProfile - .baseVirtualMachineProfile.securityProfile?.encryptionIdentity - ? undefined - : { - userAssignedIdentityResourceId: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .securityProfile?.encryptionIdentity?.[ - "userAssignedIdentityResourceId" - ], - }, - proxyAgentSettings: !res.body.properties?.computeProfile - .baseVirtualMachineProfile.securityProfile?.proxyAgentSettings - ? undefined - : { - enabled: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .securityProfile?.proxyAgentSettings?.["enabled"], - mode: res.body.properties?.computeProfile.baseVirtualMachineProfile - .securityProfile?.proxyAgentSettings?.["mode"], - keyIncarnationId: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .securityProfile?.proxyAgentSettings?.["keyIncarnationId"], - }, - }, - diagnosticsProfile: !res.body.properties?.computeProfile.baseVirtualMachineProfile - .diagnosticsProfile - ? undefined - : { - bootDiagnostics: !res.body.properties?.computeProfile.baseVirtualMachineProfile - .diagnosticsProfile?.bootDiagnostics - ? undefined - : { - enabled: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .diagnosticsProfile?.bootDiagnostics?.["enabled"], - storageUri: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .diagnosticsProfile?.bootDiagnostics?.["storageUri"], - }, - }, - extensionProfile: !res.body.properties?.computeProfile.baseVirtualMachineProfile - .extensionProfile - ? undefined - : { - extensions: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .extensionProfile?.["extensions"] === undefined - ? res.body.properties?.computeProfile.baseVirtualMachineProfile - .extensionProfile?.["extensions"] - : res.body.properties?.computeProfile.baseVirtualMachineProfile.extensionProfile?.[ - "extensions" - ].map((p) => { - return { - id: p["id"], - name: p["name"], - type: p["type"], - properties: !p.properties - ? undefined - : { - forceUpdateTag: p.properties?.["forceUpdateTag"], - publisher: p.properties?.["publisher"], - type: p.properties?.["type"], - typeHandlerVersion: p.properties?.["typeHandlerVersion"], - autoUpgradeMinorVersion: - p.properties?.["autoUpgradeMinorVersion"], - enableAutomaticUpgrade: - p.properties?.["enableAutomaticUpgrade"], - settings: p.properties?.["settings"], - protectedSettings: p.properties?.["protectedSettings"], - provisioningState: p.properties?.["provisioningState"], - provisionAfterExtensions: - p.properties?.["provisionAfterExtensions"], - suppressFailures: p.properties?.["suppressFailures"], - protectedSettingsFromKeyVault: !p.properties - ?.protectedSettingsFromKeyVault - ? undefined - : { - secretUrl: - p.properties?.protectedSettingsFromKeyVault?.[ - "secretUrl" - ], - sourceVault: { - id: p.properties?.protectedSettingsFromKeyVault - ?.sourceVault["id"], - }, - }, - }, - }; - }), - extensionsTimeBudget: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .extensionProfile?.["extensionsTimeBudget"], - }, - licenseType: - res.body.properties?.computeProfile.baseVirtualMachineProfile["licenseType"], - scheduledEventsProfile: !res.body.properties?.computeProfile.baseVirtualMachineProfile - .scheduledEventsProfile - ? undefined - : { - terminateNotificationProfile: !res.body.properties?.computeProfile - .baseVirtualMachineProfile.scheduledEventsProfile - ?.terminateNotificationProfile - ? undefined - : { - notBeforeTimeout: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .scheduledEventsProfile?.terminateNotificationProfile?.[ - "notBeforeTimeout" - ], - enable: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .scheduledEventsProfile?.terminateNotificationProfile?.["enable"], - }, - osImageNotificationProfile: !res.body.properties?.computeProfile - .baseVirtualMachineProfile.scheduledEventsProfile?.osImageNotificationProfile - ? undefined - : { - notBeforeTimeout: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .scheduledEventsProfile?.osImageNotificationProfile?.[ - "notBeforeTimeout" - ], - enable: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .scheduledEventsProfile?.osImageNotificationProfile?.["enable"], - }, - }, - userData: res.body.properties?.computeProfile.baseVirtualMachineProfile["userData"], - capacityReservation: !res.body.properties?.computeProfile.baseVirtualMachineProfile - .capacityReservation - ? undefined - : { - capacityReservationGroup: !res.body.properties?.computeProfile - .baseVirtualMachineProfile.capacityReservation?.capacityReservationGroup - ? undefined - : { - id: res.body.properties?.computeProfile.baseVirtualMachineProfile - .capacityReservation?.capacityReservationGroup?.["id"], - }, - }, - applicationProfile: !res.body.properties?.computeProfile.baseVirtualMachineProfile - .applicationProfile - ? undefined - : { - galleryApplications: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .applicationProfile?.["galleryApplications"] === undefined - ? res.body.properties?.computeProfile.baseVirtualMachineProfile - .applicationProfile?.["galleryApplications"] - : res.body.properties?.computeProfile.baseVirtualMachineProfile.applicationProfile?.[ - "galleryApplications" - ].map((p) => { - return { - tags: p["tags"], - order: p["order"], - packageReferenceId: p["packageReferenceId"], - configurationReference: p["configurationReference"], - treatFailureAsDeploymentFailure: p["treatFailureAsDeploymentFailure"], - enableAutomaticUpgrade: p["enableAutomaticUpgrade"], - }; - }), - }, - hardwareProfile: !res.body.properties?.computeProfile.baseVirtualMachineProfile - .hardwareProfile - ? undefined - : { - vmSizeProperties: !res.body.properties?.computeProfile.baseVirtualMachineProfile - .hardwareProfile?.vmSizeProperties - ? undefined - : { - vCPUsAvailable: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .hardwareProfile?.vmSizeProperties?.["vCPUsAvailable"], - vCPUsPerCore: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .hardwareProfile?.vmSizeProperties?.["vCPUsPerCore"], - }, - }, - serviceArtifactReference: !res.body.properties?.computeProfile - .baseVirtualMachineProfile.serviceArtifactReference - ? undefined - : { - id: res.body.properties?.computeProfile.baseVirtualMachineProfile - .serviceArtifactReference?.["id"], - }, - securityPostureReference: !res.body.properties?.computeProfile - .baseVirtualMachineProfile.securityPostureReference - ? undefined - : { - id: res.body.properties?.computeProfile.baseVirtualMachineProfile - .securityPostureReference?.["id"], - excludeExtensions: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .securityPostureReference?.["excludeExtensions"], - isOverridable: - res.body.properties?.computeProfile.baseVirtualMachineProfile - .securityPostureReference?.["isOverridable"], - }, - timeCreated: - res.body.properties?.computeProfile.baseVirtualMachineProfile["timeCreated"] !== - undefined - ? new Date( - res.body.properties?.computeProfile.baseVirtualMachineProfile["timeCreated"], - ) - : undefined, - }, - computeApiVersion: res.body.properties?.computeProfile["computeApiVersion"], - platformFaultDomainCount: - res.body.properties?.computeProfile["platformFaultDomainCount"], - }, - timeCreated: - res.body.properties?.["timeCreated"] !== undefined - ? new Date(res.body.properties?.["timeCreated"]) - : undefined, - uniqueId: res.body.properties?.["uniqueId"], - }, - zones: res.body["zones"], - identity: !res.body.identity - ? undefined - : { - principalId: res.body.identity?.["principalId"], - tenantId: res.body.identity?.["tenantId"], - type: res.body.identity?.["type"], - userAssignedIdentities: res.body.identity?.["userAssignedIdentities"], - }, - plan: !res.body.plan - ? undefined - : { - name: res.body.plan?.["name"], - publisher: res.body.plan?.["publisher"], - product: res.body.plan?.["product"], - promotionCode: res.body.plan?.["promotionCode"], - version: res.body.plan?.["version"], - }, - }; -} - -/** 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, { - updateIntervalInMs: options?.updateIntervalInMs, - abortSignal: options?.abortSignal, - getInitialResponse: () => - _fleetsUpdateSend(context, subscriptionId, resourceGroupName, fleetName, properties, options), - }) as PollerLike, Fleet>; -} - -export function _fleetsDeleteSend( - context: Client, - subscriptionId: string, - resourceGroupName: string, - fleetName: string, - options: FleetsDeleteOptionalParams = { requestOptions: {} }, -): StreamableMethod< - | FleetsDelete202Response - | FleetsDelete204Response - | FleetsDeleteDefaultResponse - | FleetsDeleteLogicalResponse -> { - return context - .path( - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureFleet/fleets/{fleetName}", - subscriptionId, - resourceGroupName, - fleetName, - ) - .delete({ ...operationOptionsToRequestParameters(options) }); -} - -export async function _fleetsDeleteDeserialize( - result: - | FleetsDelete202Response - | FleetsDelete204Response - | FleetsDeleteDefaultResponse - | FleetsDeleteLogicalResponse, -): Promise { - if (isUnexpected(result)) { - 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, { - updateIntervalInMs: options?.updateIntervalInMs, - abortSignal: options?.abortSignal, - getInitialResponse: () => - _fleetsDeleteSend(context, subscriptionId, resourceGroupName, fleetName, options), - }) as PollerLike, void>; -} - -export function _fleetsListByResourceGroupSend( - context: Client, - subscriptionId: string, - resourceGroupName: string, - options: FleetsListByResourceGroupOptionalParams = { requestOptions: {} }, -): StreamableMethod< - FleetsListByResourceGroup200Response | FleetsListByResourceGroupDefaultResponse -> { - return context - .path( - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureFleet/fleets", - subscriptionId, - resourceGroupName, - ) - .get({ ...operationOptionsToRequestParameters(options) }); -} - -export async function _fleetsListByResourceGroupDeserialize( - result: FleetsListByResourceGroup200Response | FleetsListByResourceGroupDefaultResponse, -): Promise<_FleetListResult> { - if (isUnexpected(result)) { - throw createRestError(result); - } - - return { - value: result.body["value"].map((p) => { - return { - tags: p["tags"], - location: p["location"], - id: p["id"], - name: p["name"], - type: p["type"], - systemData: !p.systemData - ? undefined - : { - createdBy: p.systemData?.["createdBy"], - createdByType: p.systemData?.["createdByType"], - createdAt: - p.systemData?.["createdAt"] !== undefined - ? new Date(p.systemData?.["createdAt"]) - : undefined, - lastModifiedBy: p.systemData?.["lastModifiedBy"], - lastModifiedByType: p.systemData?.["lastModifiedByType"], - lastModifiedAt: - p.systemData?.["lastModifiedAt"] !== undefined - ? new Date(p.systemData?.["lastModifiedAt"]) - : undefined, - }, - properties: !p.properties - ? undefined - : { - provisioningState: p.properties?.["provisioningState"], - spotPriorityProfile: !p.properties?.spotPriorityProfile - ? undefined - : { - capacity: p.properties?.spotPriorityProfile?.["capacity"], - minCapacity: p.properties?.spotPriorityProfile?.["minCapacity"], - maxPricePerVM: p.properties?.spotPriorityProfile?.["maxPricePerVM"], - evictionPolicy: p.properties?.spotPriorityProfile?.["evictionPolicy"], - allocationStrategy: p.properties?.spotPriorityProfile?.["allocationStrategy"], - maintain: p.properties?.spotPriorityProfile?.["maintain"], - }, - regularPriorityProfile: !p.properties?.regularPriorityProfile - ? undefined - : { - capacity: p.properties?.regularPriorityProfile?.["capacity"], - minCapacity: p.properties?.regularPriorityProfile?.["minCapacity"], - allocationStrategy: - p.properties?.regularPriorityProfile?.["allocationStrategy"], - }, - vmSizesProfile: p.properties?.["vmSizesProfile"].map((p) => { - return { name: p["name"], rank: p["rank"] }; - }), - computeProfile: { - baseVirtualMachineProfile: { - osProfile: !p.properties?.computeProfile.baseVirtualMachineProfile.osProfile - ? undefined - : { - computerNamePrefix: - p.properties?.computeProfile.baseVirtualMachineProfile.osProfile?.[ - "computerNamePrefix" - ], - adminUsername: - p.properties?.computeProfile.baseVirtualMachineProfile.osProfile?.[ - "adminUsername" - ], - adminPassword: - p.properties?.computeProfile.baseVirtualMachineProfile.osProfile?.[ - "adminPassword" - ], - customData: - p.properties?.computeProfile.baseVirtualMachineProfile.osProfile?.[ - "customData" - ], - windowsConfiguration: !p.properties?.computeProfile - .baseVirtualMachineProfile.osProfile?.windowsConfiguration - ? undefined - : { - provisionVMAgent: - p.properties?.computeProfile.baseVirtualMachineProfile.osProfile - ?.windowsConfiguration?.["provisionVMAgent"], - enableAutomaticUpdates: - p.properties?.computeProfile.baseVirtualMachineProfile.osProfile - ?.windowsConfiguration?.["enableAutomaticUpdates"], - timeZone: - p.properties?.computeProfile.baseVirtualMachineProfile.osProfile - ?.windowsConfiguration?.["timeZone"], - additionalUnattendContent: - p.properties?.computeProfile.baseVirtualMachineProfile.osProfile - ?.windowsConfiguration?.["additionalUnattendContent"] === - undefined - ? p.properties?.computeProfile.baseVirtualMachineProfile.osProfile - ?.windowsConfiguration?.["additionalUnattendContent"] - : p.properties?.computeProfile.baseVirtualMachineProfile.osProfile?.windowsConfiguration?.[ - "additionalUnattendContent" - ].map((p) => { - return { - passName: p["passName"], - componentName: p["componentName"], - settingName: p["settingName"], - content: p["content"], - }; - }), - patchSettings: !p.properties?.computeProfile.baseVirtualMachineProfile - .osProfile?.windowsConfiguration?.patchSettings - ? undefined - : { - patchMode: - p.properties?.computeProfile.baseVirtualMachineProfile - .osProfile?.windowsConfiguration?.patchSettings?.[ - "patchMode" - ], - enableHotpatching: - p.properties?.computeProfile.baseVirtualMachineProfile - .osProfile?.windowsConfiguration?.patchSettings?.[ - "enableHotpatching" - ], - assessmentMode: - p.properties?.computeProfile.baseVirtualMachineProfile - .osProfile?.windowsConfiguration?.patchSettings?.[ - "assessmentMode" - ], - automaticByPlatformSettings: !p.properties?.computeProfile - .baseVirtualMachineProfile.osProfile?.windowsConfiguration - ?.patchSettings?.automaticByPlatformSettings - ? undefined - : { - rebootSetting: - p.properties?.computeProfile.baseVirtualMachineProfile - .osProfile?.windowsConfiguration?.patchSettings - ?.automaticByPlatformSettings?.["rebootSetting"], - bypassPlatformSafetyChecksOnUserSchedule: - p.properties?.computeProfile.baseVirtualMachineProfile - .osProfile?.windowsConfiguration?.patchSettings - ?.automaticByPlatformSettings?.[ - "bypassPlatformSafetyChecksOnUserSchedule" - ], - }, - }, - winRM: !p.properties?.computeProfile.baseVirtualMachineProfile - .osProfile?.windowsConfiguration?.winRM - ? undefined - : { - listeners: - p.properties?.computeProfile.baseVirtualMachineProfile - .osProfile?.windowsConfiguration?.winRM?.["listeners"] === - undefined - ? p.properties?.computeProfile.baseVirtualMachineProfile - .osProfile?.windowsConfiguration?.winRM?.["listeners"] - : p.properties?.computeProfile.baseVirtualMachineProfile.osProfile?.windowsConfiguration?.winRM?.[ - "listeners" - ].map((p) => { - return { - protocol: p["protocol"], - certificateUrl: p["certificateUrl"], - }; - }), - }, - enableVMAgentPlatformUpdates: - p.properties?.computeProfile.baseVirtualMachineProfile.osProfile - ?.windowsConfiguration?.["enableVMAgentPlatformUpdates"], - }, - linuxConfiguration: !p.properties?.computeProfile.baseVirtualMachineProfile - .osProfile?.linuxConfiguration - ? undefined - : { - disablePasswordAuthentication: - p.properties?.computeProfile.baseVirtualMachineProfile.osProfile - ?.linuxConfiguration?.["disablePasswordAuthentication"], - ssh: !p.properties?.computeProfile.baseVirtualMachineProfile.osProfile - ?.linuxConfiguration?.ssh - ? undefined - : { - publicKeys: - p.properties?.computeProfile.baseVirtualMachineProfile - .osProfile?.linuxConfiguration?.ssh?.["publicKeys"] === - undefined - ? p.properties?.computeProfile.baseVirtualMachineProfile - .osProfile?.linuxConfiguration?.ssh?.["publicKeys"] - : p.properties?.computeProfile.baseVirtualMachineProfile.osProfile?.linuxConfiguration?.ssh?.[ - "publicKeys" - ].map((p) => { - return { - path: p["path"], - keyData: p["keyData"], - }; - }), - }, - provisionVMAgent: - p.properties?.computeProfile.baseVirtualMachineProfile.osProfile - ?.linuxConfiguration?.["provisionVMAgent"], - patchSettings: !p.properties?.computeProfile.baseVirtualMachineProfile - .osProfile?.linuxConfiguration?.patchSettings - ? undefined - : { - patchMode: - p.properties?.computeProfile.baseVirtualMachineProfile - .osProfile?.linuxConfiguration?.patchSettings?.[ - "patchMode" - ], - assessmentMode: - p.properties?.computeProfile.baseVirtualMachineProfile - .osProfile?.linuxConfiguration?.patchSettings?.[ - "assessmentMode" - ], - automaticByPlatformSettings: !p.properties?.computeProfile - .baseVirtualMachineProfile.osProfile?.linuxConfiguration - ?.patchSettings?.automaticByPlatformSettings - ? undefined - : { - rebootSetting: - p.properties?.computeProfile.baseVirtualMachineProfile - .osProfile?.linuxConfiguration?.patchSettings - ?.automaticByPlatformSettings?.["rebootSetting"], - bypassPlatformSafetyChecksOnUserSchedule: - p.properties?.computeProfile.baseVirtualMachineProfile - .osProfile?.linuxConfiguration?.patchSettings - ?.automaticByPlatformSettings?.[ - "bypassPlatformSafetyChecksOnUserSchedule" - ], - }, - }, - enableVMAgentPlatformUpdates: - p.properties?.computeProfile.baseVirtualMachineProfile.osProfile - ?.linuxConfiguration?.["enableVMAgentPlatformUpdates"], - }, - secrets: - p.properties?.computeProfile.baseVirtualMachineProfile.osProfile?.[ - "secrets" - ] === undefined - ? p.properties?.computeProfile.baseVirtualMachineProfile.osProfile?.[ - "secrets" - ] - : p.properties?.computeProfile.baseVirtualMachineProfile.osProfile?.[ - "secrets" - ].map((p) => { - return { - sourceVault: !p.sourceVault - ? undefined - : { id: p.sourceVault?.["id"] }, - vaultCertificates: - p["vaultCertificates"] === undefined - ? p["vaultCertificates"] - : p["vaultCertificates"].map((p) => { - return { - certificateUrl: p["certificateUrl"], - certificateStore: p["certificateStore"], - }; - }), - }; - }), - allowExtensionOperations: - p.properties?.computeProfile.baseVirtualMachineProfile.osProfile?.[ - "allowExtensionOperations" - ], - requireGuestProvisionSignal: - p.properties?.computeProfile.baseVirtualMachineProfile.osProfile?.[ - "requireGuestProvisionSignal" - ], - }, - storageProfile: !p.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile - ? undefined - : { - imageReference: !p.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.imageReference - ? undefined - : { - id: p.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.imageReference?.["id"], - publisher: - p.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.imageReference?.["publisher"], - offer: - p.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.imageReference?.["offer"], - sku: p.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.imageReference?.["sku"], - version: - p.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.imageReference?.["version"], - exactVersion: - p.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.imageReference?.["exactVersion"], - sharedGalleryImageId: - p.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.imageReference?.["sharedGalleryImageId"], - communityGalleryImageId: - p.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.imageReference?.["communityGalleryImageId"], - }, - osDisk: !p.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.osDisk - ? undefined - : { - name: p.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.osDisk?.["name"], - caching: - p.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.osDisk?.["caching"], - writeAcceleratorEnabled: - p.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.osDisk?.["writeAcceleratorEnabled"], - createOption: - p.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.osDisk?.["createOption"], - diffDiskSettings: !p.properties?.computeProfile - .baseVirtualMachineProfile.storageProfile?.osDisk?.diffDiskSettings - ? undefined - : { - option: - p.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.osDisk?.diffDiskSettings?.["option"], - placement: - p.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.osDisk?.diffDiskSettings?.["placement"], - }, - diskSizeGB: - p.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.osDisk?.["diskSizeGB"], - osType: - p.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.osDisk?.["osType"], - image: !p.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.osDisk?.image - ? undefined - : { - uri: p.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.osDisk?.image?.["uri"], - }, - vhdContainers: - p.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.osDisk?.["vhdContainers"], - managedDisk: !p.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.osDisk?.managedDisk - ? undefined - : { - storageAccountType: - p.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.osDisk?.managedDisk?.[ - "storageAccountType" - ], - diskEncryptionSet: !p.properties?.computeProfile - .baseVirtualMachineProfile.storageProfile?.osDisk?.managedDisk - ?.diskEncryptionSet - ? undefined - : { - id: p.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.osDisk?.managedDisk - ?.diskEncryptionSet?.["id"], - }, - securityProfile: !p.properties?.computeProfile - .baseVirtualMachineProfile.storageProfile?.osDisk?.managedDisk - ?.securityProfile - ? undefined - : { - securityEncryptionType: - p.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.osDisk?.managedDisk - ?.securityProfile?.["securityEncryptionType"], - diskEncryptionSet: !p.properties?.computeProfile - .baseVirtualMachineProfile.storageProfile?.osDisk - ?.managedDisk?.securityProfile?.diskEncryptionSet - ? undefined - : { - id: p.properties?.computeProfile - .baseVirtualMachineProfile.storageProfile?.osDisk - ?.managedDisk?.securityProfile - ?.diskEncryptionSet?.["id"], - }, - }, - }, - deleteOption: - p.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.osDisk?.["deleteOption"], - }, - dataDisks: - p.properties?.computeProfile.baseVirtualMachineProfile.storageProfile?.[ - "dataDisks" - ] === undefined - ? p.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.["dataDisks"] - : p.properties?.computeProfile.baseVirtualMachineProfile.storageProfile?.[ - "dataDisks" - ].map((p) => { - return { - name: p["name"], - lun: p["lun"], - caching: p["caching"], - writeAcceleratorEnabled: p["writeAcceleratorEnabled"], - createOption: p["createOption"], - diskSizeGB: p["diskSizeGB"], - managedDisk: !p.managedDisk - ? undefined - : { - storageAccountType: p.managedDisk?.["storageAccountType"], - diskEncryptionSet: !p.managedDisk?.diskEncryptionSet - ? undefined - : { - id: p.managedDisk?.diskEncryptionSet?.["id"], - }, - securityProfile: !p.managedDisk?.securityProfile - ? undefined - : { - securityEncryptionType: - p.managedDisk?.securityProfile?.[ - "securityEncryptionType" - ], - diskEncryptionSet: !p.managedDisk?.securityProfile - ?.diskEncryptionSet - ? undefined - : { - id: p.managedDisk?.securityProfile - ?.diskEncryptionSet?.["id"], - }, - }, - }, - diskIOPSReadWrite: p["diskIOPSReadWrite"], - diskMBpsReadWrite: p["diskMBpsReadWrite"], - deleteOption: p["deleteOption"], - }; - }), - diskControllerType: - p.properties?.computeProfile.baseVirtualMachineProfile.storageProfile?.[ - "diskControllerType" - ], - }, - networkProfile: !p.properties?.computeProfile.baseVirtualMachineProfile - .networkProfile - ? undefined - : { - healthProbe: !p.properties?.computeProfile.baseVirtualMachineProfile - .networkProfile?.healthProbe - ? undefined - : { - id: p.properties?.computeProfile.baseVirtualMachineProfile - .networkProfile?.healthProbe?.["id"], - }, - networkInterfaceConfigurations: - p.properties?.computeProfile.baseVirtualMachineProfile.networkProfile?.[ - "networkInterfaceConfigurations" - ] === undefined - ? p.properties?.computeProfile.baseVirtualMachineProfile - .networkProfile?.["networkInterfaceConfigurations"] - : p.properties?.computeProfile.baseVirtualMachineProfile.networkProfile?.[ - "networkInterfaceConfigurations" - ].map((p) => { - return { - name: p["name"], - properties: !p.properties - ? undefined - : { - primary: p.properties?.["primary"], - enableAcceleratedNetworking: - p.properties?.["enableAcceleratedNetworking"], - disableTcpStateTracking: - p.properties?.["disableTcpStateTracking"], - enableFpga: p.properties?.["enableFpga"], - networkSecurityGroup: !p.properties?.networkSecurityGroup - ? undefined - : { - id: p.properties?.networkSecurityGroup?.["id"], - }, - dnsSettings: !p.properties?.dnsSettings - ? undefined - : { - dnsServers: p.properties?.dnsSettings?.["dnsServers"], - }, - ipConfigurations: p.properties?.["ipConfigurations"].map( - (p) => { - return { - name: p["name"], - properties: !p.properties - ? undefined - : { - subnet: !p.properties?.subnet - ? undefined - : { - id: p.properties?.subnet?.["id"], - }, - primary: p.properties?.["primary"], - publicIPAddressConfiguration: !p.properties - ?.publicIPAddressConfiguration - ? undefined - : { - name: p.properties - ?.publicIPAddressConfiguration?.[ - "name" - ], - properties: !p.properties - ?.publicIPAddressConfiguration - ?.properties - ? undefined - : { - idleTimeoutInMinutes: - p.properties - ?.publicIPAddressConfiguration - ?.properties?.[ - "idleTimeoutInMinutes" - ], - dnsSettings: !p.properties - ?.publicIPAddressConfiguration - ?.properties?.dnsSettings - ? undefined - : { - domainNameLabel: - p.properties - ?.publicIPAddressConfiguration - ?.properties - ?.dnsSettings?.[ - "domainNameLabel" - ], - domainNameLabelScope: - p.properties - ?.publicIPAddressConfiguration - ?.properties - ?.dnsSettings?.[ - "domainNameLabelScope" - ], - }, - ipTags: - p.properties - ?.publicIPAddressConfiguration - ?.properties?.["ipTags"] === - undefined - ? p.properties - ?.publicIPAddressConfiguration - ?.properties?.["ipTags"] - : p.properties?.publicIPAddressConfiguration?.properties?.[ - "ipTags" - ].map((p) => { - return { - ipTagType: p["ipTagType"], - tag: p["tag"], - }; - }), - publicIPPrefix: !p.properties - ?.publicIPAddressConfiguration - ?.properties?.publicIPPrefix - ? undefined - : { - id: p.properties - ?.publicIPAddressConfiguration - ?.properties - ?.publicIPPrefix?.["id"], - }, - publicIPAddressVersion: - p.properties - ?.publicIPAddressConfiguration - ?.properties?.[ - "publicIPAddressVersion" - ], - deleteOption: - p.properties - ?.publicIPAddressConfiguration - ?.properties?.["deleteOption"], - }, - sku: !p.properties - ?.publicIPAddressConfiguration?.sku - ? undefined - : { - name: p.properties - ?.publicIPAddressConfiguration - ?.sku?.["name"], - tier: p.properties - ?.publicIPAddressConfiguration - ?.sku?.["tier"], - }, - }, - privateIPAddressVersion: - p.properties?.["privateIPAddressVersion"], - applicationGatewayBackendAddressPools: - p.properties?.[ - "applicationGatewayBackendAddressPools" - ] === undefined - ? p.properties?.[ - "applicationGatewayBackendAddressPools" - ] - : p.properties?.[ - "applicationGatewayBackendAddressPools" - ].map((p) => { - return { - id: p["id"], - }; - }), - applicationSecurityGroups: - p.properties?.[ - "applicationSecurityGroups" - ] === undefined - ? p.properties?.[ - "applicationSecurityGroups" - ] - : p.properties?.[ - "applicationSecurityGroups" - ].map((p) => { - return { - id: p["id"], - }; - }), - loadBalancerBackendAddressPools: - p.properties?.[ - "loadBalancerBackendAddressPools" - ] === undefined - ? p.properties?.[ - "loadBalancerBackendAddressPools" - ] - : p.properties?.[ - "loadBalancerBackendAddressPools" - ].map((p) => { - return { - id: p["id"], - }; - }), - loadBalancerInboundNatPools: - p.properties?.[ - "loadBalancerInboundNatPools" - ] === undefined - ? p.properties?.[ - "loadBalancerInboundNatPools" - ] - : p.properties?.[ - "loadBalancerInboundNatPools" - ].map((p) => { - return { - id: p["id"], - }; - }), - }, - }; - }, - ), - enableIPForwarding: p.properties?.["enableIPForwarding"], - deleteOption: p.properties?.["deleteOption"], - auxiliaryMode: p.properties?.["auxiliaryMode"], - auxiliarySku: p.properties?.["auxiliarySku"], - }, - }; - }), - networkApiVersion: - p.properties?.computeProfile.baseVirtualMachineProfile.networkProfile?.[ - "networkApiVersion" - ], - }, - securityProfile: !p.properties?.computeProfile.baseVirtualMachineProfile - .securityProfile - ? undefined - : { - uefiSettings: !p.properties?.computeProfile.baseVirtualMachineProfile - .securityProfile?.uefiSettings - ? undefined - : { - secureBootEnabled: - p.properties?.computeProfile.baseVirtualMachineProfile - .securityProfile?.uefiSettings?.["secureBootEnabled"], - vTpmEnabled: - p.properties?.computeProfile.baseVirtualMachineProfile - .securityProfile?.uefiSettings?.["vTpmEnabled"], - }, - encryptionAtHost: - p.properties?.computeProfile.baseVirtualMachineProfile.securityProfile?.[ - "encryptionAtHost" - ], - securityType: - p.properties?.computeProfile.baseVirtualMachineProfile.securityProfile?.[ - "securityType" - ], - encryptionIdentity: !p.properties?.computeProfile.baseVirtualMachineProfile - .securityProfile?.encryptionIdentity - ? undefined - : { - userAssignedIdentityResourceId: - p.properties?.computeProfile.baseVirtualMachineProfile - .securityProfile?.encryptionIdentity?.[ - "userAssignedIdentityResourceId" - ], - }, - proxyAgentSettings: !p.properties?.computeProfile.baseVirtualMachineProfile - .securityProfile?.proxyAgentSettings - ? undefined - : { - enabled: - p.properties?.computeProfile.baseVirtualMachineProfile - .securityProfile?.proxyAgentSettings?.["enabled"], - mode: p.properties?.computeProfile.baseVirtualMachineProfile - .securityProfile?.proxyAgentSettings?.["mode"], - keyIncarnationId: - p.properties?.computeProfile.baseVirtualMachineProfile - .securityProfile?.proxyAgentSettings?.["keyIncarnationId"], - }, - }, - diagnosticsProfile: !p.properties?.computeProfile.baseVirtualMachineProfile - .diagnosticsProfile - ? undefined - : { - bootDiagnostics: !p.properties?.computeProfile.baseVirtualMachineProfile - .diagnosticsProfile?.bootDiagnostics - ? undefined - : { - enabled: - p.properties?.computeProfile.baseVirtualMachineProfile - .diagnosticsProfile?.bootDiagnostics?.["enabled"], - storageUri: - p.properties?.computeProfile.baseVirtualMachineProfile - .diagnosticsProfile?.bootDiagnostics?.["storageUri"], - }, - }, - extensionProfile: !p.properties?.computeProfile.baseVirtualMachineProfile - .extensionProfile - ? undefined - : { - extensions: - p.properties?.computeProfile.baseVirtualMachineProfile.extensionProfile?.[ - "extensions" - ] === undefined - ? p.properties?.computeProfile.baseVirtualMachineProfile - .extensionProfile?.["extensions"] - : p.properties?.computeProfile.baseVirtualMachineProfile.extensionProfile?.[ - "extensions" - ].map((p) => { - return { - id: p["id"], - name: p["name"], - type: p["type"], - properties: !p.properties - ? undefined - : { - forceUpdateTag: p.properties?.["forceUpdateTag"], - publisher: p.properties?.["publisher"], - type: p.properties?.["type"], - typeHandlerVersion: p.properties?.["typeHandlerVersion"], - autoUpgradeMinorVersion: - p.properties?.["autoUpgradeMinorVersion"], - enableAutomaticUpgrade: - p.properties?.["enableAutomaticUpgrade"], - settings: p.properties?.["settings"], - protectedSettings: p.properties?.["protectedSettings"], - provisioningState: p.properties?.["provisioningState"], - provisionAfterExtensions: - p.properties?.["provisionAfterExtensions"], - suppressFailures: p.properties?.["suppressFailures"], - protectedSettingsFromKeyVault: !p.properties - ?.protectedSettingsFromKeyVault - ? undefined - : { - secretUrl: - p.properties?.protectedSettingsFromKeyVault?.[ - "secretUrl" - ], - sourceVault: { - id: p.properties?.protectedSettingsFromKeyVault - ?.sourceVault["id"], - }, - }, - }, - }; - }), - extensionsTimeBudget: - p.properties?.computeProfile.baseVirtualMachineProfile.extensionProfile?.[ - "extensionsTimeBudget" - ], - }, - licenseType: - p.properties?.computeProfile.baseVirtualMachineProfile["licenseType"], - scheduledEventsProfile: !p.properties?.computeProfile.baseVirtualMachineProfile - .scheduledEventsProfile - ? undefined - : { - terminateNotificationProfile: !p.properties?.computeProfile - .baseVirtualMachineProfile.scheduledEventsProfile - ?.terminateNotificationProfile - ? undefined - : { - notBeforeTimeout: - p.properties?.computeProfile.baseVirtualMachineProfile - .scheduledEventsProfile?.terminateNotificationProfile?.[ - "notBeforeTimeout" - ], - enable: - p.properties?.computeProfile.baseVirtualMachineProfile - .scheduledEventsProfile?.terminateNotificationProfile?.["enable"], - }, - osImageNotificationProfile: !p.properties?.computeProfile - .baseVirtualMachineProfile.scheduledEventsProfile - ?.osImageNotificationProfile - ? undefined - : { - notBeforeTimeout: - p.properties?.computeProfile.baseVirtualMachineProfile - .scheduledEventsProfile?.osImageNotificationProfile?.[ - "notBeforeTimeout" - ], - enable: - p.properties?.computeProfile.baseVirtualMachineProfile - .scheduledEventsProfile?.osImageNotificationProfile?.["enable"], - }, - }, - userData: p.properties?.computeProfile.baseVirtualMachineProfile["userData"], - capacityReservation: !p.properties?.computeProfile.baseVirtualMachineProfile - .capacityReservation - ? undefined - : { - capacityReservationGroup: !p.properties?.computeProfile - .baseVirtualMachineProfile.capacityReservation?.capacityReservationGroup - ? undefined - : { - id: p.properties?.computeProfile.baseVirtualMachineProfile - .capacityReservation?.capacityReservationGroup?.["id"], - }, - }, - applicationProfile: !p.properties?.computeProfile.baseVirtualMachineProfile - .applicationProfile - ? undefined - : { - galleryApplications: - p.properties?.computeProfile.baseVirtualMachineProfile - .applicationProfile?.["galleryApplications"] === undefined - ? p.properties?.computeProfile.baseVirtualMachineProfile - .applicationProfile?.["galleryApplications"] - : p.properties?.computeProfile.baseVirtualMachineProfile.applicationProfile?.[ - "galleryApplications" - ].map((p) => { - return { - tags: p["tags"], - order: p["order"], - packageReferenceId: p["packageReferenceId"], - configurationReference: p["configurationReference"], - treatFailureAsDeploymentFailure: - p["treatFailureAsDeploymentFailure"], - enableAutomaticUpgrade: p["enableAutomaticUpgrade"], - }; - }), - }, - hardwareProfile: !p.properties?.computeProfile.baseVirtualMachineProfile - .hardwareProfile - ? undefined - : { - vmSizeProperties: !p.properties?.computeProfile.baseVirtualMachineProfile - .hardwareProfile?.vmSizeProperties - ? undefined - : { - vCPUsAvailable: - p.properties?.computeProfile.baseVirtualMachineProfile - .hardwareProfile?.vmSizeProperties?.["vCPUsAvailable"], - vCPUsPerCore: - p.properties?.computeProfile.baseVirtualMachineProfile - .hardwareProfile?.vmSizeProperties?.["vCPUsPerCore"], - }, - }, - serviceArtifactReference: !p.properties?.computeProfile.baseVirtualMachineProfile - .serviceArtifactReference - ? undefined - : { - id: p.properties?.computeProfile.baseVirtualMachineProfile - .serviceArtifactReference?.["id"], - }, - securityPostureReference: !p.properties?.computeProfile.baseVirtualMachineProfile - .securityPostureReference - ? undefined - : { - id: p.properties?.computeProfile.baseVirtualMachineProfile - .securityPostureReference?.["id"], - excludeExtensions: - p.properties?.computeProfile.baseVirtualMachineProfile - .securityPostureReference?.["excludeExtensions"], - isOverridable: - p.properties?.computeProfile.baseVirtualMachineProfile - .securityPostureReference?.["isOverridable"], - }, - timeCreated: - p.properties?.computeProfile.baseVirtualMachineProfile["timeCreated"] !== - undefined - ? new Date( - p.properties?.computeProfile.baseVirtualMachineProfile["timeCreated"], - ) - : undefined, - }, - computeApiVersion: p.properties?.computeProfile["computeApiVersion"], - platformFaultDomainCount: p.properties?.computeProfile["platformFaultDomainCount"], - }, - timeCreated: - p.properties?.["timeCreated"] !== undefined - ? new Date(p.properties?.["timeCreated"]) - : undefined, - uniqueId: p.properties?.["uniqueId"], - }, - zones: p["zones"], - identity: !p.identity - ? undefined - : { - principalId: p.identity?.["principalId"], - tenantId: p.identity?.["tenantId"], - type: p.identity?.["type"], - userAssignedIdentities: p.identity?.["userAssignedIdentities"], - }, - plan: !p.plan - ? undefined - : { - name: p.plan?.["name"], - publisher: p.plan?.["publisher"], - product: p.plan?.["product"], - promotionCode: p.plan?.["promotionCode"], - version: p.plan?.["version"], - }, - }; - }), - nextLink: result.body["nextLink"], - }; -} - -/** 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, - { 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: FleetsListBySubscription200Response | FleetsListBySubscriptionDefaultResponse, -): Promise<_FleetListResult> { - if (isUnexpected(result)) { - throw createRestError(result); - } - - return { - value: result.body["value"].map((p) => { - return { - tags: p["tags"], - location: p["location"], - id: p["id"], - name: p["name"], - type: p["type"], - systemData: !p.systemData - ? undefined - : { - createdBy: p.systemData?.["createdBy"], - createdByType: p.systemData?.["createdByType"], - createdAt: - p.systemData?.["createdAt"] !== undefined - ? new Date(p.systemData?.["createdAt"]) - : undefined, - lastModifiedBy: p.systemData?.["lastModifiedBy"], - lastModifiedByType: p.systemData?.["lastModifiedByType"], - lastModifiedAt: - p.systemData?.["lastModifiedAt"] !== undefined - ? new Date(p.systemData?.["lastModifiedAt"]) - : undefined, - }, - properties: !p.properties - ? undefined - : { - provisioningState: p.properties?.["provisioningState"], - spotPriorityProfile: !p.properties?.spotPriorityProfile - ? undefined - : { - capacity: p.properties?.spotPriorityProfile?.["capacity"], - minCapacity: p.properties?.spotPriorityProfile?.["minCapacity"], - maxPricePerVM: p.properties?.spotPriorityProfile?.["maxPricePerVM"], - evictionPolicy: p.properties?.spotPriorityProfile?.["evictionPolicy"], - allocationStrategy: p.properties?.spotPriorityProfile?.["allocationStrategy"], - maintain: p.properties?.spotPriorityProfile?.["maintain"], - }, - regularPriorityProfile: !p.properties?.regularPriorityProfile - ? undefined - : { - capacity: p.properties?.regularPriorityProfile?.["capacity"], - minCapacity: p.properties?.regularPriorityProfile?.["minCapacity"], - allocationStrategy: - p.properties?.regularPriorityProfile?.["allocationStrategy"], - }, - vmSizesProfile: p.properties?.["vmSizesProfile"].map((p) => { - return { name: p["name"], rank: p["rank"] }; - }), - computeProfile: { - baseVirtualMachineProfile: { - osProfile: !p.properties?.computeProfile.baseVirtualMachineProfile.osProfile - ? undefined - : { - computerNamePrefix: - p.properties?.computeProfile.baseVirtualMachineProfile.osProfile?.[ - "computerNamePrefix" - ], - adminUsername: - p.properties?.computeProfile.baseVirtualMachineProfile.osProfile?.[ - "adminUsername" - ], - adminPassword: - p.properties?.computeProfile.baseVirtualMachineProfile.osProfile?.[ - "adminPassword" - ], - customData: - p.properties?.computeProfile.baseVirtualMachineProfile.osProfile?.[ - "customData" - ], - windowsConfiguration: !p.properties?.computeProfile - .baseVirtualMachineProfile.osProfile?.windowsConfiguration - ? undefined - : { - provisionVMAgent: - p.properties?.computeProfile.baseVirtualMachineProfile.osProfile - ?.windowsConfiguration?.["provisionVMAgent"], - enableAutomaticUpdates: - p.properties?.computeProfile.baseVirtualMachineProfile.osProfile - ?.windowsConfiguration?.["enableAutomaticUpdates"], - timeZone: - p.properties?.computeProfile.baseVirtualMachineProfile.osProfile - ?.windowsConfiguration?.["timeZone"], - additionalUnattendContent: - p.properties?.computeProfile.baseVirtualMachineProfile.osProfile - ?.windowsConfiguration?.["additionalUnattendContent"] === - undefined - ? p.properties?.computeProfile.baseVirtualMachineProfile.osProfile - ?.windowsConfiguration?.["additionalUnattendContent"] - : p.properties?.computeProfile.baseVirtualMachineProfile.osProfile?.windowsConfiguration?.[ - "additionalUnattendContent" - ].map((p) => { - return { - passName: p["passName"], - componentName: p["componentName"], - settingName: p["settingName"], - content: p["content"], - }; - }), - patchSettings: !p.properties?.computeProfile.baseVirtualMachineProfile - .osProfile?.windowsConfiguration?.patchSettings - ? undefined - : { - patchMode: - p.properties?.computeProfile.baseVirtualMachineProfile - .osProfile?.windowsConfiguration?.patchSettings?.[ - "patchMode" - ], - enableHotpatching: - p.properties?.computeProfile.baseVirtualMachineProfile - .osProfile?.windowsConfiguration?.patchSettings?.[ - "enableHotpatching" - ], - assessmentMode: - p.properties?.computeProfile.baseVirtualMachineProfile - .osProfile?.windowsConfiguration?.patchSettings?.[ - "assessmentMode" - ], - automaticByPlatformSettings: !p.properties?.computeProfile - .baseVirtualMachineProfile.osProfile?.windowsConfiguration - ?.patchSettings?.automaticByPlatformSettings - ? undefined - : { - rebootSetting: - p.properties?.computeProfile.baseVirtualMachineProfile - .osProfile?.windowsConfiguration?.patchSettings - ?.automaticByPlatformSettings?.["rebootSetting"], - bypassPlatformSafetyChecksOnUserSchedule: - p.properties?.computeProfile.baseVirtualMachineProfile - .osProfile?.windowsConfiguration?.patchSettings - ?.automaticByPlatformSettings?.[ - "bypassPlatformSafetyChecksOnUserSchedule" - ], - }, - }, - winRM: !p.properties?.computeProfile.baseVirtualMachineProfile - .osProfile?.windowsConfiguration?.winRM - ? undefined - : { - listeners: - p.properties?.computeProfile.baseVirtualMachineProfile - .osProfile?.windowsConfiguration?.winRM?.["listeners"] === - undefined - ? p.properties?.computeProfile.baseVirtualMachineProfile - .osProfile?.windowsConfiguration?.winRM?.["listeners"] - : p.properties?.computeProfile.baseVirtualMachineProfile.osProfile?.windowsConfiguration?.winRM?.[ - "listeners" - ].map((p) => { - return { - protocol: p["protocol"], - certificateUrl: p["certificateUrl"], - }; - }), - }, - enableVMAgentPlatformUpdates: - p.properties?.computeProfile.baseVirtualMachineProfile.osProfile - ?.windowsConfiguration?.["enableVMAgentPlatformUpdates"], - }, - linuxConfiguration: !p.properties?.computeProfile.baseVirtualMachineProfile - .osProfile?.linuxConfiguration - ? undefined - : { - disablePasswordAuthentication: - p.properties?.computeProfile.baseVirtualMachineProfile.osProfile - ?.linuxConfiguration?.["disablePasswordAuthentication"], - ssh: !p.properties?.computeProfile.baseVirtualMachineProfile.osProfile - ?.linuxConfiguration?.ssh - ? undefined - : { - publicKeys: - p.properties?.computeProfile.baseVirtualMachineProfile - .osProfile?.linuxConfiguration?.ssh?.["publicKeys"] === - undefined - ? p.properties?.computeProfile.baseVirtualMachineProfile - .osProfile?.linuxConfiguration?.ssh?.["publicKeys"] - : p.properties?.computeProfile.baseVirtualMachineProfile.osProfile?.linuxConfiguration?.ssh?.[ - "publicKeys" - ].map((p) => { - return { - path: p["path"], - keyData: p["keyData"], - }; - }), - }, - provisionVMAgent: - p.properties?.computeProfile.baseVirtualMachineProfile.osProfile - ?.linuxConfiguration?.["provisionVMAgent"], - patchSettings: !p.properties?.computeProfile.baseVirtualMachineProfile - .osProfile?.linuxConfiguration?.patchSettings - ? undefined - : { - patchMode: - p.properties?.computeProfile.baseVirtualMachineProfile - .osProfile?.linuxConfiguration?.patchSettings?.[ - "patchMode" - ], - assessmentMode: - p.properties?.computeProfile.baseVirtualMachineProfile - .osProfile?.linuxConfiguration?.patchSettings?.[ - "assessmentMode" - ], - automaticByPlatformSettings: !p.properties?.computeProfile - .baseVirtualMachineProfile.osProfile?.linuxConfiguration - ?.patchSettings?.automaticByPlatformSettings - ? undefined - : { - rebootSetting: - p.properties?.computeProfile.baseVirtualMachineProfile - .osProfile?.linuxConfiguration?.patchSettings - ?.automaticByPlatformSettings?.["rebootSetting"], - bypassPlatformSafetyChecksOnUserSchedule: - p.properties?.computeProfile.baseVirtualMachineProfile - .osProfile?.linuxConfiguration?.patchSettings - ?.automaticByPlatformSettings?.[ - "bypassPlatformSafetyChecksOnUserSchedule" - ], - }, - }, - enableVMAgentPlatformUpdates: - p.properties?.computeProfile.baseVirtualMachineProfile.osProfile - ?.linuxConfiguration?.["enableVMAgentPlatformUpdates"], - }, - secrets: - p.properties?.computeProfile.baseVirtualMachineProfile.osProfile?.[ - "secrets" - ] === undefined - ? p.properties?.computeProfile.baseVirtualMachineProfile.osProfile?.[ - "secrets" - ] - : p.properties?.computeProfile.baseVirtualMachineProfile.osProfile?.[ - "secrets" - ].map((p) => { - return { - sourceVault: !p.sourceVault - ? undefined - : { id: p.sourceVault?.["id"] }, - vaultCertificates: - p["vaultCertificates"] === undefined - ? p["vaultCertificates"] - : p["vaultCertificates"].map((p) => { - return { - certificateUrl: p["certificateUrl"], - certificateStore: p["certificateStore"], - }; - }), - }; - }), - allowExtensionOperations: - p.properties?.computeProfile.baseVirtualMachineProfile.osProfile?.[ - "allowExtensionOperations" - ], - requireGuestProvisionSignal: - p.properties?.computeProfile.baseVirtualMachineProfile.osProfile?.[ - "requireGuestProvisionSignal" - ], - }, - storageProfile: !p.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile - ? undefined - : { - imageReference: !p.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.imageReference - ? undefined - : { - id: p.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.imageReference?.["id"], - publisher: - p.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.imageReference?.["publisher"], - offer: - p.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.imageReference?.["offer"], - sku: p.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.imageReference?.["sku"], - version: - p.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.imageReference?.["version"], - exactVersion: - p.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.imageReference?.["exactVersion"], - sharedGalleryImageId: - p.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.imageReference?.["sharedGalleryImageId"], - communityGalleryImageId: - p.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.imageReference?.["communityGalleryImageId"], - }, - osDisk: !p.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.osDisk - ? undefined - : { - name: p.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.osDisk?.["name"], - caching: - p.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.osDisk?.["caching"], - writeAcceleratorEnabled: - p.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.osDisk?.["writeAcceleratorEnabled"], - createOption: - p.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.osDisk?.["createOption"], - diffDiskSettings: !p.properties?.computeProfile - .baseVirtualMachineProfile.storageProfile?.osDisk?.diffDiskSettings - ? undefined - : { - option: - p.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.osDisk?.diffDiskSettings?.["option"], - placement: - p.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.osDisk?.diffDiskSettings?.["placement"], - }, - diskSizeGB: - p.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.osDisk?.["diskSizeGB"], - osType: - p.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.osDisk?.["osType"], - image: !p.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.osDisk?.image - ? undefined - : { - uri: p.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.osDisk?.image?.["uri"], - }, - vhdContainers: - p.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.osDisk?.["vhdContainers"], - managedDisk: !p.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.osDisk?.managedDisk - ? undefined - : { - storageAccountType: - p.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.osDisk?.managedDisk?.[ - "storageAccountType" - ], - diskEncryptionSet: !p.properties?.computeProfile - .baseVirtualMachineProfile.storageProfile?.osDisk?.managedDisk - ?.diskEncryptionSet - ? undefined - : { - id: p.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.osDisk?.managedDisk - ?.diskEncryptionSet?.["id"], - }, - securityProfile: !p.properties?.computeProfile - .baseVirtualMachineProfile.storageProfile?.osDisk?.managedDisk - ?.securityProfile - ? undefined - : { - securityEncryptionType: - p.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.osDisk?.managedDisk - ?.securityProfile?.["securityEncryptionType"], - diskEncryptionSet: !p.properties?.computeProfile - .baseVirtualMachineProfile.storageProfile?.osDisk - ?.managedDisk?.securityProfile?.diskEncryptionSet - ? undefined - : { - id: p.properties?.computeProfile - .baseVirtualMachineProfile.storageProfile?.osDisk - ?.managedDisk?.securityProfile - ?.diskEncryptionSet?.["id"], - }, - }, - }, - deleteOption: - p.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.osDisk?.["deleteOption"], - }, - dataDisks: - p.properties?.computeProfile.baseVirtualMachineProfile.storageProfile?.[ - "dataDisks" - ] === undefined - ? p.properties?.computeProfile.baseVirtualMachineProfile - .storageProfile?.["dataDisks"] - : p.properties?.computeProfile.baseVirtualMachineProfile.storageProfile?.[ - "dataDisks" - ].map((p) => { - return { - name: p["name"], - lun: p["lun"], - caching: p["caching"], - writeAcceleratorEnabled: p["writeAcceleratorEnabled"], - createOption: p["createOption"], - diskSizeGB: p["diskSizeGB"], - managedDisk: !p.managedDisk - ? undefined - : { - storageAccountType: p.managedDisk?.["storageAccountType"], - diskEncryptionSet: !p.managedDisk?.diskEncryptionSet - ? undefined - : { - id: p.managedDisk?.diskEncryptionSet?.["id"], - }, - securityProfile: !p.managedDisk?.securityProfile - ? undefined - : { - securityEncryptionType: - p.managedDisk?.securityProfile?.[ - "securityEncryptionType" - ], - diskEncryptionSet: !p.managedDisk?.securityProfile - ?.diskEncryptionSet - ? undefined - : { - id: p.managedDisk?.securityProfile - ?.diskEncryptionSet?.["id"], - }, - }, - }, - diskIOPSReadWrite: p["diskIOPSReadWrite"], - diskMBpsReadWrite: p["diskMBpsReadWrite"], - deleteOption: p["deleteOption"], - }; - }), - diskControllerType: - p.properties?.computeProfile.baseVirtualMachineProfile.storageProfile?.[ - "diskControllerType" - ], - }, - networkProfile: !p.properties?.computeProfile.baseVirtualMachineProfile - .networkProfile - ? undefined - : { - healthProbe: !p.properties?.computeProfile.baseVirtualMachineProfile - .networkProfile?.healthProbe - ? undefined - : { - id: p.properties?.computeProfile.baseVirtualMachineProfile - .networkProfile?.healthProbe?.["id"], - }, - networkInterfaceConfigurations: - p.properties?.computeProfile.baseVirtualMachineProfile.networkProfile?.[ - "networkInterfaceConfigurations" - ] === undefined - ? p.properties?.computeProfile.baseVirtualMachineProfile - .networkProfile?.["networkInterfaceConfigurations"] - : p.properties?.computeProfile.baseVirtualMachineProfile.networkProfile?.[ - "networkInterfaceConfigurations" - ].map((p) => { - return { - name: p["name"], - properties: !p.properties - ? undefined - : { - primary: p.properties?.["primary"], - enableAcceleratedNetworking: - p.properties?.["enableAcceleratedNetworking"], - disableTcpStateTracking: - p.properties?.["disableTcpStateTracking"], - enableFpga: p.properties?.["enableFpga"], - networkSecurityGroup: !p.properties?.networkSecurityGroup - ? undefined - : { - id: p.properties?.networkSecurityGroup?.["id"], - }, - dnsSettings: !p.properties?.dnsSettings - ? undefined - : { - dnsServers: p.properties?.dnsSettings?.["dnsServers"], - }, - ipConfigurations: p.properties?.["ipConfigurations"].map( - (p) => { - return { - name: p["name"], - properties: !p.properties - ? undefined - : { - subnet: !p.properties?.subnet - ? undefined - : { - id: p.properties?.subnet?.["id"], - }, - primary: p.properties?.["primary"], - publicIPAddressConfiguration: !p.properties - ?.publicIPAddressConfiguration - ? undefined - : { - name: p.properties - ?.publicIPAddressConfiguration?.[ - "name" - ], - properties: !p.properties - ?.publicIPAddressConfiguration - ?.properties - ? undefined - : { - idleTimeoutInMinutes: - p.properties - ?.publicIPAddressConfiguration - ?.properties?.[ - "idleTimeoutInMinutes" - ], - dnsSettings: !p.properties - ?.publicIPAddressConfiguration - ?.properties?.dnsSettings - ? undefined - : { - domainNameLabel: - p.properties - ?.publicIPAddressConfiguration - ?.properties - ?.dnsSettings?.[ - "domainNameLabel" - ], - domainNameLabelScope: - p.properties - ?.publicIPAddressConfiguration - ?.properties - ?.dnsSettings?.[ - "domainNameLabelScope" - ], - }, - ipTags: - p.properties - ?.publicIPAddressConfiguration - ?.properties?.["ipTags"] === - undefined - ? p.properties - ?.publicIPAddressConfiguration - ?.properties?.["ipTags"] - : p.properties?.publicIPAddressConfiguration?.properties?.[ - "ipTags" - ].map((p) => { - return { - ipTagType: p["ipTagType"], - tag: p["tag"], - }; - }), - publicIPPrefix: !p.properties - ?.publicIPAddressConfiguration - ?.properties?.publicIPPrefix - ? undefined - : { - id: p.properties - ?.publicIPAddressConfiguration - ?.properties - ?.publicIPPrefix?.["id"], - }, - publicIPAddressVersion: - p.properties - ?.publicIPAddressConfiguration - ?.properties?.[ - "publicIPAddressVersion" - ], - deleteOption: - p.properties - ?.publicIPAddressConfiguration - ?.properties?.["deleteOption"], - }, - sku: !p.properties - ?.publicIPAddressConfiguration?.sku - ? undefined - : { - name: p.properties - ?.publicIPAddressConfiguration - ?.sku?.["name"], - tier: p.properties - ?.publicIPAddressConfiguration - ?.sku?.["tier"], - }, - }, - privateIPAddressVersion: - p.properties?.["privateIPAddressVersion"], - applicationGatewayBackendAddressPools: - p.properties?.[ - "applicationGatewayBackendAddressPools" - ] === undefined - ? p.properties?.[ - "applicationGatewayBackendAddressPools" - ] - : p.properties?.[ - "applicationGatewayBackendAddressPools" - ].map((p) => { - return { - id: p["id"], - }; - }), - applicationSecurityGroups: - p.properties?.[ - "applicationSecurityGroups" - ] === undefined - ? p.properties?.[ - "applicationSecurityGroups" - ] - : p.properties?.[ - "applicationSecurityGroups" - ].map((p) => { - return { - id: p["id"], - }; - }), - loadBalancerBackendAddressPools: - p.properties?.[ - "loadBalancerBackendAddressPools" - ] === undefined - ? p.properties?.[ - "loadBalancerBackendAddressPools" - ] - : p.properties?.[ - "loadBalancerBackendAddressPools" - ].map((p) => { - return { - id: p["id"], - }; - }), - loadBalancerInboundNatPools: - p.properties?.[ - "loadBalancerInboundNatPools" - ] === undefined - ? p.properties?.[ - "loadBalancerInboundNatPools" - ] - : p.properties?.[ - "loadBalancerInboundNatPools" - ].map((p) => { - return { - id: p["id"], - }; - }), - }, - }; - }, - ), - enableIPForwarding: p.properties?.["enableIPForwarding"], - deleteOption: p.properties?.["deleteOption"], - auxiliaryMode: p.properties?.["auxiliaryMode"], - auxiliarySku: p.properties?.["auxiliarySku"], - }, - }; - }), - networkApiVersion: - p.properties?.computeProfile.baseVirtualMachineProfile.networkProfile?.[ - "networkApiVersion" - ], - }, - securityProfile: !p.properties?.computeProfile.baseVirtualMachineProfile - .securityProfile - ? undefined - : { - uefiSettings: !p.properties?.computeProfile.baseVirtualMachineProfile - .securityProfile?.uefiSettings - ? undefined - : { - secureBootEnabled: - p.properties?.computeProfile.baseVirtualMachineProfile - .securityProfile?.uefiSettings?.["secureBootEnabled"], - vTpmEnabled: - p.properties?.computeProfile.baseVirtualMachineProfile - .securityProfile?.uefiSettings?.["vTpmEnabled"], - }, - encryptionAtHost: - p.properties?.computeProfile.baseVirtualMachineProfile.securityProfile?.[ - "encryptionAtHost" - ], - securityType: - p.properties?.computeProfile.baseVirtualMachineProfile.securityProfile?.[ - "securityType" - ], - encryptionIdentity: !p.properties?.computeProfile.baseVirtualMachineProfile - .securityProfile?.encryptionIdentity - ? undefined - : { - userAssignedIdentityResourceId: - p.properties?.computeProfile.baseVirtualMachineProfile - .securityProfile?.encryptionIdentity?.[ - "userAssignedIdentityResourceId" - ], - }, - proxyAgentSettings: !p.properties?.computeProfile.baseVirtualMachineProfile - .securityProfile?.proxyAgentSettings - ? undefined - : { - enabled: - p.properties?.computeProfile.baseVirtualMachineProfile - .securityProfile?.proxyAgentSettings?.["enabled"], - mode: p.properties?.computeProfile.baseVirtualMachineProfile - .securityProfile?.proxyAgentSettings?.["mode"], - keyIncarnationId: - p.properties?.computeProfile.baseVirtualMachineProfile - .securityProfile?.proxyAgentSettings?.["keyIncarnationId"], - }, - }, - diagnosticsProfile: !p.properties?.computeProfile.baseVirtualMachineProfile - .diagnosticsProfile - ? undefined - : { - bootDiagnostics: !p.properties?.computeProfile.baseVirtualMachineProfile - .diagnosticsProfile?.bootDiagnostics - ? undefined - : { - enabled: - p.properties?.computeProfile.baseVirtualMachineProfile - .diagnosticsProfile?.bootDiagnostics?.["enabled"], - storageUri: - p.properties?.computeProfile.baseVirtualMachineProfile - .diagnosticsProfile?.bootDiagnostics?.["storageUri"], - }, - }, - extensionProfile: !p.properties?.computeProfile.baseVirtualMachineProfile - .extensionProfile - ? undefined - : { - extensions: - p.properties?.computeProfile.baseVirtualMachineProfile.extensionProfile?.[ - "extensions" - ] === undefined - ? p.properties?.computeProfile.baseVirtualMachineProfile - .extensionProfile?.["extensions"] - : p.properties?.computeProfile.baseVirtualMachineProfile.extensionProfile?.[ - "extensions" - ].map((p) => { - return { - id: p["id"], - name: p["name"], - type: p["type"], - properties: !p.properties - ? undefined - : { - forceUpdateTag: p.properties?.["forceUpdateTag"], - publisher: p.properties?.["publisher"], - type: p.properties?.["type"], - typeHandlerVersion: p.properties?.["typeHandlerVersion"], - autoUpgradeMinorVersion: - p.properties?.["autoUpgradeMinorVersion"], - enableAutomaticUpgrade: - p.properties?.["enableAutomaticUpgrade"], - settings: p.properties?.["settings"], - protectedSettings: p.properties?.["protectedSettings"], - provisioningState: p.properties?.["provisioningState"], - provisionAfterExtensions: - p.properties?.["provisionAfterExtensions"], - suppressFailures: p.properties?.["suppressFailures"], - protectedSettingsFromKeyVault: !p.properties - ?.protectedSettingsFromKeyVault - ? undefined - : { - secretUrl: - p.properties?.protectedSettingsFromKeyVault?.[ - "secretUrl" - ], - sourceVault: { - id: p.properties?.protectedSettingsFromKeyVault - ?.sourceVault["id"], - }, - }, - }, - }; - }), - extensionsTimeBudget: - p.properties?.computeProfile.baseVirtualMachineProfile.extensionProfile?.[ - "extensionsTimeBudget" - ], - }, - licenseType: - p.properties?.computeProfile.baseVirtualMachineProfile["licenseType"], - scheduledEventsProfile: !p.properties?.computeProfile.baseVirtualMachineProfile - .scheduledEventsProfile - ? undefined - : { - terminateNotificationProfile: !p.properties?.computeProfile - .baseVirtualMachineProfile.scheduledEventsProfile - ?.terminateNotificationProfile - ? undefined - : { - notBeforeTimeout: - p.properties?.computeProfile.baseVirtualMachineProfile - .scheduledEventsProfile?.terminateNotificationProfile?.[ - "notBeforeTimeout" - ], - enable: - p.properties?.computeProfile.baseVirtualMachineProfile - .scheduledEventsProfile?.terminateNotificationProfile?.["enable"], - }, - osImageNotificationProfile: !p.properties?.computeProfile - .baseVirtualMachineProfile.scheduledEventsProfile - ?.osImageNotificationProfile - ? undefined - : { - notBeforeTimeout: - p.properties?.computeProfile.baseVirtualMachineProfile - .scheduledEventsProfile?.osImageNotificationProfile?.[ - "notBeforeTimeout" - ], - enable: - p.properties?.computeProfile.baseVirtualMachineProfile - .scheduledEventsProfile?.osImageNotificationProfile?.["enable"], - }, - }, - userData: p.properties?.computeProfile.baseVirtualMachineProfile["userData"], - capacityReservation: !p.properties?.computeProfile.baseVirtualMachineProfile - .capacityReservation - ? undefined - : { - capacityReservationGroup: !p.properties?.computeProfile - .baseVirtualMachineProfile.capacityReservation?.capacityReservationGroup - ? undefined - : { - id: p.properties?.computeProfile.baseVirtualMachineProfile - .capacityReservation?.capacityReservationGroup?.["id"], - }, - }, - applicationProfile: !p.properties?.computeProfile.baseVirtualMachineProfile - .applicationProfile - ? undefined - : { - galleryApplications: - p.properties?.computeProfile.baseVirtualMachineProfile - .applicationProfile?.["galleryApplications"] === undefined - ? p.properties?.computeProfile.baseVirtualMachineProfile - .applicationProfile?.["galleryApplications"] - : p.properties?.computeProfile.baseVirtualMachineProfile.applicationProfile?.[ - "galleryApplications" - ].map((p) => { - return { - tags: p["tags"], - order: p["order"], - packageReferenceId: p["packageReferenceId"], - configurationReference: p["configurationReference"], - treatFailureAsDeploymentFailure: - p["treatFailureAsDeploymentFailure"], - enableAutomaticUpgrade: p["enableAutomaticUpgrade"], - }; - }), - }, - hardwareProfile: !p.properties?.computeProfile.baseVirtualMachineProfile - .hardwareProfile - ? undefined - : { - vmSizeProperties: !p.properties?.computeProfile.baseVirtualMachineProfile - .hardwareProfile?.vmSizeProperties - ? undefined - : { - vCPUsAvailable: - p.properties?.computeProfile.baseVirtualMachineProfile - .hardwareProfile?.vmSizeProperties?.["vCPUsAvailable"], - vCPUsPerCore: - p.properties?.computeProfile.baseVirtualMachineProfile - .hardwareProfile?.vmSizeProperties?.["vCPUsPerCore"], - }, - }, - serviceArtifactReference: !p.properties?.computeProfile.baseVirtualMachineProfile - .serviceArtifactReference - ? undefined - : { - id: p.properties?.computeProfile.baseVirtualMachineProfile - .serviceArtifactReference?.["id"], - }, - securityPostureReference: !p.properties?.computeProfile.baseVirtualMachineProfile - .securityPostureReference - ? undefined - : { - id: p.properties?.computeProfile.baseVirtualMachineProfile - .securityPostureReference?.["id"], - excludeExtensions: - p.properties?.computeProfile.baseVirtualMachineProfile - .securityPostureReference?.["excludeExtensions"], - isOverridable: - p.properties?.computeProfile.baseVirtualMachineProfile - .securityPostureReference?.["isOverridable"], - }, - timeCreated: - p.properties?.computeProfile.baseVirtualMachineProfile["timeCreated"] !== - undefined - ? new Date( - p.properties?.computeProfile.baseVirtualMachineProfile["timeCreated"], - ) - : undefined, - }, - computeApiVersion: p.properties?.computeProfile["computeApiVersion"], - platformFaultDomainCount: p.properties?.computeProfile["platformFaultDomainCount"], - }, - timeCreated: - p.properties?.["timeCreated"] !== undefined - ? new Date(p.properties?.["timeCreated"]) - : undefined, - uniqueId: p.properties?.["uniqueId"], - }, - zones: p["zones"], - identity: !p.identity - ? undefined - : { - principalId: p.identity?.["principalId"], - tenantId: p.identity?.["tenantId"], - type: p.identity?.["type"], - userAssignedIdentities: p.identity?.["userAssignedIdentities"], - }, - plan: !p.plan - ? undefined - : { - name: p.plan?.["name"], - publisher: p.plan?.["publisher"], - product: p.plan?.["product"], - promotionCode: p.plan?.["promotionCode"], - version: p.plan?.["version"], - }, - }; - }), - nextLink: result.body["nextLink"], - }; -} - -/** 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, - { itemName: "value", nextLinkName: "nextLink" }, - ); -} - -export function _fleetsListVirtualMachineScaleSetsSend( - context: Client, - subscriptionId: string, - resourceGroupName: string, - name: string, - options: FleetsListVirtualMachineScaleSetsOptionalParams = { - requestOptions: {}, - }, -): StreamableMethod< - FleetsListVirtualMachineScaleSets200Response | FleetsListVirtualMachineScaleSetsDefaultResponse -> { - return context - .path( - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureFleet/fleets/{name}/virtualMachineScaleSets", - subscriptionId, - resourceGroupName, - name, - ) - .get({ ...operationOptionsToRequestParameters(options) }); -} - -export async function _fleetsListVirtualMachineScaleSetsDeserialize( - result: - | FleetsListVirtualMachineScaleSets200Response - | FleetsListVirtualMachineScaleSetsDefaultResponse, -): Promise<_VirtualMachineScaleSetListResult> { - if (isUnexpected(result)) { - throw createRestError(result); - } - - return { - value: result.body["value"].map((p) => { - return { - id: p["id"], - type: p["type"], - operationStatus: p["operationStatus"], - error: !p.error - ? undefined - : { - code: p.error?.["code"], - target: p.error?.["target"], - message: p.error?.["message"], - details: - p.error?.["details"] === undefined - ? p.error?.["details"] - : p.error?.["details"].map((p) => { - return { - code: p["code"], - target: p["target"], - message: p["message"], - }; - }), - innererror: !p.error?.innererror - ? undefined - : { - exceptionType: p.error?.innererror?.["exceptionType"], - errorDetail: p.error?.innererror?.["errorDetail"], - }, - }, - }; - }), - nextLink: result.body["nextLink"], - }; -} - -/** 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, - { itemName: "value", nextLinkName: "nextLink" }, - ); -} diff --git a/sdk/computefleet/arm-computefleet/src/api/index.ts b/sdk/computefleet/arm-computefleet/src/api/index.ts deleted file mode 100644 index fcf3a57c30e9..000000000000 --- a/sdk/computefleet/arm-computefleet/src/api/index.ts +++ /dev/null @@ -1,18 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT license. - -export { - createAzureFleet, - AzureFleetClientOptionalParams, - AzureFleetContext, -} from "./azureFleetContext.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 deleted file mode 100644 index e41f8086233a..000000000000 --- a/sdk/computefleet/arm-computefleet/src/api/operations/index.ts +++ /dev/null @@ -1,68 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT license. - -import { Operation, _OperationListResult } from "../../models/models.js"; -import { PagedAsyncIterableIterator } from "../../models/pagingTypes.js"; -import { buildPagedAsyncIterator } from "../pagingHelpers.js"; -import { - isUnexpected, - AzureFleetContext as Client, - OperationsList200Response, - OperationsListDefaultResponse, -} from "../../rest/index.js"; -import { - StreamableMethod, - operationOptionsToRequestParameters, - createRestError, -} from "@azure-rest/core-client"; -import { OperationsListOptionalParams } from "../../models/options.js"; - -export function _operationsListSend( - context: Client, - options: OperationsListOptionalParams = { requestOptions: {} }, -): StreamableMethod { - return context - .path("/providers/Microsoft.AzureFleet/operations") - .get({ ...operationOptionsToRequestParameters(options) }); -} - -export async function _operationsListDeserialize( - result: OperationsList200Response | OperationsListDefaultResponse, -): Promise<_OperationListResult> { - if (isUnexpected(result)) { - throw createRestError(result); - } - - return { - value: result.body["value"].map((p) => { - return { - name: p["name"], - isDataAction: p["isDataAction"], - display: !p.display - ? undefined - : { - provider: p.display?.["provider"], - resource: p.display?.["resource"], - operation: p.display?.["operation"], - description: p.display?.["description"], - }, - origin: p["origin"], - actionType: p["actionType"], - }; - }), - nextLink: result.body["nextLink"], - }; -} - -/** List the operations for the provider */ -export function operationsList( - context: Client, - options: OperationsListOptionalParams = { requestOptions: {} }, -): PagedAsyncIterableIterator { - return buildPagedAsyncIterator( - context, - () => _operationsListSend(context, options), - _operationsListDeserialize, - { itemName: "value", nextLinkName: "nextLink" }, - ); -} diff --git a/sdk/computefleet/arm-computefleet/src/api/pagingHelpers.ts b/sdk/computefleet/arm-computefleet/src/api/pagingHelpers.ts deleted file mode 100644 index bab1296338d2..000000000000 --- a/sdk/computefleet/arm-computefleet/src/api/pagingHelpers.ts +++ /dev/null @@ -1,171 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT license. - -import { Client, createRestError, PathUncheckedResponse } from "@azure-rest/core-client"; -import { RestError } from "@azure/core-rest-pipeline"; -import { - BuildPagedAsyncIteratorOptions, - ContinuablePage, - PageSettings, - PagedAsyncIterableIterator, - PagedResult, -} from "../models/pagingTypes.js"; -import { isUnexpected } from "../rest/index.js"; - -/** - * Helper to paginate results in a generic way and return a PagedAsyncIterableIterator - */ -export function buildPagedAsyncIterator< - TElement, - TPage = TElement[], - TPageSettings extends PageSettings = PageSettings, - TResponse extends PathUncheckedResponse = PathUncheckedResponse, ->( - client: Client, - getInitialResponse: () => PromiseLike, - processResponseBody: (result: TResponse) => PromiseLike, - options: BuildPagedAsyncIteratorOptions = {}, -): PagedAsyncIterableIterator { - const itemName = options.itemName ?? "value"; - const nextLinkName = options.nextLinkName ?? "nextLink"; - const pagedResult: PagedResult = { - getPage: async (pageLink?: string) => { - const result = - pageLink === undefined - ? await getInitialResponse() - : await client.pathUnchecked(pageLink).get(); - checkPagingRequest(result); - const results = await processResponseBody(result as TResponse); - const nextLink = getNextLink(results, nextLinkName); - const values = getElements(results, itemName) as TPage; - return { - page: values, - nextPageLink: nextLink, - }; - }, - byPage: (settings?: TPageSettings) => { - const { continuationToken } = settings ?? {}; - return getPageAsyncIterator(pagedResult, { - pageLink: continuationToken, - }); - }, - }; - return getPagedAsyncIterator(pagedResult); -} - -/** - * returns an async iterator that iterates over results. It also has a `byPage` - * method that returns pages of items at once. - * - * @param pagedResult - an object that specifies how to get pages. - * @returns a paged async iterator that iterates over results. - */ - -function getPagedAsyncIterator< - TElement, - TPage = TElement[], - TPageSettings extends PageSettings = PageSettings, ->( - pagedResult: PagedResult, -): PagedAsyncIterableIterator { - const iter = getItemAsyncIterator(pagedResult); - return { - next() { - return iter.next(); - }, - [Symbol.asyncIterator]() { - return this; - }, - byPage: - pagedResult?.byPage ?? - ((settings?: TPageSettings) => { - const { continuationToken } = settings ?? {}; - return getPageAsyncIterator(pagedResult, { - pageLink: continuationToken, - }); - }), - }; -} - -async function* getItemAsyncIterator( - pagedResult: PagedResult, -): AsyncIterableIterator { - const pages = getPageAsyncIterator(pagedResult); - for await (const page of pages) { - yield* page as unknown as TElement[]; - } -} - -async function* getPageAsyncIterator( - pagedResult: PagedResult, - options: { - pageLink?: string; - } = {}, -): AsyncIterableIterator> { - const { pageLink } = options; - let response = await pagedResult.getPage(pageLink ?? pagedResult.firstPageLink); - if (!response) { - return; - } - let result = response.page as ContinuablePage; - result.continuationToken = response.nextPageLink; - yield result; - while (response.nextPageLink) { - response = await pagedResult.getPage(response.nextPageLink); - if (!response) { - return; - } - result = response.page as ContinuablePage; - result.continuationToken = response.nextPageLink; - yield result; - } -} - -/** - * Gets for the value of nextLink in the body - */ -function getNextLink(body: unknown, nextLinkName?: string): string | undefined { - if (!nextLinkName) { - return undefined; - } - - const nextLink = (body as Record)[nextLinkName]; - - if (typeof nextLink !== "string" && typeof nextLink !== "undefined" && nextLink !== null) { - throw new RestError( - `Body Property ${nextLinkName} should be a string or undefined or null but got ${typeof nextLink}`, - ); - } - - if (nextLink === null) { - return undefined; - } - - return nextLink; -} - -/** - * Gets the elements of the current request in the body. - */ -function getElements(body: unknown, itemName: string): T[] { - const value = (body as Record)[itemName] as T[]; - if (!Array.isArray(value)) { - throw new RestError( - `Couldn't paginate response\n Body doesn't contain an array property with name: ${itemName}`, - ); - } - - return value ?? []; -} - -/** - * Checks if a request failed - */ -function checkPagingRequest(response: PathUncheckedResponse): void { - if (isUnexpected(response)) { - throw createRestError( - `Pagination failed with unexpected statusCode ${response.status}`, - response, - ); - } -} diff --git a/sdk/computefleet/arm-computefleet/src/api/pollingHelpers.ts b/sdk/computefleet/arm-computefleet/src/api/pollingHelpers.ts deleted file mode 100644 index 3bb3471ba31e..000000000000 --- a/sdk/computefleet/arm-computefleet/src/api/pollingHelpers.ts +++ /dev/null @@ -1,128 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT license. - -import { - PollerLike, - OperationState, - ResourceLocationConfig, - RunningOperation, - createHttpPoller, - OperationResponse, -} from "@azure/core-lro"; - -import { Client, PathUncheckedResponse, createRestError } from "@azure-rest/core-client"; -import { AbortSignalLike } from "@azure/abort-controller"; -import { isUnexpected } from "../rest/index.js"; - -export interface GetLongRunningPollerOptions { - /** Delay to wait until next poll, in milliseconds. */ - updateIntervalInMs?: number; - /** - * The signal which can be used to abort requests. - */ - abortSignal?: AbortSignalLike; - /** - * The potential location of the result of the LRO if specified by the LRO extension in the swagger. - */ - resourceLocationConfig?: ResourceLocationConfig; - /** - * The original url of the LRO - * Should not be null when restoreFrom is set - */ - initialRequestUrl?: string; - /** - * A serialized poller which can be used to resume an existing paused Long-Running-Operation. - */ - restoreFrom?: string; - /** - * The function to get the initial response - */ - getInitialResponse?: () => PromiseLike; -} -export function getLongRunningPoller( - client: Client, - processResponseBody: (result: TResponse) => Promise, - options: GetLongRunningPollerOptions, -): PollerLike, TResult> { - const { restoreFrom, getInitialResponse } = options; - if (!restoreFrom && !getInitialResponse) { - throw new Error("Either restoreFrom or getInitialResponse must be specified"); - } - let initialResponse: TResponse | undefined = undefined; - const pollAbortController = new AbortController(); - const poller: RunningOperation = { - sendInitialRequest: async () => { - if (!getInitialResponse) { - throw new Error("getInitialResponse is required when initializing a new poller"); - } - initialResponse = await getInitialResponse(); - return getLroResponse(initialResponse); - }, - sendPollRequest: async ( - path: string, - pollOptions?: { - abortSignal?: AbortSignalLike; - }, - ) => { - // The poll request would both listen to the user provided abort signal and the poller's own abort signal - function abortListener(): void { - pollAbortController.abort(); - } - const abortSignal = pollAbortController.signal; - if (options.abortSignal?.aborted) { - pollAbortController.abort(); - } else if (pollOptions?.abortSignal?.aborted) { - pollAbortController.abort(); - } else if (!abortSignal.aborted) { - options.abortSignal?.addEventListener("abort", abortListener, { - once: true, - }); - pollOptions?.abortSignal?.addEventListener("abort", abortListener, { - once: true, - }); - } - let response; - try { - response = await client.pathUnchecked(path).get({ abortSignal }); - } finally { - options.abortSignal?.removeEventListener("abort", abortListener); - pollOptions?.abortSignal?.removeEventListener("abort", abortListener); - } - if (options.initialRequestUrl || initialResponse) { - response.headers["x-ms-original-url"] = - options.initialRequestUrl ?? initialResponse!.request.url; - } - - return getLroResponse(response as TResponse); - }, - }; - return createHttpPoller(poller, { - intervalInMs: options?.updateIntervalInMs, - resourceLocationConfig: options?.resourceLocationConfig, - restoreFrom: options?.restoreFrom, - processResult: (result: unknown) => { - return processResponseBody(result as TResponse); - }, - }); -} -/** - * Converts a Rest Client response to a response that the LRO implementation understands - * @param response - a rest client http response - * @param deserializeFn - deserialize function to convert Rest response to modular output - * @returns - An LRO response that the LRO implementation understands - */ -function getLroResponse( - response: TResponse, -): OperationResponse { - if (isUnexpected(response as PathUncheckedResponse)) { - throw createRestError(response); - } - return { - flatResponse: response, - rawResponse: { - ...response, - statusCode: Number.parseInt(response.status), - body: response.body, - }, - }; -} diff --git a/sdk/computefleet/arm-computefleet/src/azureFleetClient.ts b/sdk/computefleet/arm-computefleet/src/azureFleetClient.ts deleted file mode 100644 index 1525f63451ec..000000000000 --- a/sdk/computefleet/arm-computefleet/src/azureFleetClient.ts +++ /dev/null @@ -1,44 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT license. - -import { TokenCredential } from "@azure/core-auth"; -import { Pipeline } from "@azure/core-rest-pipeline"; -import { getOperationsOperations, OperationsOperations } from "./classic/operations/index.js"; -import { getFleetsOperations, FleetsOperations } from "./classic/fleets/index.js"; -import { - createAzureFleet, - AzureFleetClientOptionalParams, - AzureFleetContext, -} from "./api/index.js"; - -export { AzureFleetClientOptionalParams } from "./api/azureFleetContext.js"; - -export class AzureFleetClient { - private _client: AzureFleetContext; - /** The pipeline used by this client to make requests */ - public readonly pipeline: Pipeline; - - constructor( - credential: TokenCredential, - subscriptionId: string, - options: AzureFleetClientOptionalParams = {}, - ) { - const prefixFromOptions = options?.userAgentOptions?.userAgentPrefix; - const userAgentPrefix = prefixFromOptions - ? `${prefixFromOptions} azsdk-js-client` - : "azsdk-js-client"; - - this._client = createAzureFleet(credential, { - ...options, - userAgentOptions: { userAgentPrefix }, - }); - this.pipeline = this._client.pipeline; - this.operations = getOperationsOperations(this._client); - this.fleets = getFleetsOperations(this._client, subscriptionId); - } - - /** The operation groups for Operations */ - public readonly operations: OperationsOperations; - /** The operation groups for Fleets */ - public readonly fleets: FleetsOperations; -} diff --git a/sdk/computefleet/arm-computefleet/src/classic/fleets/index.ts b/sdk/computefleet/arm-computefleet/src/classic/fleets/index.ts deleted file mode 100644 index 623f66a7a99b..000000000000 --- a/sdk/computefleet/arm-computefleet/src/classic/fleets/index.ts +++ /dev/null @@ -1,120 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// 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 { PagedAsyncIterableIterator } from "../../models/pagingTypes.js"; -import { PollerLike, OperationState } from "@azure/core-lro"; -import { - FleetsGetOptionalParams, - FleetsCreateOrUpdateOptionalParams, - FleetsUpdateOptionalParams, - FleetsDeleteOptionalParams, - FleetsListByResourceGroupOptionalParams, - FleetsListBySubscriptionOptionalParams, - FleetsListVirtualMachineScaleSetsOptionalParams, -} from "../../models/options.js"; - -/** Interface representing a Fleets operations. */ -export interface FleetsOperations { - /** Get a Fleet */ - get: ( - resourceGroupName: string, - fleetName: string, - options?: FleetsGetOptionalParams, - ) => Promise; - /** Create a Fleet */ - createOrUpdate: ( - resourceGroupName: string, - fleetName: string, - resource: Fleet, - options?: FleetsCreateOrUpdateOptionalParams, - ) => PollerLike, Fleet>; - /** Update a Fleet */ - update: ( - resourceGroupName: string, - fleetName: string, - properties: FleetUpdate, - options?: FleetsUpdateOptionalParams, - ) => PollerLike, Fleet>; - /** Delete a Fleet */ - delete: ( - 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: ( - resourceGroupName: string, - name: string, - options?: FleetsListVirtualMachineScaleSetsOptionalParams, - ) => PagedAsyncIterableIterator; -} - -export function getFleets(context: AzureFleetContext, subscriptionId: string) { - return { - get: (resourceGroupName: string, fleetName: string, options?: FleetsGetOptionalParams) => - fleetsGet(context, subscriptionId, resourceGroupName, fleetName, options), - createOrUpdate: ( - resourceGroupName: string, - fleetName: string, - resource: Fleet, - options?: FleetsCreateOrUpdateOptionalParams, - ) => - fleetsCreateOrUpdate( - context, - subscriptionId, - resourceGroupName, - fleetName, - resource, - 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: ( - resourceGroupName: string, - name: string, - options?: FleetsListVirtualMachineScaleSetsOptionalParams, - ) => - fleetsListVirtualMachineScaleSets(context, subscriptionId, resourceGroupName, name, options), - }; -} - -export function getFleetsOperations( - context: AzureFleetContext, - subscriptionId: string, -): FleetsOperations { - return { - ...getFleets(context, subscriptionId), - }; -} diff --git a/sdk/computefleet/arm-computefleet/src/classic/index.ts b/sdk/computefleet/arm-computefleet/src/classic/index.ts deleted file mode 100644 index 1936abfbf1ac..000000000000 --- a/sdk/computefleet/arm-computefleet/src/classic/index.ts +++ /dev/null @@ -1,5 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT license. - -export { FleetsOperations } from "./fleets/index.js"; -export { OperationsOperations } from "./operations/index.js"; diff --git a/sdk/computefleet/arm-computefleet/src/classic/operations/index.ts b/sdk/computefleet/arm-computefleet/src/classic/operations/index.ts deleted file mode 100644 index 7cf5f9eb2989..000000000000 --- a/sdk/computefleet/arm-computefleet/src/classic/operations/index.ts +++ /dev/null @@ -1,26 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT license. - -import { AzureFleetContext } from "../../api/azureFleetContext.js"; -import { Operation } from "../../models/models.js"; -import { operationsList } from "../../api/operations/index.js"; -import { PagedAsyncIterableIterator } from "../../models/pagingTypes.js"; -import { OperationsListOptionalParams } from "../../models/options.js"; - -/** Interface representing a Operations operations. */ -export interface OperationsOperations { - /** List the operations for the provider */ - list: (options?: OperationsListOptionalParams) => PagedAsyncIterableIterator; -} - -export function getOperations(context: AzureFleetContext) { - return { - list: (options?: OperationsListOptionalParams) => operationsList(context, options), - }; -} - -export function getOperationsOperations(context: AzureFleetContext): OperationsOperations { - return { - ...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 ef6a2da479ad..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 856e572a8116..8d0daecfc3e7 100644 --- a/sdk/computefleet/arm-computefleet/src/index.ts +++ b/sdk/computefleet/arm-computefleet/src/index.ts @@ -1,172 +1,13 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT license. +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ -export { AzureFleetClient, AzureFleetClientOptionalParams } from "./azureFleetClient.js"; -export { restorePoller, RestorePollerOptions } from "./restorePollerHelpers.js"; -export { - Resource, - SystemData, - KnownCreatedByType, - CreatedByType, - TrackedResource, - Fleet, - FleetProperties, - KnownResourceProvisioningState, - ResourceProvisioningState, - SpotPriorityProfile, - KnownEvictionPolicy, - EvictionPolicy, - KnownSpotAllocationStrategy, - SpotAllocationStrategy, - RegularPriorityProfile, - KnownRegularPriorityAllocationStrategy, - RegularPriorityAllocationStrategy, - VmSizeProfile, - ComputeProfile, - BaseVirtualMachineProfile, - VirtualMachineScaleSetOSProfile, - WindowsConfiguration, - AdditionalUnattendContent, - KnownSettingNames, - SettingNames, - PatchSettings, - KnownWindowsVMGuestPatchMode, - WindowsVMGuestPatchMode, - KnownWindowsPatchAssessmentMode, - WindowsPatchAssessmentMode, - WindowsVMGuestPatchAutomaticByPlatformSettings, - KnownWindowsVMGuestPatchAutomaticByPlatformRebootSetting, - WindowsVMGuestPatchAutomaticByPlatformRebootSetting, - WinRMConfiguration, - WinRMListener, - KnownProtocolTypes, - ProtocolTypes, - LinuxConfiguration, - SshConfiguration, - SshPublicKey, - LinuxPatchSettings, - KnownLinuxVMGuestPatchMode, - LinuxVMGuestPatchMode, - KnownLinuxPatchAssessmentMode, - LinuxPatchAssessmentMode, - LinuxVMGuestPatchAutomaticByPlatformSettings, - KnownLinuxVMGuestPatchAutomaticByPlatformRebootSetting, - LinuxVMGuestPatchAutomaticByPlatformRebootSetting, - VaultSecretGroup, - SubResource, - VaultCertificate, - VirtualMachineScaleSetStorageProfile, - ImageReference, - VirtualMachineScaleSetOSDisk, - KnownCachingTypes, - CachingTypes, - KnownDiskCreateOptionTypes, - DiskCreateOptionTypes, - DiffDiskSettings, - KnownDiffDiskOptions, - DiffDiskOptions, - KnownDiffDiskPlacement, - DiffDiskPlacement, - KnownOperatingSystemTypes, - OperatingSystemTypes, - VirtualHardDisk, - VirtualMachineScaleSetManagedDiskParameters, - KnownStorageAccountTypes, - StorageAccountTypes, - DiskEncryptionSetParameters, - VMDiskSecurityProfile, - KnownSecurityEncryptionTypes, - SecurityEncryptionTypes, - KnownDiskDeleteOptionTypes, - DiskDeleteOptionTypes, - VirtualMachineScaleSetDataDisk, - KnownDiskControllerTypes, - DiskControllerTypes, - VirtualMachineScaleSetNetworkProfile, - ApiEntityReference, - VirtualMachineScaleSetNetworkConfiguration, - VirtualMachineScaleSetNetworkConfigurationProperties, - VirtualMachineScaleSetNetworkConfigurationDnsSettings, - VirtualMachineScaleSetIPConfiguration, - VirtualMachineScaleSetIPConfigurationProperties, - VirtualMachineScaleSetPublicIPAddressConfiguration, - VirtualMachineScaleSetPublicIPAddressConfigurationProperties, - VirtualMachineScaleSetPublicIPAddressConfigurationDnsSettings, - KnownDomainNameLabelScopeTypes, - DomainNameLabelScopeTypes, - VirtualMachineScaleSetIpTag, - KnownIPVersion, - IPVersion, - KnownDeleteOptions, - DeleteOptions, - PublicIPAddressSku, - KnownPublicIPAddressSkuName, - PublicIPAddressSkuName, - KnownPublicIPAddressSkuTier, - PublicIPAddressSkuTier, - KnownNetworkInterfaceAuxiliaryMode, - NetworkInterfaceAuxiliaryMode, - KnownNetworkInterfaceAuxiliarySku, - NetworkInterfaceAuxiliarySku, - KnownNetworkApiVersion, - NetworkApiVersion, - SecurityProfile, - UefiSettings, - KnownSecurityTypes, - SecurityTypes, - EncryptionIdentity, - ProxyAgentSettings, - KnownMode, - Mode, - DiagnosticsProfile, - BootDiagnostics, - VirtualMachineScaleSetExtensionProfile, - VirtualMachineScaleSetExtension, - VirtualMachineScaleSetExtensionProperties, - KeyVaultSecretReference, - ScheduledEventsProfile, - TerminateNotificationProfile, - OSImageNotificationProfile, - CapacityReservationProfile, - ApplicationProfile, - VMGalleryApplication, - VirtualMachineScaleSetHardwareProfile, - VMSizeProperties, - ServiceArtifactReference, - SecurityPostureReference, - ManagedServiceIdentity, - KnownManagedServiceIdentityType, - ManagedServiceIdentityType, - UserAssignedIdentity, - Plan, - ErrorResponse, - ErrorDetail, - ErrorAdditionalInfo, - FleetUpdate, - ManagedServiceIdentityUpdate, - ResourcePlanUpdate, - VirtualMachineScaleSet, - ApiError, - ApiErrorBase, - InnerError, - Operation, - OperationDisplay, - KnownOrigin, - Origin, - KnownActionType, - ActionType, - Versions, - ProvisioningState, - OperationsListOptionalParams, - FleetsGetOptionalParams, - FleetsCreateOrUpdateOptionalParams, - FleetsUpdateOptionalParams, - FleetsDeleteOptionalParams, - FleetsListByResourceGroupOptionalParams, - FleetsListBySubscriptionOptionalParams, - FleetsListVirtualMachineScaleSetsOptionalParams, - PageSettings, - ContinuablePage, - PagedAsyncIterableIterator, -} from "./models/index.js"; -export { FleetsOperations, OperationsOperations } from "./classic/index.js"; +/// +export { getContinuationToken } from "./pagingHelper"; +export * from "./models"; +export { MicrosoftAzureFleetForTesting } from "./microsoftAzureFleetForTesting"; +export * from "./operationsInterfaces"; diff --git a/sdk/computefleet/arm-computefleet/src/logger.ts b/sdk/computefleet/arm-computefleet/src/logger.ts deleted file mode 100644 index b34dda38dc91..000000000000 --- a/sdk/computefleet/arm-computefleet/src/logger.ts +++ /dev/null @@ -1,5 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT license. - -import { createClientLogger } from "@azure/logger"; -export const logger = createClientLogger("arm-computefleet"); diff --git a/sdk/computefleet/arm-computefleet/src/lroImpl.ts b/sdk/computefleet/arm-computefleet/src/lroImpl.ts new file mode 100644 index 000000000000..b27f5ac7209b --- /dev/null +++ b/sdk/computefleet/arm-computefleet/src/lroImpl.ts @@ -0,0 +1,42 @@ +/* + * 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. + */ + +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. + +import { AbortSignalLike } from "@azure/abort-controller"; +import { LongRunningOperation, LroResponse } from "@azure/core-lro"; + +export function createLroSpec(inputs: { + sendOperationFn: (args: any, spec: any) => Promise>; + args: Record; + spec: { + readonly requestBody?: unknown; + readonly path?: string; + readonly httpMethod: string; + } & Record; +}): LongRunningOperation { + const { args, spec, sendOperationFn } = inputs; + return { + requestMethod: spec.httpMethod, + requestPath: spec.path!, + sendInitialRequest: () => sendOperationFn(args, spec), + sendPollRequest: ( + path: string, + options?: { abortSignal?: AbortSignalLike }, + ) => { + const { requestBody, ...restSpec } = spec; + return sendOperationFn(args, { + ...restSpec, + httpMethod: "GET", + path, + abortSignal: options?.abortSignal, + }); + }, + }; +} diff --git a/sdk/computefleet/arm-computefleet/src/microsoftAzureFleetForTesting.ts b/sdk/computefleet/arm-computefleet/src/microsoftAzureFleetForTesting.ts new file mode 100644 index 000000000000..af580c35c27a --- /dev/null +++ b/sdk/computefleet/arm-computefleet/src/microsoftAzureFleetForTesting.ts @@ -0,0 +1,143 @@ +/* + * 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 * as coreClient from "@azure/core-client"; +import * as coreRestPipeline from "@azure/core-rest-pipeline"; +import { + PipelineRequest, + PipelineResponse, + SendRequest, +} from "@azure/core-rest-pipeline"; +import * as coreAuth from "@azure/core-auth"; +import { OperationsImpl, FleetsImpl } from "./operations"; +import { Operations, Fleets } from "./operationsInterfaces"; +import { MicrosoftAzureFleetForTestingOptionalParams } from "./models"; + +export class MicrosoftAzureFleetForTesting extends coreClient.ServiceClient { + $host: string; + apiVersion: string; + subscriptionId: string; + + /** + * Initializes a new instance of the MicrosoftAzureFleetForTesting class. + * @param credentials Subscription credentials which uniquely identify client subscription. + * @param subscriptionId The ID of the target subscription. The value must be an UUID. + * @param options The parameter options + */ + constructor( + credentials: coreAuth.TokenCredential, + subscriptionId: string, + options?: MicrosoftAzureFleetForTestingOptionalParams, + ) { + if (credentials === undefined) { + throw new Error("'credentials' cannot be null"); + } + if (subscriptionId === undefined) { + throw new Error("'subscriptionId' cannot be null"); + } + + // Initializing default values for options + if (!options) { + options = {}; + } + const defaults: MicrosoftAzureFleetForTestingOptionalParams = { + requestContentType: "application/json; charset=utf-8", + credential: credentials, + }; + + const packageDetails = `azsdk-js-arm-computefleet/1.0.0-beta.2`; + const userAgentPrefix = + options.userAgentOptions && options.userAgentOptions.userAgentPrefix + ? `${options.userAgentOptions.userAgentPrefix} ${packageDetails}` + : `${packageDetails}`; + + const optionsWithDefaults = { + ...defaults, + ...options, + userAgentOptions: { + userAgentPrefix, + }, + endpoint: + options.endpoint ?? options.baseUri ?? "https://management.azure.com", + }; + super(optionsWithDefaults); + + let bearerTokenAuthenticationPolicyFound: boolean = false; + if (options?.pipeline && options.pipeline.getOrderedPolicies().length > 0) { + const pipelinePolicies: coreRestPipeline.PipelinePolicy[] = + options.pipeline.getOrderedPolicies(); + bearerTokenAuthenticationPolicyFound = pipelinePolicies.some( + (pipelinePolicy) => + pipelinePolicy.name === + coreRestPipeline.bearerTokenAuthenticationPolicyName, + ); + } + if ( + !options || + !options.pipeline || + options.pipeline.getOrderedPolicies().length == 0 || + !bearerTokenAuthenticationPolicyFound + ) { + this.pipeline.removePolicy({ + name: coreRestPipeline.bearerTokenAuthenticationPolicyName, + }); + this.pipeline.addPolicy( + coreRestPipeline.bearerTokenAuthenticationPolicy({ + credential: credentials, + scopes: + optionsWithDefaults.credentialScopes ?? + `${optionsWithDefaults.endpoint}/.default`, + challengeCallbacks: { + authorizeRequestOnChallenge: + coreClient.authorizeRequestOnClaimChallenge, + }, + }), + ); + } + // Parameter assignments + this.subscriptionId = subscriptionId; + + // Assigning values to Constant parameters + this.$host = options.$host || "https://management.azure.com"; + this.apiVersion = options.apiVersion || "2024-05-01-preview"; + this.operations = new OperationsImpl(this); + this.fleets = new FleetsImpl(this); + this.addCustomApiVersionPolicy(options.apiVersion); + } + + /** A function that adds a policy that sets the api-version (or equivalent) to reflect the library version. */ + private addCustomApiVersionPolicy(apiVersion?: string) { + if (!apiVersion) { + return; + } + const apiVersionPolicy = { + name: "CustomApiVersionPolicy", + async sendRequest( + request: PipelineRequest, + next: SendRequest, + ): Promise { + const param = request.url.split("?"); + if (param.length > 1) { + const newParams = param[1].split("&").map((item) => { + if (item.indexOf("api-version") > -1) { + return "api-version=" + apiVersion; + } else { + return item; + } + }); + request.url = param[0] + "?" + newParams.join("&"); + } + return next(request); + }, + }; + this.pipeline.addPolicy(apiVersionPolicy); + } + + operations: Operations; + fleets: Fleets; +} diff --git a/sdk/computefleet/arm-computefleet/src/models/index.ts b/sdk/computefleet/arm-computefleet/src/models/index.ts index 06bef1d67523..94766b300e8f 100644 --- a/sdk/computefleet/arm-computefleet/src/models/index.ts +++ b/sdk/computefleet/arm-computefleet/src/models/index.ts @@ -1,169 +1,2659 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT license. - -export { - Resource, - SystemData, - KnownCreatedByType, - CreatedByType, - TrackedResource, - Fleet, - FleetProperties, - KnownResourceProvisioningState, - ResourceProvisioningState, - SpotPriorityProfile, - KnownEvictionPolicy, - EvictionPolicy, - KnownSpotAllocationStrategy, - SpotAllocationStrategy, - RegularPriorityProfile, - KnownRegularPriorityAllocationStrategy, - RegularPriorityAllocationStrategy, - VmSizeProfile, - ComputeProfile, - BaseVirtualMachineProfile, - VirtualMachineScaleSetOSProfile, - WindowsConfiguration, - AdditionalUnattendContent, - KnownSettingNames, - SettingNames, - PatchSettings, - KnownWindowsVMGuestPatchMode, - WindowsVMGuestPatchMode, - KnownWindowsPatchAssessmentMode, - WindowsPatchAssessmentMode, - WindowsVMGuestPatchAutomaticByPlatformSettings, - KnownWindowsVMGuestPatchAutomaticByPlatformRebootSetting, - WindowsVMGuestPatchAutomaticByPlatformRebootSetting, - WinRMConfiguration, - WinRMListener, - KnownProtocolTypes, - ProtocolTypes, - LinuxConfiguration, - SshConfiguration, - SshPublicKey, - LinuxPatchSettings, - KnownLinuxVMGuestPatchMode, - LinuxVMGuestPatchMode, - KnownLinuxPatchAssessmentMode, - LinuxPatchAssessmentMode, - LinuxVMGuestPatchAutomaticByPlatformSettings, - KnownLinuxVMGuestPatchAutomaticByPlatformRebootSetting, - LinuxVMGuestPatchAutomaticByPlatformRebootSetting, - VaultSecretGroup, - SubResource, - VaultCertificate, - VirtualMachineScaleSetStorageProfile, - ImageReference, - VirtualMachineScaleSetOSDisk, - KnownCachingTypes, - CachingTypes, - KnownDiskCreateOptionTypes, - DiskCreateOptionTypes, - DiffDiskSettings, - KnownDiffDiskOptions, - DiffDiskOptions, - KnownDiffDiskPlacement, - DiffDiskPlacement, - KnownOperatingSystemTypes, - OperatingSystemTypes, - VirtualHardDisk, - VirtualMachineScaleSetManagedDiskParameters, - KnownStorageAccountTypes, - StorageAccountTypes, - DiskEncryptionSetParameters, - VMDiskSecurityProfile, - KnownSecurityEncryptionTypes, - SecurityEncryptionTypes, - KnownDiskDeleteOptionTypes, - DiskDeleteOptionTypes, - VirtualMachineScaleSetDataDisk, - KnownDiskControllerTypes, - DiskControllerTypes, - VirtualMachineScaleSetNetworkProfile, - ApiEntityReference, - VirtualMachineScaleSetNetworkConfiguration, - VirtualMachineScaleSetNetworkConfigurationProperties, - VirtualMachineScaleSetNetworkConfigurationDnsSettings, - VirtualMachineScaleSetIPConfiguration, - VirtualMachineScaleSetIPConfigurationProperties, - VirtualMachineScaleSetPublicIPAddressConfiguration, - VirtualMachineScaleSetPublicIPAddressConfigurationProperties, - VirtualMachineScaleSetPublicIPAddressConfigurationDnsSettings, - KnownDomainNameLabelScopeTypes, - DomainNameLabelScopeTypes, - VirtualMachineScaleSetIpTag, - KnownIPVersion, - IPVersion, - KnownDeleteOptions, - DeleteOptions, - PublicIPAddressSku, - KnownPublicIPAddressSkuName, - PublicIPAddressSkuName, - KnownPublicIPAddressSkuTier, - PublicIPAddressSkuTier, - KnownNetworkInterfaceAuxiliaryMode, - NetworkInterfaceAuxiliaryMode, - KnownNetworkInterfaceAuxiliarySku, - NetworkInterfaceAuxiliarySku, - KnownNetworkApiVersion, - NetworkApiVersion, - SecurityProfile, - UefiSettings, - KnownSecurityTypes, - SecurityTypes, - EncryptionIdentity, - ProxyAgentSettings, - KnownMode, - Mode, - DiagnosticsProfile, - BootDiagnostics, - VirtualMachineScaleSetExtensionProfile, - VirtualMachineScaleSetExtension, - VirtualMachineScaleSetExtensionProperties, - KeyVaultSecretReference, - ScheduledEventsProfile, - TerminateNotificationProfile, - OSImageNotificationProfile, - CapacityReservationProfile, - ApplicationProfile, - VMGalleryApplication, - VirtualMachineScaleSetHardwareProfile, - VMSizeProperties, - ServiceArtifactReference, - SecurityPostureReference, - ManagedServiceIdentity, - KnownManagedServiceIdentityType, - ManagedServiceIdentityType, - UserAssignedIdentity, - Plan, - ErrorResponse, - ErrorDetail, - ErrorAdditionalInfo, - FleetUpdate, - ManagedServiceIdentityUpdate, - ResourcePlanUpdate, - VirtualMachineScaleSet, - ApiError, - ApiErrorBase, - InnerError, - Operation, - OperationDisplay, - KnownOrigin, - Origin, - KnownActionType, - ActionType, - Versions, - ProvisioningState, -} from "./models.js"; -export { - OperationsListOptionalParams, - FleetsGetOptionalParams, - FleetsCreateOrUpdateOptionalParams, - FleetsUpdateOptionalParams, - FleetsDeleteOptionalParams, - FleetsListByResourceGroupOptionalParams, - FleetsListBySubscriptionOptionalParams, - FleetsListVirtualMachineScaleSetsOptionalParams, -} from "./options.js"; -export { PageSettings, ContinuablePage, PagedAsyncIterableIterator } from "./pagingTypes.js"; +/* + * 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 * as coreClient from "@azure/core-client"; + +/** 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 { + /** + * List of operations supported by the resource provider + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly value?: Operation[]; + /** + * URL to get the next set of operation list results (if there are any). + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly nextLink?: string; +} + +/** 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" + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly name?: string; + /** + * Whether the operation applies to data-plane. This is "true" for data-plane operations and "false" for ARM/control-plane operations. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + 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" + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly origin?: Origin; + /** + * Enum. Indicates the action type. "Internal" refers to actions that are for internal only APIs. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly actionType?: ActionType; +} + +/** Localized display information for this particular operation. */ +export interface OperationDisplay { + /** + * The localized friendly form of the resource provider name, e.g. "Microsoft Monitoring Insights" or "Microsoft Compute". + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly provider?: string; + /** + * The localized friendly name of the resource type related to this operation. E.g. "Virtual Machines" or "Job Schedule Collections". + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly resource?: string; + /** + * The concise, localized friendly name for the operation; suitable for dropdowns. E.g. "Create or Update Virtual Machine", "Restart Virtual Machine". + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly operation?: string; + /** + * The short, localized friendly description of the operation; suitable for tool tips and detailed views. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly description?: string; +} + +/** Common error response for all Azure Resource Manager APIs to return error details for failed operations. (This also follows the OData error response format.). */ +export interface ErrorResponse { + /** The error object. */ + error?: ErrorDetail; +} + +/** The error detail. */ +export interface ErrorDetail { + /** + * The error code. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly code?: string; + /** + * The error message. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly message?: string; + /** + * The error target. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly target?: string; + /** + * The error details. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly details?: ErrorDetail[]; + /** + * The error additional info. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly additionalInfo?: ErrorAdditionalInfo[]; +} + +/** The resource management error additional info. */ +export interface ErrorAdditionalInfo { + /** + * The additional info type. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly type?: string; + /** + * The additional info. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly info?: Record; +} + +/** The response of a Fleet list operation. */ +export interface FleetListResult { + /** The Fleet items on this page */ + value: Fleet[]; + /** The link to the next page of items */ + nextLink?: string; +} + +/** Details of the Compute Fleet. */ +export interface FleetProperties { + /** + * The status of the last operation. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly provisioningState?: ProvisioningState; + /** Configuration Options for Spot instances in Compute Fleet. */ + spotPriorityProfile?: SpotPriorityProfile; + /** Configuration Options for Regular instances in Compute Fleet. */ + regularPriorityProfile?: RegularPriorityProfile; + /** List of VM sizes supported for Compute Fleet */ + vmSizesProfile: VmSizeProfile[]; + /** Compute Profile to use for running user's workloads. */ + computeProfile: ComputeProfile; + /** + * Specifies the time at which the Compute Fleet is created. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly timeCreated?: Date; + /** + * Specifies the ID which uniquely identifies a Compute Fleet. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly uniqueId?: string; +} + +/** Configuration Options for Spot instances in Compute Fleet. */ +export interface SpotPriorityProfile { + /** Total capacity to achieve. It is currently in terms of number of VMs. */ + capacity?: number; + /** Minimum capacity to achieve which cannot be updated. If we will not be able to "guarantee" minimum capacity, we will reject the request in the sync path itself. */ + minCapacity?: number; + /** Price per hour of each Spot VM will never exceed this. */ + maxPricePerVM?: number; + /** Eviction Policy to follow when evicting Spot VMs. */ + evictionPolicy?: EvictionPolicy; + /** Allocation strategy to follow when determining the VM sizes distribution for Spot VMs. */ + allocationStrategy?: SpotAllocationStrategy; + /** + * Flag to enable/disable continuous goal seeking for the desired capacity and restoration of evicted Spot VMs. + * If maintain is enabled, AzureFleetRP will use all VM sizes in vmSizesProfile to create new VMs (if VMs are evicted deleted) + * or update existing VMs with new VM sizes (if VMs are evicted deallocated or failed to allocate due to capacity constraint) in order to achieve the desired capacity. + * Maintain is enabled by default. + */ + maintain?: boolean; +} + +/** Configuration Options for Regular instances in Compute Fleet. */ +export interface RegularPriorityProfile { + /** Total capacity to achieve. It is currently in terms of number of VMs. */ + capacity?: number; + /** Minimum capacity to achieve which cannot be updated. If we will not be able to "guarantee" minimum capacity, we will reject the request in the sync path itself. */ + minCapacity?: number; + /** Allocation strategy to follow when determining the VM sizes distribution for Regular VMs. */ + allocationStrategy?: RegularPriorityAllocationStrategy; +} + +/** 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') */ + name: string; + /** + * The rank of the VM size. This is used with 'RegularPriorityAllocationStrategy.Prioritized' + * The lower the number, the higher the priority. Starting with 0. + */ + rank?: number; +} + +/** 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" */ + baseVirtualMachineProfile: BaseVirtualMachineProfile; + /** + * Specifies the Microsoft.Compute API version to use when creating underlying Virtual Machine scale sets and Virtual Machines. + * The default value will be the latest supported computeApiVersion by Compute Fleet. + */ + computeApiVersion?: string; + /** + * Specifies the number of fault domains to use when creating the underlying VMSS. + * A fault domain is a logical group of hardware within an Azure datacenter. + * VMs in the same fault domain share a common power source and network switch. + * If not specified, defaults to 1, which represents "Max Spreading" (using as many fault domains as possible). + * This property cannot be updated. + */ + platformFaultDomainCount?: number; +} + +/** Describes the base virtual machine profile for fleet */ +export interface BaseVirtualMachineProfile { + /** + * Specifies the operating system settings for the virtual machines in the scale + * set. + */ + osProfile?: VirtualMachineScaleSetOSProfile; + /** Specifies the storage settings for the virtual machine disks. */ + storageProfile?: VirtualMachineScaleSetStorageProfile; + /** + * Specifies properties of the network interfaces of the virtual machines in the + * scale set. + */ + networkProfile?: VirtualMachineScaleSetNetworkProfile; + /** + * Specifies the Security related profile settings for the virtual machines in the + * scale set. + */ + securityProfile?: SecurityProfile; + /** Specifies the boot diagnostic settings state. */ + diagnosticsProfile?: DiagnosticsProfile; + /** + * Specifies a collection of settings for extensions installed on virtual machines + * in the scale set. + */ + extensionProfile?: VirtualMachineScaleSetExtensionProfile; + /** + * Specifies that the image or disk that is being used was licensed on-premises. + *

Possible values for Windows Server operating system are:

+ * Windows_Client

Windows_Server

Possible values for Linux + * 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) + *

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

Minimum api-version: 2015-06-15 + */ + licenseType?: string; + /** Specifies Scheduled Event related configurations. */ + scheduledEventsProfile?: ScheduledEventsProfile; + /** + * UserData for the virtual machines in the scale set, which must be base-64 + * encoded. Customer should not pass any secrets in here. Minimum api-version: + * 2021-03-01. + */ + userData?: string; + /** + * Specifies the capacity reservation related details of a scale set. Minimum + * api-version: 2021-04-01. + */ + capacityReservation?: CapacityReservationProfile; + /** Specifies the gallery applications that should be made available to the VM/VMSS */ + applicationProfile?: ApplicationProfile; + /** + * Specifies the hardware profile related details of a scale set. Minimum + * api-version: 2021-11-01. + */ + hardwareProfile?: VirtualMachineScaleSetHardwareProfile; + /** + * Specifies the service artifact reference id used to set same image version for + * all virtual machines in the scale set when using 'latest' image version. + * Minimum api-version: 2022-11-01 + */ + serviceArtifactReference?: ServiceArtifactReference; + /** + * Specifies the security posture to be used for all virtual machines in the scale + * set. Minimum api-version: 2023-03-01 + */ + securityPostureReference?: SecurityPostureReference; + /** + * Specifies the time in which this VM profile for the Virtual Machine Scale Set + * was created. Minimum API version for this property is 2023-09-01. This value + * will be added to VMSS Flex VM tags when creating/updating the VMSS VM Profile + * with minimum api-version 2023-09-01. Examples: "2024-07-01T00:00:01.1234567+00:00" + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly timeCreated?: Date; +} + +/** Describes a virtual machine scale set OS profile. */ +export interface VirtualMachineScaleSetOSProfile { + /** + * Specifies the computer name prefix for all of the virtual machines in the scale + * set. Computer name prefixes must be 1 to 15 characters long. + */ + computerNamePrefix?: string; + /** + * Specifies the name of the administrator account.

**Windows-only + * restriction:** Cannot end in "."

**Disallowed values:** + * "administrator", "admin", "user", "user1", "test", "user2", "test1", "user3", + * "admin1", "1", "123", "a", "actuser", "adm", "admin2", "aspnet", "backup", + * "console", "david", "guest", "john", "owner", "root", "server", "sql", + * "support", "support_388945a0", "sys", "test2", "test3", "user4", "user5". + *

**Minimum-length (Linux):** 1 character

**Max-length + * (Linux):** 64 characters

**Max-length (Windows):** 20 characters + */ + adminUsername?: string; + /** + * Specifies the password of the administrator account.

**Minimum-length + * (Windows):** 8 characters

**Minimum-length (Linux):** 6 characters + *

**Max-length (Windows):** 123 characters

**Max-length + * (Linux):** 72 characters

**Complexity requirements:** 3 out of 4 + * conditions below need to be fulfilled
Has lower characters
Has upper + * characters
Has a digit
Has a special character (Regex match [\W_]) + *

**Disallowed values:** "abc@123", "P@$$w0rd", "P@ssw0rd", + * "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) + *

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) + * This value contains a credential. Consider obscuring before showing to users + */ + adminPassword?: string; + /** + * Specifies a base-64 encoded string of custom data. The base-64 encoded string + * 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) + * This value contains a credential. Consider obscuring before showing to users + */ + customData?: string; + /** Specifies Windows operating system settings on the virtual machine. */ + windowsConfiguration?: WindowsConfiguration; + /** + * 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). + */ + 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) + * or the [Azure Key Vault virtual machine extension for + * Windows](https://docs.microsoft.com/azure/virtual-machines/extensions/key-vault-windows). + */ + secrets?: VaultSecretGroup[]; + /** + * Specifies whether extension operations should be allowed on the virtual machine + * scale set. This may only be set to False when no extensions are present on the + * virtual machine scale set. + */ + allowExtensionOperations?: boolean; + /** Optional property which must either be set to True or omitted. */ + requireGuestProvisionSignal?: boolean; +} + +/** Specifies Windows operating system settings on the virtual machine. */ +export interface WindowsConfiguration { + /** + * Indicates whether virtual machine agent should be provisioned on the virtual + * machine. When this property is not specified in the request body, it is set to + * true by default. This will ensure that VM Agent is installed on the VM so that + * extensions can be added to the VM later. + */ + provisionVMAgent?: boolean; + /** + * Indicates whether Automatic Updates is enabled for the Windows virtual machine. + * Default value is true. For virtual machine scale sets, this property can be + * updated and updates will take effect on OS reprovisioning. + */ + enableAutomaticUpdates?: boolean; + /** + * 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) + * value from time zones returned by + * [TimeZoneInfo.GetSystemTimeZones](https://docs.microsoft.com/dotnet/api/system.timezoneinfo.getsystemtimezones). + */ + timeZone?: string; + /** + * Specifies additional base-64 encoded XML formatted information that can be + * included in the Unattend.xml file, which is used by Windows Setup. + */ + additionalUnattendContent?: AdditionalUnattendContent[]; + /** [Preview Feature] Specifies settings related to VM Guest Patching on Windows. */ + patchSettings?: PatchSettings; + /** + * Specifies the Windows Remote Management listeners. This enables remote Windows + * PowerShell. + */ + winRM?: WinRMConfiguration; + /** + * Indicates whether VMAgent Platform Updates is enabled for the Windows virtual + * machine. Default value is false. + */ + enableVMAgentPlatformUpdates?: boolean; +} + +/** + * Specifies additional XML formatted information that can be included in the + * Unattend.xml file, which is used by Windows Setup. Contents are defined by + * setting name, component name, and the pass in which the content is applied. + */ +export interface AdditionalUnattendContent { + /** The pass name. Currently, the only allowable value is OobeSystem. */ + passName?: "OobeSystem"; + /** + * The component name. Currently, the only allowable value is + * Microsoft-Windows-Shell-Setup. + */ + componentName?: "Microsoft-Windows-Shell-Setup"; + /** + * Specifies the name of the setting to which the content applies. Possible values + * are: FirstLogonCommands and AutoLogon. + */ + settingName?: SettingNames; + /** + * Specifies the XML formatted content that is added to the unattend.xml file for + * the specified path and component. The XML must be less than 4KB and must + * include the root element for the setting or feature that is being inserted. + * This value contains a credential. Consider obscuring before showing to users + */ + content?: string; +} + +/** Specifies settings related to VM Guest Patching on Windows. */ +export interface PatchSettings { + /** + * Specifies the mode of VM Guest Patching to IaaS virtual machine or virtual + * machines associated to virtual machine scale set with OrchestrationMode as + * Flexible.

Possible values are:

**Manual** - You + * control the application of patches to a virtual machine. You do this by + * applying patches manually inside the VM. In this mode, automatic updates are + * disabled; the property WindowsConfiguration.enableAutomaticUpdates must be + * false

**AutomaticByOS** - The virtual machine will automatically be + * updated by the OS. The property WindowsConfiguration.enableAutomaticUpdates + * must be true.

**AutomaticByPlatform** - the virtual machine will + * automatically updated by the platform. The properties provisionVMAgent and + * WindowsConfiguration.enableAutomaticUpdates must be true + */ + patchMode?: WindowsVMGuestPatchMode; + /** + * Enables customers to patch their Azure VMs without requiring a reboot. For + * enableHotpatching, the 'provisionVMAgent' must be set to true and 'patchMode' + * must be set to 'AutomaticByPlatform'. + */ + enableHotpatching?: boolean; + /** + * Specifies the mode of VM Guest patch assessment for the IaaS virtual + * machine.

Possible values are:

**ImageDefault** - You + * control the timing of patch assessments on a virtual machine.

+ * **AutomaticByPlatform** - The platform will trigger periodic patch assessments. + * The property provisionVMAgent must be true. + */ + assessmentMode?: WindowsPatchAssessmentMode; + /** + * Specifies additional settings for patch mode AutomaticByPlatform in VM Guest + * Patching on Windows. + */ + automaticByPlatformSettings?: WindowsVMGuestPatchAutomaticByPlatformSettings; +} + +/** + * Specifies additional settings to be applied when patch mode AutomaticByPlatform + * is selected in Windows patch settings. + */ +export interface WindowsVMGuestPatchAutomaticByPlatformSettings { + /** + * Specifies the reboot setting for all AutomaticByPlatform patch installation + * operations. + */ + rebootSetting?: WindowsVMGuestPatchAutomaticByPlatformRebootSetting; + /** Enables customer to schedule patching without accidental upgrades */ + bypassPlatformSafetyChecksOnUserSchedule?: boolean; +} + +/** Describes Windows Remote Management configuration of the VM */ +export interface WinRMConfiguration { + /** The list of Windows Remote Management listeners */ + listeners?: WinRMListener[]; +} + +/** Describes Protocol and thumbprint of Windows Remote Management listener */ +export interface WinRMListener { + /** + * Specifies the protocol of WinRM listener. Possible values are: **http,** + * **https.** + */ + protocol?: ProtocolTypes; + /** + * 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). + * 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) + * or the [Azure Key Vault virtual machine extension for + * Windows](https://docs.microsoft.com/azure/virtual-machines/extensions/key-vault-windows). + */ + certificateUrl?: string; +} + +/** + * 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). + */ +export interface LinuxConfiguration { + /** Specifies whether password authentication should be disabled. */ + disablePasswordAuthentication?: boolean; + /** Specifies the ssh key configuration for a Linux OS. */ + ssh?: SshConfiguration; + /** + * Indicates whether virtual machine agent should be provisioned on the virtual + * machine. When this property is not specified in the request body, default + * behavior is to set it to true. This will ensure that VM Agent is installed on + * the VM so that extensions can be added to the VM later. + */ + provisionVMAgent?: boolean; + /** [Preview Feature] Specifies settings related to VM Guest Patching on Linux. */ + patchSettings?: LinuxPatchSettings; + /** + * Indicates whether VMAgent Platform Updates is enabled for the Linux virtual + * machine. Default value is false. + */ + enableVMAgentPlatformUpdates?: boolean; +} + +/** SSH configuration for Linux based VMs running on Azure */ +export interface SshConfiguration { + /** The list of SSH public keys used to authenticate with linux based VMs. */ + publicKeys?: SshPublicKey[]; +} + +/** + * Contains information about SSH certificate public key and the path on the Linux + * VM where the public key is placed. + */ +export interface SshPublicKey { + /** + * Specifies the full path on the created VM where ssh public key is stored. If + * the file already exists, the specified key is appended to the file. Example: + * /home/user/.ssh/authorized_keys + */ + path?: string; + /** + * 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). + */ + keyData?: string; +} + +/** Specifies settings related to VM Guest Patching on Linux. */ +export interface LinuxPatchSettings { + /** + * Specifies the mode of VM Guest Patching to IaaS virtual machine or virtual + * machines associated to virtual machine scale set with OrchestrationMode as + * Flexible.

Possible values are:

**ImageDefault** - The + * virtual machine's default patching configuration is used.

+ * **AutomaticByPlatform** - The virtual machine will be automatically updated by + * the platform. The property provisionVMAgent must be true + */ + patchMode?: LinuxVMGuestPatchMode; + /** + * Specifies the mode of VM Guest Patch Assessment for the IaaS virtual + * machine.

Possible values are:

**ImageDefault** - You + * control the timing of patch assessments on a virtual machine.

+ * **AutomaticByPlatform** - The platform will trigger periodic patch assessments. + * The property provisionVMAgent must be true. + */ + assessmentMode?: LinuxPatchAssessmentMode; + /** + * Specifies additional settings for patch mode AutomaticByPlatform in VM Guest + * Patching on Linux. + */ + automaticByPlatformSettings?: LinuxVMGuestPatchAutomaticByPlatformSettings; +} + +/** + * Specifies additional settings to be applied when patch mode AutomaticByPlatform + * is selected in Linux patch settings. + */ +export interface LinuxVMGuestPatchAutomaticByPlatformSettings { + /** + * Specifies the reboot setting for all AutomaticByPlatform patch installation + * operations. + */ + rebootSetting?: LinuxVMGuestPatchAutomaticByPlatformRebootSetting; + /** Enables customer to schedule patching without accidental upgrades */ + bypassPlatformSafetyChecksOnUserSchedule?: boolean; +} + +/** Describes a set of certificates which are all in the same Key Vault. */ +export interface VaultSecretGroup { + /** + * The relative URL of the Key Vault containing all of the certificates in + * VaultCertificates. + */ + sourceVault?: SubResource; + /** The list of key vault references in SourceVault which contain certificates. */ + vaultCertificates?: VaultCertificate[]; +} + +/** Describes SubResource */ +export interface SubResource { + /** Resource Id */ + id?: string; +} + +/** + * Describes a single certificate reference in a Key Vault, and where the + * certificate should reside on the VM. + */ +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). + * 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) + * or the [Azure Key Vault virtual machine extension for + * Windows](https://docs.microsoft.com/azure/virtual-machines/extensions/key-vault-windows). + */ + certificateUrl?: string; + /** + * For Windows VMs, specifies the certificate store on the Virtual Machine to + * which the certificate should be added. The specified certificate store is + * implicitly in the LocalMachine account. For Linux VMs, the certificate file is + * placed under the /var/lib/waagent directory, with the file name + * <UppercaseThumbprint>.crt for the X509 certificate file and + * <UppercaseThumbprint>.prv for private key. Both of these files are .pem + * formatted. + */ + certificateStore?: string; +} + +/** Describes a virtual machine scale set storage profile. */ +export interface VirtualMachineScaleSetStorageProfile { + /** + * Specifies information about the image to use. You can specify information about + * platform images, marketplace images, or virtual machine images. This element is + * required when you want to use a platform image, marketplace image, or virtual + * machine image, but is not used in other creation operations. + */ + imageReference?: ImageReference; + /** + * 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). + */ + 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). + */ + dataDisks?: VirtualMachineScaleSetDataDisk[]; + /** Specifies the disk controller type configured for the virtual machines in the scale set. Minimum api-version: 2022-08-01 */ + diskControllerType?: DiskControllerTypes; +} + +/** + * Specifies information about the image to use. You can specify information about + * platform images, marketplace images, or virtual machine images. This element is + * required when you want to use a platform image, marketplace image, or virtual + * machine image, but is not used in other creation operations. NOTE: Image + * reference publisher and offer can only be set when you create the scale set. + */ +export interface ImageReference { + /** Resource Id */ + id?: string; + /** The image publisher. */ + publisher?: string; + /** + * Specifies the offer of the platform image or marketplace image used to create + * the virtual machine. + */ + offer?: string; + /** The image SKU. */ + sku?: string; + /** + * Specifies the version of the platform image or marketplace image used to create + * the virtual machine. The allowed formats are Major.Minor.Build or 'latest'. + * Major, Minor, and Build are decimal numbers. Specify 'latest' to use the latest + * version of an image available at deploy time. Even if you use 'latest', the VM + * image will not automatically update after deploy time even if a new version + * becomes available. Please do not use field 'version' for gallery image + * deployment, gallery image should always use 'id' field for deployment, to use 'latest' + * version of gallery image, just set + * '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/galleries/{galleryName}/images/{imageName}' + * in the 'id' field without version input. + */ + version?: string; + /** + * Specifies in decimal numbers, the version of platform image or marketplace + * image used to create the virtual machine. This readonly field differs from 'version', + * only if the value specified in 'version' field is 'latest'. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly exactVersion?: string; + /** + * Specified the shared gallery image unique id for vm deployment. This can be + * fetched from shared gallery image GET call. + */ + sharedGalleryImageId?: string; + /** + * Specified the community gallery image unique id for vm deployment. This can be + * fetched from community gallery image GET call. + */ + communityGalleryImageId?: string; +} + +/** Describes a virtual machine scale set operating system disk. */ +export interface VirtualMachineScaleSetOSDisk { + /** The disk name. */ + name?: string; + /** + * Specifies the caching requirements. Possible values are: **None,** + * **ReadOnly,** **ReadWrite.** The default values are: **None for Standard + * storage. ReadOnly for Premium storage.** + */ + caching?: CachingTypes; + /** Specifies whether writeAccelerator should be enabled or disabled on the disk. */ + writeAcceleratorEnabled?: boolean; + /** + * Specifies how the virtual machines in the scale set should be created. The only + * allowed value is: **FromImage.** This value is used when you are using an image + * to create the virtual machine. If you are using a platform image, you also use + * the imageReference element described above. If you are using a marketplace + * image, you also use the plan element previously described. + */ + createOption: DiskCreateOptionTypes; + /** + * Specifies the ephemeral disk Settings for the operating system disk used by the + * virtual machine scale set. + */ + diffDiskSettings?: DiffDiskSettings; + /** + * Specifies the size of an empty data disk in gigabytes. This element can be used + * to overwrite the size of the disk in a virtual machine image. The property 'diskSizeGB' + * is the number of bytes x 1024^3 for the disk and the value cannot + * be larger than 1023. + */ + diskSizeGB?: number; + /** + * This property allows you to specify the type of the OS that is included in the + * disk if creating a VM from user-image or a specialized VHD. Possible values + * are: **Windows,** **Linux.** + */ + osType?: OperatingSystemTypes; + /** Specifies information about the unmanaged user image to base the scale set on. */ + image?: VirtualHardDisk; + /** + * Specifies the container urls that are used to store operating system disks for + * the scale set. + */ + vhdContainers?: string[]; + /** The managed disk parameters. */ + managedDisk?: VirtualMachineScaleSetManagedDiskParameters; + /** + * Specifies whether OS Disk should be deleted or detached upon VMSS Flex deletion + * (This feature is available for VMSS with Flexible OrchestrationMode only). + *

Possible values:

**Delete** If this value is used, the OS + * disk is deleted when VMSS Flex VM is deleted.

**Detach** If this value + * is used, the OS disk is retained after VMSS Flex VM is deleted.

The + * default value is set to **Delete**. For an Ephemeral OS Disk, the default value + * is set to **Delete**. User cannot change the delete option for Ephemeral OS + * Disk. + */ + deleteOption?: DiskDeleteOptionTypes; +} + +/** + * Describes the parameters of ephemeral disk settings that can be specified for + * operating system disk. **Note:** The ephemeral disk settings can only be + * specified for managed disk. + */ +export interface DiffDiskSettings { + /** Specifies the ephemeral disk settings for operating system disk. */ + option?: DiffDiskOptions; + /** + * Specifies the ephemeral disk placement for operating system disk. Possible + * 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 + * sizes exposes a cache disk. + */ + placement?: DiffDiskPlacement; +} + +/** Describes the uri of a disk. */ +export interface VirtualHardDisk { + /** Specifies the virtual hard disk's uri. */ + uri?: string; +} + +/** Describes the parameters of a ScaleSet managed disk. */ +export interface VirtualMachineScaleSetManagedDiskParameters { + /** + * Specifies the storage account type for the managed disk. NOTE: UltraSSD_LRS can + * only be used with data disks, it cannot be used with OS Disk. + */ + storageAccountType?: StorageAccountTypes; + /** + * Specifies the customer managed disk encryption set resource id for the managed + * disk. + */ + diskEncryptionSet?: DiskEncryptionSetParameters; + /** Specifies the security profile for the managed disk. */ + securityProfile?: VMDiskSecurityProfile; +} + +/** + * Describes the parameter of customer managed disk encryption set resource id + * that can be specified for disk. **Note:** The disk encryption set resource id + * can only be specified for managed disk. Please refer + * https://aka.ms/mdssewithcmkoverview for more details. + */ +export interface DiskEncryptionSetParameters { + /** Resource Id */ + id?: string; +} + +/** + * Specifies the security profile settings for the managed disk. **Note:** It can + * only be set for Confidential VMs. + */ +export interface VMDiskSecurityProfile { + /** + * Specifies the EncryptionType of the managed disk. It is set to + * DiskWithVMGuestState for encryption of the managed disk along with VMGuestState + * blob, VMGuestStateOnly for encryption of just the VMGuestState blob, and + * NonPersistedTPM for not persisting firmware state in the VMGuestState blob.. + * **Note:** It can be set for only Confidential VMs. + */ + securityEncryptionType?: SecurityEncryptionTypes; + /** + * Specifies the customer managed disk encryption set resource id for the managed + * disk that is used for Customer Managed Key encrypted ConfidentialVM OS Disk and + * VMGuest blob. + */ + diskEncryptionSet?: DiskEncryptionSetParameters; +} + +/** Describes a virtual machine scale set data disk. */ +export interface VirtualMachineScaleSetDataDisk { + /** The disk name. */ + name?: string; + /** + * Specifies the logical unit number of the data disk. This value is used to + * identify data disks within the VM and therefore must be unique for each data + * disk attached to a VM. + */ + lun: number; + /** + * Specifies the caching requirements. Possible values are: **None,** + * **ReadOnly,** **ReadWrite.** The default values are: **None for Standard + * storage. ReadOnly for Premium storage.** + */ + caching?: CachingTypes; + /** Specifies whether writeAccelerator should be enabled or disabled on the disk. */ + writeAcceleratorEnabled?: boolean; + /** The create option. */ + createOption: DiskCreateOptionTypes; + /** + * Specifies the size of an empty data disk in gigabytes. This element can be used + * to overwrite the size of the disk in a virtual machine image. The property + * diskSizeGB is the number of bytes x 1024^3 for the disk and the value cannot be + * larger than 1023. + */ + diskSizeGB?: number; + /** The managed disk parameters. */ + managedDisk?: VirtualMachineScaleSetManagedDiskParameters; + /** + * Specifies the Read-Write IOPS for the managed disk. Should be used only when + * StorageAccountType is UltraSSD_LRS. If not specified, a default value would be + * assigned based on diskSizeGB. + */ + 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 + * would be assigned based on diskSizeGB. + */ + diskMBpsReadWrite?: number; + /** + * Specifies whether data disk should be deleted or detached upon VMSS Flex + * deletion (This feature is available for VMSS with Flexible OrchestrationMode + * only).

Possible values:

**Delete** If this value is used, the + * data disk is deleted when the VMSS Flex VM is deleted.

**Detach** If + * this value is used, the data disk is retained after VMSS Flex VM is + * deleted.

The default value is set to **Delete**. + */ + deleteOption?: DiskDeleteOptionTypes; +} + +/** Describes a virtual machine scale set network profile. */ +export interface VirtualMachineScaleSetNetworkProfile { + /** + * A reference to a load balancer probe used to determine the health of an + * instance in the virtual machine scale set. The reference will be in the form: + * '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/probes/{probeName}'. + */ + healthProbe?: ApiEntityReference; + /** The list of network configurations. */ + networkInterfaceConfigurations?: VirtualMachineScaleSetNetworkConfiguration[]; + /** + * specifies the Microsoft.Network API version used when creating networking + * resources in the Network Interface Configurations for Virtual Machine Scale Set + * with orchestration mode 'Flexible' + */ + networkApiVersion?: NetworkApiVersion; +} + +/** The API entity reference. */ +export interface ApiEntityReference { + /** + * The ARM resource id in the form of + * /subscriptions/{SubscriptionId}/resourceGroups/{ResourceGroupName}/... + */ + id?: string; +} + +/** Describes a virtual machine scale set network profile's network configurations. */ +export interface VirtualMachineScaleSetNetworkConfiguration { + /** The network configuration name. */ + name: string; + /** Describes a virtual machine scale set network profile's IP configuration. */ + properties?: VirtualMachineScaleSetNetworkConfigurationProperties; +} + +/** Describes a virtual machine scale set network profile's IP configuration. */ +export interface VirtualMachineScaleSetNetworkConfigurationProperties { + /** + * Specifies the primary network interface in case the virtual machine has more + * than 1 network interface. + */ + primary?: boolean; + /** Specifies whether the network interface is accelerated networking-enabled. */ + enableAcceleratedNetworking?: boolean; + /** Specifies whether the network interface is disabled for tcp state tracking. */ + disableTcpStateTracking?: boolean; + /** Specifies whether the network interface is FPGA networking-enabled. */ + enableFpga?: boolean; + /** The network security group. */ + networkSecurityGroup?: SubResource; + /** The dns settings to be applied on the network interfaces. */ + dnsSettings?: VirtualMachineScaleSetNetworkConfigurationDnsSettings; + /** Specifies the IP configurations of the network interface. */ + ipConfigurations: VirtualMachineScaleSetIPConfiguration[]; + /** Whether IP forwarding enabled on this NIC. */ + enableIPForwarding?: boolean; + /** Specify what happens to the network interface when the VM is deleted */ + deleteOption?: DeleteOptions; + /** + * Specifies whether the Auxiliary mode is enabled for the Network Interface + * resource. + */ + auxiliaryMode?: NetworkInterfaceAuxiliaryMode; + /** + * Specifies whether the Auxiliary sku is enabled for the Network Interface + * resource. + */ + auxiliarySku?: NetworkInterfaceAuxiliarySku; +} + +/** Describes a virtual machines scale sets network configuration's DNS settings. */ +export interface VirtualMachineScaleSetNetworkConfigurationDnsSettings { + /** List of DNS servers IP addresses */ + dnsServers?: string[]; +} + +/** Describes a virtual machine scale set network profile's IP configuration. */ +export interface VirtualMachineScaleSetIPConfiguration { + /** The IP configuration name. */ + name: string; + /** + * Describes a virtual machine scale set network profile's IP configuration + * properties. + */ + properties?: VirtualMachineScaleSetIPConfigurationProperties; +} + +/** + * Describes a virtual machine scale set network profile's IP configuration + * properties. + */ +export interface VirtualMachineScaleSetIPConfigurationProperties { + /** Specifies the identifier of the subnet. */ + subnet?: ApiEntityReference; + /** + * Specifies the primary network interface in case the virtual machine has more + * than 1 network interface. + */ + primary?: boolean; + /** The publicIPAddressConfiguration. */ + publicIPAddressConfiguration?: VirtualMachineScaleSetPublicIPAddressConfiguration; + /** + * Available from Api-Version 2017-03-30 onwards, it represents whether the + * specific ipconfiguration is IPv4 or IPv6. Default is taken as IPv4. Possible + * values are: 'IPv4' and 'IPv6'. + */ + privateIPAddressVersion?: IPVersion; + /** + * Specifies an array of references to backend address pools of application + * gateways. A scale set can reference backend address pools of multiple + * application gateways. Multiple scale sets cannot use the same application + * gateway. + */ + applicationGatewayBackendAddressPools?: SubResource[]; + /** Specifies an array of references to application security group. */ + applicationSecurityGroups?: SubResource[]; + /** + * Specifies an array of references to backend address pools of load balancers. A + * scale set can reference backend address pools of one public and one internal + * load balancer. Multiple scale sets cannot use the same basic sku load balancer. + */ + loadBalancerBackendAddressPools?: SubResource[]; + /** + * Specifies an array of references to inbound Nat pools of the load balancers. A + * scale set can reference inbound nat pools of one public and one internal load + * balancer. Multiple scale sets cannot use the same basic sku load balancer. + */ + loadBalancerInboundNatPools?: SubResource[]; +} + +/** + * Describes a virtual machines scale set IP Configuration's PublicIPAddress + * configuration + */ +export interface VirtualMachineScaleSetPublicIPAddressConfiguration { + /** The publicIP address configuration name. */ + name: string; + /** + * Describes a virtual machines scale set IP Configuration's PublicIPAddress + * configuration + */ + properties?: VirtualMachineScaleSetPublicIPAddressConfigurationProperties; + /** + * Describes the public IP Sku. It can only be set with OrchestrationMode as + * Flexible. + */ + sku?: PublicIPAddressSku; +} + +/** + * Describes a virtual machines scale set IP Configuration's PublicIPAddress + * configuration + */ +export interface VirtualMachineScaleSetPublicIPAddressConfigurationProperties { + /** The idle timeout of the public IP address. */ + idleTimeoutInMinutes?: number; + /** The dns settings to be applied on the publicIP addresses . */ + dnsSettings?: VirtualMachineScaleSetPublicIPAddressConfigurationDnsSettings; + /** The list of IP tags associated with the public IP address. */ + ipTags?: VirtualMachineScaleSetIpTag[]; + /** The PublicIPPrefix from which to allocate publicIP addresses. */ + publicIPPrefix?: SubResource; + /** + * Available from Api-Version 2019-07-01 onwards, it represents whether the + * specific ipconfiguration is IPv4 or IPv6. Default is taken as IPv4. Possible + * values are: 'IPv4' and 'IPv6'. + */ + publicIPAddressVersion?: IPVersion; + /** Specify what happens to the public IP when the VM is deleted */ + deleteOption?: DeleteOptions; +} + +/** Describes a virtual machines scale sets network configuration's DNS settings. */ +export interface VirtualMachineScaleSetPublicIPAddressConfigurationDnsSettings { + /** + * The Domain name label.The concatenation of the domain name label and vm index + * will be the domain name labels of the PublicIPAddress resources that will be + * created + */ + domainNameLabel: string; + /** + * The Domain name label scope.The concatenation of the hashed domain name label + * that generated according to the policy from domain name label scope and vm + * index will be the domain name labels of the PublicIPAddress resources that will + * be created + */ + domainNameLabelScope?: DomainNameLabelScopeTypes; +} + +/** Contains the IP tag associated with the public IP address. */ +export interface VirtualMachineScaleSetIpTag { + /** IP tag type. Example: FirstPartyUsage. */ + ipTagType?: string; + /** IP tag associated with the public IP. Example: SQL, Storage etc. */ + tag?: string; +} + +/** + * Describes the public IP Sku. It can only be set with OrchestrationMode as + * Flexible. + */ +export interface PublicIPAddressSku { + /** Specify public IP sku name */ + name?: PublicIPAddressSkuName; + /** Specify public IP sku tier */ + tier?: PublicIPAddressSkuTier; +} + +/** + * Specifies the Security profile settings for the virtual machine or virtual + * machine scale set. + */ +export interface SecurityProfile { + /** + * Specifies the security settings like secure boot and vTPM used while creating + * the virtual machine. Minimum api-version: 2020-12-01. + */ + uefiSettings?: UefiSettings; + /** + * This property can be used by user in the request to enable or disable the Host + * Encryption for the virtual machine or virtual machine scale set. This will + * enable the encryption for all the disks including Resource/Temp disk at host + * itself. The default behavior is: The Encryption at host will be disabled unless + * this property is set to true for the resource. + */ + encryptionAtHost?: boolean; + /** + * Specifies the SecurityType of the virtual machine. It has to be set to any + * specified value to enable UefiSettings. The default behavior is: UefiSettings + * will not be enabled unless this property is set. + */ + securityType?: SecurityTypes; + /** + * Specifies the Managed Identity used by ADE to get access token for keyvault + * operations. + */ + encryptionIdentity?: EncryptionIdentity; + /** + * Specifies ProxyAgent settings while creating the virtual machine. Minimum + * api-version: 2023-09-01. + */ + proxyAgentSettings?: ProxyAgentSettings; +} + +/** + * Specifies the security settings like secure boot and vTPM used while creating + * the virtual machine. Minimum api-version: 2020-12-01. + */ +export interface UefiSettings { + /** + * Specifies whether secure boot should be enabled on the virtual machine. Minimum + * api-version: 2020-12-01. + */ + secureBootEnabled?: boolean; + /** + * Specifies whether vTPM should be enabled on the virtual machine. Minimum + * api-version: 2020-12-01. + */ + vTpmEnabled?: boolean; +} + +/** + * Specifies the Managed Identity used by ADE to get access token for keyvault + * operations. + */ +export interface EncryptionIdentity { + /** Specifies ARM Resource ID of one of the user identities associated with the VM. */ + userAssignedIdentityResourceId?: string; +} + +/** + * Specifies ProxyAgent settings while creating the virtual machine. Minimum + * api-version: 2023-09-01. + */ +export interface ProxyAgentSettings { + /** + * Specifies whether ProxyAgent feature should be enabled on the virtual machine + * or virtual machine scale set. + */ + enabled?: boolean; + /** + * Specifies the mode that ProxyAgent will execute on if the feature is enabled. + * ProxyAgent will start to audit or monitor but not enforce access control over + * requests to host endpoints in Audit mode, while in Enforce mode it will enforce + * access control. The default value is Enforce mode. + */ + mode?: Mode; + /** + * Increase the value of this property allows user to reset the key used for + * securing communication channel between guest and host. + */ + keyIncarnationId?: number; +} + +/** Specifies the boot diagnostic settings state. Minimum api-version: 2015-06-15. */ +export interface DiagnosticsProfile { + /** + * Boot Diagnostics is a debugging feature which allows you to view Console Output + * and Screenshot to diagnose VM status. **NOTE**: If storageUri is being + * specified then ensure that the storage account is in the same region and + * subscription as the VM. You can easily view the output of your console log. + * Azure also enables you to see a screenshot of the VM from the hypervisor. + */ + bootDiagnostics?: BootDiagnostics; +} + +/** + * Boot Diagnostics is a debugging feature which allows you to view Console Output + * and Screenshot to diagnose VM status. You can easily view the output of your + * console log. Azure also enables you to see a screenshot of the VM from the + * hypervisor. + */ +export interface BootDiagnostics { + /** Whether boot diagnostics should be enabled on the Virtual Machine. */ + enabled?: boolean; + /** + * Uri of the storage account to use for placing the console output and + * screenshot. If storageUri is not specified while enabling boot diagnostics, + * managed storage will be used. + */ + storageUri?: string; +} + +/** Describes a virtual machine scale set extension profile. */ +export interface VirtualMachineScaleSetExtensionProfile { + /** The virtual machine scale set child extension resources. */ + extensions?: VirtualMachineScaleSetExtension[]; + /** + * Specifies the time alloted for all extensions to start. The time duration + * should be between 15 minutes and 120 minutes (inclusive) and should be + * specified in ISO 8601 format. The default value is 90 minutes (PT1H30M). + * Minimum api-version: 2020-06-01. + */ + extensionsTimeBudget?: string; +} + +/** Describes a Virtual Machine Scale Set Extension. */ +export interface VirtualMachineScaleSetExtension { + /** + * Resource Id + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly id?: string; + /** The name of the extension. */ + name?: string; + /** + * Resource type + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly type?: string; + /** Describes the properties of a Virtual Machine Scale Set Extension. */ + properties?: VirtualMachineScaleSetExtensionProperties; +} + +/** Describes the properties of a Virtual Machine Scale Set Extension. */ +export interface VirtualMachineScaleSetExtensionProperties { + /** + * If a value is provided and is different from the previous value, the extension + * handler will be forced to update even if the extension configuration has not + * changed. + */ + forceUpdateTag?: string; + /** The name of the extension handler publisher. */ + publisher?: string; + /** Specifies the type of the extension; an example is "CustomScriptExtension". */ + type?: string; + /** Specifies the version of the script handler. */ + typeHandlerVersion?: string; + /** + * Indicates whether the extension should use a newer minor version if one is + * available at deployment time. Once deployed, however, the extension will not + * upgrade minor versions unless redeployed, even with this property set to true. + */ + autoUpgradeMinorVersion?: boolean; + /** + * Indicates whether the extension should be automatically upgraded by the + * platform if there is a newer version of the extension available. + */ + enableAutomaticUpgrade?: boolean; + /** Json formatted public settings for the extension. */ + settings?: { [propertyName: string]: any }; + /** + * The extension can contain either protectedSettings or + * protectedSettingsFromKeyVault or no protected settings at all. + */ + protectedSettings?: { [propertyName: string]: any }; + /** + * The provisioning state, which only appears in the response. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly provisioningState?: string; + /** + * Collection of extension names after which this extension needs to be + * provisioned. + */ + provisionAfterExtensions?: string[]; + /** + * Indicates whether failures stemming from the extension will be suppressed + * (Operational failures such as not connecting to the VM will not be suppressed + * regardless of this value). The default is false. + */ + suppressFailures?: boolean; + /** + * The extensions protected settings that are passed by reference, and consumed + * from key vault + */ + protectedSettingsFromKeyVault?: KeyVaultSecretReference; +} + +/** Describes a reference to Key Vault Secret */ +export interface KeyVaultSecretReference { + /** The URL referencing a secret in a Key Vault. */ + secretUrl: string; + /** The relative URL of the Key Vault containing the secret. */ + sourceVault: SubResource; +} + +/** Specifies Scheduled Event related configurations. */ +export interface ScheduledEventsProfile { + /** Specifies Terminate Scheduled Event related configurations. */ + terminateNotificationProfile?: TerminateNotificationProfile; + /** Specifies OS Image Scheduled Event related configurations. */ + osImageNotificationProfile?: OSImageNotificationProfile; +} + +/** Specifies Terminate Scheduled Event related configurations. */ +export interface TerminateNotificationProfile { + /** + * Configurable length of time a Virtual Machine being deleted will have to + * potentially approve the Terminate Scheduled Event before the event is auto + * approved (timed out). The configuration must be specified in ISO 8601 format, + * the default value is 5 minutes (PT5M) + */ + notBeforeTimeout?: string; + /** Specifies whether the Terminate Scheduled event is enabled or disabled. */ + enable?: boolean; +} + +/** Specifies OS Image Scheduled Event related configurations. */ +export interface OSImageNotificationProfile { + /** + * Length of time a Virtual Machine being reimaged or having its OS upgraded will + * have to potentially approve the OS Image Scheduled Event before the event is + * auto approved (timed out). The configuration is specified in ISO 8601 format, + * and the value must not exceed 15 minutes (PT15M) + */ + notBeforeTimeout?: string; + /** Specifies whether the OS Image Scheduled event is enabled or disabled. */ + enable?: boolean; +} + +/** The parameters of a capacity reservation Profile. */ +export interface CapacityReservationProfile { + /** + * Specifies the capacity reservation group resource id that should be used for + * allocating the virtual machine or scaleset vm instances provided enough + * capacity has been reserved. Please refer to https://aka.ms/CapacityReservation + * for more details. + */ + capacityReservationGroup?: SubResource; +} + +/** + * Contains the list of gallery applications that should be made available to the + * VM/VMSS + */ +export interface ApplicationProfile { + /** Specifies the gallery applications that should be made available to the VM/VMSS */ + galleryApplications?: VMGalleryApplication[]; +} + +/** + * Specifies the required information to reference a compute gallery application + * version + */ +export interface VMGalleryApplication { + /** Optional, Specifies a passthrough value for more generic context. */ + tags?: string; + /** Optional, Specifies the order in which the packages have to be installed */ + order?: number; + /** + * Specifies the GalleryApplicationVersion resource id on the form of + * /subscriptions/{SubscriptionId}/resourceGroups/{ResourceGroupName}/providers/Microsoft.Compute/galleries/{galleryName}/applications/{application}/versions/{version} + */ + packageReferenceId: string; + /** + * Optional, Specifies the uri to an azure blob that will replace the default + * configuration for the package if provided + */ + configurationReference?: string; + /** + * Optional, If true, any failure for any operation in the VmApplication will fail + * the deployment + */ + treatFailureAsDeploymentFailure?: boolean; + /** + * If set to true, when a new Gallery Application version is available in PIR/SIG, + * it will be automatically updated for the VM/VMSS + */ + enableAutomaticUpgrade?: boolean; +} + +/** Specifies the hardware settings for the virtual machine scale set. */ +export interface VirtualMachineScaleSetHardwareProfile { + /** + * Specifies the properties for customizing the size of the virtual machine. + * Minimum api-version: 2021-11-01. Please follow the instructions in [VM + * Customization](https://aka.ms/vmcustomization) for more details. + */ + vmSizeProperties?: VMSizeProperties; +} + +/** Specifies VM Size Property settings on the virtual machine. */ +export interface VMSizeProperties { + /** + * Specifies the number of vCPUs available for the VM. When this property is not + * 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). + */ + vCPUsAvailable?: number; + /** + * Specifies the vCPU to physical core ratio. When this property is not specified + * 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). + * **Setting this property to 1 also means that hyper-threading is disabled.** + */ + vCPUsPerCore?: number; +} + +/** + * Specifies the service artifact reference id used to set same image version for + * all virtual machines in the scale set when using 'latest' image version. + * Minimum api-version: 2022-11-01 + */ +export interface ServiceArtifactReference { + /** + * The service artifact reference id in the form of + * /subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/galleries/{galleryName}/serviceArtifacts/{serviceArtifactName}/vmArtifactsProfiles/{vmArtifactsProfilesName} + */ + id?: string; +} + +/** + * Specifies the security posture to be used for all virtual machines in the scale + * set. Minimum api-version: 2023-03-01 + */ +export interface SecurityPostureReference { + /** + * The security posture reference id in the form of + * /CommunityGalleries/{communityGalleryName}/securityPostures/{securityPostureName}/versions/{major.minor.patch}|{major.*}|latest + */ + id?: string; + /** + * List of virtual machine extension names to exclude when applying the security + * posture. + */ + excludeExtensions?: string[]; + /** Whether the security posture can be overridden by the user. */ + isOverridable?: boolean; +} + +/** Managed service identity (system assigned and/or user assigned identities) */ +export interface ManagedServiceIdentity { + /** + * The service principal ID of the system assigned identity. This property will only be provided for a system assigned identity. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly principalId?: string; + /** + * The tenant ID of the system assigned identity. This property will only be provided for a system assigned identity. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly tenantId?: string; + /** Type of managed service identity (where both SystemAssigned and UserAssigned types are allowed). */ + type: ManagedServiceIdentityType; + /** The set of user assigned identities associated with the resource. The userAssignedIdentities dictionary keys will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. The dictionary values can be empty objects ({}) in requests. */ + userAssignedIdentities?: { + [propertyName: string]: UserAssignedIdentity | null; + }; +} + +/** User assigned identity properties */ +export interface UserAssignedIdentity { + /** + * The principal ID of the assigned identity. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly principalId?: string; + /** + * The client ID of the assigned identity. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly clientId?: string; +} + +/** Plan for the resource. */ +export interface Plan { + /** A user defined name of the 3rd Party Artifact that is being procured. */ + name: string; + /** The publisher of the 3rd Party Artifact that is being bought. E.g. NewRelic */ + publisher: string; + /** The 3rd Party artifact that is being procured. E.g. NewRelic. Product maps to the OfferID specified for the artifact at the time of Data Market onboarding. */ + product: string; + /** A publisher provided promotion code as provisioned in Data Market for the said product/artifact. */ + promotionCode?: string; + /** The version of the desired product/artifact. */ + version?: string; +} + +/** Common fields that are returned in the response for all Azure Resource Manager resources */ +export interface Resource { + /** + * Fully qualified resource ID for the resource. E.g. "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}" + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly id?: string; + /** + * The name of the resource + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly name?: string; + /** + * The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly type?: string; + /** + * Azure Resource Manager metadata containing createdBy and modifiedBy information. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly systemData?: SystemData; +} + +/** Metadata pertaining to creation and last modification of the resource. */ +export interface SystemData { + /** The identity that created the resource. */ + createdBy?: string; + /** The type of identity that created the resource. */ + createdByType?: CreatedByType; + /** The timestamp of resource creation (UTC). */ + createdAt?: Date; + /** The identity that last modified the resource. */ + lastModifiedBy?: string; + /** The type of identity that last modified the resource. */ + lastModifiedByType?: CreatedByType; + /** The timestamp of resource last modification (UTC) */ + lastModifiedAt?: Date; +} + +/** Fleet Update Model */ +export interface FleetUpdate { + /** Resource tags. */ + tags?: { [propertyName: string]: string }; + /** Updatable managed service identity */ + identity?: ManagedServiceIdentityUpdate; + /** Updatable resource plan */ + plan?: ResourcePlanUpdate; + /** RP-specific updatable properties */ + properties?: FleetProperties; +} + +/** The template for adding optional properties. */ +export interface ManagedServiceIdentityUpdate { + /** The type of managed identity assigned to this resource. */ + type?: ManagedServiceIdentityType; + /** The identities assigned to this resource by the user. */ + userAssignedIdentities?: { + [ + propertyName: string + ]: ComponentsQjfoe3SchemasManagedserviceidentityupdatePropertiesUserassignedidentitiesAdditionalproperties | null; + }; +} + +/** The template for adding optional properties. */ +export interface ResourcePlanUpdate { + /** A user defined name of the 3rd Party Artifact that is being procured. */ + name?: string; + /** The publisher of the 3rd Party Artifact that is being bought. E.g. NewRelic */ + publisher?: string; + /** The 3rd Party artifact that is being procured. E.g. NewRelic. Product maps to the OfferID specified for the artifact at the time of Data Market onboarding. */ + product?: string; + /** A publisher provided promotion code as provisioned in Data Market for the said product/artifact. */ + promotionCode?: string; + /** The version of the desired product/artifact. */ + version?: string; +} + +/** The response of a VirtualMachineScaleSet list operation. */ +export interface VirtualMachineScaleSetListResult { + /** The VirtualMachineScaleSet items on this page */ + value: VirtualMachineScaleSet[]; + /** The link to the next page of items */ + nextLink?: string; +} + +/** An AzureFleet's virtualMachineScaleSet */ +export interface VirtualMachineScaleSet { + /** + * The name of the virtualMachineScaleSet + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly name: string; + /** + * The compute RP resource id of the virtualMachineScaleSet + * "subscriptions/{subId}/resourceGroups/{rgName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmssName}" + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly id: string; + /** + * Type of the virtualMachineScaleSet + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly type?: string; + /** + * This represents the operationStatus of the VMSS in response to the last operation that was performed on it by Azure Fleet resource. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly operationStatus: ProvisioningState; + /** + * Error Information when `operationStatus` is `Failed` + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly error?: ApiError; +} + +/** ApiError for Fleet */ +export interface ApiError { + /** The error code. */ + code?: string; + /** The target of the particular error. */ + target?: string; + /** The error message. */ + message?: string; + /** The API error details */ + details?: ApiErrorBase[]; + /** The API inner error */ + innererror?: InnerError; +} + +/** API error base. */ +export interface ApiErrorBase { + /** The error code. */ + code?: string; + /** The target of the particular error. */ + target?: string; + /** The error message. */ + message?: string; +} + +/** Inner error details. */ +export interface InnerError { + /** The exception type. */ + exceptionType?: string; + /** The internal error message or exception dump. */ + errorDetail?: string; +} + +/** Contains common properties that are applicable to both Spot and Regular. */ +export interface BasePriorityProfile { + /** Total capacity to achieve. It is currently in terms of number of VMs. */ + capacity?: number; + /** Minimum capacity to achieve which cannot be updated. If we will not be able to "guarantee" minimum capacity, we will reject the request in the sync path itself. */ + minCapacity?: number; +} + +/** Describes a Readonly subresource. */ +export interface SubResourceReadOnly { + /** + * Resource Id + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly id?: string; +} + +export interface ComponentsQjfoe3SchemasManagedserviceidentityupdatePropertiesUserassignedidentitiesAdditionalproperties + extends UserAssignedIdentity {} + +/** The resource model definition for an Azure Resource Manager tracked top level resource which has 'tags' and a 'location' */ +export interface TrackedResource extends Resource { + /** Resource tags. */ + tags?: { [propertyName: string]: string }; + /** The geo-location where the resource lives */ + location: string; +} + +/** An Compute Fleet resource */ +export interface Fleet extends TrackedResource { + /** Zones in which the Compute Fleet is available */ + zones?: string[]; + /** The managed service identities assigned to this resource. */ + identity?: ManagedServiceIdentity; + /** Details of the resource plan. */ + plan?: Plan; + /** + * The status of the last operation. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly provisioningState?: ProvisioningState; + /** Configuration Options for Spot instances in Compute Fleet. */ + spotPriorityProfile?: SpotPriorityProfile; + /** Configuration Options for Regular instances in Compute Fleet. */ + regularPriorityProfile?: RegularPriorityProfile; + /** List of VM sizes supported for Compute Fleet */ + vmSizesProfile?: VmSizeProfile[]; + /** Compute Profile to use for running user's workloads. */ + computeProfile?: ComputeProfile; + /** + * Specifies the time at which the Compute Fleet is created. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly timeCreated?: Date; + /** + * Specifies the ID which uniquely identifies a Compute Fleet. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly uniqueId?: string; +} + +/** Defines headers for Fleets_createOrUpdate operation. */ +export interface FleetsCreateOrUpdateHeaders { + /** The Retry-After header can indicate how long the client should wait before polling the operation status. */ + retryAfter?: number; +} + +/** Defines headers for Fleets_update operation. */ +export interface FleetsUpdateHeaders { + /** The Location header contains the URL where the status of the long running operation can be checked. */ + location?: string; + /** The Retry-After header can indicate how long the client should wait before polling the operation status. */ + retryAfter?: number; +} + +/** Defines headers for Fleets_delete operation. */ +export interface FleetsDeleteHeaders { + /** The Location header contains the URL where the status of the long running operation can be checked. */ + location?: string; + /** The Retry-After header can indicate how long the client should wait before polling the operation status. */ + retryAfter?: number; +} + +/** Known values of {@link Origin} that the service accepts. */ +export enum KnownOrigin { + /** User */ + User = "user", + /** System */ + System = "system", + /** UserSystem */ + UserSystem = "user,system", +} + +/** + * Defines values for Origin. \ + * {@link KnownOrigin} can be used interchangeably with Origin, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **user** \ + * **system** \ + * **user,system** + */ +export type Origin = string; + +/** Known values of {@link ActionType} that the service accepts. */ +export enum KnownActionType { + /** Internal */ + Internal = "Internal", +} + +/** + * Defines values for ActionType. \ + * {@link KnownActionType} can be used interchangeably with ActionType, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Internal** + */ +export type ActionType = string; + +/** Known values of {@link ProvisioningState} that the service accepts. */ +export enum KnownProvisioningState { + /** Resource has been created. */ + Succeeded = "Succeeded", + /** Resource creation failed. */ + Failed = "Failed", + /** Resource creation was canceled. */ + Canceled = "Canceled", + /** Initial creation in progress. */ + Creating = "Creating", + /** Update in progress. */ + Updating = "Updating", + /** Deletion in progress. */ + Deleting = "Deleting", + /** Resource is being migrated from one subscription or resource group to another. */ + Migrating = "Migrating", +} + +/** + * Defines values for ProvisioningState. \ + * {@link KnownProvisioningState} can be used interchangeably with ProvisioningState, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Succeeded**: 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; + +/** Known values of {@link EvictionPolicy} that the service accepts. */ +export enum KnownEvictionPolicy { + /** When evicted, the Spot VM will be deleted and the corresponding capacity will be updated to reflect this. */ + Delete = "Delete", + /** When evicted, the Spot VM will be deallocated\/stopped */ + Deallocate = "Deallocate", +} + +/** + * Defines values for EvictionPolicy. \ + * {@link KnownEvictionPolicy} can be used interchangeably with EvictionPolicy, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Delete**: When evicted, the Spot VM will be deleted and the corresponding capacity will be updated to reflect this. \ + * **Deallocate**: When evicted, the Spot VM will be deallocated\/stopped + */ +export type EvictionPolicy = string; + +/** Known values of {@link SpotAllocationStrategy} that the service accepts. */ +export enum KnownSpotAllocationStrategy { + /** Default. VM sizes distribution will be determined to optimize for both price and capacity. */ + PriceCapacityOptimized = "PriceCapacityOptimized", + /** VM sizes distribution will be determined to optimize for price. Note: Capacity will still be considered here but will be given much less weight. */ + LowestPrice = "LowestPrice", + /** VM sizes distribution will be determined to optimize for capacity. */ + CapacityOptimized = "CapacityOptimized", +} + +/** + * Defines values for SpotAllocationStrategy. \ + * {@link KnownSpotAllocationStrategy} can be used interchangeably with SpotAllocationStrategy, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **PriceCapacityOptimized**: Default. VM sizes distribution will be determined to optimize for both price and capacity. \ + * **LowestPrice**: VM sizes distribution will be determined to optimize for price. Note: Capacity will still be considered here but will be given much less weight. \ + * **CapacityOptimized**: VM sizes distribution will be determined to optimize for capacity. + */ +export type SpotAllocationStrategy = string; + +/** Known values of {@link RegularPriorityAllocationStrategy} that the service accepts. */ +export enum KnownRegularPriorityAllocationStrategy { + /** Default. VM sizes distribution will be determined to optimize for price. */ + LowestPrice = "LowestPrice", + /** VM sizes distribution will be determined to optimize for the 'priority' as specified for each vm size. */ + Prioritized = "Prioritized", +} + +/** + * Defines values for RegularPriorityAllocationStrategy. \ + * {@link KnownRegularPriorityAllocationStrategy} can be used interchangeably with RegularPriorityAllocationStrategy, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **LowestPrice**: Default. VM sizes distribution will be determined to optimize for price. \ + * **Prioritized**: VM sizes distribution will be determined to optimize for the 'priority' as specified for each vm size. + */ +export type RegularPriorityAllocationStrategy = string; + +/** Known values of {@link SettingNames} that the service accepts. */ +export enum KnownSettingNames { + /** AutoLogon setting */ + AutoLogon = "AutoLogon", + /** FirstLogonCommands setting */ + FirstLogonCommands = "FirstLogonCommands", +} + +/** + * Defines values for SettingNames. \ + * {@link KnownSettingNames} can be used interchangeably with SettingNames, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **AutoLogon**: AutoLogon setting \ + * **FirstLogonCommands**: FirstLogonCommands setting + */ +export type SettingNames = string; + +/** Known values of {@link WindowsVMGuestPatchMode} that the service accepts. */ +export enum KnownWindowsVMGuestPatchMode { + /** + * You control the application of patches to a virtual machine. + * You do this by applying patches manually inside the VM. In this mode, + * automatic updates are disabled; the property WindowsConfiguration.enableAutomaticUpdates + * must be false + */ + Manual = "Manual", + /** + * The virtual machine will automatically be updated by the OS. + * The property WindowsConfiguration.enableAutomaticUpdates must be true. + */ + AutomaticByOS = "AutomaticByOS", + /** + * The virtual machine will automatically updated by the platform. The properties + * provisionVMAgent and WindowsConfiguration.enableAutomaticUpdates must be true. + */ + AutomaticByPlatform = "AutomaticByPlatform", +} + +/** + * Defines values for WindowsVMGuestPatchMode. \ + * {@link KnownWindowsVMGuestPatchMode} can be used interchangeably with WindowsVMGuestPatchMode, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Manual**: You control the application of patches to a virtual machine. + * You do this by applying patches manually inside the VM. In this mode, + * automatic updates are disabled; the property WindowsConfiguration.enableAutomaticUpdates + * must be false \ + * **AutomaticByOS**: The virtual machine will automatically be updated by the OS. + * The property WindowsConfiguration.enableAutomaticUpdates must be true. \ + * **AutomaticByPlatform**: The virtual machine will automatically updated by the platform. The properties + * provisionVMAgent and WindowsConfiguration.enableAutomaticUpdates must be true. + */ +export type WindowsVMGuestPatchMode = string; + +/** Known values of {@link WindowsPatchAssessmentMode} that the service accepts. */ +export enum KnownWindowsPatchAssessmentMode { + /** You control the timing of patch assessments on a virtual machine. */ + ImageDefault = "ImageDefault", + /** The platform will trigger periodic patch assessments. The property provisionVMAgent must be true. */ + AutomaticByPlatform = "AutomaticByPlatform", +} + +/** + * Defines values for WindowsPatchAssessmentMode. \ + * {@link KnownWindowsPatchAssessmentMode} can be used interchangeably with WindowsPatchAssessmentMode, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **ImageDefault**: You control the timing of patch assessments on a virtual machine. \ + * **AutomaticByPlatform**: The platform will trigger periodic patch assessments. The property provisionVMAgent must be true. + */ +export type WindowsPatchAssessmentMode = string; + +/** Known values of {@link WindowsVMGuestPatchAutomaticByPlatformRebootSetting} that the service accepts. */ +export enum KnownWindowsVMGuestPatchAutomaticByPlatformRebootSetting { + /** Unknown Reboot setting */ + Unknown = "Unknown", + /** IfRequired Reboot setting */ + IfRequired = "IfRequired", + /** Never Reboot setting */ + Never = "Never", + /** Always Reboot setting */ + Always = "Always", +} + +/** + * Defines values for WindowsVMGuestPatchAutomaticByPlatformRebootSetting. \ + * {@link KnownWindowsVMGuestPatchAutomaticByPlatformRebootSetting} can be used interchangeably with WindowsVMGuestPatchAutomaticByPlatformRebootSetting, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Unknown**: Unknown Reboot setting \ + * **IfRequired**: IfRequired Reboot setting \ + * **Never**: Never Reboot setting \ + * **Always**: Always Reboot setting + */ +export type WindowsVMGuestPatchAutomaticByPlatformRebootSetting = string; + +/** Known values of {@link ProtocolTypes} that the service accepts. */ +export enum KnownProtocolTypes { + /** Http protocol */ + Http = "Http", + /** Https protocol */ + Https = "Https", +} + +/** + * Defines values for ProtocolTypes. \ + * {@link KnownProtocolTypes} can be used interchangeably with ProtocolTypes, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Http**: Http protocol \ + * **Https**: Https protocol + */ +export type ProtocolTypes = string; + +/** Known values of {@link LinuxVMGuestPatchMode} that the service accepts. */ +export enum KnownLinuxVMGuestPatchMode { + /** The virtual machine's default patching configuration is used. */ + ImageDefault = "ImageDefault", + /** The virtual machine will be automatically updated by the platform. The property provisionVMAgent must be true. */ + AutomaticByPlatform = "AutomaticByPlatform", +} + +/** + * Defines values for LinuxVMGuestPatchMode. \ + * {@link KnownLinuxVMGuestPatchMode} can be used interchangeably with LinuxVMGuestPatchMode, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **ImageDefault**: The virtual machine's default patching configuration is used. \ + * **AutomaticByPlatform**: The virtual machine will be automatically updated by the platform. The property provisionVMAgent must be true. + */ +export type LinuxVMGuestPatchMode = string; + +/** Known values of {@link LinuxPatchAssessmentMode} that the service accepts. */ +export enum KnownLinuxPatchAssessmentMode { + /** You control the timing of patch assessments on a virtual machine. */ + ImageDefault = "ImageDefault", + /** The platform will trigger periodic patch assessments.The property provisionVMAgent must be true. */ + AutomaticByPlatform = "AutomaticByPlatform", +} + +/** + * Defines values for LinuxPatchAssessmentMode. \ + * {@link KnownLinuxPatchAssessmentMode} can be used interchangeably with LinuxPatchAssessmentMode, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **ImageDefault**: You control the timing of patch assessments on a virtual machine. \ + * **AutomaticByPlatform**: The platform will trigger periodic patch assessments.The property provisionVMAgent must be true. + */ +export type LinuxPatchAssessmentMode = string; + +/** Known values of {@link LinuxVMGuestPatchAutomaticByPlatformRebootSetting} that the service accepts. */ +export enum KnownLinuxVMGuestPatchAutomaticByPlatformRebootSetting { + /** Unknown Reboot setting */ + Unknown = "Unknown", + /** IfRequired Reboot setting */ + IfRequired = "IfRequired", + /** Never Reboot setting */ + Never = "Never", + /** Always Reboot setting */ + Always = "Always", +} + +/** + * Defines values for LinuxVMGuestPatchAutomaticByPlatformRebootSetting. \ + * {@link KnownLinuxVMGuestPatchAutomaticByPlatformRebootSetting} can be used interchangeably with LinuxVMGuestPatchAutomaticByPlatformRebootSetting, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Unknown**: Unknown Reboot setting \ + * **IfRequired**: IfRequired Reboot setting \ + * **Never**: Never Reboot setting \ + * **Always**: Always Reboot setting + */ +export type LinuxVMGuestPatchAutomaticByPlatformRebootSetting = string; + +/** Known values of {@link CachingTypes} that the service accepts. */ +export enum KnownCachingTypes { + /** 'None' is default for Standard Storage */ + None = "None", + /** 'ReadOnly' is default for Premium Storage */ + ReadOnly = "ReadOnly", + /** 'ReadWrite' is default for OS Disk */ + ReadWrite = "ReadWrite", +} + +/** + * Defines values for CachingTypes. \ + * {@link KnownCachingTypes} can be used interchangeably with CachingTypes, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **None**: 'None' is default for Standard Storage \ + * **ReadOnly**: 'ReadOnly' is default for Premium Storage \ + * **ReadWrite**: 'ReadWrite' is default for OS Disk + */ +export type CachingTypes = string; + +/** Known values of {@link DiskCreateOptionTypes} that the service accepts. */ +export enum KnownDiskCreateOptionTypes { + /** + * This value is used when you are using an image to create the virtual machine. + * If you are using a platform image, you also use the imageReference element + * described above. If you are using a marketplace image, you also use the + * plan element previously described. + */ + FromImage = "FromImage", + /** This value is used when creating an empty data disk. */ + Empty = "Empty", + /** This value is used when you are using a specialized disk to create the virtual machine. */ + Attach = "Attach", + /** This value is used to create a data disk from a snapshot or another disk. */ + Copy = "Copy", + /** This value is used to create a data disk from a disk restore point. */ + Restore = "Restore", +} + +/** + * Defines values for DiskCreateOptionTypes. \ + * {@link KnownDiskCreateOptionTypes} can be used interchangeably with DiskCreateOptionTypes, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **FromImage**: This value is used when you are using an image to create the virtual machine. + * If you are using a platform image, you also use the imageReference element + * described above. If you are using a marketplace image, you also use the + * plan element previously described. \ + * **Empty**: This value is used when creating an empty data disk. \ + * **Attach**: This value is used when you are using a specialized disk to create the virtual machine. \ + * **Copy**: This value is used to create a data disk from a snapshot or another disk. \ + * **Restore**: This value is used to create a data disk from a disk restore point. + */ +export type DiskCreateOptionTypes = string; + +/** Known values of {@link DiffDiskOptions} that the service accepts. */ +export enum KnownDiffDiskOptions { + /** Local Option. */ + Local = "Local", +} + +/** + * Defines values for DiffDiskOptions. \ + * {@link KnownDiffDiskOptions} can be used interchangeably with DiffDiskOptions, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Local**: Local Option. + */ +export type DiffDiskOptions = string; + +/** Known values of {@link DiffDiskPlacement} that the service accepts. */ +export enum KnownDiffDiskPlacement { + /** CacheDisk option. */ + CacheDisk = "CacheDisk", + /** Resource Disk option. */ + ResourceDisk = "ResourceDisk", + /** NvmeDisk option. */ + NvmeDisk = "NvmeDisk", +} + +/** + * Defines values for DiffDiskPlacement. \ + * {@link KnownDiffDiskPlacement} can be used interchangeably with DiffDiskPlacement, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **CacheDisk**: CacheDisk option. \ + * **ResourceDisk**: Resource Disk option. \ + * **NvmeDisk**: NvmeDisk option. + */ +export type DiffDiskPlacement = string; + +/** Known values of {@link OperatingSystemTypes} that the service accepts. */ +export enum KnownOperatingSystemTypes { + /** Windows OS type */ + Windows = "Windows", + /** Linux OS type */ + Linux = "Linux", +} + +/** + * Defines values for OperatingSystemTypes. \ + * {@link KnownOperatingSystemTypes} can be used interchangeably with OperatingSystemTypes, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Windows**: Windows OS type \ + * **Linux**: Linux OS type + */ +export type OperatingSystemTypes = string; + +/** Known values of {@link StorageAccountTypes} that the service accepts. */ +export enum KnownStorageAccountTypes { + /** Standard_LRS option. */ + StandardLRS = "Standard_LRS", + /** Premium_LRS option. */ + PremiumLRS = "Premium_LRS", + /** StandardSSD_LRS option. */ + StandardSSDLRS = "StandardSSD_LRS", + /** UltraSSD_LRS option. */ + UltraSSDLRS = "UltraSSD_LRS", + /** Premium_ZRS option. */ + PremiumZRS = "Premium_ZRS", + /** StandardSSD_ZRS option. */ + StandardSSDZRS = "StandardSSD_ZRS", + /** PremiumV2_LRS option. */ + PremiumV2LRS = "PremiumV2_LRS", +} + +/** + * Defines values for StorageAccountTypes. \ + * {@link KnownStorageAccountTypes} can be used interchangeably with StorageAccountTypes, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Standard_LRS**: Standard_LRS option. \ + * **Premium_LRS**: Premium_LRS option. \ + * **StandardSSD_LRS**: StandardSSD_LRS option. \ + * **UltraSSD_LRS**: UltraSSD_LRS option. \ + * **Premium_ZRS**: Premium_ZRS option. \ + * **StandardSSD_ZRS**: StandardSSD_ZRS option. \ + * **PremiumV2_LRS**: PremiumV2_LRS option. + */ +export type StorageAccountTypes = string; + +/** Known values of {@link SecurityEncryptionTypes} that the service accepts. */ +export enum KnownSecurityEncryptionTypes { + /** + * EncryptionType of the managed disk is set to VMGuestStateOnly for encryption + * of just the VMGuestState blob. + */ + VMGuestStateOnly = "VMGuestStateOnly", + /** + * EncryptionType of the managed disk is set to DiskWithVMGuestState for encryption + * of the managed disk along with VMGuestState blob. + */ + DiskWithVMGuestState = "DiskWithVMGuestState", + /** + * EncryptionType of the managed disk is set to NonPersistedTPM for not persisting + * firmware state in the VMGuestState blob. + */ + NonPersistedTPM = "NonPersistedTPM", +} + +/** + * Defines values for SecurityEncryptionTypes. \ + * {@link KnownSecurityEncryptionTypes} can be used interchangeably with SecurityEncryptionTypes, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **VMGuestStateOnly**: EncryptionType of the managed disk is set to VMGuestStateOnly for encryption + * of just the VMGuestState blob. \ + * **DiskWithVMGuestState**: EncryptionType of the managed disk is set to DiskWithVMGuestState for encryption + * of the managed disk along with VMGuestState blob. \ + * **NonPersistedTPM**: EncryptionType of the managed disk is set to NonPersistedTPM for not persisting + * firmware state in the VMGuestState blob. + */ +export type SecurityEncryptionTypes = string; + +/** Known values of {@link DiskDeleteOptionTypes} that the service accepts. */ +export enum KnownDiskDeleteOptionTypes { + /** If this value is used, the managed disk is deleted when VM gets deleted. */ + Delete = "Delete", + /** If this value is used, the managed disk is retained after VM gets deleted. */ + Detach = "Detach", +} + +/** + * Defines values for DiskDeleteOptionTypes. \ + * {@link KnownDiskDeleteOptionTypes} can be used interchangeably with DiskDeleteOptionTypes, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Delete**: If this value is used, the managed disk is deleted when VM gets deleted. \ + * **Detach**: If this value is used, the managed disk is retained after VM gets deleted. + */ +export type DiskDeleteOptionTypes = string; + +/** Known values of {@link DiskControllerTypes} that the service accepts. */ +export enum KnownDiskControllerTypes { + /** SCSI disk type */ + Scsi = "SCSI", + /** NVMe disk type */ + NVMe = "NVMe", +} + +/** + * Defines values for DiskControllerTypes. \ + * {@link KnownDiskControllerTypes} can be used interchangeably with DiskControllerTypes, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **SCSI**: SCSI disk type \ + * **NVMe**: NVMe disk type + */ +export type DiskControllerTypes = string; + +/** Known values of {@link DomainNameLabelScopeTypes} that the service accepts. */ +export enum KnownDomainNameLabelScopeTypes { + /** TenantReuse type */ + TenantReuse = "TenantReuse", + /** SubscriptionReuse type */ + SubscriptionReuse = "SubscriptionReuse", + /** ResourceGroupReuse type */ + ResourceGroupReuse = "ResourceGroupReuse", + /** NoReuse type */ + NoReuse = "NoReuse", +} + +/** + * Defines values for DomainNameLabelScopeTypes. \ + * {@link KnownDomainNameLabelScopeTypes} can be used interchangeably with DomainNameLabelScopeTypes, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **TenantReuse**: TenantReuse type \ + * **SubscriptionReuse**: SubscriptionReuse type \ + * **ResourceGroupReuse**: ResourceGroupReuse type \ + * **NoReuse**: NoReuse type + */ +export type DomainNameLabelScopeTypes = string; + +/** Known values of {@link IPVersion} that the service accepts. */ +export enum KnownIPVersion { + /** IPv4 version */ + IPv4 = "IPv4", + /** IPv6 version */ + IPv6 = "IPv6", +} + +/** + * Defines values for IPVersion. \ + * {@link KnownIPVersion} can be used interchangeably with IPVersion, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **IPv4**: IPv4 version \ + * **IPv6**: IPv6 version + */ +export type IPVersion = string; + +/** Known values of {@link DeleteOptions} that the service accepts. */ +export enum KnownDeleteOptions { + /** Delete Option */ + Delete = "Delete", + /** Detach Option */ + Detach = "Detach", +} + +/** + * Defines values for DeleteOptions. \ + * {@link KnownDeleteOptions} can be used interchangeably with DeleteOptions, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Delete**: Delete Option \ + * **Detach**: Detach Option + */ +export type DeleteOptions = string; + +/** Known values of {@link PublicIPAddressSkuName} that the service accepts. */ +export enum KnownPublicIPAddressSkuName { + /** Basic sku name */ + Basic = "Basic", + /** Standard sku name */ + Standard = "Standard", +} + +/** + * Defines values for PublicIPAddressSkuName. \ + * {@link KnownPublicIPAddressSkuName} can be used interchangeably with PublicIPAddressSkuName, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Basic**: Basic sku name \ + * **Standard**: Standard sku name + */ +export type PublicIPAddressSkuName = string; + +/** Known values of {@link PublicIPAddressSkuTier} that the service accepts. */ +export enum KnownPublicIPAddressSkuTier { + /** Regional sku tier */ + Regional = "Regional", + /** Global sku tier */ + Global = "Global", +} + +/** + * Defines values for PublicIPAddressSkuTier. \ + * {@link KnownPublicIPAddressSkuTier} can be used interchangeably with PublicIPAddressSkuTier, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Regional**: Regional sku tier \ + * **Global**: Global sku tier + */ +export type PublicIPAddressSkuTier = string; + +/** Known values of {@link NetworkInterfaceAuxiliaryMode} that the service accepts. */ +export enum KnownNetworkInterfaceAuxiliaryMode { + /** None Mode */ + None = "None", + /** AcceleratedConnections Mode */ + AcceleratedConnections = "AcceleratedConnections", + /** Floating Mode */ + Floating = "Floating", +} + +/** + * Defines values for NetworkInterfaceAuxiliaryMode. \ + * {@link KnownNetworkInterfaceAuxiliaryMode} can be used interchangeably with NetworkInterfaceAuxiliaryMode, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **None**: None Mode \ + * **AcceleratedConnections**: AcceleratedConnections Mode \ + * **Floating**: Floating Mode + */ +export type NetworkInterfaceAuxiliaryMode = string; + +/** Known values of {@link NetworkInterfaceAuxiliarySku} that the service accepts. */ +export enum KnownNetworkInterfaceAuxiliarySku { + /** no sku */ + None = "None", + /** A1 sku */ + A1 = "A1", + /** A2 sku */ + A2 = "A2", + /** A4 sku */ + A4 = "A4", + /** A8 sku */ + A8 = "A8", +} + +/** + * Defines values for NetworkInterfaceAuxiliarySku. \ + * {@link KnownNetworkInterfaceAuxiliarySku} can be used interchangeably with NetworkInterfaceAuxiliarySku, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **None**: no sku \ + * **A1**: A1 sku \ + * **A2**: A2 sku \ + * **A4**: A4 sku \ + * **A8**: A8 sku + */ +export type NetworkInterfaceAuxiliarySku = string; + +/** Known values of {@link NetworkApiVersion} that the service accepts. */ +export enum KnownNetworkApiVersion { + /** Initial version supported. Later versions are supported as well. */ + TwoThousandTwenty1101 = "2020-11-01", +} + +/** + * Defines values for NetworkApiVersion. \ + * {@link KnownNetworkApiVersion} can be used interchangeably with NetworkApiVersion, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **2020-11-01**: Initial version supported. Later versions are supported as well. + */ +export type NetworkApiVersion = string; + +/** Known values of {@link SecurityTypes} that the service accepts. */ +export enum KnownSecurityTypes { + /** TrustedLaunch security type */ + TrustedLaunch = "TrustedLaunch", + /** ConfidentialVM security type */ + ConfidentialVM = "ConfidentialVM", +} + +/** + * Defines values for SecurityTypes. \ + * {@link KnownSecurityTypes} can be used interchangeably with SecurityTypes, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **TrustedLaunch**: TrustedLaunch security type \ + * **ConfidentialVM**: ConfidentialVM security type + */ +export type SecurityTypes = string; + +/** Known values of {@link Mode} that the service accepts. */ +export enum KnownMode { + /** Audit Mode */ + Audit = "Audit", + /** Enforce Mode */ + Enforce = "Enforce", +} + +/** + * Defines values for Mode. \ + * {@link KnownMode} can be used interchangeably with Mode, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Audit**: Audit Mode \ + * **Enforce**: Enforce Mode + */ +export type Mode = string; + +/** Known values of {@link ManagedServiceIdentityType} that the service accepts. */ +export enum KnownManagedServiceIdentityType { + /** None */ + None = "None", + /** SystemAssigned */ + SystemAssigned = "SystemAssigned", + /** UserAssigned */ + UserAssigned = "UserAssigned", + /** SystemAssignedUserAssigned */ + SystemAssignedUserAssigned = "SystemAssigned,UserAssigned", +} + +/** + * Defines values for ManagedServiceIdentityType. \ + * {@link KnownManagedServiceIdentityType} can be used interchangeably with ManagedServiceIdentityType, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **None** \ + * **SystemAssigned** \ + * **UserAssigned** \ + * **SystemAssigned,UserAssigned** + */ +export type ManagedServiceIdentityType = string; + +/** Known values of {@link CreatedByType} that the service accepts. */ +export enum KnownCreatedByType { + /** User */ + User = "User", + /** Application */ + Application = "Application", + /** ManagedIdentity */ + ManagedIdentity = "ManagedIdentity", + /** Key */ + Key = "Key", +} + +/** + * Defines values for CreatedByType. \ + * {@link KnownCreatedByType} can be used interchangeably with CreatedByType, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **User** \ + * **Application** \ + * **ManagedIdentity** \ + * **Key** + */ +export type CreatedByType = string; + +/** Known values of {@link StatusLevelTypes} that the service accepts. */ +export enum KnownStatusLevelTypes { + /** Info level */ + Info = "Info", + /** Warning level */ + Warning = "Warning", + /** Error Level */ + Error = "Error", +} + +/** + * Defines values for StatusLevelTypes. \ + * {@link KnownStatusLevelTypes} can be used interchangeably with StatusLevelTypes, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Info**: Info level \ + * **Warning**: Warning level \ + * **Error**: Error Level + */ +export type StatusLevelTypes = string; + +/** Optional parameters. */ +export interface OperationsListOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the list operation. */ +export type OperationsListResponse = OperationListResult; + +/** Optional parameters. */ +export interface OperationsListNextOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the listNext operation. */ +export type OperationsListNextResponse = OperationListResult; + +/** Optional parameters. */ +export interface FleetsListBySubscriptionOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the listBySubscription operation. */ +export type FleetsListBySubscriptionResponse = FleetListResult; + +/** Optional parameters. */ +export interface FleetsListByResourceGroupOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the listByResourceGroup operation. */ +export type FleetsListByResourceGroupResponse = FleetListResult; + +/** Optional parameters. */ +export interface FleetsGetOptionalParams extends coreClient.OperationOptions {} + +/** Contains response data for the get operation. */ +export type FleetsGetResponse = Fleet; + +/** Optional parameters. */ +export interface FleetsCreateOrUpdateOptionalParams + extends coreClient.OperationOptions { + /** Delay to wait until next poll, in milliseconds. */ + updateIntervalInMs?: number; + /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */ + resumeFrom?: string; +} + +/** Contains response data for the createOrUpdate operation. */ +export type FleetsCreateOrUpdateResponse = Fleet; + +/** Optional parameters. */ +export interface FleetsUpdateOptionalParams + extends coreClient.OperationOptions { + /** Delay to wait until next poll, in milliseconds. */ + updateIntervalInMs?: number; + /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */ + resumeFrom?: string; +} + +/** Contains response data for the update operation. */ +export type FleetsUpdateResponse = Fleet; + +/** Optional parameters. */ +export interface FleetsDeleteOptionalParams + extends coreClient.OperationOptions { + /** Delay to wait until next poll, in milliseconds. */ + updateIntervalInMs?: number; + /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */ + resumeFrom?: string; +} + +/** Contains response data for the delete operation. */ +export type FleetsDeleteResponse = FleetsDeleteHeaders; + +/** Optional parameters. */ +export interface FleetsListVirtualMachineScaleSetsOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the listVirtualMachineScaleSets operation. */ +export type FleetsListVirtualMachineScaleSetsResponse = + VirtualMachineScaleSetListResult; + +/** Optional parameters. */ +export interface FleetsListBySubscriptionNextOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the listBySubscriptionNext operation. */ +export type FleetsListBySubscriptionNextResponse = FleetListResult; + +/** Optional parameters. */ +export interface FleetsListByResourceGroupNextOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the listByResourceGroupNext operation. */ +export type FleetsListByResourceGroupNextResponse = FleetListResult; + +/** Optional parameters. */ +export interface FleetsListVirtualMachineScaleSetsNextOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the listVirtualMachineScaleSetsNext operation. */ +export type FleetsListVirtualMachineScaleSetsNextResponse = + VirtualMachineScaleSetListResult; + +/** Optional parameters. */ +export interface MicrosoftAzureFleetForTestingOptionalParams + extends coreClient.ServiceClientOptions { + /** server parameter */ + $host?: string; + /** Api Version */ + apiVersion?: string; + /** Overrides client endpoint. */ + endpoint?: string; +} diff --git a/sdk/computefleet/arm-computefleet/src/models/mappers.ts b/sdk/computefleet/arm-computefleet/src/models/mappers.ts new file mode 100644 index 000000000000..046f7679fb67 --- /dev/null +++ b/sdk/computefleet/arm-computefleet/src/models/mappers.ts @@ -0,0 +1,3056 @@ +/* + * 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 * as coreClient from "@azure/core-client"; + +export const OperationListResult: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "OperationListResult", + modelProperties: { + value: { + serializedName: "value", + readOnly: true, + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "Operation", + }, + }, + }, + }, + nextLink: { + serializedName: "nextLink", + readOnly: true, + type: { + name: "String", + }, + }, + }, + }, +}; + +export const Operation: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "Operation", + modelProperties: { + name: { + serializedName: "name", + readOnly: true, + type: { + name: "String", + }, + }, + isDataAction: { + serializedName: "isDataAction", + readOnly: true, + type: { + name: "Boolean", + }, + }, + display: { + serializedName: "display", + type: { + name: "Composite", + className: "OperationDisplay", + }, + }, + origin: { + serializedName: "origin", + readOnly: true, + type: { + name: "String", + }, + }, + actionType: { + serializedName: "actionType", + readOnly: true, + type: { + name: "String", + }, + }, + }, + }, +}; + +export const OperationDisplay: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "OperationDisplay", + modelProperties: { + provider: { + serializedName: "provider", + readOnly: true, + type: { + name: "String", + }, + }, + resource: { + serializedName: "resource", + readOnly: true, + type: { + name: "String", + }, + }, + operation: { + serializedName: "operation", + readOnly: true, + type: { + name: "String", + }, + }, + description: { + serializedName: "description", + readOnly: true, + type: { + name: "String", + }, + }, + }, + }, +}; + +export const ErrorResponse: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ErrorResponse", + modelProperties: { + error: { + serializedName: "error", + type: { + name: "Composite", + className: "ErrorDetail", + }, + }, + }, + }, +}; + +export const ErrorDetail: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ErrorDetail", + modelProperties: { + code: { + serializedName: "code", + readOnly: true, + type: { + name: "String", + }, + }, + message: { + serializedName: "message", + readOnly: true, + type: { + name: "String", + }, + }, + target: { + serializedName: "target", + readOnly: true, + type: { + name: "String", + }, + }, + details: { + serializedName: "details", + readOnly: true, + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ErrorDetail", + }, + }, + }, + }, + additionalInfo: { + serializedName: "additionalInfo", + readOnly: true, + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ErrorAdditionalInfo", + }, + }, + }, + }, + }, + }, +}; + +export const ErrorAdditionalInfo: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ErrorAdditionalInfo", + modelProperties: { + type: { + serializedName: "type", + readOnly: true, + type: { + name: "String", + }, + }, + info: { + serializedName: "info", + readOnly: true, + type: { + name: "Dictionary", + value: { type: { name: "any" } }, + }, + }, + }, + }, +}; + +export const FleetListResult: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "FleetListResult", + modelProperties: { + value: { + serializedName: "value", + required: true, + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "Fleet", + }, + }, + }, + }, + nextLink: { + serializedName: "nextLink", + type: { + name: "String", + }, + }, + }, + }, +}; + +export const FleetProperties: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "FleetProperties", + modelProperties: { + provisioningState: { + serializedName: "provisioningState", + readOnly: true, + type: { + name: "String", + }, + }, + spotPriorityProfile: { + serializedName: "spotPriorityProfile", + type: { + name: "Composite", + className: "SpotPriorityProfile", + }, + }, + regularPriorityProfile: { + serializedName: "regularPriorityProfile", + type: { + name: "Composite", + className: "RegularPriorityProfile", + }, + }, + vmSizesProfile: { + serializedName: "vmSizesProfile", + required: true, + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "VmSizeProfile", + }, + }, + }, + }, + computeProfile: { + serializedName: "computeProfile", + type: { + name: "Composite", + className: "ComputeProfile", + }, + }, + timeCreated: { + serializedName: "timeCreated", + readOnly: true, + type: { + name: "DateTime", + }, + }, + uniqueId: { + serializedName: "uniqueId", + readOnly: true, + type: { + name: "String", + }, + }, + }, + }, +}; + +export const SpotPriorityProfile: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "SpotPriorityProfile", + modelProperties: { + capacity: { + constraints: { + InclusiveMinimum: 0, + }, + serializedName: "capacity", + type: { + name: "Number", + }, + }, + minCapacity: { + constraints: { + InclusiveMinimum: 0, + }, + serializedName: "minCapacity", + type: { + name: "Number", + }, + }, + maxPricePerVM: { + serializedName: "maxPricePerVM", + type: { + name: "Number", + }, + }, + evictionPolicy: { + serializedName: "evictionPolicy", + type: { + name: "String", + }, + }, + allocationStrategy: { + serializedName: "allocationStrategy", + type: { + name: "String", + }, + }, + maintain: { + serializedName: "maintain", + type: { + name: "Boolean", + }, + }, + }, + }, +}; + +export const RegularPriorityProfile: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "RegularPriorityProfile", + modelProperties: { + capacity: { + constraints: { + InclusiveMinimum: 0, + }, + serializedName: "capacity", + type: { + name: "Number", + }, + }, + minCapacity: { + constraints: { + InclusiveMinimum: 0, + }, + serializedName: "minCapacity", + type: { + name: "Number", + }, + }, + allocationStrategy: { + serializedName: "allocationStrategy", + type: { + name: "String", + }, + }, + }, + }, +}; + +export const VmSizeProfile: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "VmSizeProfile", + modelProperties: { + name: { + serializedName: "name", + required: true, + type: { + name: "String", + }, + }, + rank: { + constraints: { + InclusiveMaximum: 65535, + InclusiveMinimum: 0, + }, + serializedName: "rank", + type: { + name: "Number", + }, + }, + }, + }, +}; + +export const ComputeProfile: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ComputeProfile", + modelProperties: { + baseVirtualMachineProfile: { + serializedName: "baseVirtualMachineProfile", + type: { + name: "Composite", + className: "BaseVirtualMachineProfile", + }, + }, + computeApiVersion: { + serializedName: "computeApiVersion", + type: { + name: "String", + }, + }, + platformFaultDomainCount: { + serializedName: "platformFaultDomainCount", + type: { + name: "Number", + }, + }, + }, + }, +}; + +export const BaseVirtualMachineProfile: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "BaseVirtualMachineProfile", + modelProperties: { + osProfile: { + serializedName: "osProfile", + type: { + name: "Composite", + className: "VirtualMachineScaleSetOSProfile", + }, + }, + storageProfile: { + serializedName: "storageProfile", + type: { + name: "Composite", + className: "VirtualMachineScaleSetStorageProfile", + }, + }, + networkProfile: { + serializedName: "networkProfile", + type: { + name: "Composite", + className: "VirtualMachineScaleSetNetworkProfile", + }, + }, + securityProfile: { + serializedName: "securityProfile", + type: { + name: "Composite", + className: "SecurityProfile", + }, + }, + diagnosticsProfile: { + serializedName: "diagnosticsProfile", + type: { + name: "Composite", + className: "DiagnosticsProfile", + }, + }, + extensionProfile: { + serializedName: "extensionProfile", + type: { + name: "Composite", + className: "VirtualMachineScaleSetExtensionProfile", + }, + }, + licenseType: { + serializedName: "licenseType", + type: { + name: "String", + }, + }, + scheduledEventsProfile: { + serializedName: "scheduledEventsProfile", + type: { + name: "Composite", + className: "ScheduledEventsProfile", + }, + }, + userData: { + serializedName: "userData", + type: { + name: "String", + }, + }, + capacityReservation: { + serializedName: "capacityReservation", + type: { + name: "Composite", + className: "CapacityReservationProfile", + }, + }, + applicationProfile: { + serializedName: "applicationProfile", + type: { + name: "Composite", + className: "ApplicationProfile", + }, + }, + hardwareProfile: { + serializedName: "hardwareProfile", + type: { + name: "Composite", + className: "VirtualMachineScaleSetHardwareProfile", + }, + }, + serviceArtifactReference: { + serializedName: "serviceArtifactReference", + type: { + name: "Composite", + className: "ServiceArtifactReference", + }, + }, + securityPostureReference: { + serializedName: "securityPostureReference", + type: { + name: "Composite", + className: "SecurityPostureReference", + }, + }, + timeCreated: { + serializedName: "timeCreated", + readOnly: true, + type: { + name: "DateTime", + }, + }, + }, + }, +}; + +export const VirtualMachineScaleSetOSProfile: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "VirtualMachineScaleSetOSProfile", + modelProperties: { + computerNamePrefix: { + serializedName: "computerNamePrefix", + type: { + name: "String", + }, + }, + adminUsername: { + serializedName: "adminUsername", + type: { + name: "String", + }, + }, + adminPassword: { + serializedName: "adminPassword", + type: { + name: "String", + }, + }, + customData: { + serializedName: "customData", + type: { + name: "String", + }, + }, + windowsConfiguration: { + serializedName: "windowsConfiguration", + type: { + name: "Composite", + className: "WindowsConfiguration", + }, + }, + linuxConfiguration: { + serializedName: "linuxConfiguration", + type: { + name: "Composite", + className: "LinuxConfiguration", + }, + }, + secrets: { + serializedName: "secrets", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "VaultSecretGroup", + }, + }, + }, + }, + allowExtensionOperations: { + serializedName: "allowExtensionOperations", + type: { + name: "Boolean", + }, + }, + requireGuestProvisionSignal: { + serializedName: "requireGuestProvisionSignal", + type: { + name: "Boolean", + }, + }, + }, + }, +}; + +export const WindowsConfiguration: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "WindowsConfiguration", + modelProperties: { + provisionVMAgent: { + serializedName: "provisionVMAgent", + type: { + name: "Boolean", + }, + }, + enableAutomaticUpdates: { + serializedName: "enableAutomaticUpdates", + type: { + name: "Boolean", + }, + }, + timeZone: { + serializedName: "timeZone", + type: { + name: "String", + }, + }, + additionalUnattendContent: { + serializedName: "additionalUnattendContent", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "AdditionalUnattendContent", + }, + }, + }, + }, + patchSettings: { + serializedName: "patchSettings", + type: { + name: "Composite", + className: "PatchSettings", + }, + }, + winRM: { + serializedName: "winRM", + type: { + name: "Composite", + className: "WinRMConfiguration", + }, + }, + enableVMAgentPlatformUpdates: { + serializedName: "enableVMAgentPlatformUpdates", + type: { + name: "Boolean", + }, + }, + }, + }, +}; + +export const AdditionalUnattendContent: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "AdditionalUnattendContent", + modelProperties: { + passName: { + defaultValue: "OobeSystem", + isConstant: true, + serializedName: "passName", + type: { + name: "String", + }, + }, + componentName: { + defaultValue: "Microsoft-Windows-Shell-Setup", + isConstant: true, + serializedName: "componentName", + type: { + name: "String", + }, + }, + settingName: { + serializedName: "settingName", + type: { + name: "String", + }, + }, + content: { + serializedName: "content", + type: { + name: "String", + }, + }, + }, + }, +}; + +export const PatchSettings: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "PatchSettings", + modelProperties: { + patchMode: { + serializedName: "patchMode", + type: { + name: "String", + }, + }, + enableHotpatching: { + serializedName: "enableHotpatching", + type: { + name: "Boolean", + }, + }, + assessmentMode: { + serializedName: "assessmentMode", + type: { + name: "String", + }, + }, + automaticByPlatformSettings: { + serializedName: "automaticByPlatformSettings", + type: { + name: "Composite", + className: "WindowsVMGuestPatchAutomaticByPlatformSettings", + }, + }, + }, + }, +}; + +export const WindowsVMGuestPatchAutomaticByPlatformSettings: coreClient.CompositeMapper = + { + type: { + name: "Composite", + className: "WindowsVMGuestPatchAutomaticByPlatformSettings", + modelProperties: { + rebootSetting: { + serializedName: "rebootSetting", + type: { + name: "String", + }, + }, + bypassPlatformSafetyChecksOnUserSchedule: { + serializedName: "bypassPlatformSafetyChecksOnUserSchedule", + type: { + name: "Boolean", + }, + }, + }, + }, + }; + +export const WinRMConfiguration: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "WinRMConfiguration", + modelProperties: { + listeners: { + serializedName: "listeners", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "WinRMListener", + }, + }, + }, + }, + }, + }, +}; + +export const WinRMListener: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "WinRMListener", + modelProperties: { + protocol: { + serializedName: "protocol", + type: { + name: "String", + }, + }, + certificateUrl: { + serializedName: "certificateUrl", + type: { + name: "String", + }, + }, + }, + }, +}; + +export const LinuxConfiguration: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "LinuxConfiguration", + modelProperties: { + disablePasswordAuthentication: { + serializedName: "disablePasswordAuthentication", + type: { + name: "Boolean", + }, + }, + ssh: { + serializedName: "ssh", + type: { + name: "Composite", + className: "SshConfiguration", + }, + }, + provisionVMAgent: { + serializedName: "provisionVMAgent", + type: { + name: "Boolean", + }, + }, + patchSettings: { + serializedName: "patchSettings", + type: { + name: "Composite", + className: "LinuxPatchSettings", + }, + }, + enableVMAgentPlatformUpdates: { + serializedName: "enableVMAgentPlatformUpdates", + type: { + name: "Boolean", + }, + }, + }, + }, +}; + +export const SshConfiguration: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "SshConfiguration", + modelProperties: { + publicKeys: { + serializedName: "publicKeys", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "SshPublicKey", + }, + }, + }, + }, + }, + }, +}; + +export const SshPublicKey: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "SshPublicKey", + modelProperties: { + path: { + serializedName: "path", + type: { + name: "String", + }, + }, + keyData: { + serializedName: "keyData", + type: { + name: "String", + }, + }, + }, + }, +}; + +export const LinuxPatchSettings: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "LinuxPatchSettings", + modelProperties: { + patchMode: { + serializedName: "patchMode", + type: { + name: "String", + }, + }, + assessmentMode: { + serializedName: "assessmentMode", + type: { + name: "String", + }, + }, + automaticByPlatformSettings: { + serializedName: "automaticByPlatformSettings", + type: { + name: "Composite", + className: "LinuxVMGuestPatchAutomaticByPlatformSettings", + }, + }, + }, + }, +}; + +export const LinuxVMGuestPatchAutomaticByPlatformSettings: coreClient.CompositeMapper = + { + type: { + name: "Composite", + className: "LinuxVMGuestPatchAutomaticByPlatformSettings", + modelProperties: { + rebootSetting: { + serializedName: "rebootSetting", + type: { + name: "String", + }, + }, + bypassPlatformSafetyChecksOnUserSchedule: { + serializedName: "bypassPlatformSafetyChecksOnUserSchedule", + type: { + name: "Boolean", + }, + }, + }, + }, + }; + +export const VaultSecretGroup: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "VaultSecretGroup", + modelProperties: { + sourceVault: { + serializedName: "sourceVault", + type: { + name: "Composite", + className: "SubResource", + }, + }, + vaultCertificates: { + serializedName: "vaultCertificates", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "VaultCertificate", + }, + }, + }, + }, + }, + }, +}; + +export const SubResource: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "SubResource", + modelProperties: { + id: { + serializedName: "id", + type: { + name: "String", + }, + }, + }, + }, +}; + +export const VaultCertificate: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "VaultCertificate", + modelProperties: { + certificateUrl: { + serializedName: "certificateUrl", + type: { + name: "String", + }, + }, + certificateStore: { + serializedName: "certificateStore", + type: { + name: "String", + }, + }, + }, + }, +}; + +export const VirtualMachineScaleSetStorageProfile: coreClient.CompositeMapper = + { + type: { + name: "Composite", + className: "VirtualMachineScaleSetStorageProfile", + modelProperties: { + imageReference: { + serializedName: "imageReference", + type: { + name: "Composite", + className: "ImageReference", + }, + }, + osDisk: { + serializedName: "osDisk", + type: { + name: "Composite", + className: "VirtualMachineScaleSetOSDisk", + }, + }, + dataDisks: { + serializedName: "dataDisks", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "VirtualMachineScaleSetDataDisk", + }, + }, + }, + }, + diskControllerType: { + serializedName: "diskControllerType", + type: { + name: "String", + }, + }, + }, + }, + }; + +export const ImageReference: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ImageReference", + modelProperties: { + id: { + serializedName: "id", + type: { + name: "String", + }, + }, + publisher: { + serializedName: "publisher", + type: { + name: "String", + }, + }, + offer: { + serializedName: "offer", + type: { + name: "String", + }, + }, + sku: { + serializedName: "sku", + type: { + name: "String", + }, + }, + version: { + serializedName: "version", + type: { + name: "String", + }, + }, + exactVersion: { + serializedName: "exactVersion", + readOnly: true, + type: { + name: "String", + }, + }, + sharedGalleryImageId: { + serializedName: "sharedGalleryImageId", + type: { + name: "String", + }, + }, + communityGalleryImageId: { + serializedName: "communityGalleryImageId", + type: { + name: "String", + }, + }, + }, + }, +}; + +export const VirtualMachineScaleSetOSDisk: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "VirtualMachineScaleSetOSDisk", + modelProperties: { + name: { + serializedName: "name", + type: { + name: "String", + }, + }, + caching: { + serializedName: "caching", + type: { + name: "String", + }, + }, + writeAcceleratorEnabled: { + serializedName: "writeAcceleratorEnabled", + type: { + name: "Boolean", + }, + }, + createOption: { + serializedName: "createOption", + required: true, + type: { + name: "String", + }, + }, + diffDiskSettings: { + serializedName: "diffDiskSettings", + type: { + name: "Composite", + className: "DiffDiskSettings", + }, + }, + diskSizeGB: { + serializedName: "diskSizeGB", + type: { + name: "Number", + }, + }, + osType: { + serializedName: "osType", + type: { + name: "String", + }, + }, + image: { + serializedName: "image", + type: { + name: "Composite", + className: "VirtualHardDisk", + }, + }, + vhdContainers: { + serializedName: "vhdContainers", + type: { + name: "Sequence", + element: { + type: { + name: "String", + }, + }, + }, + }, + managedDisk: { + serializedName: "managedDisk", + type: { + name: "Composite", + className: "VirtualMachineScaleSetManagedDiskParameters", + }, + }, + deleteOption: { + serializedName: "deleteOption", + type: { + name: "String", + }, + }, + }, + }, +}; + +export const DiffDiskSettings: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "DiffDiskSettings", + modelProperties: { + option: { + serializedName: "option", + type: { + name: "String", + }, + }, + placement: { + serializedName: "placement", + type: { + name: "String", + }, + }, + }, + }, +}; + +export const VirtualHardDisk: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "VirtualHardDisk", + modelProperties: { + uri: { + serializedName: "uri", + type: { + name: "String", + }, + }, + }, + }, +}; + +export const VirtualMachineScaleSetManagedDiskParameters: coreClient.CompositeMapper = + { + type: { + name: "Composite", + className: "VirtualMachineScaleSetManagedDiskParameters", + modelProperties: { + storageAccountType: { + serializedName: "storageAccountType", + type: { + name: "String", + }, + }, + diskEncryptionSet: { + serializedName: "diskEncryptionSet", + type: { + name: "Composite", + className: "DiskEncryptionSetParameters", + }, + }, + securityProfile: { + serializedName: "securityProfile", + type: { + name: "Composite", + className: "VMDiskSecurityProfile", + }, + }, + }, + }, + }; + +export const DiskEncryptionSetParameters: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "DiskEncryptionSetParameters", + modelProperties: { + id: { + serializedName: "id", + type: { + name: "String", + }, + }, + }, + }, +}; + +export const VMDiskSecurityProfile: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "VMDiskSecurityProfile", + modelProperties: { + securityEncryptionType: { + serializedName: "securityEncryptionType", + type: { + name: "String", + }, + }, + diskEncryptionSet: { + serializedName: "diskEncryptionSet", + type: { + name: "Composite", + className: "DiskEncryptionSetParameters", + }, + }, + }, + }, +}; + +export const VirtualMachineScaleSetDataDisk: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "VirtualMachineScaleSetDataDisk", + modelProperties: { + name: { + serializedName: "name", + type: { + name: "String", + }, + }, + lun: { + serializedName: "lun", + required: true, + type: { + name: "Number", + }, + }, + caching: { + serializedName: "caching", + type: { + name: "String", + }, + }, + writeAcceleratorEnabled: { + serializedName: "writeAcceleratorEnabled", + type: { + name: "Boolean", + }, + }, + createOption: { + serializedName: "createOption", + required: true, + type: { + name: "String", + }, + }, + diskSizeGB: { + serializedName: "diskSizeGB", + type: { + name: "Number", + }, + }, + managedDisk: { + serializedName: "managedDisk", + type: { + name: "Composite", + className: "VirtualMachineScaleSetManagedDiskParameters", + }, + }, + diskIopsReadWrite: { + serializedName: "diskIOPSReadWrite", + type: { + name: "Number", + }, + }, + diskMBpsReadWrite: { + serializedName: "diskMBpsReadWrite", + type: { + name: "Number", + }, + }, + deleteOption: { + serializedName: "deleteOption", + type: { + name: "String", + }, + }, + }, + }, +}; + +export const VirtualMachineScaleSetNetworkProfile: coreClient.CompositeMapper = + { + type: { + name: "Composite", + className: "VirtualMachineScaleSetNetworkProfile", + modelProperties: { + healthProbe: { + serializedName: "healthProbe", + type: { + name: "Composite", + className: "ApiEntityReference", + }, + }, + networkInterfaceConfigurations: { + serializedName: "networkInterfaceConfigurations", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "VirtualMachineScaleSetNetworkConfiguration", + }, + }, + }, + }, + networkApiVersion: { + serializedName: "networkApiVersion", + type: { + name: "String", + }, + }, + }, + }, + }; + +export const ApiEntityReference: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ApiEntityReference", + modelProperties: { + id: { + serializedName: "id", + type: { + name: "String", + }, + }, + }, + }, +}; + +export const VirtualMachineScaleSetNetworkConfiguration: coreClient.CompositeMapper = + { + type: { + name: "Composite", + className: "VirtualMachineScaleSetNetworkConfiguration", + modelProperties: { + name: { + serializedName: "name", + required: true, + type: { + name: "String", + }, + }, + properties: { + serializedName: "properties", + type: { + name: "Composite", + className: "VirtualMachineScaleSetNetworkConfigurationProperties", + }, + }, + }, + }, + }; + +export const VirtualMachineScaleSetNetworkConfigurationProperties: coreClient.CompositeMapper = + { + type: { + name: "Composite", + className: "VirtualMachineScaleSetNetworkConfigurationProperties", + modelProperties: { + primary: { + serializedName: "primary", + type: { + name: "Boolean", + }, + }, + enableAcceleratedNetworking: { + serializedName: "enableAcceleratedNetworking", + type: { + name: "Boolean", + }, + }, + disableTcpStateTracking: { + serializedName: "disableTcpStateTracking", + type: { + name: "Boolean", + }, + }, + enableFpga: { + serializedName: "enableFpga", + type: { + name: "Boolean", + }, + }, + networkSecurityGroup: { + serializedName: "networkSecurityGroup", + type: { + name: "Composite", + className: "SubResource", + }, + }, + dnsSettings: { + serializedName: "dnsSettings", + type: { + name: "Composite", + className: "VirtualMachineScaleSetNetworkConfigurationDnsSettings", + }, + }, + ipConfigurations: { + serializedName: "ipConfigurations", + required: true, + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "VirtualMachineScaleSetIPConfiguration", + }, + }, + }, + }, + enableIPForwarding: { + serializedName: "enableIPForwarding", + type: { + name: "Boolean", + }, + }, + deleteOption: { + serializedName: "deleteOption", + type: { + name: "String", + }, + }, + auxiliaryMode: { + serializedName: "auxiliaryMode", + type: { + name: "String", + }, + }, + auxiliarySku: { + serializedName: "auxiliarySku", + type: { + name: "String", + }, + }, + }, + }, + }; + +export const VirtualMachineScaleSetNetworkConfigurationDnsSettings: coreClient.CompositeMapper = + { + type: { + name: "Composite", + className: "VirtualMachineScaleSetNetworkConfigurationDnsSettings", + modelProperties: { + dnsServers: { + serializedName: "dnsServers", + type: { + name: "Sequence", + element: { + type: { + name: "String", + }, + }, + }, + }, + }, + }, + }; + +export const VirtualMachineScaleSetIPConfiguration: coreClient.CompositeMapper = + { + type: { + name: "Composite", + className: "VirtualMachineScaleSetIPConfiguration", + modelProperties: { + name: { + serializedName: "name", + required: true, + type: { + name: "String", + }, + }, + properties: { + serializedName: "properties", + type: { + name: "Composite", + className: "VirtualMachineScaleSetIPConfigurationProperties", + }, + }, + }, + }, + }; + +export const VirtualMachineScaleSetIPConfigurationProperties: coreClient.CompositeMapper = + { + type: { + name: "Composite", + className: "VirtualMachineScaleSetIPConfigurationProperties", + modelProperties: { + subnet: { + serializedName: "subnet", + type: { + name: "Composite", + className: "ApiEntityReference", + }, + }, + primary: { + serializedName: "primary", + type: { + name: "Boolean", + }, + }, + publicIPAddressConfiguration: { + serializedName: "publicIPAddressConfiguration", + type: { + name: "Composite", + className: "VirtualMachineScaleSetPublicIPAddressConfiguration", + }, + }, + privateIPAddressVersion: { + serializedName: "privateIPAddressVersion", + type: { + name: "String", + }, + }, + applicationGatewayBackendAddressPools: { + serializedName: "applicationGatewayBackendAddressPools", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "SubResource", + }, + }, + }, + }, + applicationSecurityGroups: { + serializedName: "applicationSecurityGroups", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "SubResource", + }, + }, + }, + }, + loadBalancerBackendAddressPools: { + serializedName: "loadBalancerBackendAddressPools", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "SubResource", + }, + }, + }, + }, + loadBalancerInboundNatPools: { + serializedName: "loadBalancerInboundNatPools", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "SubResource", + }, + }, + }, + }, + }, + }, + }; + +export const VirtualMachineScaleSetPublicIPAddressConfiguration: coreClient.CompositeMapper = + { + type: { + name: "Composite", + className: "VirtualMachineScaleSetPublicIPAddressConfiguration", + modelProperties: { + name: { + serializedName: "name", + required: true, + type: { + name: "String", + }, + }, + properties: { + serializedName: "properties", + type: { + name: "Composite", + className: + "VirtualMachineScaleSetPublicIPAddressConfigurationProperties", + }, + }, + sku: { + serializedName: "sku", + type: { + name: "Composite", + className: "PublicIPAddressSku", + }, + }, + }, + }, + }; + +export const VirtualMachineScaleSetPublicIPAddressConfigurationProperties: coreClient.CompositeMapper = + { + type: { + name: "Composite", + className: "VirtualMachineScaleSetPublicIPAddressConfigurationProperties", + modelProperties: { + idleTimeoutInMinutes: { + serializedName: "idleTimeoutInMinutes", + type: { + name: "Number", + }, + }, + dnsSettings: { + serializedName: "dnsSettings", + type: { + name: "Composite", + className: + "VirtualMachineScaleSetPublicIPAddressConfigurationDnsSettings", + }, + }, + ipTags: { + serializedName: "ipTags", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "VirtualMachineScaleSetIpTag", + }, + }, + }, + }, + publicIPPrefix: { + serializedName: "publicIPPrefix", + type: { + name: "Composite", + className: "SubResource", + }, + }, + publicIPAddressVersion: { + serializedName: "publicIPAddressVersion", + type: { + name: "String", + }, + }, + deleteOption: { + serializedName: "deleteOption", + type: { + name: "String", + }, + }, + }, + }, + }; + +export const VirtualMachineScaleSetPublicIPAddressConfigurationDnsSettings: coreClient.CompositeMapper = + { + type: { + name: "Composite", + className: + "VirtualMachineScaleSetPublicIPAddressConfigurationDnsSettings", + modelProperties: { + domainNameLabel: { + serializedName: "domainNameLabel", + required: true, + type: { + name: "String", + }, + }, + domainNameLabelScope: { + serializedName: "domainNameLabelScope", + type: { + name: "String", + }, + }, + }, + }, + }; + +export const VirtualMachineScaleSetIpTag: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "VirtualMachineScaleSetIpTag", + modelProperties: { + ipTagType: { + serializedName: "ipTagType", + type: { + name: "String", + }, + }, + tag: { + serializedName: "tag", + type: { + name: "String", + }, + }, + }, + }, +}; + +export const PublicIPAddressSku: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "PublicIPAddressSku", + modelProperties: { + name: { + serializedName: "name", + type: { + name: "String", + }, + }, + tier: { + serializedName: "tier", + type: { + name: "String", + }, + }, + }, + }, +}; + +export const SecurityProfile: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "SecurityProfile", + modelProperties: { + uefiSettings: { + serializedName: "uefiSettings", + type: { + name: "Composite", + className: "UefiSettings", + }, + }, + encryptionAtHost: { + serializedName: "encryptionAtHost", + type: { + name: "Boolean", + }, + }, + securityType: { + serializedName: "securityType", + type: { + name: "String", + }, + }, + encryptionIdentity: { + serializedName: "encryptionIdentity", + type: { + name: "Composite", + className: "EncryptionIdentity", + }, + }, + proxyAgentSettings: { + serializedName: "proxyAgentSettings", + type: { + name: "Composite", + className: "ProxyAgentSettings", + }, + }, + }, + }, +}; + +export const UefiSettings: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "UefiSettings", + modelProperties: { + secureBootEnabled: { + serializedName: "secureBootEnabled", + type: { + name: "Boolean", + }, + }, + vTpmEnabled: { + serializedName: "vTpmEnabled", + type: { + name: "Boolean", + }, + }, + }, + }, +}; + +export const EncryptionIdentity: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "EncryptionIdentity", + modelProperties: { + userAssignedIdentityResourceId: { + serializedName: "userAssignedIdentityResourceId", + type: { + name: "String", + }, + }, + }, + }, +}; + +export const ProxyAgentSettings: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ProxyAgentSettings", + modelProperties: { + enabled: { + serializedName: "enabled", + type: { + name: "Boolean", + }, + }, + mode: { + serializedName: "mode", + type: { + name: "String", + }, + }, + keyIncarnationId: { + serializedName: "keyIncarnationId", + type: { + name: "Number", + }, + }, + }, + }, +}; + +export const DiagnosticsProfile: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "DiagnosticsProfile", + modelProperties: { + bootDiagnostics: { + serializedName: "bootDiagnostics", + type: { + name: "Composite", + className: "BootDiagnostics", + }, + }, + }, + }, +}; + +export const BootDiagnostics: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "BootDiagnostics", + modelProperties: { + enabled: { + serializedName: "enabled", + type: { + name: "Boolean", + }, + }, + storageUri: { + serializedName: "storageUri", + type: { + name: "String", + }, + }, + }, + }, +}; + +export const VirtualMachineScaleSetExtensionProfile: coreClient.CompositeMapper = + { + type: { + name: "Composite", + className: "VirtualMachineScaleSetExtensionProfile", + modelProperties: { + extensions: { + serializedName: "extensions", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "VirtualMachineScaleSetExtension", + }, + }, + }, + }, + extensionsTimeBudget: { + serializedName: "extensionsTimeBudget", + type: { + name: "String", + }, + }, + }, + }, + }; + +export const VirtualMachineScaleSetExtension: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "VirtualMachineScaleSetExtension", + modelProperties: { + id: { + serializedName: "id", + readOnly: true, + type: { + name: "String", + }, + }, + name: { + serializedName: "name", + type: { + name: "String", + }, + }, + type: { + serializedName: "type", + readOnly: true, + type: { + name: "String", + }, + }, + properties: { + serializedName: "properties", + type: { + name: "Composite", + className: "VirtualMachineScaleSetExtensionProperties", + }, + }, + }, + }, +}; + +export const VirtualMachineScaleSetExtensionProperties: coreClient.CompositeMapper = + { + type: { + name: "Composite", + className: "VirtualMachineScaleSetExtensionProperties", + modelProperties: { + forceUpdateTag: { + serializedName: "forceUpdateTag", + type: { + name: "String", + }, + }, + publisher: { + serializedName: "publisher", + type: { + name: "String", + }, + }, + type: { + serializedName: "type", + type: { + name: "String", + }, + }, + typeHandlerVersion: { + serializedName: "typeHandlerVersion", + type: { + name: "String", + }, + }, + autoUpgradeMinorVersion: { + serializedName: "autoUpgradeMinorVersion", + type: { + name: "Boolean", + }, + }, + enableAutomaticUpgrade: { + serializedName: "enableAutomaticUpgrade", + type: { + name: "Boolean", + }, + }, + settings: { + serializedName: "settings", + type: { + name: "Dictionary", + value: { type: { name: "any" } }, + }, + }, + protectedSettings: { + serializedName: "protectedSettings", + type: { + name: "Dictionary", + value: { type: { name: "any" } }, + }, + }, + provisioningState: { + serializedName: "provisioningState", + readOnly: true, + type: { + name: "String", + }, + }, + provisionAfterExtensions: { + serializedName: "provisionAfterExtensions", + type: { + name: "Sequence", + element: { + type: { + name: "String", + }, + }, + }, + }, + suppressFailures: { + serializedName: "suppressFailures", + type: { + name: "Boolean", + }, + }, + protectedSettingsFromKeyVault: { + serializedName: "protectedSettingsFromKeyVault", + type: { + name: "Composite", + className: "KeyVaultSecretReference", + }, + }, + }, + }, + }; + +export const KeyVaultSecretReference: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "KeyVaultSecretReference", + modelProperties: { + secretUrl: { + serializedName: "secretUrl", + required: true, + type: { + name: "String", + }, + }, + sourceVault: { + serializedName: "sourceVault", + type: { + name: "Composite", + className: "SubResource", + }, + }, + }, + }, +}; + +export const ScheduledEventsProfile: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ScheduledEventsProfile", + modelProperties: { + terminateNotificationProfile: { + serializedName: "terminateNotificationProfile", + type: { + name: "Composite", + className: "TerminateNotificationProfile", + }, + }, + osImageNotificationProfile: { + serializedName: "osImageNotificationProfile", + type: { + name: "Composite", + className: "OSImageNotificationProfile", + }, + }, + }, + }, +}; + +export const TerminateNotificationProfile: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "TerminateNotificationProfile", + modelProperties: { + notBeforeTimeout: { + serializedName: "notBeforeTimeout", + type: { + name: "String", + }, + }, + enable: { + serializedName: "enable", + type: { + name: "Boolean", + }, + }, + }, + }, +}; + +export const OSImageNotificationProfile: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "OSImageNotificationProfile", + modelProperties: { + notBeforeTimeout: { + serializedName: "notBeforeTimeout", + type: { + name: "String", + }, + }, + enable: { + serializedName: "enable", + type: { + name: "Boolean", + }, + }, + }, + }, +}; + +export const CapacityReservationProfile: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "CapacityReservationProfile", + modelProperties: { + capacityReservationGroup: { + serializedName: "capacityReservationGroup", + type: { + name: "Composite", + className: "SubResource", + }, + }, + }, + }, +}; + +export const ApplicationProfile: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ApplicationProfile", + modelProperties: { + galleryApplications: { + serializedName: "galleryApplications", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "VMGalleryApplication", + }, + }, + }, + }, + }, + }, +}; + +export const VMGalleryApplication: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "VMGalleryApplication", + modelProperties: { + tags: { + serializedName: "tags", + type: { + name: "String", + }, + }, + order: { + serializedName: "order", + type: { + name: "Number", + }, + }, + packageReferenceId: { + serializedName: "packageReferenceId", + required: true, + type: { + name: "String", + }, + }, + configurationReference: { + serializedName: "configurationReference", + type: { + name: "String", + }, + }, + treatFailureAsDeploymentFailure: { + serializedName: "treatFailureAsDeploymentFailure", + type: { + name: "Boolean", + }, + }, + enableAutomaticUpgrade: { + serializedName: "enableAutomaticUpgrade", + type: { + name: "Boolean", + }, + }, + }, + }, +}; + +export const VirtualMachineScaleSetHardwareProfile: coreClient.CompositeMapper = + { + type: { + name: "Composite", + className: "VirtualMachineScaleSetHardwareProfile", + modelProperties: { + vmSizeProperties: { + serializedName: "vmSizeProperties", + type: { + name: "Composite", + className: "VMSizeProperties", + }, + }, + }, + }, + }; + +export const VMSizeProperties: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "VMSizeProperties", + modelProperties: { + vCPUsAvailable: { + serializedName: "vCPUsAvailable", + type: { + name: "Number", + }, + }, + vCPUsPerCore: { + serializedName: "vCPUsPerCore", + type: { + name: "Number", + }, + }, + }, + }, +}; + +export const ServiceArtifactReference: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ServiceArtifactReference", + modelProperties: { + id: { + serializedName: "id", + type: { + name: "String", + }, + }, + }, + }, +}; + +export const SecurityPostureReference: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "SecurityPostureReference", + modelProperties: { + id: { + serializedName: "id", + type: { + name: "String", + }, + }, + excludeExtensions: { + serializedName: "excludeExtensions", + type: { + name: "Sequence", + element: { + type: { + name: "String", + }, + }, + }, + }, + isOverridable: { + serializedName: "isOverridable", + type: { + name: "Boolean", + }, + }, + }, + }, +}; + +export const ManagedServiceIdentity: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ManagedServiceIdentity", + modelProperties: { + principalId: { + serializedName: "principalId", + readOnly: true, + type: { + name: "Uuid", + }, + }, + tenantId: { + serializedName: "tenantId", + readOnly: true, + type: { + name: "Uuid", + }, + }, + type: { + serializedName: "type", + required: true, + type: { + name: "String", + }, + }, + userAssignedIdentities: { + serializedName: "userAssignedIdentities", + type: { + name: "Dictionary", + value: { + type: { name: "Composite", className: "UserAssignedIdentity" }, + }, + }, + }, + }, + }, +}; + +export const UserAssignedIdentity: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "UserAssignedIdentity", + modelProperties: { + principalId: { + serializedName: "principalId", + readOnly: true, + type: { + name: "Uuid", + }, + }, + clientId: { + serializedName: "clientId", + readOnly: true, + type: { + name: "Uuid", + }, + }, + }, + }, +}; + +export const Plan: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "Plan", + modelProperties: { + name: { + serializedName: "name", + required: true, + type: { + name: "String", + }, + }, + publisher: { + serializedName: "publisher", + required: true, + type: { + name: "String", + }, + }, + product: { + serializedName: "product", + required: true, + type: { + name: "String", + }, + }, + promotionCode: { + serializedName: "promotionCode", + type: { + name: "String", + }, + }, + version: { + serializedName: "version", + type: { + name: "String", + }, + }, + }, + }, +}; + +export const Resource: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "Resource", + modelProperties: { + id: { + serializedName: "id", + readOnly: true, + type: { + name: "String", + }, + }, + name: { + serializedName: "name", + readOnly: true, + type: { + name: "String", + }, + }, + type: { + serializedName: "type", + readOnly: true, + type: { + name: "String", + }, + }, + systemData: { + serializedName: "systemData", + type: { + name: "Composite", + className: "SystemData", + }, + }, + }, + }, +}; + +export const SystemData: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "SystemData", + modelProperties: { + createdBy: { + serializedName: "createdBy", + type: { + name: "String", + }, + }, + createdByType: { + serializedName: "createdByType", + type: { + name: "String", + }, + }, + createdAt: { + serializedName: "createdAt", + type: { + name: "DateTime", + }, + }, + lastModifiedBy: { + serializedName: "lastModifiedBy", + type: { + name: "String", + }, + }, + lastModifiedByType: { + serializedName: "lastModifiedByType", + type: { + name: "String", + }, + }, + lastModifiedAt: { + serializedName: "lastModifiedAt", + type: { + name: "DateTime", + }, + }, + }, + }, +}; + +export const FleetUpdate: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "FleetUpdate", + modelProperties: { + tags: { + serializedName: "tags", + type: { + name: "Dictionary", + value: { type: { name: "String" } }, + }, + }, + identity: { + serializedName: "identity", + type: { + name: "Composite", + className: "ManagedServiceIdentityUpdate", + }, + }, + plan: { + serializedName: "plan", + type: { + name: "Composite", + className: "ResourcePlanUpdate", + }, + }, + properties: { + serializedName: "properties", + type: { + name: "Composite", + className: "FleetProperties", + }, + }, + }, + }, +}; + +export const ManagedServiceIdentityUpdate: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ManagedServiceIdentityUpdate", + modelProperties: { + type: { + serializedName: "type", + type: { + name: "String", + }, + }, + userAssignedIdentities: { + serializedName: "userAssignedIdentities", + type: { + name: "Dictionary", + value: { + type: { + name: "Composite", + className: + "ComponentsQjfoe3SchemasManagedserviceidentityupdatePropertiesUserassignedidentitiesAdditionalproperties", + }, + }, + }, + }, + }, + }, +}; + +export const ResourcePlanUpdate: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ResourcePlanUpdate", + modelProperties: { + name: { + serializedName: "name", + type: { + name: "String", + }, + }, + publisher: { + serializedName: "publisher", + type: { + name: "String", + }, + }, + product: { + serializedName: "product", + type: { + name: "String", + }, + }, + promotionCode: { + serializedName: "promotionCode", + type: { + name: "String", + }, + }, + version: { + serializedName: "version", + type: { + name: "String", + }, + }, + }, + }, +}; + +export const VirtualMachineScaleSetListResult: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "VirtualMachineScaleSetListResult", + modelProperties: { + value: { + serializedName: "value", + required: true, + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "VirtualMachineScaleSet", + }, + }, + }, + }, + nextLink: { + serializedName: "nextLink", + type: { + name: "String", + }, + }, + }, + }, +}; + +export const VirtualMachineScaleSet: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "VirtualMachineScaleSet", + modelProperties: { + name: { + serializedName: "name", + required: true, + readOnly: true, + type: { + name: "String", + }, + }, + id: { + serializedName: "id", + required: true, + readOnly: true, + type: { + name: "String", + }, + }, + type: { + serializedName: "type", + readOnly: true, + type: { + name: "String", + }, + }, + operationStatus: { + serializedName: "operationStatus", + required: true, + readOnly: true, + type: { + name: "String", + }, + }, + error: { + serializedName: "error", + type: { + name: "Composite", + className: "ApiError", + }, + }, + }, + }, +}; + +export const ApiError: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ApiError", + modelProperties: { + code: { + serializedName: "code", + type: { + name: "String", + }, + }, + target: { + serializedName: "target", + type: { + name: "String", + }, + }, + message: { + serializedName: "message", + type: { + name: "String", + }, + }, + details: { + serializedName: "details", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ApiErrorBase", + }, + }, + }, + }, + innererror: { + serializedName: "innererror", + type: { + name: "Composite", + className: "InnerError", + }, + }, + }, + }, +}; + +export const ApiErrorBase: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ApiErrorBase", + modelProperties: { + code: { + serializedName: "code", + type: { + name: "String", + }, + }, + target: { + serializedName: "target", + type: { + name: "String", + }, + }, + message: { + serializedName: "message", + type: { + name: "String", + }, + }, + }, + }, +}; + +export const InnerError: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "InnerError", + modelProperties: { + exceptionType: { + serializedName: "exceptionType", + type: { + name: "String", + }, + }, + errorDetail: { + serializedName: "errorDetail", + type: { + name: "String", + }, + }, + }, + }, +}; + +export const BasePriorityProfile: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "BasePriorityProfile", + modelProperties: { + capacity: { + constraints: { + InclusiveMinimum: 0, + }, + serializedName: "capacity", + type: { + name: "Number", + }, + }, + minCapacity: { + constraints: { + InclusiveMinimum: 0, + }, + serializedName: "minCapacity", + type: { + name: "Number", + }, + }, + }, + }, +}; + +export const SubResourceReadOnly: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "SubResourceReadOnly", + modelProperties: { + id: { + serializedName: "id", + readOnly: true, + type: { + name: "String", + }, + }, + }, + }, +}; + +export const ComponentsQjfoe3SchemasManagedserviceidentityupdatePropertiesUserassignedidentitiesAdditionalproperties: coreClient.CompositeMapper = + { + type: { + name: "Composite", + className: + "ComponentsQjfoe3SchemasManagedserviceidentityupdatePropertiesUserassignedidentitiesAdditionalproperties", + modelProperties: { + ...UserAssignedIdentity.type.modelProperties, + }, + }, + }; + +export const TrackedResource: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "TrackedResource", + modelProperties: { + ...Resource.type.modelProperties, + tags: { + serializedName: "tags", + type: { + name: "Dictionary", + value: { type: { name: "String" } }, + }, + }, + location: { + serializedName: "location", + required: true, + type: { + name: "String", + }, + }, + }, + }, +}; + +export const Fleet: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "Fleet", + modelProperties: { + ...TrackedResource.type.modelProperties, + zones: { + serializedName: "zones", + type: { + name: "Sequence", + element: { + type: { + name: "String", + }, + }, + }, + }, + identity: { + serializedName: "identity", + type: { + name: "Composite", + className: "ManagedServiceIdentity", + }, + }, + plan: { + serializedName: "plan", + type: { + name: "Composite", + className: "Plan", + }, + }, + provisioningState: { + serializedName: "properties.provisioningState", + readOnly: true, + type: { + name: "String", + }, + }, + spotPriorityProfile: { + serializedName: "properties.spotPriorityProfile", + type: { + name: "Composite", + className: "SpotPriorityProfile", + }, + }, + regularPriorityProfile: { + serializedName: "properties.regularPriorityProfile", + type: { + name: "Composite", + className: "RegularPriorityProfile", + }, + }, + vmSizesProfile: { + serializedName: "properties.vmSizesProfile", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "VmSizeProfile", + }, + }, + }, + }, + computeProfile: { + serializedName: "properties.computeProfile", + type: { + name: "Composite", + className: "ComputeProfile", + }, + }, + timeCreated: { + serializedName: "properties.timeCreated", + readOnly: true, + type: { + name: "DateTime", + }, + }, + uniqueId: { + serializedName: "properties.uniqueId", + readOnly: true, + type: { + name: "String", + }, + }, + }, + }, +}; + +export const FleetsCreateOrUpdateHeaders: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "FleetsCreateOrUpdateHeaders", + modelProperties: { + retryAfter: { + serializedName: "retry-after", + type: { + name: "Number", + }, + }, + }, + }, +}; + +export const FleetsUpdateHeaders: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "FleetsUpdateHeaders", + modelProperties: { + location: { + serializedName: "location", + type: { + name: "String", + }, + }, + retryAfter: { + serializedName: "retry-after", + type: { + name: "Number", + }, + }, + }, + }, +}; + +export const FleetsDeleteHeaders: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "FleetsDeleteHeaders", + modelProperties: { + location: { + serializedName: "location", + type: { + name: "String", + }, + }, + retryAfter: { + serializedName: "retry-after", + type: { + name: "Number", + }, + }, + }, + }, +}; diff --git a/sdk/computefleet/arm-computefleet/src/models/models.ts b/sdk/computefleet/arm-computefleet/src/models/models.ts deleted file mode 100644 index fdba0c7191ba..000000000000 --- a/sdk/computefleet/arm-computefleet/src/models/models.ts +++ /dev/null @@ -1,3251 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT license. - -import { serializeRecord } from "../helpers/serializerHelpers.js"; -import { - TrackedResource as TrackedResourceRest, - Fleet as FleetRest, - FleetProperties as FleetPropertiesRest, - SpotPriorityProfile as SpotPriorityProfileRest, - RegularPriorityProfile as RegularPriorityProfileRest, - VmSizeProfile as VmSizeProfileRest, - ComputeProfile as ComputeProfileRest, - BaseVirtualMachineProfile as BaseVirtualMachineProfileRest, - VirtualMachineScaleSetOSProfile as VirtualMachineScaleSetOSProfileRest, - WindowsConfiguration as WindowsConfigurationRest, - AdditionalUnattendContent as AdditionalUnattendContentRest, - PatchSettings as PatchSettingsRest, - WindowsVMGuestPatchAutomaticByPlatformSettings as WindowsVMGuestPatchAutomaticByPlatformSettingsRest, - WinRMConfiguration as WinRMConfigurationRest, - WinRMListener as WinRMListenerRest, - LinuxConfiguration as LinuxConfigurationRest, - SshConfiguration as SshConfigurationRest, - SshPublicKey as SshPublicKeyRest, - LinuxPatchSettings as LinuxPatchSettingsRest, - LinuxVMGuestPatchAutomaticByPlatformSettings as LinuxVMGuestPatchAutomaticByPlatformSettingsRest, - VaultSecretGroup as VaultSecretGroupRest, - SubResource as SubResourceRest, - VaultCertificate as VaultCertificateRest, - VirtualMachineScaleSetStorageProfile as VirtualMachineScaleSetStorageProfileRest, - ImageReference as ImageReferenceRest, - VirtualMachineScaleSetOSDisk as VirtualMachineScaleSetOSDiskRest, - DiffDiskSettings as DiffDiskSettingsRest, - VirtualHardDisk as VirtualHardDiskRest, - VirtualMachineScaleSetManagedDiskParameters as VirtualMachineScaleSetManagedDiskParametersRest, - DiskEncryptionSetParameters as DiskEncryptionSetParametersRest, - VMDiskSecurityProfile as VMDiskSecurityProfileRest, - VirtualMachineScaleSetDataDisk as VirtualMachineScaleSetDataDiskRest, - VirtualMachineScaleSetNetworkProfile as VirtualMachineScaleSetNetworkProfileRest, - ApiEntityReference as ApiEntityReferenceRest, - VirtualMachineScaleSetNetworkConfiguration as VirtualMachineScaleSetNetworkConfigurationRest, - VirtualMachineScaleSetNetworkConfigurationProperties as VirtualMachineScaleSetNetworkConfigurationPropertiesRest, - VirtualMachineScaleSetNetworkConfigurationDnsSettings as VirtualMachineScaleSetNetworkConfigurationDnsSettingsRest, - VirtualMachineScaleSetIPConfiguration as VirtualMachineScaleSetIPConfigurationRest, - VirtualMachineScaleSetIPConfigurationProperties as VirtualMachineScaleSetIPConfigurationPropertiesRest, - VirtualMachineScaleSetPublicIPAddressConfiguration as VirtualMachineScaleSetPublicIPAddressConfigurationRest, - VirtualMachineScaleSetPublicIPAddressConfigurationProperties as VirtualMachineScaleSetPublicIPAddressConfigurationPropertiesRest, - VirtualMachineScaleSetPublicIPAddressConfigurationDnsSettings as VirtualMachineScaleSetPublicIPAddressConfigurationDnsSettingsRest, - VirtualMachineScaleSetIpTag as VirtualMachineScaleSetIpTagRest, - PublicIPAddressSku as PublicIPAddressSkuRest, - SecurityProfile as SecurityProfileRest, - UefiSettings as UefiSettingsRest, - EncryptionIdentity as EncryptionIdentityRest, - ProxyAgentSettings as ProxyAgentSettingsRest, - DiagnosticsProfile as DiagnosticsProfileRest, - BootDiagnostics as BootDiagnosticsRest, - VirtualMachineScaleSetExtensionProfile as VirtualMachineScaleSetExtensionProfileRest, - VirtualMachineScaleSetExtension as VirtualMachineScaleSetExtensionRest, - VirtualMachineScaleSetExtensionProperties as VirtualMachineScaleSetExtensionPropertiesRest, - KeyVaultSecretReference as KeyVaultSecretReferenceRest, - ScheduledEventsProfile as ScheduledEventsProfileRest, - TerminateNotificationProfile as TerminateNotificationProfileRest, - OSImageNotificationProfile as OSImageNotificationProfileRest, - CapacityReservationProfile as CapacityReservationProfileRest, - ApplicationProfile as ApplicationProfileRest, - VMGalleryApplication as VMGalleryApplicationRest, - VirtualMachineScaleSetHardwareProfile as VirtualMachineScaleSetHardwareProfileRest, - VMSizeProperties as VMSizePropertiesRest, - ServiceArtifactReference as ServiceArtifactReferenceRest, - SecurityPostureReference as SecurityPostureReferenceRest, - ManagedServiceIdentity as ManagedServiceIdentityRest, - Plan as PlanRest, - FleetUpdate as FleetUpdateRest, - ManagedServiceIdentityUpdate as ManagedServiceIdentityUpdateRest, - ResourcePlanUpdate as ResourcePlanUpdateRest, -} from "../rest/index.js"; - -/** Common fields that are returned in the response for all Azure Resource Manager resources */ -export interface Resource { - /** Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} */ - readonly id?: string; - /** The name of the resource */ - readonly name?: string; - /** The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" */ - readonly type?: string; - /** Azure Resource Manager metadata containing createdBy and modifiedBy information. */ - readonly systemData?: SystemData; -} - -export function resourceSerializer(item: Resource) { - return item as any; -} - -/** Metadata pertaining to creation and last modification of the resource. */ -export interface SystemData { - /** The identity that created the resource. */ - createdBy?: string; - /** The type of identity that created the resource. */ - createdByType?: CreatedByType; - /** The timestamp of resource creation (UTC). */ - createdAt?: Date; - /** The identity that last modified the resource. */ - lastModifiedBy?: string; - /** The type of identity that last modified the resource. */ - lastModifiedByType?: CreatedByType; - /** The timestamp of resource last modification (UTC) */ - lastModifiedAt?: Date; -} - -/** Known values of {@link CreatedByType} that the service accepts. */ -export enum KnownCreatedByType { - /** User */ - User = "User", - /** Application */ - Application = "Application", - /** ManagedIdentity */ - ManagedIdentity = "ManagedIdentity", - /** Key */ - Key = "Key", -} - -/** - * The kind of entity that created the resource. \ - * {@link KnownCreatedByType} can be used interchangeably with CreatedByType, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **User** \ - * **Application** \ - * **ManagedIdentity** \ - * **Key** - */ -export type CreatedByType = string; - -/** The resource model definition for an Azure Resource Manager tracked top level resource which has 'tags' and a 'location' */ -export interface TrackedResource extends Resource { - /** Resource tags. */ - tags?: Record; - /** The geo-location where the resource lives */ - location: string; -} - -export function trackedResourceSerializer(item: TrackedResource): TrackedResourceRest { - return { - tags: !item.tags ? item.tags : (serializeRecord(item.tags as any) as any), - location: item["location"], - }; -} - -/** An Compute Fleet resource */ -export interface Fleet extends TrackedResource { - /** The resource-specific properties for this resource. */ - properties?: FleetProperties; - /** Zones in which the Compute Fleet is available */ - zones?: string[]; - /** The managed service identities assigned to this resource. */ - identity?: ManagedServiceIdentity; - /** Details of the resource plan. */ - plan?: Plan; -} - -export function fleetSerializer(item: Fleet): FleetRest { - return { - tags: !item.tags ? item.tags : (serializeRecord(item.tags as any) as any), - location: item["location"], - properties: !item.properties ? item.properties : fleetPropertiesSerializer(item.properties), - zones: item["zones"], - identity: !item.identity ? item.identity : managedServiceIdentitySerializer(item.identity), - plan: !item.plan ? item.plan : planSerializer(item.plan), - }; -} - -/** Details of the Compute Fleet. */ -export interface FleetProperties { - /** The status of the last operation. */ - readonly provisioningState?: ProvisioningState; - /** Configuration Options for Spot instances in Compute Fleet. */ - spotPriorityProfile?: SpotPriorityProfile; - /** Configuration Options for Regular instances in Compute Fleet. */ - regularPriorityProfile?: RegularPriorityProfile; - /** List of VM sizes supported for Compute Fleet */ - vmSizesProfile: VmSizeProfile[]; - /** Compute Profile to use for running user's workloads. */ - computeProfile: ComputeProfile; - /** Specifies the time at which the Compute Fleet is created. */ - readonly timeCreated?: Date; - /** Specifies the ID which uniquely identifies a Compute Fleet. */ - readonly uniqueId?: string; -} - -export function fleetPropertiesSerializer(item: FleetProperties): FleetPropertiesRest { - return { - spotPriorityProfile: !item.spotPriorityProfile - ? item.spotPriorityProfile - : spotPriorityProfileSerializer(item.spotPriorityProfile), - regularPriorityProfile: !item.regularPriorityProfile - ? item.regularPriorityProfile - : regularPriorityProfileSerializer(item.regularPriorityProfile), - vmSizesProfile: item["vmSizesProfile"].map(vmSizeProfileSerializer), - computeProfile: computeProfileSerializer(item.computeProfile), - }; -} - -/** Known values of {@link ResourceProvisioningState} that the service accepts. */ -export enum KnownResourceProvisioningState { - /** Succeeded */ - Succeeded = "Succeeded", - /** Failed */ - Failed = "Failed", - /** Canceled */ - Canceled = "Canceled", -} - -/** - * The provisioning state of a resource type. \ - * {@link KnownResourceProvisioningState} can be used interchangeably with ResourceProvisioningState, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **Succeeded** \ - * **Failed** \ - * **Canceled** - */ -export type ResourceProvisioningState = string; - -/** Configuration Options for Spot instances in Compute Fleet. */ -export interface SpotPriorityProfile { - /** Total capacity to achieve. It is currently in terms of number of VMs. */ - capacity?: number; - /** Minimum capacity to achieve which cannot be updated. If we will not be able to "guarantee" minimum capacity, we will reject the request in the sync path itself. */ - minCapacity?: number; - /** Price per hour of each Spot VM will never exceed this. */ - maxPricePerVM?: number; - /** Eviction Policy to follow when evicting Spot VMs. */ - evictionPolicy?: EvictionPolicy; - /** Allocation strategy to follow when determining the VM sizes distribution for Spot VMs. */ - allocationStrategy?: SpotAllocationStrategy; - /** - * Flag to enable/disable continuous goal seeking for the desired capacity and restoration of evicted Spot VMs. - * If maintain is enabled, AzureFleetRP will use all VM sizes in vmSizesProfile to create new VMs (if VMs are evicted deleted) - * or update existing VMs with new VM sizes (if VMs are evicted deallocated or failed to allocate due to capacity constraint) in order to achieve the desired capacity. - * Maintain is enabled by default. - */ - maintain?: boolean; -} - -export function spotPriorityProfileSerializer(item: SpotPriorityProfile): SpotPriorityProfileRest { - return { - capacity: item["capacity"], - minCapacity: item["minCapacity"], - maxPricePerVM: item["maxPricePerVM"], - evictionPolicy: item["evictionPolicy"], - allocationStrategy: item["allocationStrategy"], - maintain: item["maintain"], - }; -} - -/** Known values of {@link EvictionPolicy} that the service accepts. */ -export enum KnownEvictionPolicy { - /** Delete */ - Delete = "Delete", - /** Deallocate */ - Deallocate = "Deallocate", -} - -/** - * Different kind of eviction policies \ - * {@link KnownEvictionPolicy} can be used interchangeably with EvictionPolicy, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **Delete** \ - * **Deallocate** - */ -export type EvictionPolicy = string; - -/** Known values of {@link SpotAllocationStrategy} that the service accepts. */ -export enum KnownSpotAllocationStrategy { - /** PriceCapacityOptimized */ - PriceCapacityOptimized = "PriceCapacityOptimized", - /** LowestPrice */ - LowestPrice = "LowestPrice", - /** CapacityOptimized */ - CapacityOptimized = "CapacityOptimized", -} - -/** - * Spot allocation strategy types for Compute Fleet \ - * {@link KnownSpotAllocationStrategy} can be used interchangeably with SpotAllocationStrategy, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **PriceCapacityOptimized** \ - * **LowestPrice** \ - * **CapacityOptimized** - */ -export type SpotAllocationStrategy = string; - -/** Configuration Options for Regular instances in Compute Fleet. */ -export interface RegularPriorityProfile { - /** Total capacity to achieve. It is currently in terms of number of VMs. */ - capacity?: number; - /** Minimum capacity to achieve which cannot be updated. If we will not be able to "guarantee" minimum capacity, we will reject the request in the sync path itself. */ - minCapacity?: number; - /** Allocation strategy to follow when determining the VM sizes distribution for Regular VMs. */ - allocationStrategy?: RegularPriorityAllocationStrategy; -} - -export function regularPriorityProfileSerializer( - item: RegularPriorityProfile, -): RegularPriorityProfileRest { - return { - capacity: item["capacity"], - minCapacity: item["minCapacity"], - allocationStrategy: item["allocationStrategy"], - }; -} - -/** Known values of {@link RegularPriorityAllocationStrategy} that the service accepts. */ -export enum KnownRegularPriorityAllocationStrategy { - /** LowestPrice */ - LowestPrice = "LowestPrice", - /** Prioritized */ - Prioritized = "Prioritized", -} - -/** - * Regular VM Allocation strategy types for Compute Fleet \ - * {@link KnownRegularPriorityAllocationStrategy} can be used interchangeably with RegularPriorityAllocationStrategy, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **LowestPrice** \ - * **Prioritized** - */ -export type RegularPriorityAllocationStrategy = string; - -/** 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') */ - name: string; - /** - * The rank of the VM size. This is used with 'RegularPriorityAllocationStrategy.Prioritized' - * The lower the number, the higher the priority. Starting with 0. - */ - rank?: number; -} - -export function vmSizeProfileSerializer(item: VmSizeProfile): VmSizeProfileRest { - return { - name: item["name"], - rank: item["rank"], - }; -} - -/** 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" */ - baseVirtualMachineProfile: BaseVirtualMachineProfile; - /** - * Specifies the Microsoft.Compute API version to use when creating underlying Virtual Machine scale sets and Virtual Machines. - * The default value will be the latest supported computeApiVersion by Compute Fleet. - */ - computeApiVersion?: string; - /** - * Specifies the number of fault domains to use when creating the underlying VMSS. - * A fault domain is a logical group of hardware within an Azure datacenter. - * VMs in the same fault domain share a common power source and network switch. - * If not specified, defaults to 1, which represents "Max Spreading" (using as many fault domains as possible). - * This property cannot be updated. - */ - platformFaultDomainCount?: number; -} - -export function computeProfileSerializer(item: ComputeProfile): ComputeProfileRest { - return { - baseVirtualMachineProfile: baseVirtualMachineProfileSerializer(item.baseVirtualMachineProfile), - computeApiVersion: item["computeApiVersion"], - platformFaultDomainCount: item["platformFaultDomainCount"], - }; -} - -/** Describes the base virtual machine profile for fleet */ -export interface BaseVirtualMachineProfile { - /** - * Specifies the operating system settings for the virtual machines in the scale - * set. - */ - osProfile?: VirtualMachineScaleSetOSProfile; - /** Specifies the storage settings for the virtual machine disks. */ - storageProfile?: VirtualMachineScaleSetStorageProfile; - /** - * Specifies properties of the network interfaces of the virtual machines in the - * scale set. - */ - networkProfile?: VirtualMachineScaleSetNetworkProfile; - /** - * Specifies the Security related profile settings for the virtual machines in the - * scale set. - */ - securityProfile?: SecurityProfile; - /** Specifies the boot diagnostic settings state. */ - diagnosticsProfile?: DiagnosticsProfile; - /** - * Specifies a collection of settings for extensions installed on virtual machines - * in the scale set. - */ - extensionProfile?: VirtualMachineScaleSetExtensionProfile; - /** - * Specifies that the image or disk that is being used was licensed on-premises. - *

Possible values for Windows Server operating system are:

- * Windows_Client

Windows_Server

Possible values for Linux - * 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) - *

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

Minimum api-version: 2015-06-15 - */ - licenseType?: string; - /** Specifies Scheduled Event related configurations. */ - scheduledEventsProfile?: ScheduledEventsProfile; - /** - * UserData for the virtual machines in the scale set, which must be base-64 - * encoded. Customer should not pass any secrets in here. Minimum api-version: - * 2021-03-01. - */ - userData?: string; - /** - * Specifies the capacity reservation related details of a scale set. Minimum - * api-version: 2021-04-01. - */ - capacityReservation?: CapacityReservationProfile; - /** Specifies the gallery applications that should be made available to the VM/VMSS */ - applicationProfile?: ApplicationProfile; - /** - * Specifies the hardware profile related details of a scale set. Minimum - * api-version: 2021-11-01. - */ - hardwareProfile?: VirtualMachineScaleSetHardwareProfile; - /** - * Specifies the service artifact reference id used to set same image version for - * all virtual machines in the scale set when using 'latest' image version. - * Minimum api-version: 2022-11-01 - */ - serviceArtifactReference?: ServiceArtifactReference; - /** - * Specifies the security posture to be used for all virtual machines in the scale - * set. Minimum api-version: 2023-03-01 - */ - securityPostureReference?: SecurityPostureReference; - /** - * Specifies the time in which this VM profile for the Virtual Machine Scale Set - * was created. Minimum API version for this property is 2023-09-01. This value - * will be added to VMSS Flex VM tags when creating/updating the VMSS VM Profile - * with minimum api-version 2023-09-01. Examples: "2024-07-01T00:00:01.1234567+00:00" - */ - readonly timeCreated?: Date; -} - -export function baseVirtualMachineProfileSerializer( - item: BaseVirtualMachineProfile, -): BaseVirtualMachineProfileRest { - return { - osProfile: !item.osProfile - ? item.osProfile - : virtualMachineScaleSetOSProfileSerializer(item.osProfile), - storageProfile: !item.storageProfile - ? item.storageProfile - : virtualMachineScaleSetStorageProfileSerializer(item.storageProfile), - networkProfile: !item.networkProfile - ? item.networkProfile - : virtualMachineScaleSetNetworkProfileSerializer(item.networkProfile), - securityProfile: !item.securityProfile - ? item.securityProfile - : securityProfileSerializer(item.securityProfile), - diagnosticsProfile: !item.diagnosticsProfile - ? item.diagnosticsProfile - : diagnosticsProfileSerializer(item.diagnosticsProfile), - extensionProfile: !item.extensionProfile - ? item.extensionProfile - : virtualMachineScaleSetExtensionProfileSerializer(item.extensionProfile), - licenseType: item["licenseType"], - scheduledEventsProfile: !item.scheduledEventsProfile - ? item.scheduledEventsProfile - : scheduledEventsProfileSerializer(item.scheduledEventsProfile), - userData: item["userData"], - capacityReservation: !item.capacityReservation - ? item.capacityReservation - : capacityReservationProfileSerializer(item.capacityReservation), - applicationProfile: !item.applicationProfile - ? item.applicationProfile - : applicationProfileSerializer(item.applicationProfile), - hardwareProfile: !item.hardwareProfile - ? item.hardwareProfile - : virtualMachineScaleSetHardwareProfileSerializer(item.hardwareProfile), - serviceArtifactReference: !item.serviceArtifactReference - ? item.serviceArtifactReference - : serviceArtifactReferenceSerializer(item.serviceArtifactReference), - securityPostureReference: !item.securityPostureReference - ? item.securityPostureReference - : securityPostureReferenceSerializer(item.securityPostureReference), - }; -} - -/** Describes a virtual machine scale set OS profile. */ -export interface VirtualMachineScaleSetOSProfile { - /** - * Specifies the computer name prefix for all of the virtual machines in the scale - * set. Computer name prefixes must be 1 to 15 characters long. - */ - computerNamePrefix?: string; - /** - * Specifies the name of the administrator account.

**Windows-only - * restriction:** Cannot end in "."

**Disallowed values:** - * "administrator", "admin", "user", "user1", "test", "user2", "test1", "user3", - * "admin1", "1", "123", "a", "actuser", "adm", "admin2", "aspnet", "backup", - * "console", "david", "guest", "john", "owner", "root", "server", "sql", - * "support", "support_388945a0", "sys", "test2", "test3", "user4", "user5". - *

**Minimum-length (Linux):** 1 character

**Max-length - * (Linux):** 64 characters

**Max-length (Windows):** 20 characters - */ - adminUsername?: string; - /** - * Specifies the password of the administrator account.

**Minimum-length - * (Windows):** 8 characters

**Minimum-length (Linux):** 6 characters - *

**Max-length (Windows):** 123 characters

**Max-length - * (Linux):** 72 characters

**Complexity requirements:** 3 out of 4 - * conditions below need to be fulfilled
Has lower characters
Has upper - * characters
Has a digit
Has a special character (Regex match [\W_]) - *

**Disallowed values:** "abc@123", "P@$$w0rd", "P@ssw0rd", - * "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) - *

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) - */ - adminPassword?: string; - /** - * Specifies a base-64 encoded string of custom data. The base-64 encoded string - * 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) - */ - customData?: string; - /** Specifies Windows operating system settings on the virtual machine. */ - windowsConfiguration?: WindowsConfiguration; - /** - * 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). - */ - 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) - * or the [Azure Key Vault virtual machine extension for - * Windows](https://docs.microsoft.com/azure/virtual-machines/extensions/key-vault-windows). - */ - secrets?: VaultSecretGroup[]; - /** - * Specifies whether extension operations should be allowed on the virtual machine - * scale set. This may only be set to False when no extensions are present on the - * virtual machine scale set. - */ - allowExtensionOperations?: boolean; - /** Optional property which must either be set to True or omitted. */ - requireGuestProvisionSignal?: boolean; -} - -export function virtualMachineScaleSetOSProfileSerializer( - item: VirtualMachineScaleSetOSProfile, -): VirtualMachineScaleSetOSProfileRest { - return { - computerNamePrefix: item["computerNamePrefix"], - adminUsername: item["adminUsername"], - adminPassword: item["adminPassword"], - customData: item["customData"], - windowsConfiguration: !item.windowsConfiguration - ? item.windowsConfiguration - : windowsConfigurationSerializer(item.windowsConfiguration), - linuxConfiguration: !item.linuxConfiguration - ? item.linuxConfiguration - : linuxConfigurationSerializer(item.linuxConfiguration), - secrets: - item["secrets"] === undefined - ? item["secrets"] - : item["secrets"].map(vaultSecretGroupSerializer), - allowExtensionOperations: item["allowExtensionOperations"], - requireGuestProvisionSignal: item["requireGuestProvisionSignal"], - }; -} - -/** Specifies Windows operating system settings on the virtual machine. */ -export interface WindowsConfiguration { - /** - * Indicates whether virtual machine agent should be provisioned on the virtual - * machine. When this property is not specified in the request body, it is set to - * true by default. This will ensure that VM Agent is installed on the VM so that - * extensions can be added to the VM later. - */ - provisionVMAgent?: boolean; - /** - * Indicates whether Automatic Updates is enabled for the Windows virtual machine. - * Default value is true. For virtual machine scale sets, this property can be - * updated and updates will take effect on OS reprovisioning. - */ - enableAutomaticUpdates?: boolean; - /** - * 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) - * value from time zones returned by - * [TimeZoneInfo.GetSystemTimeZones](https://docs.microsoft.com/dotnet/api/system.timezoneinfo.getsystemtimezones). - */ - timeZone?: string; - /** - * Specifies additional base-64 encoded XML formatted information that can be - * included in the Unattend.xml file, which is used by Windows Setup. - */ - additionalUnattendContent?: AdditionalUnattendContent[]; - /** [Preview Feature] Specifies settings related to VM Guest Patching on Windows. */ - patchSettings?: PatchSettings; - /** - * Specifies the Windows Remote Management listeners. This enables remote Windows - * PowerShell. - */ - winRM?: WinRMConfiguration; - /** - * Indicates whether VMAgent Platform Updates is enabled for the Windows virtual - * machine. Default value is false. - */ - enableVMAgentPlatformUpdates?: boolean; -} - -export function windowsConfigurationSerializer( - item: WindowsConfiguration, -): WindowsConfigurationRest { - return { - provisionVMAgent: item["provisionVMAgent"], - enableAutomaticUpdates: item["enableAutomaticUpdates"], - timeZone: item["timeZone"], - additionalUnattendContent: - item["additionalUnattendContent"] === undefined - ? item["additionalUnattendContent"] - : item["additionalUnattendContent"].map(additionalUnattendContentSerializer), - patchSettings: !item.patchSettings - ? item.patchSettings - : patchSettingsSerializer(item.patchSettings), - winRM: !item.winRM ? item.winRM : winRMConfigurationSerializer(item.winRM), - enableVMAgentPlatformUpdates: item["enableVMAgentPlatformUpdates"], - }; -} - -/** - * Specifies additional XML formatted information that can be included in the - * Unattend.xml file, which is used by Windows Setup. Contents are defined by - * setting name, component name, and the pass in which the content is applied. - */ -export interface AdditionalUnattendContent { - /** The pass name. Currently, the only allowable value is OobeSystem. */ - passName?: "OobeSystem"; - /** - * The component name. Currently, the only allowable value is - * Microsoft-Windows-Shell-Setup. - */ - componentName?: "Microsoft-Windows-Shell-Setup"; - /** - * Specifies the name of the setting to which the content applies. Possible values - * are: FirstLogonCommands and AutoLogon. - */ - settingName?: SettingNames; - /** - * Specifies the XML formatted content that is added to the unattend.xml file for - * the specified path and component. The XML must be less than 4KB and must - * include the root element for the setting or feature that is being inserted. - */ - content?: string; -} - -export function additionalUnattendContentSerializer( - item: AdditionalUnattendContent, -): AdditionalUnattendContentRest { - return { - passName: item["passName"], - componentName: item["componentName"], - settingName: item["settingName"], - content: item["content"], - }; -} - -/** Known values of {@link SettingNames} that the service accepts. */ -export enum KnownSettingNames { - /** AutoLogon */ - AutoLogon = "AutoLogon", - /** FirstLogonCommands */ - FirstLogonCommands = "FirstLogonCommands", -} - -/** - * Specifies the name of the setting to which the content applies. Possible values - * are: FirstLogonCommands and AutoLogon. \ - * {@link KnownSettingNames} can be used interchangeably with SettingNames, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **AutoLogon** \ - * **FirstLogonCommands** - */ -export type SettingNames = string; - -/** Specifies settings related to VM Guest Patching on Windows. */ -export interface PatchSettings { - /** - * Specifies the mode of VM Guest Patching to IaaS virtual machine or virtual - * machines associated to virtual machine scale set with OrchestrationMode as - * Flexible.

Possible values are:

**Manual** - You - * control the application of patches to a virtual machine. You do this by - * applying patches manually inside the VM. In this mode, automatic updates are - * disabled; the property WindowsConfiguration.enableAutomaticUpdates must be - * false

**AutomaticByOS** - The virtual machine will automatically be - * updated by the OS. The property WindowsConfiguration.enableAutomaticUpdates - * must be true.

**AutomaticByPlatform** - the virtual machine will - * automatically updated by the platform. The properties provisionVMAgent and - * WindowsConfiguration.enableAutomaticUpdates must be true - */ - patchMode?: WindowsVMGuestPatchMode; - /** - * Enables customers to patch their Azure VMs without requiring a reboot. For - * enableHotpatching, the 'provisionVMAgent' must be set to true and 'patchMode' - * must be set to 'AutomaticByPlatform'. - */ - enableHotpatching?: boolean; - /** - * Specifies the mode of VM Guest patch assessment for the IaaS virtual - * machine.

Possible values are:

**ImageDefault** - You - * control the timing of patch assessments on a virtual machine.

- * **AutomaticByPlatform** - The platform will trigger periodic patch assessments. - * The property provisionVMAgent must be true. - */ - assessmentMode?: WindowsPatchAssessmentMode; - /** - * Specifies additional settings for patch mode AutomaticByPlatform in VM Guest - * Patching on Windows. - */ - automaticByPlatformSettings?: WindowsVMGuestPatchAutomaticByPlatformSettings; -} - -export function patchSettingsSerializer(item: PatchSettings): PatchSettingsRest { - return { - patchMode: item["patchMode"], - enableHotpatching: item["enableHotpatching"], - assessmentMode: item["assessmentMode"], - automaticByPlatformSettings: !item.automaticByPlatformSettings - ? item.automaticByPlatformSettings - : windowsVMGuestPatchAutomaticByPlatformSettingsSerializer(item.automaticByPlatformSettings), - }; -} - -/** Known values of {@link WindowsVMGuestPatchMode} that the service accepts. */ -export enum KnownWindowsVMGuestPatchMode { - /** Manual */ - Manual = "Manual", - /** AutomaticByOS */ - AutomaticByOS = "AutomaticByOS", - /** AutomaticByPlatform */ - AutomaticByPlatform = "AutomaticByPlatform", -} - -/** - * Specifies the mode of VM Guest Patching to IaaS virtual machine or virtual - * machines associated to virtual machine scale set with OrchestrationMode as - * Flexible. \ - * {@link KnownWindowsVMGuestPatchMode} can be used interchangeably with WindowsVMGuestPatchMode, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **Manual** \ - * **AutomaticByOS** \ - * **AutomaticByPlatform** - */ -export type WindowsVMGuestPatchMode = string; - -/** Known values of {@link WindowsPatchAssessmentMode} that the service accepts. */ -export enum KnownWindowsPatchAssessmentMode { - /** ImageDefault */ - ImageDefault = "ImageDefault", - /** AutomaticByPlatform */ - AutomaticByPlatform = "AutomaticByPlatform", -} - -/** - * Specifies the mode of VM Guest patch assessment for the IaaS virtual machine. \ - * {@link KnownWindowsPatchAssessmentMode} can be used interchangeably with WindowsPatchAssessmentMode, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **ImageDefault** \ - * **AutomaticByPlatform** - */ -export type WindowsPatchAssessmentMode = string; - -/** - * Specifies additional settings to be applied when patch mode AutomaticByPlatform - * is selected in Windows patch settings. - */ -export interface WindowsVMGuestPatchAutomaticByPlatformSettings { - /** - * Specifies the reboot setting for all AutomaticByPlatform patch installation - * operations. - */ - rebootSetting?: WindowsVMGuestPatchAutomaticByPlatformRebootSetting; - /** Enables customer to schedule patching without accidental upgrades */ - bypassPlatformSafetyChecksOnUserSchedule?: boolean; -} - -export function windowsVMGuestPatchAutomaticByPlatformSettingsSerializer( - item: WindowsVMGuestPatchAutomaticByPlatformSettings, -): WindowsVMGuestPatchAutomaticByPlatformSettingsRest { - return { - rebootSetting: item["rebootSetting"], - bypassPlatformSafetyChecksOnUserSchedule: item["bypassPlatformSafetyChecksOnUserSchedule"], - }; -} - -/** Known values of {@link WindowsVMGuestPatchAutomaticByPlatformRebootSetting} that the service accepts. */ -export enum KnownWindowsVMGuestPatchAutomaticByPlatformRebootSetting { - /** Unknown */ - Unknown = "Unknown", - /** IfRequired */ - IfRequired = "IfRequired", - /** Never */ - Never = "Never", - /** Always */ - Always = "Always", -} - -/** - * Specifies the reboot setting for all AutomaticByPlatform patch installation operations. \ - * {@link KnownWindowsVMGuestPatchAutomaticByPlatformRebootSetting} can be used interchangeably with WindowsVMGuestPatchAutomaticByPlatformRebootSetting, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **Unknown** \ - * **IfRequired** \ - * **Never** \ - * **Always** - */ -export type WindowsVMGuestPatchAutomaticByPlatformRebootSetting = string; - -/** Describes Windows Remote Management configuration of the VM */ -export interface WinRMConfiguration { - /** The list of Windows Remote Management listeners */ - listeners?: WinRMListener[]; -} - -export function winRMConfigurationSerializer(item: WinRMConfiguration): WinRMConfigurationRest { - return { - listeners: - item["listeners"] === undefined - ? item["listeners"] - : item["listeners"].map(winRMListenerSerializer), - }; -} - -/** Describes Protocol and thumbprint of Windows Remote Management listener */ -export interface WinRMListener { - /** - * Specifies the protocol of WinRM listener. Possible values are: **http,** - * **https.** - */ - protocol?: ProtocolTypes; - /** - * 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). - * 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) - * or the [Azure Key Vault virtual machine extension for - * Windows](https://docs.microsoft.com/azure/virtual-machines/extensions/key-vault-windows). - */ - certificateUrl?: string; -} - -export function winRMListenerSerializer(item: WinRMListener): WinRMListenerRest { - return { - protocol: item["protocol"], - certificateUrl: item["certificateUrl"], - }; -} - -/** Known values of {@link ProtocolTypes} that the service accepts. */ -export enum KnownProtocolTypes { - /** Http */ - Http = "Http", - /** Https */ - Https = "Https", -} - -/** - * Specifies the protocol of WinRM listener. Possible values are: **http,** - * **https.** \ - * {@link KnownProtocolTypes} can be used interchangeably with ProtocolTypes, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **Http** \ - * **Https** - */ -export type ProtocolTypes = string; - -/** - * 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). - */ -export interface LinuxConfiguration { - /** Specifies whether password authentication should be disabled. */ - disablePasswordAuthentication?: boolean; - /** Specifies the ssh key configuration for a Linux OS. */ - ssh?: SshConfiguration; - /** - * Indicates whether virtual machine agent should be provisioned on the virtual - * machine. When this property is not specified in the request body, default - * behavior is to set it to true. This will ensure that VM Agent is installed on - * the VM so that extensions can be added to the VM later. - */ - provisionVMAgent?: boolean; - /** [Preview Feature] Specifies settings related to VM Guest Patching on Linux. */ - patchSettings?: LinuxPatchSettings; - /** - * Indicates whether VMAgent Platform Updates is enabled for the Linux virtual - * machine. Default value is false. - */ - enableVMAgentPlatformUpdates?: boolean; -} - -export function linuxConfigurationSerializer(item: LinuxConfiguration): LinuxConfigurationRest { - return { - disablePasswordAuthentication: item["disablePasswordAuthentication"], - ssh: !item.ssh ? item.ssh : sshConfigurationSerializer(item.ssh), - provisionVMAgent: item["provisionVMAgent"], - patchSettings: !item.patchSettings - ? item.patchSettings - : linuxPatchSettingsSerializer(item.patchSettings), - enableVMAgentPlatformUpdates: item["enableVMAgentPlatformUpdates"], - }; -} - -/** SSH configuration for Linux based VMs running on Azure */ -export interface SshConfiguration { - /** The list of SSH public keys used to authenticate with linux based VMs. */ - publicKeys?: SshPublicKey[]; -} - -export function sshConfigurationSerializer(item: SshConfiguration): SshConfigurationRest { - return { - publicKeys: - item["publicKeys"] === undefined - ? item["publicKeys"] - : item["publicKeys"].map(sshPublicKeySerializer), - }; -} - -/** - * Contains information about SSH certificate public key and the path on the Linux - * VM where the public key is placed. - */ -export interface SshPublicKey { - /** - * Specifies the full path on the created VM where ssh public key is stored. If - * the file already exists, the specified key is appended to the file. Example: - * /home/user/.ssh/authorized_keys - */ - path?: string; - /** - * 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). - */ - keyData?: string; -} - -export function sshPublicKeySerializer(item: SshPublicKey): SshPublicKeyRest { - return { - path: item["path"], - keyData: item["keyData"], - }; -} - -/** Specifies settings related to VM Guest Patching on Linux. */ -export interface LinuxPatchSettings { - /** - * Specifies the mode of VM Guest Patching to IaaS virtual machine or virtual - * machines associated to virtual machine scale set with OrchestrationMode as - * Flexible.

Possible values are:

**ImageDefault** - The - * virtual machine's default patching configuration is used.

- * **AutomaticByPlatform** - The virtual machine will be automatically updated by - * the platform. The property provisionVMAgent must be true - */ - patchMode?: LinuxVMGuestPatchMode; - /** - * Specifies the mode of VM Guest Patch Assessment for the IaaS virtual - * machine.

Possible values are:

**ImageDefault** - You - * control the timing of patch assessments on a virtual machine.

- * **AutomaticByPlatform** - The platform will trigger periodic patch assessments. - * The property provisionVMAgent must be true. - */ - assessmentMode?: LinuxPatchAssessmentMode; - /** - * Specifies additional settings for patch mode AutomaticByPlatform in VM Guest - * Patching on Linux. - */ - automaticByPlatformSettings?: LinuxVMGuestPatchAutomaticByPlatformSettings; -} - -export function linuxPatchSettingsSerializer(item: LinuxPatchSettings): LinuxPatchSettingsRest { - return { - patchMode: item["patchMode"], - assessmentMode: item["assessmentMode"], - automaticByPlatformSettings: !item.automaticByPlatformSettings - ? item.automaticByPlatformSettings - : linuxVMGuestPatchAutomaticByPlatformSettingsSerializer(item.automaticByPlatformSettings), - }; -} - -/** Known values of {@link LinuxVMGuestPatchMode} that the service accepts. */ -export enum KnownLinuxVMGuestPatchMode { - /** ImageDefault */ - ImageDefault = "ImageDefault", - /** AutomaticByPlatform */ - AutomaticByPlatform = "AutomaticByPlatform", -} - -/** - * Specifies the mode of VM Guest Patching to IaaS virtual machine or virtual - * machines associated to virtual machine scale set with OrchestrationMode as - * Flexible. \ - * {@link KnownLinuxVMGuestPatchMode} can be used interchangeably with LinuxVMGuestPatchMode, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **ImageDefault** \ - * **AutomaticByPlatform** - */ -export type LinuxVMGuestPatchMode = string; - -/** Known values of {@link LinuxPatchAssessmentMode} that the service accepts. */ -export enum KnownLinuxPatchAssessmentMode { - /** ImageDefault */ - ImageDefault = "ImageDefault", - /** AutomaticByPlatform */ - AutomaticByPlatform = "AutomaticByPlatform", -} - -/** - * Specifies the mode of VM Guest Patch Assessment for the IaaS virtual - * machine.

Possible values are:

**ImageDefault** - You - * control the timing of patch assessments on a virtual machine.

- * **AutomaticByPlatform** - The platform will trigger periodic patch assessments. - * The property provisionVMAgent must be true. \ - * {@link KnownLinuxPatchAssessmentMode} can be used interchangeably with LinuxPatchAssessmentMode, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **ImageDefault** \ - * **AutomaticByPlatform** - */ -export type LinuxPatchAssessmentMode = string; - -/** - * Specifies additional settings to be applied when patch mode AutomaticByPlatform - * is selected in Linux patch settings. - */ -export interface LinuxVMGuestPatchAutomaticByPlatformSettings { - /** - * Specifies the reboot setting for all AutomaticByPlatform patch installation - * operations. - */ - rebootSetting?: LinuxVMGuestPatchAutomaticByPlatformRebootSetting; - /** Enables customer to schedule patching without accidental upgrades */ - bypassPlatformSafetyChecksOnUserSchedule?: boolean; -} - -export function linuxVMGuestPatchAutomaticByPlatformSettingsSerializer( - item: LinuxVMGuestPatchAutomaticByPlatformSettings, -): LinuxVMGuestPatchAutomaticByPlatformSettingsRest { - return { - rebootSetting: item["rebootSetting"], - bypassPlatformSafetyChecksOnUserSchedule: item["bypassPlatformSafetyChecksOnUserSchedule"], - }; -} - -/** Known values of {@link LinuxVMGuestPatchAutomaticByPlatformRebootSetting} that the service accepts. */ -export enum KnownLinuxVMGuestPatchAutomaticByPlatformRebootSetting { - /** Unknown */ - Unknown = "Unknown", - /** IfRequired */ - IfRequired = "IfRequired", - /** Never */ - Never = "Never", - /** Always */ - Always = "Always", -} - -/** - * Specifies the reboot setting for all AutomaticByPlatform patch installation - * operations. \ - * {@link KnownLinuxVMGuestPatchAutomaticByPlatformRebootSetting} can be used interchangeably with LinuxVMGuestPatchAutomaticByPlatformRebootSetting, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **Unknown** \ - * **IfRequired** \ - * **Never** \ - * **Always** - */ -export type LinuxVMGuestPatchAutomaticByPlatformRebootSetting = string; - -/** Describes a set of certificates which are all in the same Key Vault. */ -export interface VaultSecretGroup { - /** - * The relative URL of the Key Vault containing all of the certificates in - * VaultCertificates. - */ - sourceVault?: SubResource; - /** The list of key vault references in SourceVault which contain certificates. */ - vaultCertificates?: VaultCertificate[]; -} - -export function vaultSecretGroupSerializer(item: VaultSecretGroup): VaultSecretGroupRest { - return { - sourceVault: !item.sourceVault ? item.sourceVault : subResourceSerializer(item.sourceVault), - vaultCertificates: - item["vaultCertificates"] === undefined - ? item["vaultCertificates"] - : item["vaultCertificates"].map(vaultCertificateSerializer), - }; -} - -/** Describes SubResource */ -export interface SubResource { - /** Resource Id */ - id?: string; -} - -export function subResourceSerializer(item: SubResource): SubResourceRest { - return { - id: item["id"], - }; -} - -/** - * Describes a single certificate reference in a Key Vault, and where the - * certificate should reside on the VM. - */ -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). - * 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) - * or the [Azure Key Vault virtual machine extension for - * Windows](https://docs.microsoft.com/azure/virtual-machines/extensions/key-vault-windows). - */ - certificateUrl?: string; - /** - * For Windows VMs, specifies the certificate store on the Virtual Machine to - * which the certificate should be added. The specified certificate store is - * implicitly in the LocalMachine account. For Linux VMs, the certificate file is - * placed under the /var/lib/waagent directory, with the file name - * <UppercaseThumbprint>.crt for the X509 certificate file and - * <UppercaseThumbprint>.prv for private key. Both of these files are .pem - * formatted. - */ - certificateStore?: string; -} - -export function vaultCertificateSerializer(item: VaultCertificate): VaultCertificateRest { - return { - certificateUrl: item["certificateUrl"], - certificateStore: item["certificateStore"], - }; -} - -/** Describes a virtual machine scale set storage profile. */ -export interface VirtualMachineScaleSetStorageProfile { - /** - * Specifies information about the image to use. You can specify information about - * platform images, marketplace images, or virtual machine images. This element is - * required when you want to use a platform image, marketplace image, or virtual - * machine image, but is not used in other creation operations. - */ - imageReference?: ImageReference; - /** - * 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). - */ - 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). - */ - dataDisks?: VirtualMachineScaleSetDataDisk[]; - /** Specifies the disk controller type configured for the virtual machines in the scale set. Minimum api-version: 2022-08-01 */ - diskControllerType?: DiskControllerTypes; -} - -export function virtualMachineScaleSetStorageProfileSerializer( - item: VirtualMachineScaleSetStorageProfile, -): VirtualMachineScaleSetStorageProfileRest { - return { - imageReference: !item.imageReference - ? item.imageReference - : imageReferenceSerializer(item.imageReference), - osDisk: !item.osDisk ? item.osDisk : virtualMachineScaleSetOSDiskSerializer(item.osDisk), - dataDisks: - item["dataDisks"] === undefined - ? item["dataDisks"] - : item["dataDisks"].map(virtualMachineScaleSetDataDiskSerializer), - diskControllerType: item["diskControllerType"], - }; -} - -/** - * Specifies information about the image to use. You can specify information about - * platform images, marketplace images, or virtual machine images. This element is - * required when you want to use a platform image, marketplace image, or virtual - * machine image, but is not used in other creation operations. NOTE: Image - * reference publisher and offer can only be set when you create the scale set. - */ -export interface ImageReference { - /** Resource Id */ - id?: string; - /** The image publisher. */ - publisher?: string; - /** - * Specifies the offer of the platform image or marketplace image used to create - * the virtual machine. - */ - offer?: string; - /** The image SKU. */ - sku?: string; - /** - * Specifies the version of the platform image or marketplace image used to create - * the virtual machine. The allowed formats are Major.Minor.Build or 'latest'. - * Major, Minor, and Build are decimal numbers. Specify 'latest' to use the latest - * version of an image available at deploy time. Even if you use 'latest', the VM - * image will not automatically update after deploy time even if a new version - * becomes available. Please do not use field 'version' for gallery image - * deployment, gallery image should always use 'id' field for deployment, to use 'latest' - * version of gallery image, just set - * '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/galleries/{galleryName}/images/{imageName}' - * in the 'id' field without version input. - */ - version?: string; - /** - * Specifies in decimal numbers, the version of platform image or marketplace - * image used to create the virtual machine. This readonly field differs from 'version', - * only if the value specified in 'version' field is 'latest'. - */ - readonly exactVersion?: string; - /** - * Specified the shared gallery image unique id for vm deployment. This can be - * fetched from shared gallery image GET call. - */ - sharedGalleryImageId?: string; - /** - * Specified the community gallery image unique id for vm deployment. This can be - * fetched from community gallery image GET call. - */ - communityGalleryImageId?: string; -} - -export function imageReferenceSerializer(item: ImageReference): ImageReferenceRest { - return { - id: item["id"], - publisher: item["publisher"], - offer: item["offer"], - sku: item["sku"], - version: item["version"], - sharedGalleryImageId: item["sharedGalleryImageId"], - communityGalleryImageId: item["communityGalleryImageId"], - }; -} - -/** Describes a virtual machine scale set operating system disk. */ -export interface VirtualMachineScaleSetOSDisk { - /** The disk name. */ - name?: string; - /** - * Specifies the caching requirements. Possible values are: **None,** - * **ReadOnly,** **ReadWrite.** The default values are: **None for Standard - * storage. ReadOnly for Premium storage.** - */ - caching?: CachingTypes; - /** Specifies whether writeAccelerator should be enabled or disabled on the disk. */ - writeAcceleratorEnabled?: boolean; - /** - * Specifies how the virtual machines in the scale set should be created. The only - * allowed value is: **FromImage.** This value is used when you are using an image - * to create the virtual machine. If you are using a platform image, you also use - * the imageReference element described above. If you are using a marketplace - * image, you also use the plan element previously described. - */ - createOption: DiskCreateOptionTypes; - /** - * Specifies the ephemeral disk Settings for the operating system disk used by the - * virtual machine scale set. - */ - diffDiskSettings?: DiffDiskSettings; - /** - * Specifies the size of an empty data disk in gigabytes. This element can be used - * to overwrite the size of the disk in a virtual machine image. The property 'diskSizeGB' - * is the number of bytes x 1024^3 for the disk and the value cannot - * be larger than 1023. - */ - diskSizeGB?: number; - /** - * This property allows you to specify the type of the OS that is included in the - * disk if creating a VM from user-image or a specialized VHD. Possible values - * are: **Windows,** **Linux.** - */ - osType?: OperatingSystemTypes; - /** Specifies information about the unmanaged user image to base the scale set on. */ - image?: VirtualHardDisk; - /** - * Specifies the container urls that are used to store operating system disks for - * the scale set. - */ - vhdContainers?: string[]; - /** The managed disk parameters. */ - managedDisk?: VirtualMachineScaleSetManagedDiskParameters; - /** - * Specifies whether OS Disk should be deleted or detached upon VMSS Flex deletion - * (This feature is available for VMSS with Flexible OrchestrationMode only). - *

Possible values:

**Delete** If this value is used, the OS - * disk is deleted when VMSS Flex VM is deleted.

**Detach** If this value - * is used, the OS disk is retained after VMSS Flex VM is deleted.

The - * default value is set to **Delete**. For an Ephemeral OS Disk, the default value - * is set to **Delete**. User cannot change the delete option for Ephemeral OS - * Disk. - */ - deleteOption?: DiskDeleteOptionTypes; -} - -export function virtualMachineScaleSetOSDiskSerializer( - item: VirtualMachineScaleSetOSDisk, -): VirtualMachineScaleSetOSDiskRest { - return { - name: item["name"], - caching: item["caching"], - writeAcceleratorEnabled: item["writeAcceleratorEnabled"], - createOption: item["createOption"], - diffDiskSettings: !item.diffDiskSettings - ? item.diffDiskSettings - : diffDiskSettingsSerializer(item.diffDiskSettings), - diskSizeGB: item["diskSizeGB"], - osType: item["osType"], - image: !item.image ? item.image : virtualHardDiskSerializer(item.image), - vhdContainers: item["vhdContainers"], - managedDisk: !item.managedDisk - ? item.managedDisk - : virtualMachineScaleSetManagedDiskParametersSerializer(item.managedDisk), - deleteOption: item["deleteOption"], - }; -} - -/** Known values of {@link CachingTypes} that the service accepts. */ -export enum KnownCachingTypes { - /** None */ - None = "None", - /** ReadOnly */ - ReadOnly = "ReadOnly", - /** ReadWrite */ - ReadWrite = "ReadWrite", -} - -/** - * Specifies the caching requirements. \ - * {@link KnownCachingTypes} can be used interchangeably with CachingTypes, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **None** \ - * **ReadOnly** \ - * **ReadWrite** - */ -export type CachingTypes = string; - -/** Known values of {@link DiskCreateOptionTypes} that the service accepts. */ -export enum KnownDiskCreateOptionTypes { - /** FromImage */ - FromImage = "FromImage", - /** Empty */ - Empty = "Empty", - /** Attach */ - Attach = "Attach", - /** Copy */ - Copy = "Copy", - /** Restore */ - Restore = "Restore", -} - -/** - * Specifies how the virtual machine should be created. \ - * {@link KnownDiskCreateOptionTypes} can be used interchangeably with DiskCreateOptionTypes, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **FromImage** \ - * **Empty** \ - * **Attach** \ - * **Copy** \ - * **Restore** - */ -export type DiskCreateOptionTypes = string; - -/** - * Describes the parameters of ephemeral disk settings that can be specified for - * operating system disk. **Note:** The ephemeral disk settings can only be - * specified for managed disk. - */ -export interface DiffDiskSettings { - /** Specifies the ephemeral disk settings for operating system disk. */ - option?: DiffDiskOptions; - /** - * Specifies the ephemeral disk placement for operating system disk. Possible - * 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 - * sizes exposes a cache disk. - */ - placement?: DiffDiskPlacement; -} - -export function diffDiskSettingsSerializer(item: DiffDiskSettings): DiffDiskSettingsRest { - return { - option: item["option"], - placement: item["placement"], - }; -} - -/** Known values of {@link DiffDiskOptions} that the service accepts. */ -export enum KnownDiffDiskOptions { - /** Local */ - Local = "Local", -} - -/** - * Specifies the ephemeral disk option for operating system disk. \ - * {@link KnownDiffDiskOptions} can be used interchangeably with DiffDiskOptions, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **Local** - */ -export type DiffDiskOptions = string; - -/** Known values of {@link DiffDiskPlacement} that the service accepts. */ -export enum KnownDiffDiskPlacement { - /** CacheDisk */ - CacheDisk = "CacheDisk", - /** ResourceDisk */ - ResourceDisk = "ResourceDisk", - /** NvmeDisk */ - NvmeDisk = "NvmeDisk", -} - -/** - * Specifies the ephemeral disk placement for operating system disk. This property - * can be used by user in the request to choose the location i.e, cache disk or - * 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 - * and Linux VM at - * https://docs.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. - * ### Known values supported by the service - * **CacheDisk** \ - * **ResourceDisk** \ - * **NvmeDisk** - */ -export type DiffDiskPlacement = string; - -/** Known values of {@link OperatingSystemTypes} that the service accepts. */ -export enum KnownOperatingSystemTypes { - /** Windows */ - Windows = "Windows", - /** Linux */ - Linux = "Linux", -} - -/** - * This property allows you to specify the type of the OS that is included in the - * disk if creating a VM from user-image or a specialized VHD. Possible values - * are: **Windows,** **Linux.** \ - * {@link KnownOperatingSystemTypes} can be used interchangeably with OperatingSystemTypes, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **Windows** \ - * **Linux** - */ -export type OperatingSystemTypes = string; - -/** Describes the uri of a disk. */ -export interface VirtualHardDisk { - /** Specifies the virtual hard disk's uri. */ - uri?: string; -} - -export function virtualHardDiskSerializer(item: VirtualHardDisk): VirtualHardDiskRest { - return { - uri: item["uri"], - }; -} - -/** Describes the parameters of a ScaleSet managed disk. */ -export interface VirtualMachineScaleSetManagedDiskParameters { - /** - * Specifies the storage account type for the managed disk. NOTE: UltraSSD_LRS can - * only be used with data disks, it cannot be used with OS Disk. - */ - storageAccountType?: StorageAccountTypes; - /** - * Specifies the customer managed disk encryption set resource id for the managed - * disk. - */ - diskEncryptionSet?: DiskEncryptionSetParameters; - /** Specifies the security profile for the managed disk. */ - securityProfile?: VMDiskSecurityProfile; -} - -export function virtualMachineScaleSetManagedDiskParametersSerializer( - item: VirtualMachineScaleSetManagedDiskParameters, -): VirtualMachineScaleSetManagedDiskParametersRest { - return { - storageAccountType: item["storageAccountType"], - diskEncryptionSet: !item.diskEncryptionSet - ? item.diskEncryptionSet - : diskEncryptionSetParametersSerializer(item.diskEncryptionSet), - securityProfile: !item.securityProfile - ? item.securityProfile - : vMDiskSecurityProfileSerializer(item.securityProfile), - }; -} - -/** Known values of {@link StorageAccountTypes} that the service accepts. */ -export enum KnownStorageAccountTypes { - /** Standard_LRS */ - Standard_LRS = "Standard_LRS", - /** Premium_LRS */ - Premium_LRS = "Premium_LRS", - /** StandardSSD_LRS */ - StandardSSD_LRS = "StandardSSD_LRS", - /** UltraSSD_LRS */ - UltraSSD_LRS = "UltraSSD_LRS", - /** Premium_ZRS */ - Premium_ZRS = "Premium_ZRS", - /** StandardSSD_ZRS */ - StandardSSD_ZRS = "StandardSSD_ZRS", - /** PremiumV2_LRS */ - PremiumV2_LRS = "PremiumV2_LRS", -} - -/** - * Specifies the storage account type for the managed disk. Managed OS disk - * storage account type can only be set when you create the scale set. NOTE: - * UltraSSD_LRS can only be used with data disks. It cannot be used with OS Disk. - * Standard_LRS uses Standard HDD. StandardSSD_LRS uses Standard SSD. Premium_LRS - * uses Premium SSD. UltraSSD_LRS uses Ultra disk. Premium_ZRS uses Premium SSD - * 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 - * Linux Virtual Machines, refer to - * https://docs.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 - * **Standard_LRS** \ - * **Premium_LRS** \ - * **StandardSSD_LRS** \ - * **UltraSSD_LRS** \ - * **Premium_ZRS** \ - * **StandardSSD_ZRS** \ - * **PremiumV2_LRS** - */ -export type StorageAccountTypes = string; - -/** - * Describes the parameter of customer managed disk encryption set resource id - * that can be specified for disk. **Note:** The disk encryption set resource id - * can only be specified for managed disk. Please refer - * https://aka.ms/mdssewithcmkoverview for more details. - */ -export interface DiskEncryptionSetParameters { - /** Resource Id */ - id?: string; -} - -export function diskEncryptionSetParametersSerializer( - item: DiskEncryptionSetParameters, -): DiskEncryptionSetParametersRest { - return { - id: item["id"], - }; -} - -/** - * Specifies the security profile settings for the managed disk. **Note:** It can - * only be set for Confidential VMs. - */ -export interface VMDiskSecurityProfile { - /** - * Specifies the EncryptionType of the managed disk. It is set to - * DiskWithVMGuestState for encryption of the managed disk along with VMGuestState - * blob, VMGuestStateOnly for encryption of just the VMGuestState blob, and - * NonPersistedTPM for not persisting firmware state in the VMGuestState blob.. - * **Note:** It can be set for only Confidential VMs. - */ - securityEncryptionType?: SecurityEncryptionTypes; - /** - * Specifies the customer managed disk encryption set resource id for the managed - * disk that is used for Customer Managed Key encrypted ConfidentialVM OS Disk and - * VMGuest blob. - */ - diskEncryptionSet?: DiskEncryptionSetParameters; -} - -export function vMDiskSecurityProfileSerializer( - item: VMDiskSecurityProfile, -): VMDiskSecurityProfileRest { - return { - securityEncryptionType: item["securityEncryptionType"], - diskEncryptionSet: !item.diskEncryptionSet - ? item.diskEncryptionSet - : diskEncryptionSetParametersSerializer(item.diskEncryptionSet), - }; -} - -/** Known values of {@link SecurityEncryptionTypes} that the service accepts. */ -export enum KnownSecurityEncryptionTypes { - /** VMGuestStateOnly */ - VMGuestStateOnly = "VMGuestStateOnly", - /** DiskWithVMGuestState */ - DiskWithVMGuestState = "DiskWithVMGuestState", - /** NonPersistedTPM */ - NonPersistedTPM = "NonPersistedTPM", -} - -/** - * Specifies the EncryptionType of the managed disk. - * **Note:** It can be set for only Confidential VMs. \ - * {@link KnownSecurityEncryptionTypes} can be used interchangeably with SecurityEncryptionTypes, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **VMGuestStateOnly** \ - * **DiskWithVMGuestState** \ - * **NonPersistedTPM** - */ -export type SecurityEncryptionTypes = string; - -/** Known values of {@link DiskDeleteOptionTypes} that the service accepts. */ -export enum KnownDiskDeleteOptionTypes { - /** Delete */ - Delete = "Delete", - /** Detach */ - Detach = "Detach", -} - -/** - * Specifies the behavior of the managed disk when the VM gets deleted, for - * example whether the managed disk is deleted or detached. Supported values are: - * **Delete.** If this value is used, the managed disk is deleted when VM gets - * deleted. **Detach.** If this value is used, the managed disk is retained after - * VM gets deleted. Minimum api-version: 2021-03-01. \ - * {@link KnownDiskDeleteOptionTypes} can be used interchangeably with DiskDeleteOptionTypes, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **Delete** \ - * **Detach** - */ -export type DiskDeleteOptionTypes = string; - -/** Describes a virtual machine scale set data disk. */ -export interface VirtualMachineScaleSetDataDisk { - /** The disk name. */ - name?: string; - /** - * Specifies the logical unit number of the data disk. This value is used to - * identify data disks within the VM and therefore must be unique for each data - * disk attached to a VM. - */ - lun: number; - /** - * Specifies the caching requirements. Possible values are: **None,** - * **ReadOnly,** **ReadWrite.** The default values are: **None for Standard - * storage. ReadOnly for Premium storage.** - */ - caching?: CachingTypes; - /** Specifies whether writeAccelerator should be enabled or disabled on the disk. */ - writeAcceleratorEnabled?: boolean; - /** The create option. */ - createOption: DiskCreateOptionTypes; - /** - * Specifies the size of an empty data disk in gigabytes. This element can be used - * to overwrite the size of the disk in a virtual machine image. The property - * diskSizeGB is the number of bytes x 1024^3 for the disk and the value cannot be - * larger than 1023. - */ - diskSizeGB?: number; - /** The managed disk parameters. */ - managedDisk?: VirtualMachineScaleSetManagedDiskParameters; - /** - * Specifies the Read-Write IOPS for the managed disk. Should be used only when - * StorageAccountType is UltraSSD_LRS. If not specified, a default value would be - * assigned based on diskSizeGB. - */ - 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 - * would be assigned based on diskSizeGB. - */ - diskMBpsReadWrite?: number; - /** - * Specifies whether data disk should be deleted or detached upon VMSS Flex - * deletion (This feature is available for VMSS with Flexible OrchestrationMode - * only).

Possible values:

**Delete** If this value is used, the - * data disk is deleted when the VMSS Flex VM is deleted.

**Detach** If - * this value is used, the data disk is retained after VMSS Flex VM is - * deleted.

The default value is set to **Delete**. - */ - deleteOption?: DiskDeleteOptionTypes; -} - -export function virtualMachineScaleSetDataDiskSerializer( - item: VirtualMachineScaleSetDataDisk, -): VirtualMachineScaleSetDataDiskRest { - return { - name: item["name"], - lun: item["lun"], - caching: item["caching"], - writeAcceleratorEnabled: item["writeAcceleratorEnabled"], - createOption: item["createOption"], - diskSizeGB: item["diskSizeGB"], - managedDisk: !item.managedDisk - ? item.managedDisk - : virtualMachineScaleSetManagedDiskParametersSerializer(item.managedDisk), - diskIOPSReadWrite: item["diskIOPSReadWrite"], - diskMBpsReadWrite: item["diskMBpsReadWrite"], - deleteOption: item["deleteOption"], - }; -} - -/** Known values of {@link DiskControllerTypes} that the service accepts. */ -export enum KnownDiskControllerTypes { - /** SCSI */ - SCSI = "SCSI", - /** NVMe */ - NVMe = "NVMe", -} - -/** - * 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 - * 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 - * information about Disk Controller Types supported please refer to - * https://aka.ms/azure-diskcontrollertypes. \ - * {@link KnownDiskControllerTypes} can be used interchangeably with DiskControllerTypes, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **SCSI** \ - * **NVMe** - */ -export type DiskControllerTypes = string; - -/** Describes a virtual machine scale set network profile. */ -export interface VirtualMachineScaleSetNetworkProfile { - /** - * A reference to a load balancer probe used to determine the health of an - * instance in the virtual machine scale set. The reference will be in the form: - * '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/probes/{probeName}'. - */ - healthProbe?: ApiEntityReference; - /** The list of network configurations. */ - networkInterfaceConfigurations?: VirtualMachineScaleSetNetworkConfiguration[]; - /** - * specifies the Microsoft.Network API version used when creating networking - * resources in the Network Interface Configurations for Virtual Machine Scale Set - * with orchestration mode 'Flexible' - */ - networkApiVersion?: NetworkApiVersion; -} - -export function virtualMachineScaleSetNetworkProfileSerializer( - item: VirtualMachineScaleSetNetworkProfile, -): VirtualMachineScaleSetNetworkProfileRest { - return { - healthProbe: !item.healthProbe - ? item.healthProbe - : apiEntityReferenceSerializer(item.healthProbe), - networkInterfaceConfigurations: - item["networkInterfaceConfigurations"] === undefined - ? item["networkInterfaceConfigurations"] - : item["networkInterfaceConfigurations"].map( - virtualMachineScaleSetNetworkConfigurationSerializer, - ), - networkApiVersion: item["networkApiVersion"], - }; -} - -/** The API entity reference. */ -export interface ApiEntityReference { - /** - * The ARM resource id in the form of - * /subscriptions/{SubscriptionId}/resourceGroups/{ResourceGroupName}/... - */ - id?: string; -} - -export function apiEntityReferenceSerializer(item: ApiEntityReference): ApiEntityReferenceRest { - return { - id: item["id"], - }; -} - -/** Describes a virtual machine scale set network profile's network configurations. */ -export interface VirtualMachineScaleSetNetworkConfiguration { - /** The network configuration name. */ - name: string; - /** Describes a virtual machine scale set network profile's IP configuration. */ - properties?: VirtualMachineScaleSetNetworkConfigurationProperties; -} - -export function virtualMachineScaleSetNetworkConfigurationSerializer( - item: VirtualMachineScaleSetNetworkConfiguration, -): VirtualMachineScaleSetNetworkConfigurationRest { - return { - name: item["name"], - properties: !item.properties - ? item.properties - : virtualMachineScaleSetNetworkConfigurationPropertiesSerializer(item.properties), - }; -} - -/** Describes a virtual machine scale set network profile's IP configuration. */ -export interface VirtualMachineScaleSetNetworkConfigurationProperties { - /** - * Specifies the primary network interface in case the virtual machine has more - * than 1 network interface. - */ - primary?: boolean; - /** Specifies whether the network interface is accelerated networking-enabled. */ - enableAcceleratedNetworking?: boolean; - /** Specifies whether the network interface is disabled for tcp state tracking. */ - disableTcpStateTracking?: boolean; - /** Specifies whether the network interface is FPGA networking-enabled. */ - enableFpga?: boolean; - /** The network security group. */ - networkSecurityGroup?: SubResource; - /** The dns settings to be applied on the network interfaces. */ - dnsSettings?: VirtualMachineScaleSetNetworkConfigurationDnsSettings; - /** Specifies the IP configurations of the network interface. */ - ipConfigurations: VirtualMachineScaleSetIPConfiguration[]; - /** Whether IP forwarding enabled on this NIC. */ - enableIPForwarding?: boolean; - /** Specify what happens to the network interface when the VM is deleted */ - deleteOption?: DeleteOptions; - /** - * Specifies whether the Auxiliary mode is enabled for the Network Interface - * resource. - */ - auxiliaryMode?: NetworkInterfaceAuxiliaryMode; - /** - * Specifies whether the Auxiliary sku is enabled for the Network Interface - * resource. - */ - auxiliarySku?: NetworkInterfaceAuxiliarySku; -} - -export function virtualMachineScaleSetNetworkConfigurationPropertiesSerializer( - item: VirtualMachineScaleSetNetworkConfigurationProperties, -): VirtualMachineScaleSetNetworkConfigurationPropertiesRest { - return { - primary: item["primary"], - enableAcceleratedNetworking: item["enableAcceleratedNetworking"], - disableTcpStateTracking: item["disableTcpStateTracking"], - enableFpga: item["enableFpga"], - networkSecurityGroup: !item.networkSecurityGroup - ? item.networkSecurityGroup - : subResourceSerializer(item.networkSecurityGroup), - dnsSettings: !item.dnsSettings - ? item.dnsSettings - : virtualMachineScaleSetNetworkConfigurationDnsSettingsSerializer(item.dnsSettings), - ipConfigurations: item["ipConfigurations"].map(virtualMachineScaleSetIPConfigurationSerializer), - enableIPForwarding: item["enableIPForwarding"], - deleteOption: item["deleteOption"], - auxiliaryMode: item["auxiliaryMode"], - auxiliarySku: item["auxiliarySku"], - }; -} - -/** Describes a virtual machines scale sets network configuration's DNS settings. */ -export interface VirtualMachineScaleSetNetworkConfigurationDnsSettings { - /** List of DNS servers IP addresses */ - dnsServers?: string[]; -} - -export function virtualMachineScaleSetNetworkConfigurationDnsSettingsSerializer( - item: VirtualMachineScaleSetNetworkConfigurationDnsSettings, -): VirtualMachineScaleSetNetworkConfigurationDnsSettingsRest { - return { - dnsServers: item["dnsServers"], - }; -} - -/** Describes a virtual machine scale set network profile's IP configuration. */ -export interface VirtualMachineScaleSetIPConfiguration { - /** The IP configuration name. */ - name: string; - /** - * Describes a virtual machine scale set network profile's IP configuration - * properties. - */ - properties?: VirtualMachineScaleSetIPConfigurationProperties; -} - -export function virtualMachineScaleSetIPConfigurationSerializer( - item: VirtualMachineScaleSetIPConfiguration, -): VirtualMachineScaleSetIPConfigurationRest { - return { - name: item["name"], - properties: !item.properties - ? item.properties - : virtualMachineScaleSetIPConfigurationPropertiesSerializer(item.properties), - }; -} - -/** - * Describes a virtual machine scale set network profile's IP configuration - * properties. - */ -export interface VirtualMachineScaleSetIPConfigurationProperties { - /** Specifies the identifier of the subnet. */ - subnet?: ApiEntityReference; - /** - * Specifies the primary network interface in case the virtual machine has more - * than 1 network interface. - */ - primary?: boolean; - /** The publicIPAddressConfiguration. */ - publicIPAddressConfiguration?: VirtualMachineScaleSetPublicIPAddressConfiguration; - /** - * Available from Api-Version 2017-03-30 onwards, it represents whether the - * specific ipconfiguration is IPv4 or IPv6. Default is taken as IPv4. Possible - * values are: 'IPv4' and 'IPv6'. - */ - privateIPAddressVersion?: IPVersion; - /** - * Specifies an array of references to backend address pools of application - * gateways. A scale set can reference backend address pools of multiple - * application gateways. Multiple scale sets cannot use the same application - * gateway. - */ - applicationGatewayBackendAddressPools?: SubResource[]; - /** Specifies an array of references to application security group. */ - applicationSecurityGroups?: SubResource[]; - /** - * Specifies an array of references to backend address pools of load balancers. A - * scale set can reference backend address pools of one public and one internal - * load balancer. Multiple scale sets cannot use the same basic sku load balancer. - */ - loadBalancerBackendAddressPools?: SubResource[]; - /** - * Specifies an array of references to inbound Nat pools of the load balancers. A - * scale set can reference inbound nat pools of one public and one internal load - * balancer. Multiple scale sets cannot use the same basic sku load balancer. - */ - loadBalancerInboundNatPools?: SubResource[]; -} - -export function virtualMachineScaleSetIPConfigurationPropertiesSerializer( - item: VirtualMachineScaleSetIPConfigurationProperties, -): VirtualMachineScaleSetIPConfigurationPropertiesRest { - return { - subnet: !item.subnet ? item.subnet : apiEntityReferenceSerializer(item.subnet), - primary: item["primary"], - publicIPAddressConfiguration: !item.publicIPAddressConfiguration - ? item.publicIPAddressConfiguration - : virtualMachineScaleSetPublicIPAddressConfigurationSerializer( - item.publicIPAddressConfiguration, - ), - privateIPAddressVersion: item["privateIPAddressVersion"], - applicationGatewayBackendAddressPools: - item["applicationGatewayBackendAddressPools"] === undefined - ? item["applicationGatewayBackendAddressPools"] - : item["applicationGatewayBackendAddressPools"].map(subResourceSerializer), - applicationSecurityGroups: - item["applicationSecurityGroups"] === undefined - ? item["applicationSecurityGroups"] - : item["applicationSecurityGroups"].map(subResourceSerializer), - loadBalancerBackendAddressPools: - item["loadBalancerBackendAddressPools"] === undefined - ? item["loadBalancerBackendAddressPools"] - : item["loadBalancerBackendAddressPools"].map(subResourceSerializer), - loadBalancerInboundNatPools: - item["loadBalancerInboundNatPools"] === undefined - ? item["loadBalancerInboundNatPools"] - : item["loadBalancerInboundNatPools"].map(subResourceSerializer), - }; -} - -/** - * Describes a virtual machines scale set IP Configuration's PublicIPAddress - * configuration - */ -export interface VirtualMachineScaleSetPublicIPAddressConfiguration { - /** The publicIP address configuration name. */ - name: string; - /** - * Describes a virtual machines scale set IP Configuration's PublicIPAddress - * configuration - */ - properties?: VirtualMachineScaleSetPublicIPAddressConfigurationProperties; - /** - * Describes the public IP Sku. It can only be set with OrchestrationMode as - * Flexible. - */ - sku?: PublicIPAddressSku; -} - -export function virtualMachineScaleSetPublicIPAddressConfigurationSerializer( - item: VirtualMachineScaleSetPublicIPAddressConfiguration, -): VirtualMachineScaleSetPublicIPAddressConfigurationRest { - return { - name: item["name"], - properties: !item.properties - ? item.properties - : virtualMachineScaleSetPublicIPAddressConfigurationPropertiesSerializer(item.properties), - sku: !item.sku ? item.sku : publicIPAddressSkuSerializer(item.sku), - }; -} - -/** - * Describes a virtual machines scale set IP Configuration's PublicIPAddress - * configuration - */ -export interface VirtualMachineScaleSetPublicIPAddressConfigurationProperties { - /** The idle timeout of the public IP address. */ - idleTimeoutInMinutes?: number; - /** The dns settings to be applied on the publicIP addresses . */ - dnsSettings?: VirtualMachineScaleSetPublicIPAddressConfigurationDnsSettings; - /** The list of IP tags associated with the public IP address. */ - ipTags?: VirtualMachineScaleSetIpTag[]; - /** The PublicIPPrefix from which to allocate publicIP addresses. */ - publicIPPrefix?: SubResource; - /** - * Available from Api-Version 2019-07-01 onwards, it represents whether the - * specific ipconfiguration is IPv4 or IPv6. Default is taken as IPv4. Possible - * values are: 'IPv4' and 'IPv6'. - */ - publicIPAddressVersion?: IPVersion; - /** Specify what happens to the public IP when the VM is deleted */ - deleteOption?: DeleteOptions; -} - -export function virtualMachineScaleSetPublicIPAddressConfigurationPropertiesSerializer( - item: VirtualMachineScaleSetPublicIPAddressConfigurationProperties, -): VirtualMachineScaleSetPublicIPAddressConfigurationPropertiesRest { - return { - idleTimeoutInMinutes: item["idleTimeoutInMinutes"], - dnsSettings: !item.dnsSettings - ? item.dnsSettings - : virtualMachineScaleSetPublicIPAddressConfigurationDnsSettingsSerializer(item.dnsSettings), - ipTags: - item["ipTags"] === undefined - ? item["ipTags"] - : item["ipTags"].map(virtualMachineScaleSetIpTagSerializer), - publicIPPrefix: !item.publicIPPrefix - ? item.publicIPPrefix - : subResourceSerializer(item.publicIPPrefix), - publicIPAddressVersion: item["publicIPAddressVersion"], - deleteOption: item["deleteOption"], - }; -} - -/** Describes a virtual machines scale sets network configuration's DNS settings. */ -export interface VirtualMachineScaleSetPublicIPAddressConfigurationDnsSettings { - /** - * The Domain name label.The concatenation of the domain name label and vm index - * will be the domain name labels of the PublicIPAddress resources that will be - * created - */ - domainNameLabel: string; - /** - * The Domain name label scope.The concatenation of the hashed domain name label - * that generated according to the policy from domain name label scope and vm - * index will be the domain name labels of the PublicIPAddress resources that will - * be created - */ - domainNameLabelScope?: DomainNameLabelScopeTypes; -} - -export function virtualMachineScaleSetPublicIPAddressConfigurationDnsSettingsSerializer( - item: VirtualMachineScaleSetPublicIPAddressConfigurationDnsSettings, -): VirtualMachineScaleSetPublicIPAddressConfigurationDnsSettingsRest { - return { - domainNameLabel: item["domainNameLabel"], - domainNameLabelScope: item["domainNameLabelScope"], - }; -} - -/** Known values of {@link DomainNameLabelScopeTypes} that the service accepts. */ -export enum KnownDomainNameLabelScopeTypes { - /** TenantReuse */ - TenantReuse = "TenantReuse", - /** SubscriptionReuse */ - SubscriptionReuse = "SubscriptionReuse", - /** ResourceGroupReuse */ - ResourceGroupReuse = "ResourceGroupReuse", - /** NoReuse */ - NoReuse = "NoReuse", -} - -/** - * The Domain name label scope.The concatenation of the hashed domain name label - * that generated according to the policy from domain name label scope and vm - * index will be the domain name labels of the PublicIPAddress resources that will - * be created \ - * {@link KnownDomainNameLabelScopeTypes} can be used interchangeably with DomainNameLabelScopeTypes, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **TenantReuse** \ - * **SubscriptionReuse** \ - * **ResourceGroupReuse** \ - * **NoReuse** - */ -export type DomainNameLabelScopeTypes = string; - -/** Contains the IP tag associated with the public IP address. */ -export interface VirtualMachineScaleSetIpTag { - /** IP tag type. Example: FirstPartyUsage. */ - ipTagType?: string; - /** IP tag associated with the public IP. Example: SQL, Storage etc. */ - tag?: string; -} - -export function virtualMachineScaleSetIpTagSerializer( - item: VirtualMachineScaleSetIpTag, -): VirtualMachineScaleSetIpTagRest { - return { - ipTagType: item["ipTagType"], - tag: item["tag"], - }; -} - -/** Known values of {@link IPVersion} that the service accepts. */ -export enum KnownIPVersion { - /** IPv4 */ - IPv4 = "IPv4", - /** IPv6 */ - IPv6 = "IPv6", -} - -/** - * Available from Api-Version 2017-03-30 onwards, it represents whether the - * specific ipconfiguration is IPv4 or IPv6. Default is taken as IPv4. Possible - * values are: 'IPv4' and 'IPv6'. \ - * {@link KnownIPVersion} can be used interchangeably with IPVersion, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **IPv4** \ - * **IPv6** - */ -export type IPVersion = string; - -/** Known values of {@link DeleteOptions} that the service accepts. */ -export enum KnownDeleteOptions { - /** Delete */ - Delete = "Delete", - /** Detach */ - Detach = "Detach", -} - -/** - * Specify what happens to the network interface when the VM is deleted \ - * {@link KnownDeleteOptions} can be used interchangeably with DeleteOptions, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **Delete** \ - * **Detach** - */ -export type DeleteOptions = string; - -/** - * Describes the public IP Sku. It can only be set with OrchestrationMode as - * Flexible. - */ -export interface PublicIPAddressSku { - /** Specify public IP sku name */ - name?: PublicIPAddressSkuName; - /** Specify public IP sku tier */ - tier?: PublicIPAddressSkuTier; -} - -export function publicIPAddressSkuSerializer(item: PublicIPAddressSku): PublicIPAddressSkuRest { - return { - name: item["name"], - tier: item["tier"], - }; -} - -/** Known values of {@link PublicIPAddressSkuName} that the service accepts. */ -export enum KnownPublicIPAddressSkuName { - /** Basic */ - Basic = "Basic", - /** Standard */ - Standard = "Standard", -} - -/** - * Specify public IP sku name. \ - * {@link KnownPublicIPAddressSkuName} can be used interchangeably with PublicIPAddressSkuName, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **Basic** \ - * **Standard** - */ -export type PublicIPAddressSkuName = string; - -/** Known values of {@link PublicIPAddressSkuTier} that the service accepts. */ -export enum KnownPublicIPAddressSkuTier { - /** Regional */ - Regional = "Regional", - /** Global */ - Global = "Global", -} - -/** - * Specify public IP sku tier \ - * {@link KnownPublicIPAddressSkuTier} can be used interchangeably with PublicIPAddressSkuTier, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **Regional** \ - * **Global** - */ -export type PublicIPAddressSkuTier = string; - -/** Known values of {@link NetworkInterfaceAuxiliaryMode} that the service accepts. */ -export enum KnownNetworkInterfaceAuxiliaryMode { - /** None */ - None = "None", - /** AcceleratedConnections */ - AcceleratedConnections = "AcceleratedConnections", - /** Floating */ - Floating = "Floating", -} - -/** - * Specifies whether the Auxiliary mode is enabled for the Network Interface - * resource. \ - * {@link KnownNetworkInterfaceAuxiliaryMode} can be used interchangeably with NetworkInterfaceAuxiliaryMode, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **None** \ - * **AcceleratedConnections** \ - * **Floating** - */ -export type NetworkInterfaceAuxiliaryMode = string; - -/** Known values of {@link NetworkInterfaceAuxiliarySku} that the service accepts. */ -export enum KnownNetworkInterfaceAuxiliarySku { - /** None */ - None = "None", - /** A1 */ - A1 = "A1", - /** A2 */ - A2 = "A2", - /** A4 */ - A4 = "A4", - /** A8 */ - A8 = "A8", -} - -/** - * Specifies whether the Auxiliary sku is enabled for the Network Interface - * resource. \ - * {@link KnownNetworkInterfaceAuxiliarySku} can be used interchangeably with NetworkInterfaceAuxiliarySku, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **None** \ - * **A1** \ - * **A2** \ - * **A4** \ - * **A8** - */ -export type NetworkInterfaceAuxiliarySku = string; - -/** Known values of {@link NetworkApiVersion} that the service accepts. */ -export enum KnownNetworkApiVersion { - /** 2020-11-01 */ - "2020-11-01" = "2020-11-01", -} - -/** - * specifies the Microsoft.Network API version used when creating networking - * resources in the Network Interface Configurations for Virtual Machine Scale Set - * with orchestration mode 'Flexible' \ - * {@link KnownNetworkApiVersion} can be used interchangeably with NetworkApiVersion, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **2020-11-01** - */ -export type NetworkApiVersion = string; - -/** - * Specifies the Security profile settings for the virtual machine or virtual - * machine scale set. - */ -export interface SecurityProfile { - /** - * Specifies the security settings like secure boot and vTPM used while creating - * the virtual machine. Minimum api-version: 2020-12-01. - */ - uefiSettings?: UefiSettings; - /** - * This property can be used by user in the request to enable or disable the Host - * Encryption for the virtual machine or virtual machine scale set. This will - * enable the encryption for all the disks including Resource/Temp disk at host - * itself. The default behavior is: The Encryption at host will be disabled unless - * this property is set to true for the resource. - */ - encryptionAtHost?: boolean; - /** - * Specifies the SecurityType of the virtual machine. It has to be set to any - * specified value to enable UefiSettings. The default behavior is: UefiSettings - * will not be enabled unless this property is set. - */ - securityType?: SecurityTypes; - /** - * Specifies the Managed Identity used by ADE to get access token for keyvault - * operations. - */ - encryptionIdentity?: EncryptionIdentity; - /** - * Specifies ProxyAgent settings while creating the virtual machine. Minimum - * api-version: 2023-09-01. - */ - proxyAgentSettings?: ProxyAgentSettings; -} - -export function securityProfileSerializer(item: SecurityProfile): SecurityProfileRest { - return { - uefiSettings: !item.uefiSettings - ? item.uefiSettings - : uefiSettingsSerializer(item.uefiSettings), - encryptionAtHost: item["encryptionAtHost"], - securityType: item["securityType"], - encryptionIdentity: !item.encryptionIdentity - ? item.encryptionIdentity - : encryptionIdentitySerializer(item.encryptionIdentity), - proxyAgentSettings: !item.proxyAgentSettings - ? item.proxyAgentSettings - : proxyAgentSettingsSerializer(item.proxyAgentSettings), - }; -} - -/** - * Specifies the security settings like secure boot and vTPM used while creating - * the virtual machine. Minimum api-version: 2020-12-01. - */ -export interface UefiSettings { - /** - * Specifies whether secure boot should be enabled on the virtual machine. Minimum - * api-version: 2020-12-01. - */ - secureBootEnabled?: boolean; - /** - * Specifies whether vTPM should be enabled on the virtual machine. Minimum - * api-version: 2020-12-01. - */ - vTpmEnabled?: boolean; -} - -export function uefiSettingsSerializer(item: UefiSettings): UefiSettingsRest { - return { - secureBootEnabled: item["secureBootEnabled"], - vTpmEnabled: item["vTpmEnabled"], - }; -} - -/** Known values of {@link SecurityTypes} that the service accepts. */ -export enum KnownSecurityTypes { - /** TrustedLaunch */ - TrustedLaunch = "TrustedLaunch", - /** ConfidentialVM */ - ConfidentialVM = "ConfidentialVM", -} - -/** - * Specifies the SecurityType of the virtual machine. It has to be set to any - * specified value to enable UefiSettings. The default behavior is: UefiSettings - * will not be enabled unless this property is set. \ - * {@link KnownSecurityTypes} can be used interchangeably with SecurityTypes, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **TrustedLaunch** \ - * **ConfidentialVM** - */ -export type SecurityTypes = string; - -/** - * Specifies the Managed Identity used by ADE to get access token for keyvault - * operations. - */ -export interface EncryptionIdentity { - /** Specifies ARM Resource ID of one of the user identities associated with the VM. */ - userAssignedIdentityResourceId?: string; -} - -export function encryptionIdentitySerializer(item: EncryptionIdentity): EncryptionIdentityRest { - return { - userAssignedIdentityResourceId: item["userAssignedIdentityResourceId"], - }; -} - -/** - * Specifies ProxyAgent settings while creating the virtual machine. Minimum - * api-version: 2023-09-01. - */ -export interface ProxyAgentSettings { - /** - * Specifies whether ProxyAgent feature should be enabled on the virtual machine - * or virtual machine scale set. - */ - enabled?: boolean; - /** - * Specifies the mode that ProxyAgent will execute on if the feature is enabled. - * ProxyAgent will start to audit or monitor but not enforce access control over - * requests to host endpoints in Audit mode, while in Enforce mode it will enforce - * access control. The default value is Enforce mode. - */ - mode?: Mode; - /** - * Increase the value of this property allows user to reset the key used for - * securing communication channel between guest and host. - */ - keyIncarnationId?: number; -} - -export function proxyAgentSettingsSerializer(item: ProxyAgentSettings): ProxyAgentSettingsRest { - return { - enabled: item["enabled"], - mode: item["mode"], - keyIncarnationId: item["keyIncarnationId"], - }; -} - -/** Known values of {@link Mode} that the service accepts. */ -export enum KnownMode { - /** Audit */ - Audit = "Audit", - /** Enforce */ - Enforce = "Enforce", -} - -/** - * Specifies the mode that ProxyAgent will execute on if the feature is enabled. - * ProxyAgent will start to audit or monitor but not enforce access control over - * requests to host endpoints in Audit mode, while in Enforce mode it will enforce - * access control. The default value is Enforce mode. \ - * {@link KnownMode} can be used interchangeably with Mode, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **Audit** \ - * **Enforce** - */ -export type Mode = string; - -/** Specifies the boot diagnostic settings state. Minimum api-version: 2015-06-15. */ -export interface DiagnosticsProfile { - /** - * Boot Diagnostics is a debugging feature which allows you to view Console Output - * and Screenshot to diagnose VM status. **NOTE**: If storageUri is being - * specified then ensure that the storage account is in the same region and - * subscription as the VM. You can easily view the output of your console log. - * Azure also enables you to see a screenshot of the VM from the hypervisor. - */ - bootDiagnostics?: BootDiagnostics; -} - -export function diagnosticsProfileSerializer(item: DiagnosticsProfile): DiagnosticsProfileRest { - return { - bootDiagnostics: !item.bootDiagnostics - ? item.bootDiagnostics - : bootDiagnosticsSerializer(item.bootDiagnostics), - }; -} - -/** - * Boot Diagnostics is a debugging feature which allows you to view Console Output - * and Screenshot to diagnose VM status. You can easily view the output of your - * console log. Azure also enables you to see a screenshot of the VM from the - * hypervisor. - */ -export interface BootDiagnostics { - /** Whether boot diagnostics should be enabled on the Virtual Machine. */ - enabled?: boolean; - /** - * Uri of the storage account to use for placing the console output and - * screenshot. If storageUri is not specified while enabling boot diagnostics, - * managed storage will be used. - */ - storageUri?: string; -} - -export function bootDiagnosticsSerializer(item: BootDiagnostics): BootDiagnosticsRest { - return { - enabled: item["enabled"], - storageUri: item["storageUri"], - }; -} - -/** Describes a virtual machine scale set extension profile. */ -export interface VirtualMachineScaleSetExtensionProfile { - /** The virtual machine scale set child extension resources. */ - extensions?: VirtualMachineScaleSetExtension[]; - /** - * Specifies the time alloted for all extensions to start. The time duration - * should be between 15 minutes and 120 minutes (inclusive) and should be - * specified in ISO 8601 format. The default value is 90 minutes (PT1H30M). - * Minimum api-version: 2020-06-01. - */ - extensionsTimeBudget?: string; -} - -export function virtualMachineScaleSetExtensionProfileSerializer( - item: VirtualMachineScaleSetExtensionProfile, -): VirtualMachineScaleSetExtensionProfileRest { - return { - extensions: - item["extensions"] === undefined - ? item["extensions"] - : item["extensions"].map(virtualMachineScaleSetExtensionSerializer), - extensionsTimeBudget: item["extensionsTimeBudget"], - }; -} - -/** Describes a Virtual Machine Scale Set Extension. */ -export interface VirtualMachineScaleSetExtension { - /** Resource Id */ - readonly id?: string; - /** The name of the extension. */ - name?: string; - /** Resource type */ - readonly type?: string; - /** Describes the properties of a Virtual Machine Scale Set Extension. */ - properties?: VirtualMachineScaleSetExtensionProperties; -} - -export function virtualMachineScaleSetExtensionSerializer( - item: VirtualMachineScaleSetExtension, -): VirtualMachineScaleSetExtensionRest { - return { - name: item["name"], - properties: !item.properties - ? item.properties - : virtualMachineScaleSetExtensionPropertiesSerializer(item.properties), - }; -} - -/** Describes the properties of a Virtual Machine Scale Set Extension. */ -export interface VirtualMachineScaleSetExtensionProperties { - /** - * If a value is provided and is different from the previous value, the extension - * handler will be forced to update even if the extension configuration has not - * changed. - */ - forceUpdateTag?: string; - /** The name of the extension handler publisher. */ - publisher?: string; - /** Specifies the type of the extension; an example is "CustomScriptExtension". */ - type?: string; - /** Specifies the version of the script handler. */ - typeHandlerVersion?: string; - /** - * Indicates whether the extension should use a newer minor version if one is - * available at deployment time. Once deployed, however, the extension will not - * upgrade minor versions unless redeployed, even with this property set to true. - */ - autoUpgradeMinorVersion?: boolean; - /** - * Indicates whether the extension should be automatically upgraded by the - * platform if there is a newer version of the extension available. - */ - enableAutomaticUpgrade?: boolean; - /** Json formatted public settings for the extension. */ - settings?: Record; - /** - * The extension can contain either protectedSettings or - * protectedSettingsFromKeyVault or no protected settings at all. - */ - protectedSettings?: Record; - /** The provisioning state, which only appears in the response. */ - readonly provisioningState?: string; - /** - * Collection of extension names after which this extension needs to be - * provisioned. - */ - provisionAfterExtensions?: string[]; - /** - * Indicates whether failures stemming from the extension will be suppressed - * (Operational failures such as not connecting to the VM will not be suppressed - * regardless of this value). The default is false. - */ - suppressFailures?: boolean; - /** - * The extensions protected settings that are passed by reference, and consumed - * from key vault - */ - protectedSettingsFromKeyVault?: KeyVaultSecretReference; -} - -export function virtualMachineScaleSetExtensionPropertiesSerializer( - item: VirtualMachineScaleSetExtensionProperties, -): VirtualMachineScaleSetExtensionPropertiesRest { - return { - forceUpdateTag: item["forceUpdateTag"], - publisher: item["publisher"], - type: item["type"], - typeHandlerVersion: item["typeHandlerVersion"], - autoUpgradeMinorVersion: item["autoUpgradeMinorVersion"], - enableAutomaticUpgrade: item["enableAutomaticUpgrade"], - settings: !item.settings ? item.settings : (serializeRecord(item.settings as any) as any), - protectedSettings: !item.protectedSettings - ? item.protectedSettings - : (serializeRecord(item.protectedSettings as any) as any), - provisionAfterExtensions: item["provisionAfterExtensions"], - suppressFailures: item["suppressFailures"], - protectedSettingsFromKeyVault: !item.protectedSettingsFromKeyVault - ? item.protectedSettingsFromKeyVault - : keyVaultSecretReferenceSerializer(item.protectedSettingsFromKeyVault), - }; -} - -/** Describes a reference to Key Vault Secret */ -export interface KeyVaultSecretReference { - /** The URL referencing a secret in a Key Vault. */ - secretUrl: string; - /** The relative URL of the Key Vault containing the secret. */ - sourceVault: SubResource; -} - -export function keyVaultSecretReferenceSerializer( - item: KeyVaultSecretReference, -): KeyVaultSecretReferenceRest { - return { - secretUrl: item["secretUrl"], - sourceVault: subResourceSerializer(item.sourceVault), - }; -} - -/** Specifies Scheduled Event related configurations. */ -export interface ScheduledEventsProfile { - /** Specifies Terminate Scheduled Event related configurations. */ - terminateNotificationProfile?: TerminateNotificationProfile; - /** Specifies OS Image Scheduled Event related configurations. */ - osImageNotificationProfile?: OSImageNotificationProfile; -} - -export function scheduledEventsProfileSerializer( - item: ScheduledEventsProfile, -): ScheduledEventsProfileRest { - return { - terminateNotificationProfile: !item.terminateNotificationProfile - ? item.terminateNotificationProfile - : terminateNotificationProfileSerializer(item.terminateNotificationProfile), - osImageNotificationProfile: !item.osImageNotificationProfile - ? item.osImageNotificationProfile - : oSImageNotificationProfileSerializer(item.osImageNotificationProfile), - }; -} - -/** Specifies Terminate Scheduled Event related configurations. */ -export interface TerminateNotificationProfile { - /** - * Configurable length of time a Virtual Machine being deleted will have to - * potentially approve the Terminate Scheduled Event before the event is auto - * approved (timed out). The configuration must be specified in ISO 8601 format, - * the default value is 5 minutes (PT5M) - */ - notBeforeTimeout?: string; - /** Specifies whether the Terminate Scheduled event is enabled or disabled. */ - enable?: boolean; -} - -export function terminateNotificationProfileSerializer( - item: TerminateNotificationProfile, -): TerminateNotificationProfileRest { - return { - notBeforeTimeout: item["notBeforeTimeout"], - enable: item["enable"], - }; -} - -/** Specifies OS Image Scheduled Event related configurations. */ -export interface OSImageNotificationProfile { - /** - * Length of time a Virtual Machine being reimaged or having its OS upgraded will - * have to potentially approve the OS Image Scheduled Event before the event is - * auto approved (timed out). The configuration is specified in ISO 8601 format, - * and the value must not exceed 15 minutes (PT15M) - */ - notBeforeTimeout?: string; - /** Specifies whether the OS Image Scheduled event is enabled or disabled. */ - enable?: boolean; -} - -export function oSImageNotificationProfileSerializer( - item: OSImageNotificationProfile, -): OSImageNotificationProfileRest { - return { - notBeforeTimeout: item["notBeforeTimeout"], - enable: item["enable"], - }; -} - -/** The parameters of a capacity reservation Profile. */ -export interface CapacityReservationProfile { - /** - * Specifies the capacity reservation group resource id that should be used for - * allocating the virtual machine or scaleset vm instances provided enough - * capacity has been reserved. Please refer to https://aka.ms/CapacityReservation - * for more details. - */ - capacityReservationGroup?: SubResource; -} - -export function capacityReservationProfileSerializer( - item: CapacityReservationProfile, -): CapacityReservationProfileRest { - return { - capacityReservationGroup: !item.capacityReservationGroup - ? item.capacityReservationGroup - : subResourceSerializer(item.capacityReservationGroup), - }; -} - -/** - * Contains the list of gallery applications that should be made available to the - * VM/VMSS - */ -export interface ApplicationProfile { - /** Specifies the gallery applications that should be made available to the VM/VMSS */ - galleryApplications?: VMGalleryApplication[]; -} - -export function applicationProfileSerializer(item: ApplicationProfile): ApplicationProfileRest { - return { - galleryApplications: - item["galleryApplications"] === undefined - ? item["galleryApplications"] - : item["galleryApplications"].map(vMGalleryApplicationSerializer), - }; -} - -/** - * Specifies the required information to reference a compute gallery application - * version - */ -export interface VMGalleryApplication { - /** Optional, Specifies a passthrough value for more generic context. */ - tags?: string; - /** Optional, Specifies the order in which the packages have to be installed */ - order?: number; - /** - * Specifies the GalleryApplicationVersion resource id on the form of - * /subscriptions/{SubscriptionId}/resourceGroups/{ResourceGroupName}/providers/Microsoft.Compute/galleries/{galleryName}/applications/{application}/versions/{version} - */ - packageReferenceId: string; - /** - * Optional, Specifies the uri to an azure blob that will replace the default - * configuration for the package if provided - */ - configurationReference?: string; - /** - * Optional, If true, any failure for any operation in the VmApplication will fail - * the deployment - */ - treatFailureAsDeploymentFailure?: boolean; - /** - * If set to true, when a new Gallery Application version is available in PIR/SIG, - * it will be automatically updated for the VM/VMSS - */ - enableAutomaticUpgrade?: boolean; -} - -export function vMGalleryApplicationSerializer( - item: VMGalleryApplication, -): VMGalleryApplicationRest { - return { - tags: item["tags"], - order: item["order"], - packageReferenceId: item["packageReferenceId"], - configurationReference: item["configurationReference"], - treatFailureAsDeploymentFailure: item["treatFailureAsDeploymentFailure"], - enableAutomaticUpgrade: item["enableAutomaticUpgrade"], - }; -} - -/** Specifies the hardware settings for the virtual machine scale set. */ -export interface VirtualMachineScaleSetHardwareProfile { - /** - * Specifies the properties for customizing the size of the virtual machine. - * Minimum api-version: 2021-11-01. Please follow the instructions in [VM - * Customization](https://aka.ms/vmcustomization) for more details. - */ - vmSizeProperties?: VMSizeProperties; -} - -export function virtualMachineScaleSetHardwareProfileSerializer( - item: VirtualMachineScaleSetHardwareProfile, -): VirtualMachineScaleSetHardwareProfileRest { - return { - vmSizeProperties: !item.vmSizeProperties - ? item.vmSizeProperties - : vMSizePropertiesSerializer(item.vmSizeProperties), - }; -} - -/** Specifies VM Size Property settings on the virtual machine. */ -export interface VMSizeProperties { - /** - * Specifies the number of vCPUs available for the VM. When this property is not - * 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). - */ - vCPUsAvailable?: number; - /** - * Specifies the vCPU to physical core ratio. When this property is not specified - * 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). - * **Setting this property to 1 also means that hyper-threading is disabled.** - */ - vCPUsPerCore?: number; -} - -export function vMSizePropertiesSerializer(item: VMSizeProperties): VMSizePropertiesRest { - return { - vCPUsAvailable: item["vCPUsAvailable"], - vCPUsPerCore: item["vCPUsPerCore"], - }; -} - -/** - * Specifies the service artifact reference id used to set same image version for - * all virtual machines in the scale set when using 'latest' image version. - * Minimum api-version: 2022-11-01 - */ -export interface ServiceArtifactReference { - /** - * The service artifact reference id in the form of - * /subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/galleries/{galleryName}/serviceArtifacts/{serviceArtifactName}/vmArtifactsProfiles/{vmArtifactsProfilesName} - */ - id?: string; -} - -export function serviceArtifactReferenceSerializer( - item: ServiceArtifactReference, -): ServiceArtifactReferenceRest { - return { - id: item["id"], - }; -} - -/** - * Specifies the security posture to be used for all virtual machines in the scale - * set. Minimum api-version: 2023-03-01 - */ -export interface SecurityPostureReference { - /** - * The security posture reference id in the form of - * /CommunityGalleries/{communityGalleryName}/securityPostures/{securityPostureName}/versions/{major.minor.patch}|{major.*}|latest - */ - id?: string; - /** - * List of virtual machine extension names to exclude when applying the security - * posture. - */ - excludeExtensions?: string[]; - /** Whether the security posture can be overridden by the user. */ - isOverridable?: boolean; -} - -export function securityPostureReferenceSerializer( - item: SecurityPostureReference, -): SecurityPostureReferenceRest { - return { - id: item["id"], - excludeExtensions: item["excludeExtensions"], - isOverridable: item["isOverridable"], - }; -} - -/** Managed service identity (system assigned and/or user assigned identities) */ -export interface ManagedServiceIdentity { - /** The service principal ID of the system assigned identity. This property will only be provided for a system assigned identity. */ - readonly principalId?: string; - /** The tenant ID of the system assigned identity. This property will only be provided for a system assigned identity. */ - readonly tenantId?: string; - /** The type of managed identity assigned to this resource. */ - type: ManagedServiceIdentityType; - /** The identities assigned to this resource by the user. */ - userAssignedIdentities?: Record; -} - -export function managedServiceIdentitySerializer( - item: ManagedServiceIdentity, -): ManagedServiceIdentityRest { - return { - type: item["type"], - userAssignedIdentities: !item.userAssignedIdentities - ? item.userAssignedIdentities - : (serializeRecord( - item.userAssignedIdentities as any, - userAssignedIdentitySerializer, - ) as any), - }; -} - -/** Known values of {@link ManagedServiceIdentityType} that the service accepts. */ -export enum KnownManagedServiceIdentityType { - /** None */ - None = "None", - /** SystemAssigned */ - SystemAssigned = "SystemAssigned", - /** UserAssigned */ - UserAssigned = "UserAssigned", - /** SystemAssigned,UserAssigned */ - "SystemAssigned,UserAssigned" = "SystemAssigned,UserAssigned", -} - -/** - * Type of managed service identity (where both SystemAssigned and UserAssigned types are allowed). \ - * {@link KnownManagedServiceIdentityType} can be used interchangeably with ManagedServiceIdentityType, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **None** \ - * **SystemAssigned** \ - * **UserAssigned** \ - * **SystemAssigned,UserAssigned** - */ -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; -} - -export function userAssignedIdentitySerializer(item: UserAssignedIdentity) { - return item as any; -} - -/** Plan for the resource. */ -export interface Plan { - /** A user defined name of the 3rd Party Artifact that is being procured. */ - name: string; - /** The publisher of the 3rd Party Artifact that is being bought. E.g. NewRelic */ - publisher: string; - /** The 3rd Party artifact that is being procured. E.g. NewRelic. Product maps to the OfferID specified for the artifact at the time of Data Market onboarding. */ - product: string; - /** A publisher provided promotion code as provisioned in Data Market for the said product/artifact. */ - promotionCode?: string; - /** The version of the desired product/artifact. */ - version?: string; -} - -export function planSerializer(item: Plan): PlanRest { - return { - name: item["name"], - publisher: item["publisher"], - product: item["product"], - promotionCode: item["promotionCode"], - version: item["version"], - }; -} - -/** Common error response for all Azure Resource Manager APIs to return error details for failed operations. */ -export interface ErrorResponse { - /** The error object. */ - error?: ErrorDetail; -} - -/** 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[]; -} - -/** The resource management error additional info. */ -export interface ErrorAdditionalInfo { - /** The additional info type. */ - readonly type?: string; - /** The additional info. */ - readonly info?: Record; -} - -/** Fleet Update Model */ -export interface FleetUpdate { - /** Resource tags. */ - tags?: Record; - /** Updatable managed service identity */ - identity?: ManagedServiceIdentityUpdate; - /** Updatable resource plan */ - plan?: ResourcePlanUpdate; - /** RP-specific updatable properties */ - properties?: FleetProperties; -} - -export function fleetUpdateSerializer(item: FleetUpdate): FleetUpdateRest { - return { - tags: !item.tags ? item.tags : (serializeRecord(item.tags as any) as any), - identity: !item.identity - ? item.identity - : managedServiceIdentityUpdateSerializer(item.identity), - plan: !item.plan ? item.plan : resourcePlanUpdateSerializer(item.plan), - properties: !item.properties ? item.properties : fleetPropertiesSerializer(item.properties), - }; -} - -/** The template for adding optional properties. */ -export interface ManagedServiceIdentityUpdate { - /** The type of managed identity assigned to this resource. */ - type?: ManagedServiceIdentityType; - /** The identities assigned to this resource by the user. */ - userAssignedIdentities?: Record; -} - -export function managedServiceIdentityUpdateSerializer( - item: ManagedServiceIdentityUpdate, -): ManagedServiceIdentityUpdateRest { - return { - type: item["type"], - userAssignedIdentities: !item.userAssignedIdentities - ? item.userAssignedIdentities - : (serializeRecord( - item.userAssignedIdentities as any, - userAssignedIdentitySerializer, - ) as any), - }; -} - -/** The template for adding optional properties. */ -export interface ResourcePlanUpdate { - /** A user defined name of the 3rd Party Artifact that is being procured. */ - name?: string; - /** The publisher of the 3rd Party Artifact that is being bought. E.g. NewRelic */ - publisher?: string; - /** The 3rd Party artifact that is being procured. E.g. NewRelic. Product maps to the OfferID specified for the artifact at the time of Data Market onboarding. */ - product?: string; - /** A publisher provided promotion code as provisioned in Data Market for the said product/artifact. */ - promotionCode?: string; - /** The version of the desired product/artifact. */ - version?: string; -} - -export function resourcePlanUpdateSerializer(item: ResourcePlanUpdate): ResourcePlanUpdateRest { - return { - name: item["name"], - publisher: item["publisher"], - product: item["product"], - promotionCode: item["promotionCode"], - version: item["version"], - }; -} - -/** The response of a Fleet list operation. */ -export interface _FleetListResult { - /** The Fleet items on this page */ - value: Fleet[]; - /** The link to the next page of items */ - nextLink?: string; -} - -/** The response of a VirtualMachineScaleSet list operation. */ -export interface _VirtualMachineScaleSetListResult { - /** The VirtualMachineScaleSet items on this page */ - value: VirtualMachineScaleSet[]; - /** The link to the next page of items */ - nextLink?: string; -} - -/** An AzureFleet's virtualMachineScaleSet */ -export interface VirtualMachineScaleSet { - /** - * The compute RP resource id of the virtualMachineScaleSet - * "subscriptions/{subId}/resourceGroups/{rgName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmssName}" - */ - readonly id: string; - /** Type of the virtualMachineScaleSet */ - readonly type?: string; - /** This represents the operationStatus of the VMSS in response to the last operation that was performed on it by Azure Fleet resource. */ - readonly operationStatus: ProvisioningState; - /** Error Information when `operationStatus` is `Failed` */ - readonly error?: ApiError; -} - -/** ApiError for Fleet */ -export interface ApiError { - /** The error code. */ - code?: string; - /** The target of the particular error. */ - target?: string; - /** The error message. */ - message?: string; - /** The API error details */ - details?: ApiErrorBase[]; - /** The API inner error */ - innererror?: InnerError; -} - -/** API error base. */ -export interface ApiErrorBase { - /** The error code. */ - code?: string; - /** The target of the particular error. */ - target?: string; - /** The error message. */ - message?: string; -} - -/** Inner error details. */ -export interface InnerError { - /** The exception type. */ - exceptionType?: string; - /** The internal error message or exception dump. */ - errorDetail?: string; -} - -/** 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; -} - -/** 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; -} - -/** 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; -} - -/** Known values of {@link Origin} that the service accepts. */ -export enum KnownOrigin { - /** user */ - user = "user", - /** system */ - system = "system", - /** user,system */ - "user,system" = "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** \ - * **system** \ - * **user,system** - */ -export type Origin = string; - -/** Known values of {@link ActionType} that the service accepts. */ -export enum KnownActionType { - /** Internal */ - 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** - */ -export type ActionType = string; -/** Api versions */ -export type Versions = "2023-11-01-preview" | "2024-05-01-preview"; -/** Alias for ProvisioningState */ -export type ProvisioningState = - | string - | ResourceProvisioningState - | "Creating" - | "Updating" - | "Deleting" - | "Migrating"; diff --git a/sdk/computefleet/arm-computefleet/src/models/options.ts b/sdk/computefleet/arm-computefleet/src/models/options.ts deleted file mode 100644 index dd7561d6f94e..000000000000 --- a/sdk/computefleet/arm-computefleet/src/models/options.ts +++ /dev/null @@ -1,37 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT license. - -import { OperationOptions } from "@azure-rest/core-client"; - -/** Optional parameters. */ -export interface OperationsListOptionalParams extends OperationOptions {} - -/** Optional parameters. */ -export interface FleetsGetOptionalParams extends OperationOptions {} - -/** Optional parameters. */ -export interface FleetsCreateOrUpdateOptionalParams extends OperationOptions { - /** Delay to wait until next poll, in milliseconds. */ - updateIntervalInMs?: number; -} - -/** Optional parameters. */ -export interface FleetsUpdateOptionalParams extends OperationOptions { - /** Delay to wait until next poll, in milliseconds. */ - updateIntervalInMs?: number; -} - -/** Optional parameters. */ -export interface FleetsDeleteOptionalParams 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 {} diff --git a/sdk/computefleet/arm-computefleet/src/models/pagingTypes.ts b/sdk/computefleet/arm-computefleet/src/models/pagingTypes.ts deleted file mode 100644 index d37f9ed95c4e..000000000000 --- a/sdk/computefleet/arm-computefleet/src/models/pagingTypes.ts +++ /dev/null @@ -1,79 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT license. - -/** - * Options for the byPage method - */ -export interface PageSettings { - /** - * A reference to a specific page to start iterating from. - */ - continuationToken?: string; -} - -/** - * An interface that describes a page of results. - */ -export type ContinuablePage = TPage & { - /** - * The token that keeps track of where to continue the iterator - */ - continuationToken?: string; -}; - -/** - * An interface that allows async iterable iteration both to completion and by page. - */ -export interface PagedAsyncIterableIterator< - TElement, - TPage = TElement[], - TPageSettings extends PageSettings = PageSettings, -> { - /** - * The next method, part of the iteration protocol - */ - next(): Promise>; - /** - * The connection to the async iterator, part of the iteration protocol - */ - [Symbol.asyncIterator](): PagedAsyncIterableIterator; - /** - * Return an AsyncIterableIterator that works a page at a time - */ - byPage: (settings?: TPageSettings) => AsyncIterableIterator>; -} - -/** - * An interface that describes how to communicate with the service. - */ -export interface PagedResult< - TElement, - TPage = TElement[], - TPageSettings extends PageSettings = PageSettings, -> { - /** - * Link to the first page of results. - */ - firstPageLink?: string; - /** - * A method that returns a page of results. - */ - getPage: (pageLink?: string) => Promise<{ page: TPage; nextPageLink?: string } | undefined>; - /** - * a function to implement the `byPage` method on the paged async iterator. - */ - byPage?: (settings?: TPageSettings) => AsyncIterableIterator>; - - /** - * A function to extract elements from a page. - */ - toElements?: (page: TPage) => TElement[]; -} - -/** - * Options for the paging helper - */ -export interface BuildPagedAsyncIteratorOptions { - itemName?: string; - nextLinkName?: string; -} diff --git a/sdk/computefleet/arm-computefleet/src/models/parameters.ts b/sdk/computefleet/arm-computefleet/src/models/parameters.ts new file mode 100644 index 000000000000..d56e307f2724 --- /dev/null +++ b/sdk/computefleet/arm-computefleet/src/models/parameters.ts @@ -0,0 +1,141 @@ +/* + * 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 { + OperationParameter, + OperationURLParameter, + OperationQueryParameter, +} from "@azure/core-client"; +import { + Fleet as FleetMapper, + FleetUpdate as FleetUpdateMapper, +} from "../models/mappers"; + +export const accept: OperationParameter = { + parameterPath: "accept", + mapper: { + defaultValue: "application/json", + isConstant: true, + serializedName: "Accept", + type: { + name: "String", + }, + }, +}; + +export const $host: OperationURLParameter = { + parameterPath: "$host", + mapper: { + serializedName: "$host", + required: true, + type: { + name: "String", + }, + }, + skipEncoding: true, +}; + +export const apiVersion: OperationQueryParameter = { + parameterPath: "apiVersion", + mapper: { + defaultValue: "2024-05-01-preview", + isConstant: true, + serializedName: "api-version", + type: { + name: "String", + }, + }, +}; + +export const nextLink: OperationURLParameter = { + parameterPath: "nextLink", + mapper: { + serializedName: "nextLink", + required: true, + type: { + name: "String", + }, + }, + skipEncoding: true, +}; + +export const subscriptionId: OperationURLParameter = { + parameterPath: "subscriptionId", + mapper: { + serializedName: "subscriptionId", + required: true, + type: { + name: "Uuid", + }, + }, +}; + +export const resourceGroupName: OperationURLParameter = { + parameterPath: "resourceGroupName", + mapper: { + constraints: { + MaxLength: 90, + MinLength: 1, + }, + serializedName: "resourceGroupName", + required: true, + type: { + name: "String", + }, + }, +}; + +export const fleetName: OperationURLParameter = { + parameterPath: "fleetName", + mapper: { + constraints: { + Pattern: new RegExp("^[^_\\W][\\w-._]{0,79}(? +/** Class containing Fleets operations. */ +export class FleetsImpl implements Fleets { + private readonly client: MicrosoftAzureFleetForTesting; + + /** + * Initialize a new instance of the class Fleets class. + * @param client Reference to the service client + */ + constructor(client: MicrosoftAzureFleetForTesting) { + this.client = client; + } + + /** + * List Fleet resources by subscription ID + * @param options The options parameters. + */ + public listBySubscription( + options?: FleetsListBySubscriptionOptionalParams, + ): PagedAsyncIterableIterator { + const iter = this.listBySubscriptionPagingAll(options); + return { + next() { + return iter.next(); + }, + [Symbol.asyncIterator]() { + return this; + }, + byPage: (settings?: PageSettings) => { + if (settings?.maxPageSize) { + throw new Error("maxPageSize is not supported by this operation."); + } + return this.listBySubscriptionPagingPage(options, settings); + }, + }; + } + + private async *listBySubscriptionPagingPage( + options?: FleetsListBySubscriptionOptionalParams, + settings?: PageSettings, + ): AsyncIterableIterator { + let result: FleetsListBySubscriptionResponse; + let continuationToken = settings?.continuationToken; + if (!continuationToken) { + result = await this._listBySubscription(options); + let page = result.value || []; + continuationToken = result.nextLink; + setContinuationToken(page, continuationToken); + yield page; + } + while (continuationToken) { + result = await this._listBySubscriptionNext(continuationToken, options); + continuationToken = result.nextLink; + let page = result.value || []; + setContinuationToken(page, continuationToken); + yield page; + } + } + + private async *listBySubscriptionPagingAll( + options?: FleetsListBySubscriptionOptionalParams, + ): AsyncIterableIterator { + for await (const page of this.listBySubscriptionPagingPage(options)) { + yield* page; + } + } + + /** + * List Fleet resources by resource group + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param options The options parameters. + */ + public listByResourceGroup( + resourceGroupName: string, + options?: FleetsListByResourceGroupOptionalParams, + ): PagedAsyncIterableIterator { + const iter = this.listByResourceGroupPagingAll(resourceGroupName, options); + return { + next() { + return iter.next(); + }, + [Symbol.asyncIterator]() { + return this; + }, + byPage: (settings?: PageSettings) => { + if (settings?.maxPageSize) { + throw new Error("maxPageSize is not supported by this operation."); + } + return this.listByResourceGroupPagingPage( + resourceGroupName, + options, + settings, + ); + }, + }; + } + + private async *listByResourceGroupPagingPage( + resourceGroupName: string, + options?: FleetsListByResourceGroupOptionalParams, + settings?: PageSettings, + ): AsyncIterableIterator { + let result: FleetsListByResourceGroupResponse; + let continuationToken = settings?.continuationToken; + if (!continuationToken) { + result = await this._listByResourceGroup(resourceGroupName, options); + let page = result.value || []; + continuationToken = result.nextLink; + setContinuationToken(page, continuationToken); + yield page; + } + while (continuationToken) { + result = await this._listByResourceGroupNext( + resourceGroupName, + continuationToken, + options, + ); + continuationToken = result.nextLink; + let page = result.value || []; + setContinuationToken(page, continuationToken); + yield page; + } + } + + private async *listByResourceGroupPagingAll( + resourceGroupName: string, + options?: FleetsListByResourceGroupOptionalParams, + ): AsyncIterableIterator { + for await (const page of this.listByResourceGroupPagingPage( + resourceGroupName, + options, + )) { + yield* page; + } + } + + /** + * List VirtualMachineScaleSet resources by Fleet + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param name The name of the Fleet + * @param options The options parameters. + */ + public listVirtualMachineScaleSets( + resourceGroupName: string, + name: string, + options?: FleetsListVirtualMachineScaleSetsOptionalParams, + ): PagedAsyncIterableIterator { + const iter = this.listVirtualMachineScaleSetsPagingAll( + resourceGroupName, + name, + options, + ); + return { + next() { + return iter.next(); + }, + [Symbol.asyncIterator]() { + return this; + }, + byPage: (settings?: PageSettings) => { + if (settings?.maxPageSize) { + throw new Error("maxPageSize is not supported by this operation."); + } + return this.listVirtualMachineScaleSetsPagingPage( + resourceGroupName, + name, + options, + settings, + ); + }, + }; + } + + private async *listVirtualMachineScaleSetsPagingPage( + resourceGroupName: string, + name: string, + options?: FleetsListVirtualMachineScaleSetsOptionalParams, + settings?: PageSettings, + ): AsyncIterableIterator { + let result: FleetsListVirtualMachineScaleSetsResponse; + let continuationToken = settings?.continuationToken; + if (!continuationToken) { + result = await this._listVirtualMachineScaleSets( + resourceGroupName, + name, + options, + ); + let page = result.value || []; + continuationToken = result.nextLink; + setContinuationToken(page, continuationToken); + yield page; + } + while (continuationToken) { + result = await this._listVirtualMachineScaleSetsNext( + resourceGroupName, + name, + continuationToken, + options, + ); + continuationToken = result.nextLink; + let page = result.value || []; + setContinuationToken(page, continuationToken); + yield page; + } + } + + private async *listVirtualMachineScaleSetsPagingAll( + resourceGroupName: string, + name: string, + options?: FleetsListVirtualMachineScaleSetsOptionalParams, + ): AsyncIterableIterator { + for await (const page of this.listVirtualMachineScaleSetsPagingPage( + resourceGroupName, + name, + options, + )) { + yield* page; + } + } + + /** + * List Fleet resources by subscription ID + * @param options The options parameters. + */ + private _listBySubscription( + options?: FleetsListBySubscriptionOptionalParams, + ): Promise { + return this.client.sendOperationRequest( + { options }, + listBySubscriptionOperationSpec, + ); + } + + /** + * List Fleet resources by resource group + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param options The options parameters. + */ + private _listByResourceGroup( + resourceGroupName: string, + options?: FleetsListByResourceGroupOptionalParams, + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, options }, + listByResourceGroupOperationSpec, + ); + } + + /** + * Get a Fleet + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param fleetName The name of the Compute Fleet + * @param options The options parameters. + */ + get( + resourceGroupName: string, + fleetName: string, + options?: FleetsGetOptionalParams, + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, fleetName, options }, + getOperationSpec, + ); + } + + /** + * Create a Fleet + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param fleetName The name of the Compute Fleet + * @param resource Resource create parameters. + * @param options The options parameters. + */ + async beginCreateOrUpdate( + resourceGroupName: string, + fleetName: string, + resource: Fleet, + options?: FleetsCreateOrUpdateOptionalParams, + ): Promise< + SimplePollerLike< + OperationState, + FleetsCreateOrUpdateResponse + > + > { + const directSendOperation = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec, + ): Promise => { + return this.client.sendOperationRequest(args, spec); + }; + const sendOperationFn = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec, + ) => { + let currentRawResponse: coreClient.FullOperationResponse | undefined = + undefined; + const providedCallback = args.options?.onResponse; + const callback: coreClient.RawResponseCallback = ( + rawResponse: coreClient.FullOperationResponse, + flatResponse: unknown, + ) => { + currentRawResponse = rawResponse; + providedCallback?.(rawResponse, flatResponse); + }; + const updatedArgs = { + ...args, + options: { + ...args.options, + onResponse: callback, + }, + }; + const flatResponse = await directSendOperation(updatedArgs, spec); + return { + flatResponse, + rawResponse: { + statusCode: currentRawResponse!.status, + body: currentRawResponse!.parsedBody, + headers: currentRawResponse!.headers.toJSON(), + }, + }; + }; + + const lro = createLroSpec({ + sendOperationFn, + args: { resourceGroupName, fleetName, resource, options }, + spec: createOrUpdateOperationSpec, + }); + const poller = await createHttpPoller< + FleetsCreateOrUpdateResponse, + OperationState + >(lro, { + restoreFrom: options?.resumeFrom, + intervalInMs: options?.updateIntervalInMs, + resourceLocationConfig: "azure-async-operation", + }); + await poller.poll(); + return poller; + } + + /** + * Create a Fleet + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param fleetName The name of the Compute Fleet + * @param resource Resource create parameters. + * @param options The options parameters. + */ + async beginCreateOrUpdateAndWait( + resourceGroupName: string, + fleetName: string, + resource: Fleet, + options?: FleetsCreateOrUpdateOptionalParams, + ): Promise { + const poller = await this.beginCreateOrUpdate( + resourceGroupName, + fleetName, + resource, + options, + ); + return poller.pollUntilDone(); + } + + /** + * Update a Fleet + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param fleetName The name of the Compute Fleet + * @param properties The resource properties to be updated. + * @param options The options parameters. + */ + async beginUpdate( + resourceGroupName: string, + fleetName: string, + properties: FleetUpdate, + options?: FleetsUpdateOptionalParams, + ): Promise< + SimplePollerLike, FleetsUpdateResponse> + > { + const directSendOperation = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec, + ): Promise => { + return this.client.sendOperationRequest(args, spec); + }; + const sendOperationFn = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec, + ) => { + let currentRawResponse: coreClient.FullOperationResponse | undefined = + undefined; + const providedCallback = args.options?.onResponse; + const callback: coreClient.RawResponseCallback = ( + rawResponse: coreClient.FullOperationResponse, + flatResponse: unknown, + ) => { + currentRawResponse = rawResponse; + providedCallback?.(rawResponse, flatResponse); + }; + const updatedArgs = { + ...args, + options: { + ...args.options, + onResponse: callback, + }, + }; + const flatResponse = await directSendOperation(updatedArgs, spec); + return { + flatResponse, + rawResponse: { + statusCode: currentRawResponse!.status, + body: currentRawResponse!.parsedBody, + headers: currentRawResponse!.headers.toJSON(), + }, + }; + }; + + const lro = createLroSpec({ + sendOperationFn, + args: { resourceGroupName, fleetName, properties, options }, + spec: updateOperationSpec, + }); + const poller = await createHttpPoller< + FleetsUpdateResponse, + OperationState + >(lro, { + restoreFrom: options?.resumeFrom, + intervalInMs: options?.updateIntervalInMs, + resourceLocationConfig: "location", + }); + await poller.poll(); + return poller; + } + + /** + * Update a Fleet + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param fleetName The name of the Compute Fleet + * @param properties The resource properties to be updated. + * @param options The options parameters. + */ + async beginUpdateAndWait( + resourceGroupName: string, + fleetName: string, + properties: FleetUpdate, + options?: FleetsUpdateOptionalParams, + ): Promise { + const poller = await this.beginUpdate( + resourceGroupName, + fleetName, + properties, + options, + ); + return poller.pollUntilDone(); + } + + /** + * Delete a Fleet + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param fleetName The name of the Compute Fleet + * @param options The options parameters. + */ + async beginDelete( + resourceGroupName: string, + fleetName: string, + options?: FleetsDeleteOptionalParams, + ): Promise< + SimplePollerLike, FleetsDeleteResponse> + > { + const directSendOperation = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec, + ): Promise => { + return this.client.sendOperationRequest(args, spec); + }; + const sendOperationFn = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec, + ) => { + let currentRawResponse: coreClient.FullOperationResponse | undefined = + undefined; + const providedCallback = args.options?.onResponse; + const callback: coreClient.RawResponseCallback = ( + rawResponse: coreClient.FullOperationResponse, + flatResponse: unknown, + ) => { + currentRawResponse = rawResponse; + providedCallback?.(rawResponse, flatResponse); + }; + const updatedArgs = { + ...args, + options: { + ...args.options, + onResponse: callback, + }, + }; + const flatResponse = await directSendOperation(updatedArgs, spec); + return { + flatResponse, + rawResponse: { + statusCode: currentRawResponse!.status, + body: currentRawResponse!.parsedBody, + headers: currentRawResponse!.headers.toJSON(), + }, + }; + }; + + const lro = createLroSpec({ + sendOperationFn, + args: { resourceGroupName, fleetName, options }, + spec: deleteOperationSpec, + }); + const poller = await createHttpPoller< + FleetsDeleteResponse, + OperationState + >(lro, { + restoreFrom: options?.resumeFrom, + intervalInMs: options?.updateIntervalInMs, + resourceLocationConfig: "location", + }); + await poller.poll(); + return poller; + } + + /** + * Delete a Fleet + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param fleetName The name of the Compute Fleet + * @param options The options parameters. + */ + async beginDeleteAndWait( + resourceGroupName: string, + fleetName: string, + options?: FleetsDeleteOptionalParams, + ): Promise { + const poller = await this.beginDelete( + resourceGroupName, + fleetName, + options, + ); + return poller.pollUntilDone(); + } + + /** + * List VirtualMachineScaleSet resources by Fleet + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param name The name of the Fleet + * @param options The options parameters. + */ + private _listVirtualMachineScaleSets( + resourceGroupName: string, + name: string, + options?: FleetsListVirtualMachineScaleSetsOptionalParams, + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, name, options }, + listVirtualMachineScaleSetsOperationSpec, + ); + } + + /** + * ListBySubscriptionNext + * @param nextLink The nextLink from the previous successful call to the ListBySubscription method. + * @param options The options parameters. + */ + private _listBySubscriptionNext( + nextLink: string, + options?: FleetsListBySubscriptionNextOptionalParams, + ): Promise { + return this.client.sendOperationRequest( + { nextLink, options }, + listBySubscriptionNextOperationSpec, + ); + } + + /** + * ListByResourceGroupNext + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param nextLink The nextLink from the previous successful call to the ListByResourceGroup method. + * @param options The options parameters. + */ + private _listByResourceGroupNext( + resourceGroupName: string, + nextLink: string, + options?: FleetsListByResourceGroupNextOptionalParams, + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, nextLink, options }, + listByResourceGroupNextOperationSpec, + ); + } + + /** + * ListVirtualMachineScaleSetsNext + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param name The name of the Fleet + * @param nextLink The nextLink from the previous successful call to the ListVirtualMachineScaleSets + * method. + * @param options The options parameters. + */ + private _listVirtualMachineScaleSetsNext( + resourceGroupName: string, + name: string, + nextLink: string, + options?: FleetsListVirtualMachineScaleSetsNextOptionalParams, + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, name, nextLink, options }, + listVirtualMachineScaleSetsNextOperationSpec, + ); + } +} +// Operation Specifications +const serializer = coreClient.createSerializer(Mappers, /* isXml */ false); + +const listBySubscriptionOperationSpec: coreClient.OperationSpec = { + path: "/subscriptions/{subscriptionId}/providers/Microsoft.AzureFleet/fleets", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.FleetListResult, + }, + default: { + bodyMapper: Mappers.ErrorResponse, + }, + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [Parameters.$host, Parameters.subscriptionId], + headerParameters: [Parameters.accept], + serializer, +}; +const listByResourceGroupOperationSpec: coreClient.OperationSpec = { + path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureFleet/fleets", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.FleetListResult, + }, + default: { + bodyMapper: Mappers.ErrorResponse, + }, + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + ], + headerParameters: [Parameters.accept], + serializer, +}; +const getOperationSpec: coreClient.OperationSpec = { + path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureFleet/fleets/{fleetName}", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.Fleet, + }, + default: { + bodyMapper: Mappers.ErrorResponse, + }, + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.fleetName, + ], + headerParameters: [Parameters.accept], + serializer, +}; +const createOrUpdateOperationSpec: coreClient.OperationSpec = { + path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureFleet/fleets/{fleetName}", + httpMethod: "PUT", + responses: { + 200: { + bodyMapper: Mappers.Fleet, + }, + 201: { + bodyMapper: Mappers.Fleet, + }, + 202: { + bodyMapper: Mappers.Fleet, + }, + 204: { + bodyMapper: Mappers.Fleet, + }, + default: { + bodyMapper: Mappers.ErrorResponse, + }, + }, + requestBody: Parameters.resource, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.fleetName, + ], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", + serializer, +}; +const updateOperationSpec: coreClient.OperationSpec = { + path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureFleet/fleets/{fleetName}", + httpMethod: "PATCH", + responses: { + 200: { + bodyMapper: Mappers.Fleet, + }, + 201: { + bodyMapper: Mappers.Fleet, + }, + 202: { + bodyMapper: Mappers.Fleet, + }, + 204: { + bodyMapper: Mappers.Fleet, + }, + default: { + bodyMapper: Mappers.ErrorResponse, + }, + }, + requestBody: Parameters.properties, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.fleetName, + ], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", + serializer, +}; +const deleteOperationSpec: coreClient.OperationSpec = { + path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureFleet/fleets/{fleetName}", + httpMethod: "DELETE", + responses: { + 200: { + headersMapper: Mappers.FleetsDeleteHeaders, + }, + 201: { + headersMapper: Mappers.FleetsDeleteHeaders, + }, + 202: { + headersMapper: Mappers.FleetsDeleteHeaders, + }, + 204: { + headersMapper: Mappers.FleetsDeleteHeaders, + }, + default: { + bodyMapper: Mappers.ErrorResponse, + }, + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.fleetName, + ], + headerParameters: [Parameters.accept], + serializer, +}; +const listVirtualMachineScaleSetsOperationSpec: coreClient.OperationSpec = { + path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureFleet/fleets/{name}/virtualMachineScaleSets", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.VirtualMachineScaleSetListResult, + }, + default: { + bodyMapper: Mappers.ErrorResponse, + }, + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.name, + ], + headerParameters: [Parameters.accept], + serializer, +}; +const listBySubscriptionNextOperationSpec: coreClient.OperationSpec = { + path: "{nextLink}", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.FleetListResult, + }, + default: { + bodyMapper: Mappers.ErrorResponse, + }, + }, + urlParameters: [ + Parameters.$host, + Parameters.nextLink, + Parameters.subscriptionId, + ], + headerParameters: [Parameters.accept], + serializer, +}; +const listByResourceGroupNextOperationSpec: coreClient.OperationSpec = { + path: "{nextLink}", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.FleetListResult, + }, + default: { + bodyMapper: Mappers.ErrorResponse, + }, + }, + urlParameters: [ + Parameters.$host, + Parameters.nextLink, + Parameters.subscriptionId, + Parameters.resourceGroupName, + ], + headerParameters: [Parameters.accept], + serializer, +}; +const listVirtualMachineScaleSetsNextOperationSpec: coreClient.OperationSpec = { + path: "{nextLink}", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.VirtualMachineScaleSetListResult, + }, + default: { + bodyMapper: Mappers.ErrorResponse, + }, + }, + urlParameters: [ + Parameters.$host, + Parameters.nextLink, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.name, + ], + headerParameters: [Parameters.accept], + serializer, +}; diff --git a/sdk/computefleet/arm-computefleet/src/operations/index.ts b/sdk/computefleet/arm-computefleet/src/operations/index.ts new file mode 100644 index 000000000000..c7b44a699afe --- /dev/null +++ b/sdk/computefleet/arm-computefleet/src/operations/index.ts @@ -0,0 +1,10 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +export * from "./operations"; +export * from "./fleets"; diff --git a/sdk/computefleet/arm-computefleet/src/operations/operations.ts b/sdk/computefleet/arm-computefleet/src/operations/operations.ts new file mode 100644 index 000000000000..e467fc537d31 --- /dev/null +++ b/sdk/computefleet/arm-computefleet/src/operations/operations.ts @@ -0,0 +1,149 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +import { PagedAsyncIterableIterator, PageSettings } from "@azure/core-paging"; +import { setContinuationToken } from "../pagingHelper"; +import { Operations } from "../operationsInterfaces"; +import * as coreClient from "@azure/core-client"; +import * as Mappers from "../models/mappers"; +import * as Parameters from "../models/parameters"; +import { MicrosoftAzureFleetForTesting } from "../microsoftAzureFleetForTesting"; +import { + Operation, + OperationsListNextOptionalParams, + OperationsListOptionalParams, + OperationsListResponse, + OperationsListNextResponse, +} from "../models"; + +/// +/** Class containing Operations operations. */ +export class OperationsImpl implements Operations { + private readonly client: MicrosoftAzureFleetForTesting; + + /** + * Initialize a new instance of the class Operations class. + * @param client Reference to the service client + */ + constructor(client: MicrosoftAzureFleetForTesting) { + this.client = client; + } + + /** + * List the operations for the provider + * @param options The options parameters. + */ + public list( + options?: OperationsListOptionalParams, + ): PagedAsyncIterableIterator { + const iter = this.listPagingAll(options); + return { + next() { + return iter.next(); + }, + [Symbol.asyncIterator]() { + return this; + }, + byPage: (settings?: PageSettings) => { + if (settings?.maxPageSize) { + throw new Error("maxPageSize is not supported by this operation."); + } + return this.listPagingPage(options, settings); + }, + }; + } + + private async *listPagingPage( + options?: OperationsListOptionalParams, + settings?: PageSettings, + ): AsyncIterableIterator { + let result: OperationsListResponse; + let continuationToken = settings?.continuationToken; + if (!continuationToken) { + result = await this._list(options); + let page = result.value || []; + continuationToken = result.nextLink; + setContinuationToken(page, continuationToken); + yield page; + } + while (continuationToken) { + result = await this._listNext(continuationToken, options); + continuationToken = result.nextLink; + let page = result.value || []; + setContinuationToken(page, continuationToken); + yield page; + } + } + + private async *listPagingAll( + options?: OperationsListOptionalParams, + ): AsyncIterableIterator { + for await (const page of this.listPagingPage(options)) { + yield* page; + } + } + + /** + * List the operations for the provider + * @param options The options parameters. + */ + private _list( + options?: OperationsListOptionalParams, + ): Promise { + return this.client.sendOperationRequest({ options }, listOperationSpec); + } + + /** + * ListNext + * @param nextLink The nextLink from the previous successful call to the List method. + * @param options The options parameters. + */ + private _listNext( + nextLink: string, + options?: OperationsListNextOptionalParams, + ): Promise { + return this.client.sendOperationRequest( + { nextLink, options }, + listNextOperationSpec, + ); + } +} +// Operation Specifications +const serializer = coreClient.createSerializer(Mappers, /* isXml */ false); + +const listOperationSpec: coreClient.OperationSpec = { + path: "/providers/Microsoft.AzureFleet/operations", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.OperationListResult, + }, + default: { + bodyMapper: Mappers.ErrorResponse, + }, + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [Parameters.$host], + headerParameters: [Parameters.accept], + serializer, +}; +const listNextOperationSpec: coreClient.OperationSpec = { + path: "{nextLink}", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.OperationListResult, + }, + default: { + bodyMapper: Mappers.ErrorResponse, + }, + }, + urlParameters: [Parameters.$host, Parameters.nextLink], + headerParameters: [Parameters.accept], + serializer, +}; diff --git a/sdk/computefleet/arm-computefleet/src/operationsInterfaces/fleets.ts b/sdk/computefleet/arm-computefleet/src/operationsInterfaces/fleets.ts new file mode 100644 index 000000000000..8b99b1e51df9 --- /dev/null +++ b/sdk/computefleet/arm-computefleet/src/operationsInterfaces/fleets.ts @@ -0,0 +1,152 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +import { PagedAsyncIterableIterator } from "@azure/core-paging"; +import { SimplePollerLike, OperationState } from "@azure/core-lro"; +import { + Fleet, + FleetsListBySubscriptionOptionalParams, + FleetsListByResourceGroupOptionalParams, + VirtualMachineScaleSet, + FleetsListVirtualMachineScaleSetsOptionalParams, + FleetsGetOptionalParams, + FleetsGetResponse, + FleetsCreateOrUpdateOptionalParams, + FleetsCreateOrUpdateResponse, + FleetUpdate, + FleetsUpdateOptionalParams, + FleetsUpdateResponse, + FleetsDeleteOptionalParams, + FleetsDeleteResponse, +} from "../models"; + +/// +/** Interface representing a Fleets. */ +export interface Fleets { + /** + * List Fleet resources by subscription ID + * @param options The options parameters. + */ + listBySubscription( + options?: FleetsListBySubscriptionOptionalParams, + ): PagedAsyncIterableIterator; + /** + * List Fleet resources by resource group + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param options The options parameters. + */ + listByResourceGroup( + resourceGroupName: string, + options?: FleetsListByResourceGroupOptionalParams, + ): PagedAsyncIterableIterator; + /** + * List VirtualMachineScaleSet resources by Fleet + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param name The name of the Fleet + * @param options The options parameters. + */ + listVirtualMachineScaleSets( + resourceGroupName: string, + name: string, + options?: FleetsListVirtualMachineScaleSetsOptionalParams, + ): PagedAsyncIterableIterator; + /** + * Get a Fleet + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param fleetName The name of the Compute Fleet + * @param options The options parameters. + */ + get( + resourceGroupName: string, + fleetName: string, + options?: FleetsGetOptionalParams, + ): Promise; + /** + * Create a Fleet + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param fleetName The name of the Compute Fleet + * @param resource Resource create parameters. + * @param options The options parameters. + */ + beginCreateOrUpdate( + resourceGroupName: string, + fleetName: string, + resource: Fleet, + options?: FleetsCreateOrUpdateOptionalParams, + ): Promise< + SimplePollerLike< + OperationState, + FleetsCreateOrUpdateResponse + > + >; + /** + * Create a Fleet + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param fleetName The name of the Compute Fleet + * @param resource Resource create parameters. + * @param options The options parameters. + */ + beginCreateOrUpdateAndWait( + resourceGroupName: string, + fleetName: string, + resource: Fleet, + options?: FleetsCreateOrUpdateOptionalParams, + ): Promise; + /** + * Update a Fleet + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param fleetName The name of the Compute Fleet + * @param properties The resource properties to be updated. + * @param options The options parameters. + */ + beginUpdate( + resourceGroupName: string, + fleetName: string, + properties: FleetUpdate, + options?: FleetsUpdateOptionalParams, + ): Promise< + SimplePollerLike, FleetsUpdateResponse> + >; + /** + * Update a Fleet + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param fleetName The name of the Compute Fleet + * @param properties The resource properties to be updated. + * @param options The options parameters. + */ + beginUpdateAndWait( + resourceGroupName: string, + fleetName: string, + properties: FleetUpdate, + options?: FleetsUpdateOptionalParams, + ): Promise; + /** + * Delete a Fleet + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param fleetName The name of the Compute Fleet + * @param options The options parameters. + */ + beginDelete( + resourceGroupName: string, + fleetName: string, + options?: FleetsDeleteOptionalParams, + ): Promise< + SimplePollerLike, FleetsDeleteResponse> + >; + /** + * Delete a Fleet + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param fleetName The name of the Compute Fleet + * @param options The options parameters. + */ + beginDeleteAndWait( + resourceGroupName: string, + fleetName: string, + options?: FleetsDeleteOptionalParams, + ): Promise; +} diff --git a/sdk/computefleet/arm-computefleet/src/operationsInterfaces/index.ts b/sdk/computefleet/arm-computefleet/src/operationsInterfaces/index.ts new file mode 100644 index 000000000000..c7b44a699afe --- /dev/null +++ b/sdk/computefleet/arm-computefleet/src/operationsInterfaces/index.ts @@ -0,0 +1,10 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +export * from "./operations"; +export * from "./fleets"; diff --git a/sdk/computefleet/arm-computefleet/src/operationsInterfaces/operations.ts b/sdk/computefleet/arm-computefleet/src/operationsInterfaces/operations.ts new file mode 100644 index 000000000000..251f5f582e64 --- /dev/null +++ b/sdk/computefleet/arm-computefleet/src/operationsInterfaces/operations.ts @@ -0,0 +1,22 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +import { PagedAsyncIterableIterator } from "@azure/core-paging"; +import { Operation, OperationsListOptionalParams } from "../models"; + +/// +/** Interface representing a Operations. */ +export interface Operations { + /** + * List the operations for the provider + * @param options The options parameters. + */ + list( + options?: OperationsListOptionalParams, + ): PagedAsyncIterableIterator; +} diff --git a/sdk/computefleet/arm-computefleet/src/pagingHelper.ts b/sdk/computefleet/arm-computefleet/src/pagingHelper.ts new file mode 100644 index 000000000000..205cccc26592 --- /dev/null +++ b/sdk/computefleet/arm-computefleet/src/pagingHelper.ts @@ -0,0 +1,39 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +export interface PageInfo { + continuationToken?: string; +} + +const pageMap = new WeakMap(); + +/** + * Given the last `.value` produced by the `byPage` iterator, + * returns a continuation token that can be used to begin paging from + * that point later. + * @param page An object from accessing `value` on the IteratorResult from a `byPage` iterator. + * @returns The continuation token that can be passed into byPage() during future calls. + */ +export function getContinuationToken(page: unknown): string | undefined { + if (typeof page !== "object" || page === null) { + return undefined; + } + return pageMap.get(page)?.continuationToken; +} + +export function setContinuationToken( + page: unknown, + continuationToken: string | undefined, +): void { + if (typeof page !== "object" || page === null || !continuationToken) { + return; + } + const pageInfo = pageMap.get(page) ?? {}; + pageInfo.continuationToken = continuationToken; + pageMap.set(page, pageInfo); +} diff --git a/sdk/computefleet/arm-computefleet/src/rest/azureFleetClient.ts b/sdk/computefleet/arm-computefleet/src/rest/azureFleetClient.ts deleted file mode 100644 index bad6a89a813f..000000000000 --- a/sdk/computefleet/arm-computefleet/src/rest/azureFleetClient.ts +++ /dev/null @@ -1,61 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT license. - -import { getClient, ClientOptions } from "@azure-rest/core-client"; -import { logger } from "../logger.js"; -import { TokenCredential } from "@azure/core-auth"; -import { AzureFleetContext } from "./clientDefinitions.js"; - -/** The optional parameters for the client */ -export interface AzureFleetContextOptions extends ClientOptions { - /** The api version option of the client */ - apiVersion?: string; -} - -/** - * Initialize a new instance of `AzureFleetContext` - * @param credentials - uniquely identify client credential - * @param options - the parameter for all optional parameters - */ -export default function createClient( - credentials: TokenCredential, - { apiVersion = "2024-05-01-preview", ...options }: AzureFleetContextOptions = {}, -): AzureFleetContext { - const endpointUrl = options.endpoint ?? options.baseUrl ?? `https://management.azure.com`; - const userAgentInfo = `azsdk-js-arm-computefleet/1.0.0-beta.1`; - const userAgentPrefix = - options.userAgentOptions && options.userAgentOptions.userAgentPrefix - ? `${options.userAgentOptions.userAgentPrefix} ${userAgentInfo}` - : `${userAgentInfo}`; - options = { - ...options, - userAgentOptions: { - userAgentPrefix, - }, - loggingOptions: { - logger: options.loggingOptions?.logger ?? logger.info, - }, - credentials: { - scopes: options.credentials?.scopes ?? [`${endpointUrl}/.default`], - }, - }; - const client = getClient(endpointUrl, credentials, options) as AzureFleetContext; - - client.pipeline.removePolicy({ name: "ApiVersionPolicy" }); - client.pipeline.addPolicy({ - name: "ClientApiVersionPolicy", - sendRequest: (req, next) => { - // Use the apiVersion defined in request url directly - // Append one if there is no apiVersion and we have one at client options - const url = new URL(req.url); - if (!url.searchParams.get("api-version") && apiVersion) { - req.url = `${req.url}${ - Array.from(url.searchParams.keys()).length > 0 ? "&" : "?" - }api-version=${apiVersion}`; - } - - return next(req); - }, - }); - return client; -} diff --git a/sdk/computefleet/arm-computefleet/src/rest/clientDefinitions.ts b/sdk/computefleet/arm-computefleet/src/rest/clientDefinitions.ts deleted file mode 100644 index 34e510db0364..000000000000 --- a/sdk/computefleet/arm-computefleet/src/rest/clientDefinitions.ts +++ /dev/null @@ -1,130 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT license. - -import { - OperationsListParameters, - FleetsGetParameters, - FleetsCreateOrUpdateParameters, - FleetsUpdateParameters, - FleetsDeleteParameters, - FleetsListByResourceGroupParameters, - FleetsListBySubscriptionParameters, - FleetsListVirtualMachineScaleSetsParameters, -} from "./parameters.js"; -import { - OperationsList200Response, - OperationsListDefaultResponse, - FleetsGet200Response, - FleetsGetDefaultResponse, - FleetsCreateOrUpdate200Response, - FleetsCreateOrUpdate201Response, - FleetsCreateOrUpdateDefaultResponse, - FleetsUpdate200Response, - FleetsUpdate202Response, - FleetsUpdateDefaultResponse, - FleetsDelete202Response, - FleetsDelete204Response, - FleetsDeleteDefaultResponse, - FleetsListByResourceGroup200Response, - FleetsListByResourceGroupDefaultResponse, - FleetsListBySubscription200Response, - FleetsListBySubscriptionDefaultResponse, - FleetsListVirtualMachineScaleSets200Response, - FleetsListVirtualMachineScaleSetsDefaultResponse, -} from "./responses.js"; -import { Client, StreamableMethod } from "@azure-rest/core-client"; - -export interface OperationsList { - /** List the operations for the provider */ - get( - options?: OperationsListParameters, - ): StreamableMethod; -} - -export interface FleetsGet { - /** Get a Fleet */ - get( - options?: FleetsGetParameters, - ): StreamableMethod; - /** Create a Fleet */ - put( - options: FleetsCreateOrUpdateParameters, - ): StreamableMethod< - | FleetsCreateOrUpdate200Response - | FleetsCreateOrUpdate201Response - | FleetsCreateOrUpdateDefaultResponse - >; - /** Update a Fleet */ - patch( - options: FleetsUpdateParameters, - ): StreamableMethod< - FleetsUpdate200Response | FleetsUpdate202Response | FleetsUpdateDefaultResponse - >; - /** Delete a Fleet */ - delete( - options?: FleetsDeleteParameters, - ): StreamableMethod< - FleetsDelete202Response | FleetsDelete204Response | FleetsDeleteDefaultResponse - >; -} - -export interface FleetsListByResourceGroup { - /** List Fleet resources by resource group */ - get( - options?: FleetsListByResourceGroupParameters, - ): StreamableMethod< - FleetsListByResourceGroup200Response | FleetsListByResourceGroupDefaultResponse - >; -} - -export interface FleetsListBySubscription { - /** List Fleet resources by subscription ID */ - get( - options?: FleetsListBySubscriptionParameters, - ): StreamableMethod< - FleetsListBySubscription200Response | FleetsListBySubscriptionDefaultResponse - >; -} - -export interface FleetsListVirtualMachineScaleSets { - /** List VirtualMachineScaleSet resources by Fleet */ - get( - options?: FleetsListVirtualMachineScaleSetsParameters, - ): StreamableMethod< - FleetsListVirtualMachineScaleSets200Response | FleetsListVirtualMachineScaleSetsDefaultResponse - >; -} - -export interface Routes { - /** Resource for '/providers/Microsoft.AzureFleet/operations' has methods for the following verbs: get */ - (path: "/providers/Microsoft.AzureFleet/operations"): OperationsList; - /** Resource for '/subscriptions/\{subscriptionId\}/resourceGroups/\{resourceGroupName\}/providers/Microsoft.AzureFleet/fleets/\{fleetName\}' has methods for the following verbs: get, put, patch, delete */ - ( - path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureFleet/fleets/{fleetName}", - subscriptionId: string, - resourceGroupName: string, - fleetName: string, - ): FleetsGet; - /** Resource for '/subscriptions/\{subscriptionId\}/resourceGroups/\{resourceGroupName\}/providers/Microsoft.AzureFleet/fleets' has methods for the following verbs: get */ - ( - path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureFleet/fleets", - subscriptionId: string, - resourceGroupName: string, - ): FleetsListByResourceGroup; - /** Resource for '/subscriptions/\{subscriptionId\}/providers/Microsoft.AzureFleet/fleets' has methods for the following verbs: get */ - ( - path: "/subscriptions/{subscriptionId}/providers/Microsoft.AzureFleet/fleets", - subscriptionId: string, - ): FleetsListBySubscription; - /** Resource for '/subscriptions/\{subscriptionId\}/resourceGroups/\{resourceGroupName\}/providers/Microsoft.AzureFleet/fleets/\{name\}/virtualMachineScaleSets' has methods for the following verbs: get */ - ( - path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureFleet/fleets/{name}/virtualMachineScaleSets", - subscriptionId: string, - resourceGroupName: string, - name: string, - ): FleetsListVirtualMachineScaleSets; -} - -export type AzureFleetContext = Client & { - path: Routes; -}; diff --git a/sdk/computefleet/arm-computefleet/src/rest/index.ts b/sdk/computefleet/arm-computefleet/src/rest/index.ts deleted file mode 100644 index 74dd0b90d32d..000000000000 --- a/sdk/computefleet/arm-computefleet/src/rest/index.ts +++ /dev/null @@ -1,16 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT license. - -import AzureFleetClient from "./azureFleetClient.js"; - -export * from "./azureFleetClient.js"; -export * from "./parameters.js"; -export * from "./responses.js"; -export * from "./clientDefinitions.js"; -export * from "./isUnexpected.js"; -export * from "./models.js"; -export * from "./outputModels.js"; -export * from "./paginateHelper.js"; -export * from "./pollingHelper.js"; - -export default AzureFleetClient; diff --git a/sdk/computefleet/arm-computefleet/src/rest/isUnexpected.ts b/sdk/computefleet/arm-computefleet/src/rest/isUnexpected.ts deleted file mode 100644 index 9604015de436..000000000000 --- a/sdk/computefleet/arm-computefleet/src/rest/isUnexpected.ts +++ /dev/null @@ -1,191 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT license. - -import { - OperationsList200Response, - OperationsListDefaultResponse, - FleetsGet200Response, - FleetsGetDefaultResponse, - FleetsCreateOrUpdate200Response, - FleetsCreateOrUpdate201Response, - FleetsCreateOrUpdateLogicalResponse, - FleetsCreateOrUpdateDefaultResponse, - FleetsUpdate200Response, - FleetsUpdate202Response, - FleetsUpdateLogicalResponse, - FleetsUpdateDefaultResponse, - FleetsDelete202Response, - FleetsDelete204Response, - FleetsDeleteLogicalResponse, - FleetsDeleteDefaultResponse, - FleetsListByResourceGroup200Response, - FleetsListByResourceGroupDefaultResponse, - FleetsListBySubscription200Response, - FleetsListBySubscriptionDefaultResponse, - FleetsListVirtualMachineScaleSets200Response, - FleetsListVirtualMachineScaleSetsDefaultResponse, -} from "./responses.js"; - -const responseMap: Record = { - "GET /providers/Microsoft.AzureFleet/operations": ["200"], - "GET /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureFleet/fleets/{fleetName}": - ["200"], - "PUT /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureFleet/fleets/{fleetName}": - ["200", "201"], - "PATCH /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureFleet/fleets/{fleetName}": - ["200", "202"], - "DELETE /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureFleet/fleets/{fleetName}": - ["202", "204"], - "GET /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureFleet/fleets": - ["200"], - "GET /subscriptions/{subscriptionId}/providers/Microsoft.AzureFleet/fleets": ["200"], - "GET /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureFleet/fleets/{name}/virtualMachineScaleSets": - ["200"], -}; - -export function isUnexpected( - response: OperationsList200Response | OperationsListDefaultResponse, -): response is OperationsListDefaultResponse; -export function isUnexpected( - response: FleetsGet200Response | FleetsGetDefaultResponse, -): response is FleetsGetDefaultResponse; -export function isUnexpected( - response: - | FleetsCreateOrUpdate200Response - | FleetsCreateOrUpdate201Response - | FleetsCreateOrUpdateLogicalResponse - | FleetsCreateOrUpdateDefaultResponse, -): response is FleetsCreateOrUpdateDefaultResponse; -export function isUnexpected( - response: - | FleetsUpdate200Response - | FleetsUpdate202Response - | FleetsUpdateLogicalResponse - | FleetsUpdateDefaultResponse, -): response is FleetsUpdateDefaultResponse; -export function isUnexpected( - response: - | FleetsDelete202Response - | FleetsDelete204Response - | FleetsDeleteLogicalResponse - | FleetsDeleteDefaultResponse, -): response is FleetsDeleteDefaultResponse; -export function isUnexpected( - response: FleetsListByResourceGroup200Response | FleetsListByResourceGroupDefaultResponse, -): response is FleetsListByResourceGroupDefaultResponse; -export function isUnexpected( - response: FleetsListBySubscription200Response | FleetsListBySubscriptionDefaultResponse, -): response is FleetsListBySubscriptionDefaultResponse; -export function isUnexpected( - response: - | FleetsListVirtualMachineScaleSets200Response - | FleetsListVirtualMachineScaleSetsDefaultResponse, -): response is FleetsListVirtualMachineScaleSetsDefaultResponse; -export function isUnexpected( - response: - | OperationsList200Response - | OperationsListDefaultResponse - | FleetsGet200Response - | FleetsGetDefaultResponse - | FleetsCreateOrUpdate200Response - | FleetsCreateOrUpdate201Response - | FleetsCreateOrUpdateLogicalResponse - | FleetsCreateOrUpdateDefaultResponse - | FleetsUpdate200Response - | FleetsUpdate202Response - | FleetsUpdateLogicalResponse - | FleetsUpdateDefaultResponse - | FleetsDelete202Response - | FleetsDelete204Response - | FleetsDeleteLogicalResponse - | FleetsDeleteDefaultResponse - | FleetsListByResourceGroup200Response - | FleetsListByResourceGroupDefaultResponse - | FleetsListBySubscription200Response - | FleetsListBySubscriptionDefaultResponse - | FleetsListVirtualMachineScaleSets200Response - | FleetsListVirtualMachineScaleSetsDefaultResponse, -): response is - | OperationsListDefaultResponse - | FleetsGetDefaultResponse - | FleetsCreateOrUpdateDefaultResponse - | FleetsUpdateDefaultResponse - | FleetsDeleteDefaultResponse - | FleetsListByResourceGroupDefaultResponse - | FleetsListBySubscriptionDefaultResponse - | FleetsListVirtualMachineScaleSetsDefaultResponse { - const lroOriginal = response.headers["x-ms-original-url"]; - const url = new URL(lroOriginal ?? response.request.url); - const method = response.request.method; - let pathDetails = responseMap[`${method} ${url.pathname}`]; - if (!pathDetails) { - pathDetails = getParametrizedPathSuccess(method, url.pathname); - } - return !pathDetails.includes(response.status); -} - -function getParametrizedPathSuccess(method: string, path: string): string[] { - const pathParts = path.split("/"); - - // Traverse list to match the longest candidate - // matchedLen: the length of candidate path - // matchedValue: the matched status code array - let matchedLen = -1, - matchedValue: string[] = []; - - // Iterate the responseMap to find a match - for (const [key, value] of Object.entries(responseMap)) { - // Extracting the path from the map key which is in format - // GET /path/foo - if (!key.startsWith(method)) { - continue; - } - const candidatePath = getPathFromMapKey(key); - // Get each part of the url path - const candidateParts = candidatePath.split("/"); - - // track if we have found a match to return the values found. - let found = true; - for (let i = candidateParts.length - 1, j = pathParts.length - 1; i >= 1 && j >= 1; i--, j--) { - if (candidateParts[i]?.startsWith("{") && candidateParts[i]?.indexOf("}") !== -1) { - const start = candidateParts[i]!.indexOf("}") + 1, - end = candidateParts[i]?.length; - // If the current part of the candidate is a "template" part - // Try to use the suffix of pattern to match the path - // {guid} ==> $ - // {guid}:export ==> :export$ - const isMatched = new RegExp(`${candidateParts[i]?.slice(start, end)}`).test( - pathParts[j] || "", - ); - - if (!isMatched) { - found = false; - break; - } - continue; - } - - // If the candidate part is not a template and - // the parts don't match mark the candidate as not found - // to move on with the next candidate path. - if (candidateParts[i] !== pathParts[j]) { - found = false; - break; - } - } - - // We finished evaluating the current candidate parts - // Update the matched value if and only if we found the longer pattern - if (found && candidatePath.length > matchedLen) { - matchedLen = candidatePath.length; - matchedValue = value; - } - } - - return matchedValue; -} - -function getPathFromMapKey(mapKey: string): string { - const pathStart = mapKey.indexOf("/"); - return mapKey.slice(pathStart); -} diff --git a/sdk/computefleet/arm-computefleet/src/rest/models.ts b/sdk/computefleet/arm-computefleet/src/rest/models.ts deleted file mode 100644 index bd00db0fff91..000000000000 --- a/sdk/computefleet/arm-computefleet/src/rest/models.ts +++ /dev/null @@ -1,1692 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT license. - -/** An Compute Fleet resource */ -export interface Fleet extends TrackedResource { - /** The resource-specific properties for this resource. */ - properties?: FleetProperties; - /** Zones in which the Compute Fleet is available */ - zones?: string[]; - /** The managed service identities assigned to this resource. */ - identity?: ManagedServiceIdentity; - /** Details of the resource plan. */ - plan?: Plan; -} - -/** Details of the Compute Fleet. */ -export interface FleetProperties { - /** Configuration Options for Spot instances in Compute Fleet. */ - spotPriorityProfile?: SpotPriorityProfile; - /** Configuration Options for Regular instances in Compute Fleet. */ - regularPriorityProfile?: RegularPriorityProfile; - /** List of VM sizes supported for Compute Fleet */ - vmSizesProfile: Array; - /** Compute Profile to use for running user's workloads. */ - computeProfile: ComputeProfile; -} - -/** Configuration Options for Spot instances in Compute Fleet. */ -export interface SpotPriorityProfile { - /** Total capacity to achieve. It is currently in terms of number of VMs. */ - capacity?: number; - /** Minimum capacity to achieve which cannot be updated. If we will not be able to "guarantee" minimum capacity, we will reject the request in the sync path itself. */ - minCapacity?: number; - /** Price per hour of each Spot VM will never exceed this. */ - maxPricePerVM?: number; - /** - * Eviction Policy to follow when evicting Spot VMs. - * - * Possible values: "Delete", "Deallocate" - */ - evictionPolicy?: EvictionPolicy; - /** - * Allocation strategy to follow when determining the VM sizes distribution for Spot VMs. - * - * Possible values: "PriceCapacityOptimized", "LowestPrice", "CapacityOptimized" - */ - allocationStrategy?: SpotAllocationStrategy; - /** - * Flag to enable/disable continuous goal seeking for the desired capacity and restoration of evicted Spot VMs. - * If maintain is enabled, AzureFleetRP will use all VM sizes in vmSizesProfile to create new VMs (if VMs are evicted deleted) - * or update existing VMs with new VM sizes (if VMs are evicted deallocated or failed to allocate due to capacity constraint) in order to achieve the desired capacity. - * Maintain is enabled by default. - */ - maintain?: boolean; -} - -/** Configuration Options for Regular instances in Compute Fleet. */ -export interface RegularPriorityProfile { - /** Total capacity to achieve. It is currently in terms of number of VMs. */ - capacity?: number; - /** Minimum capacity to achieve which cannot be updated. If we will not be able to "guarantee" minimum capacity, we will reject the request in the sync path itself. */ - minCapacity?: number; - /** - * Allocation strategy to follow when determining the VM sizes distribution for Regular VMs. - * - * Possible values: "LowestPrice", "Prioritized" - */ - allocationStrategy?: RegularPriorityAllocationStrategy; -} - -/** 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') */ - name: string; - /** - * The rank of the VM size. This is used with 'RegularPriorityAllocationStrategy.Prioritized' - * The lower the number, the higher the priority. Starting with 0. - */ - rank?: number; -} - -/** 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" */ - baseVirtualMachineProfile: BaseVirtualMachineProfile; - /** - * Specifies the Microsoft.Compute API version to use when creating underlying Virtual Machine scale sets and Virtual Machines. - * The default value will be the latest supported computeApiVersion by Compute Fleet. - */ - computeApiVersion?: string; - /** - * Specifies the number of fault domains to use when creating the underlying VMSS. - * A fault domain is a logical group of hardware within an Azure datacenter. - * VMs in the same fault domain share a common power source and network switch. - * If not specified, defaults to 1, which represents "Max Spreading" (using as many fault domains as possible). - * This property cannot be updated. - */ - platformFaultDomainCount?: number; -} - -/** Describes the base virtual machine profile for fleet */ -export interface BaseVirtualMachineProfile { - /** - * Specifies the operating system settings for the virtual machines in the scale - * set. - */ - osProfile?: VirtualMachineScaleSetOSProfile; - /** Specifies the storage settings for the virtual machine disks. */ - storageProfile?: VirtualMachineScaleSetStorageProfile; - /** - * Specifies properties of the network interfaces of the virtual machines in the - * scale set. - */ - networkProfile?: VirtualMachineScaleSetNetworkProfile; - /** - * Specifies the Security related profile settings for the virtual machines in the - * scale set. - */ - securityProfile?: SecurityProfile; - /** Specifies the boot diagnostic settings state. */ - diagnosticsProfile?: DiagnosticsProfile; - /** - * Specifies a collection of settings for extensions installed on virtual machines - * in the scale set. - */ - extensionProfile?: VirtualMachineScaleSetExtensionProfile; - /** - * Specifies that the image or disk that is being used was licensed on-premises. - *

Possible values for Windows Server operating system are:

- * Windows_Client

Windows_Server

Possible values for Linux - * 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) - *

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

Minimum api-version: 2015-06-15 - */ - licenseType?: string; - /** Specifies Scheduled Event related configurations. */ - scheduledEventsProfile?: ScheduledEventsProfile; - /** - * UserData for the virtual machines in the scale set, which must be base-64 - * encoded. Customer should not pass any secrets in here. Minimum api-version: - * 2021-03-01. - */ - userData?: string; - /** - * Specifies the capacity reservation related details of a scale set. Minimum - * api-version: 2021-04-01. - */ - capacityReservation?: CapacityReservationProfile; - /** Specifies the gallery applications that should be made available to the VM/VMSS */ - applicationProfile?: ApplicationProfile; - /** - * Specifies the hardware profile related details of a scale set. Minimum - * api-version: 2021-11-01. - */ - hardwareProfile?: VirtualMachineScaleSetHardwareProfile; - /** - * Specifies the service artifact reference id used to set same image version for - * all virtual machines in the scale set when using 'latest' image version. - * Minimum api-version: 2022-11-01 - */ - serviceArtifactReference?: ServiceArtifactReference; - /** - * Specifies the security posture to be used for all virtual machines in the scale - * set. Minimum api-version: 2023-03-01 - */ - securityPostureReference?: SecurityPostureReference; -} - -/** Describes a virtual machine scale set OS profile. */ -export interface VirtualMachineScaleSetOSProfile { - /** - * Specifies the computer name prefix for all of the virtual machines in the scale - * set. Computer name prefixes must be 1 to 15 characters long. - */ - computerNamePrefix?: string; - /** - * Specifies the name of the administrator account.

**Windows-only - * restriction:** Cannot end in "."

**Disallowed values:** - * "administrator", "admin", "user", "user1", "test", "user2", "test1", "user3", - * "admin1", "1", "123", "a", "actuser", "adm", "admin2", "aspnet", "backup", - * "console", "david", "guest", "john", "owner", "root", "server", "sql", - * "support", "support_388945a0", "sys", "test2", "test3", "user4", "user5". - *

**Minimum-length (Linux):** 1 character

**Max-length - * (Linux):** 64 characters

**Max-length (Windows):** 20 characters - */ - adminUsername?: string; - /** - * Specifies the password of the administrator account.

**Minimum-length - * (Windows):** 8 characters

**Minimum-length (Linux):** 6 characters - *

**Max-length (Windows):** 123 characters

**Max-length - * (Linux):** 72 characters

**Complexity requirements:** 3 out of 4 - * conditions below need to be fulfilled
Has lower characters
Has upper - * characters
Has a digit
Has a special character (Regex match [\W_]) - *

**Disallowed values:** "abc@123", "P@$$w0rd", "P@ssw0rd", - * "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) - *

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) - */ - adminPassword?: string; - /** - * Specifies a base-64 encoded string of custom data. The base-64 encoded string - * 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) - */ - customData?: string; - /** Specifies Windows operating system settings on the virtual machine. */ - windowsConfiguration?: WindowsConfiguration; - /** - * 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). - */ - 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) - * or the [Azure Key Vault virtual machine extension for - * Windows](https://docs.microsoft.com/azure/virtual-machines/extensions/key-vault-windows). - */ - secrets?: Array; - /** - * Specifies whether extension operations should be allowed on the virtual machine - * scale set. This may only be set to False when no extensions are present on the - * virtual machine scale set. - */ - allowExtensionOperations?: boolean; - /** Optional property which must either be set to True or omitted. */ - requireGuestProvisionSignal?: boolean; -} - -/** Specifies Windows operating system settings on the virtual machine. */ -export interface WindowsConfiguration { - /** - * Indicates whether virtual machine agent should be provisioned on the virtual - * machine. When this property is not specified in the request body, it is set to - * true by default. This will ensure that VM Agent is installed on the VM so that - * extensions can be added to the VM later. - */ - provisionVMAgent?: boolean; - /** - * Indicates whether Automatic Updates is enabled for the Windows virtual machine. - * Default value is true. For virtual machine scale sets, this property can be - * updated and updates will take effect on OS reprovisioning. - */ - enableAutomaticUpdates?: boolean; - /** - * 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) - * value from time zones returned by - * [TimeZoneInfo.GetSystemTimeZones](https://docs.microsoft.com/dotnet/api/system.timezoneinfo.getsystemtimezones). - */ - timeZone?: string; - /** - * Specifies additional base-64 encoded XML formatted information that can be - * included in the Unattend.xml file, which is used by Windows Setup. - */ - additionalUnattendContent?: Array; - /** [Preview Feature] Specifies settings related to VM Guest Patching on Windows. */ - patchSettings?: PatchSettings; - /** - * Specifies the Windows Remote Management listeners. This enables remote Windows - * PowerShell. - */ - winRM?: WinRMConfiguration; - /** - * Indicates whether VMAgent Platform Updates is enabled for the Windows virtual - * machine. Default value is false. - */ - enableVMAgentPlatformUpdates?: boolean; -} - -/** - * Specifies additional XML formatted information that can be included in the - * Unattend.xml file, which is used by Windows Setup. Contents are defined by - * setting name, component name, and the pass in which the content is applied. - */ -export interface AdditionalUnattendContent { - /** The pass name. Currently, the only allowable value is OobeSystem. */ - passName?: "OobeSystem"; - /** - * The component name. Currently, the only allowable value is - * Microsoft-Windows-Shell-Setup. - */ - componentName?: "Microsoft-Windows-Shell-Setup"; - /** - * Specifies the name of the setting to which the content applies. Possible values - * are: FirstLogonCommands and AutoLogon. - * - * Possible values: "AutoLogon", "FirstLogonCommands" - */ - settingName?: SettingNames; - /** - * Specifies the XML formatted content that is added to the unattend.xml file for - * the specified path and component. The XML must be less than 4KB and must - * include the root element for the setting or feature that is being inserted. - */ - content?: string; -} - -/** Specifies settings related to VM Guest Patching on Windows. */ -export interface PatchSettings { - /** - * Specifies the mode of VM Guest Patching to IaaS virtual machine or virtual - * machines associated to virtual machine scale set with OrchestrationMode as - * Flexible.

Possible values are:

**Manual** - You - * control the application of patches to a virtual machine. You do this by - * applying patches manually inside the VM. In this mode, automatic updates are - * disabled; the property WindowsConfiguration.enableAutomaticUpdates must be - * false

**AutomaticByOS** - The virtual machine will automatically be - * updated by the OS. The property WindowsConfiguration.enableAutomaticUpdates - * must be true.

**AutomaticByPlatform** - the virtual machine will - * automatically updated by the platform. The properties provisionVMAgent and - * WindowsConfiguration.enableAutomaticUpdates must be true - * - * Possible values: "Manual", "AutomaticByOS", "AutomaticByPlatform" - */ - patchMode?: WindowsVMGuestPatchMode; - /** - * Enables customers to patch their Azure VMs without requiring a reboot. For - * enableHotpatching, the 'provisionVMAgent' must be set to true and 'patchMode' - * must be set to 'AutomaticByPlatform'. - */ - enableHotpatching?: boolean; - /** - * Specifies the mode of VM Guest patch assessment for the IaaS virtual - * machine.

Possible values are:

**ImageDefault** - You - * control the timing of patch assessments on a virtual machine.

- * **AutomaticByPlatform** - The platform will trigger periodic patch assessments. - * The property provisionVMAgent must be true. - * - * Possible values: "ImageDefault", "AutomaticByPlatform" - */ - assessmentMode?: WindowsPatchAssessmentMode; - /** - * Specifies additional settings for patch mode AutomaticByPlatform in VM Guest - * Patching on Windows. - */ - automaticByPlatformSettings?: WindowsVMGuestPatchAutomaticByPlatformSettings; -} - -/** - * Specifies additional settings to be applied when patch mode AutomaticByPlatform - * is selected in Windows patch settings. - */ -export interface WindowsVMGuestPatchAutomaticByPlatformSettings { - /** - * Specifies the reboot setting for all AutomaticByPlatform patch installation - * operations. - * - * Possible values: "Unknown", "IfRequired", "Never", "Always" - */ - rebootSetting?: WindowsVMGuestPatchAutomaticByPlatformRebootSetting; - /** Enables customer to schedule patching without accidental upgrades */ - bypassPlatformSafetyChecksOnUserSchedule?: boolean; -} - -/** Describes Windows Remote Management configuration of the VM */ -export interface WinRMConfiguration { - /** The list of Windows Remote Management listeners */ - listeners?: Array; -} - -/** Describes Protocol and thumbprint of Windows Remote Management listener */ -export interface WinRMListener { - /** - * Specifies the protocol of WinRM listener. Possible values are: **http,** - * **https.** - * - * Possible values: "Http", "Https" - */ - protocol?: ProtocolTypes; - /** - * 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). - * 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) - * or the [Azure Key Vault virtual machine extension for - * Windows](https://docs.microsoft.com/azure/virtual-machines/extensions/key-vault-windows). - */ - certificateUrl?: string; -} - -/** - * 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). - */ -export interface LinuxConfiguration { - /** Specifies whether password authentication should be disabled. */ - disablePasswordAuthentication?: boolean; - /** Specifies the ssh key configuration for a Linux OS. */ - ssh?: SshConfiguration; - /** - * Indicates whether virtual machine agent should be provisioned on the virtual - * machine. When this property is not specified in the request body, default - * behavior is to set it to true. This will ensure that VM Agent is installed on - * the VM so that extensions can be added to the VM later. - */ - provisionVMAgent?: boolean; - /** [Preview Feature] Specifies settings related to VM Guest Patching on Linux. */ - patchSettings?: LinuxPatchSettings; - /** - * Indicates whether VMAgent Platform Updates is enabled for the Linux virtual - * machine. Default value is false. - */ - enableVMAgentPlatformUpdates?: boolean; -} - -/** SSH configuration for Linux based VMs running on Azure */ -export interface SshConfiguration { - /** The list of SSH public keys used to authenticate with linux based VMs. */ - publicKeys?: Array; -} - -/** - * Contains information about SSH certificate public key and the path on the Linux - * VM where the public key is placed. - */ -export interface SshPublicKey { - /** - * Specifies the full path on the created VM where ssh public key is stored. If - * the file already exists, the specified key is appended to the file. Example: - * /home/user/.ssh/authorized_keys - */ - path?: string; - /** - * 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). - */ - keyData?: string; -} - -/** Specifies settings related to VM Guest Patching on Linux. */ -export interface LinuxPatchSettings { - /** - * Specifies the mode of VM Guest Patching to IaaS virtual machine or virtual - * machines associated to virtual machine scale set with OrchestrationMode as - * Flexible.

Possible values are:

**ImageDefault** - The - * virtual machine's default patching configuration is used.

- * **AutomaticByPlatform** - The virtual machine will be automatically updated by - * the platform. The property provisionVMAgent must be true - * - * Possible values: "ImageDefault", "AutomaticByPlatform" - */ - patchMode?: LinuxVMGuestPatchMode; - /** - * Specifies the mode of VM Guest Patch Assessment for the IaaS virtual - * machine.

Possible values are:

**ImageDefault** - You - * control the timing of patch assessments on a virtual machine.

- * **AutomaticByPlatform** - The platform will trigger periodic patch assessments. - * The property provisionVMAgent must be true. - * - * Possible values: "ImageDefault", "AutomaticByPlatform" - */ - assessmentMode?: LinuxPatchAssessmentMode; - /** - * Specifies additional settings for patch mode AutomaticByPlatform in VM Guest - * Patching on Linux. - */ - automaticByPlatformSettings?: LinuxVMGuestPatchAutomaticByPlatformSettings; -} - -/** - * Specifies additional settings to be applied when patch mode AutomaticByPlatform - * is selected in Linux patch settings. - */ -export interface LinuxVMGuestPatchAutomaticByPlatformSettings { - /** - * Specifies the reboot setting for all AutomaticByPlatform patch installation - * operations. - * - * Possible values: "Unknown", "IfRequired", "Never", "Always" - */ - rebootSetting?: LinuxVMGuestPatchAutomaticByPlatformRebootSetting; - /** Enables customer to schedule patching without accidental upgrades */ - bypassPlatformSafetyChecksOnUserSchedule?: boolean; -} - -/** Describes a set of certificates which are all in the same Key Vault. */ -export interface VaultSecretGroup { - /** - * The relative URL of the Key Vault containing all of the certificates in - * VaultCertificates. - */ - sourceVault?: SubResource; - /** The list of key vault references in SourceVault which contain certificates. */ - vaultCertificates?: Array; -} - -/** Describes SubResource */ -export interface SubResource { - /** Resource Id */ - id?: string; -} - -/** - * Describes a single certificate reference in a Key Vault, and where the - * certificate should reside on the VM. - */ -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). - * 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) - * or the [Azure Key Vault virtual machine extension for - * Windows](https://docs.microsoft.com/azure/virtual-machines/extensions/key-vault-windows). - */ - certificateUrl?: string; - /** - * For Windows VMs, specifies the certificate store on the Virtual Machine to - * which the certificate should be added. The specified certificate store is - * implicitly in the LocalMachine account. For Linux VMs, the certificate file is - * placed under the /var/lib/waagent directory, with the file name - * <UppercaseThumbprint>.crt for the X509 certificate file and - * <UppercaseThumbprint>.prv for private key. Both of these files are .pem - * formatted. - */ - certificateStore?: string; -} - -/** Describes a virtual machine scale set storage profile. */ -export interface VirtualMachineScaleSetStorageProfile { - /** - * Specifies information about the image to use. You can specify information about - * platform images, marketplace images, or virtual machine images. This element is - * required when you want to use a platform image, marketplace image, or virtual - * machine image, but is not used in other creation operations. - */ - imageReference?: ImageReference; - /** - * 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). - */ - 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). - */ - dataDisks?: Array; - /** - * Specifies the disk controller type configured for the virtual machines in the scale set. Minimum api-version: 2022-08-01 - * - * Possible values: "SCSI", "NVMe" - */ - diskControllerType?: DiskControllerTypes; -} - -/** - * Specifies information about the image to use. You can specify information about - * platform images, marketplace images, or virtual machine images. This element is - * required when you want to use a platform image, marketplace image, or virtual - * machine image, but is not used in other creation operations. NOTE: Image - * reference publisher and offer can only be set when you create the scale set. - */ -export interface ImageReference { - /** Resource Id */ - id?: string; - /** The image publisher. */ - publisher?: string; - /** - * Specifies the offer of the platform image or marketplace image used to create - * the virtual machine. - */ - offer?: string; - /** The image SKU. */ - sku?: string; - /** - * Specifies the version of the platform image or marketplace image used to create - * the virtual machine. The allowed formats are Major.Minor.Build or 'latest'. - * Major, Minor, and Build are decimal numbers. Specify 'latest' to use the latest - * version of an image available at deploy time. Even if you use 'latest', the VM - * image will not automatically update after deploy time even if a new version - * becomes available. Please do not use field 'version' for gallery image - * deployment, gallery image should always use 'id' field for deployment, to use 'latest' - * version of gallery image, just set - * '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/galleries/{galleryName}/images/{imageName}' - * in the 'id' field without version input. - */ - version?: string; - /** - * Specified the shared gallery image unique id for vm deployment. This can be - * fetched from shared gallery image GET call. - */ - sharedGalleryImageId?: string; - /** - * Specified the community gallery image unique id for vm deployment. This can be - * fetched from community gallery image GET call. - */ - communityGalleryImageId?: string; -} - -/** Describes a virtual machine scale set operating system disk. */ -export interface VirtualMachineScaleSetOSDisk { - /** The disk name. */ - name?: string; - /** - * Specifies the caching requirements. Possible values are: **None,** - * **ReadOnly,** **ReadWrite.** The default values are: **None for Standard - * storage. ReadOnly for Premium storage.** - * - * Possible values: "None", "ReadOnly", "ReadWrite" - */ - caching?: CachingTypes; - /** Specifies whether writeAccelerator should be enabled or disabled on the disk. */ - writeAcceleratorEnabled?: boolean; - /** - * Specifies how the virtual machines in the scale set should be created. The only - * allowed value is: **FromImage.** This value is used when you are using an image - * to create the virtual machine. If you are using a platform image, you also use - * the imageReference element described above. If you are using a marketplace - * image, you also use the plan element previously described. - * - * Possible values: "FromImage", "Empty", "Attach", "Copy", "Restore" - */ - createOption: DiskCreateOptionTypes; - /** - * Specifies the ephemeral disk Settings for the operating system disk used by the - * virtual machine scale set. - */ - diffDiskSettings?: DiffDiskSettings; - /** - * Specifies the size of an empty data disk in gigabytes. This element can be used - * to overwrite the size of the disk in a virtual machine image. The property 'diskSizeGB' - * is the number of bytes x 1024^3 for the disk and the value cannot - * be larger than 1023. - */ - diskSizeGB?: number; - /** - * This property allows you to specify the type of the OS that is included in the - * disk if creating a VM from user-image or a specialized VHD. Possible values - * are: **Windows,** **Linux.** - * - * Possible values: "Windows", "Linux" - */ - osType?: OperatingSystemTypes; - /** Specifies information about the unmanaged user image to base the scale set on. */ - image?: VirtualHardDisk; - /** - * Specifies the container urls that are used to store operating system disks for - * the scale set. - */ - vhdContainers?: string[]; - /** The managed disk parameters. */ - managedDisk?: VirtualMachineScaleSetManagedDiskParameters; - /** - * Specifies whether OS Disk should be deleted or detached upon VMSS Flex deletion - * (This feature is available for VMSS with Flexible OrchestrationMode only). - *

Possible values:

**Delete** If this value is used, the OS - * disk is deleted when VMSS Flex VM is deleted.

**Detach** If this value - * is used, the OS disk is retained after VMSS Flex VM is deleted.

The - * default value is set to **Delete**. For an Ephemeral OS Disk, the default value - * is set to **Delete**. User cannot change the delete option for Ephemeral OS - * Disk. - * - * Possible values: "Delete", "Detach" - */ - deleteOption?: DiskDeleteOptionTypes; -} - -/** - * Describes the parameters of ephemeral disk settings that can be specified for - * operating system disk. **Note:** The ephemeral disk settings can only be - * specified for managed disk. - */ -export interface DiffDiskSettings { - /** - * Specifies the ephemeral disk settings for operating system disk. - * - * Possible values: "Local" - */ - option?: DiffDiskOptions; - /** - * Specifies the ephemeral disk placement for operating system disk. Possible - * 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 - * sizes exposes a cache disk. - * - * Possible values: "CacheDisk", "ResourceDisk", "NvmeDisk" - */ - placement?: DiffDiskPlacement; -} - -/** Describes the uri of a disk. */ -export interface VirtualHardDisk { - /** Specifies the virtual hard disk's uri. */ - uri?: string; -} - -/** Describes the parameters of a ScaleSet managed disk. */ -export interface VirtualMachineScaleSetManagedDiskParameters { - /** - * Specifies the storage account type for the managed disk. NOTE: UltraSSD_LRS can - * only be used with data disks, it cannot be used with OS Disk. - * - * Possible values: "Standard_LRS", "Premium_LRS", "StandardSSD_LRS", "UltraSSD_LRS", "Premium_ZRS", "StandardSSD_ZRS", "PremiumV2_LRS" - */ - storageAccountType?: StorageAccountTypes; - /** - * Specifies the customer managed disk encryption set resource id for the managed - * disk. - */ - diskEncryptionSet?: DiskEncryptionSetParameters; - /** Specifies the security profile for the managed disk. */ - securityProfile?: VMDiskSecurityProfile; -} - -/** - * Describes the parameter of customer managed disk encryption set resource id - * that can be specified for disk. **Note:** The disk encryption set resource id - * can only be specified for managed disk. Please refer - * https://aka.ms/mdssewithcmkoverview for more details. - */ -export interface DiskEncryptionSetParameters { - /** Resource Id */ - id?: string; -} - -/** - * Specifies the security profile settings for the managed disk. **Note:** It can - * only be set for Confidential VMs. - */ -export interface VMDiskSecurityProfile { - /** - * Specifies the EncryptionType of the managed disk. It is set to - * DiskWithVMGuestState for encryption of the managed disk along with VMGuestState - * blob, VMGuestStateOnly for encryption of just the VMGuestState blob, and - * NonPersistedTPM for not persisting firmware state in the VMGuestState blob.. - * **Note:** It can be set for only Confidential VMs. - * - * Possible values: "VMGuestStateOnly", "DiskWithVMGuestState", "NonPersistedTPM" - */ - securityEncryptionType?: SecurityEncryptionTypes; - /** - * Specifies the customer managed disk encryption set resource id for the managed - * disk that is used for Customer Managed Key encrypted ConfidentialVM OS Disk and - * VMGuest blob. - */ - diskEncryptionSet?: DiskEncryptionSetParameters; -} - -/** Describes a virtual machine scale set data disk. */ -export interface VirtualMachineScaleSetDataDisk { - /** The disk name. */ - name?: string; - /** - * Specifies the logical unit number of the data disk. This value is used to - * identify data disks within the VM and therefore must be unique for each data - * disk attached to a VM. - */ - lun: number; - /** - * Specifies the caching requirements. Possible values are: **None,** - * **ReadOnly,** **ReadWrite.** The default values are: **None for Standard - * storage. ReadOnly for Premium storage.** - * - * Possible values: "None", "ReadOnly", "ReadWrite" - */ - caching?: CachingTypes; - /** Specifies whether writeAccelerator should be enabled or disabled on the disk. */ - writeAcceleratorEnabled?: boolean; - /** - * The create option. - * - * Possible values: "FromImage", "Empty", "Attach", "Copy", "Restore" - */ - createOption: DiskCreateOptionTypes; - /** - * Specifies the size of an empty data disk in gigabytes. This element can be used - * to overwrite the size of the disk in a virtual machine image. The property - * diskSizeGB is the number of bytes x 1024^3 for the disk and the value cannot be - * larger than 1023. - */ - diskSizeGB?: number; - /** The managed disk parameters. */ - managedDisk?: VirtualMachineScaleSetManagedDiskParameters; - /** - * Specifies the Read-Write IOPS for the managed disk. Should be used only when - * StorageAccountType is UltraSSD_LRS. If not specified, a default value would be - * assigned based on diskSizeGB. - */ - 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 - * would be assigned based on diskSizeGB. - */ - diskMBpsReadWrite?: number; - /** - * Specifies whether data disk should be deleted or detached upon VMSS Flex - * deletion (This feature is available for VMSS with Flexible OrchestrationMode - * only).

Possible values:

**Delete** If this value is used, the - * data disk is deleted when the VMSS Flex VM is deleted.

**Detach** If - * this value is used, the data disk is retained after VMSS Flex VM is - * deleted.

The default value is set to **Delete**. - * - * Possible values: "Delete", "Detach" - */ - deleteOption?: DiskDeleteOptionTypes; -} - -/** Describes a virtual machine scale set network profile. */ -export interface VirtualMachineScaleSetNetworkProfile { - /** - * A reference to a load balancer probe used to determine the health of an - * instance in the virtual machine scale set. The reference will be in the form: - * '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/probes/{probeName}'. - */ - healthProbe?: ApiEntityReference; - /** The list of network configurations. */ - networkInterfaceConfigurations?: Array; - /** - * specifies the Microsoft.Network API version used when creating networking - * resources in the Network Interface Configurations for Virtual Machine Scale Set - * with orchestration mode 'Flexible' - * - * Possible values: "2020-11-01" - */ - networkApiVersion?: NetworkApiVersion; -} - -/** The API entity reference. */ -export interface ApiEntityReference { - /** - * The ARM resource id in the form of - * /subscriptions/{SubscriptionId}/resourceGroups/{ResourceGroupName}/... - */ - id?: string; -} - -/** Describes a virtual machine scale set network profile's network configurations. */ -export interface VirtualMachineScaleSetNetworkConfiguration { - /** The network configuration name. */ - name: string; - /** Describes a virtual machine scale set network profile's IP configuration. */ - properties?: VirtualMachineScaleSetNetworkConfigurationProperties; -} - -/** Describes a virtual machine scale set network profile's IP configuration. */ -export interface VirtualMachineScaleSetNetworkConfigurationProperties { - /** - * Specifies the primary network interface in case the virtual machine has more - * than 1 network interface. - */ - primary?: boolean; - /** Specifies whether the network interface is accelerated networking-enabled. */ - enableAcceleratedNetworking?: boolean; - /** Specifies whether the network interface is disabled for tcp state tracking. */ - disableTcpStateTracking?: boolean; - /** Specifies whether the network interface is FPGA networking-enabled. */ - enableFpga?: boolean; - /** The network security group. */ - networkSecurityGroup?: SubResource; - /** The dns settings to be applied on the network interfaces. */ - dnsSettings?: VirtualMachineScaleSetNetworkConfigurationDnsSettings; - /** Specifies the IP configurations of the network interface. */ - ipConfigurations: Array; - /** Whether IP forwarding enabled on this NIC. */ - enableIPForwarding?: boolean; - /** - * Specify what happens to the network interface when the VM is deleted - * - * Possible values: "Delete", "Detach" - */ - deleteOption?: DeleteOptions; - /** - * Specifies whether the Auxiliary mode is enabled for the Network Interface - * resource. - * - * Possible values: "None", "AcceleratedConnections", "Floating" - */ - auxiliaryMode?: NetworkInterfaceAuxiliaryMode; - /** - * Specifies whether the Auxiliary sku is enabled for the Network Interface - * resource. - * - * Possible values: "None", "A1", "A2", "A4", "A8" - */ - auxiliarySku?: NetworkInterfaceAuxiliarySku; -} - -/** Describes a virtual machines scale sets network configuration's DNS settings. */ -export interface VirtualMachineScaleSetNetworkConfigurationDnsSettings { - /** List of DNS servers IP addresses */ - dnsServers?: string[]; -} - -/** Describes a virtual machine scale set network profile's IP configuration. */ -export interface VirtualMachineScaleSetIPConfiguration { - /** The IP configuration name. */ - name: string; - /** - * Describes a virtual machine scale set network profile's IP configuration - * properties. - */ - properties?: VirtualMachineScaleSetIPConfigurationProperties; -} - -/** - * Describes a virtual machine scale set network profile's IP configuration - * properties. - */ -export interface VirtualMachineScaleSetIPConfigurationProperties { - /** Specifies the identifier of the subnet. */ - subnet?: ApiEntityReference; - /** - * Specifies the primary network interface in case the virtual machine has more - * than 1 network interface. - */ - primary?: boolean; - /** The publicIPAddressConfiguration. */ - publicIPAddressConfiguration?: VirtualMachineScaleSetPublicIPAddressConfiguration; - /** - * Available from Api-Version 2017-03-30 onwards, it represents whether the - * specific ipconfiguration is IPv4 or IPv6. Default is taken as IPv4. Possible - * values are: 'IPv4' and 'IPv6'. - * - * Possible values: "IPv4", "IPv6" - */ - privateIPAddressVersion?: IPVersion; - /** - * Specifies an array of references to backend address pools of application - * gateways. A scale set can reference backend address pools of multiple - * application gateways. Multiple scale sets cannot use the same application - * gateway. - */ - applicationGatewayBackendAddressPools?: Array; - /** Specifies an array of references to application security group. */ - applicationSecurityGroups?: Array; - /** - * Specifies an array of references to backend address pools of load balancers. A - * scale set can reference backend address pools of one public and one internal - * load balancer. Multiple scale sets cannot use the same basic sku load balancer. - */ - loadBalancerBackendAddressPools?: Array; - /** - * Specifies an array of references to inbound Nat pools of the load balancers. A - * scale set can reference inbound nat pools of one public and one internal load - * balancer. Multiple scale sets cannot use the same basic sku load balancer. - */ - loadBalancerInboundNatPools?: Array; -} - -/** - * Describes a virtual machines scale set IP Configuration's PublicIPAddress - * configuration - */ -export interface VirtualMachineScaleSetPublicIPAddressConfiguration { - /** The publicIP address configuration name. */ - name: string; - /** - * Describes a virtual machines scale set IP Configuration's PublicIPAddress - * configuration - */ - properties?: VirtualMachineScaleSetPublicIPAddressConfigurationProperties; - /** - * Describes the public IP Sku. It can only be set with OrchestrationMode as - * Flexible. - */ - sku?: PublicIPAddressSku; -} - -/** - * Describes a virtual machines scale set IP Configuration's PublicIPAddress - * configuration - */ -export interface VirtualMachineScaleSetPublicIPAddressConfigurationProperties { - /** The idle timeout of the public IP address. */ - idleTimeoutInMinutes?: number; - /** The dns settings to be applied on the publicIP addresses . */ - dnsSettings?: VirtualMachineScaleSetPublicIPAddressConfigurationDnsSettings; - /** The list of IP tags associated with the public IP address. */ - ipTags?: Array; - /** The PublicIPPrefix from which to allocate publicIP addresses. */ - publicIPPrefix?: SubResource; - /** - * Available from Api-Version 2019-07-01 onwards, it represents whether the - * specific ipconfiguration is IPv4 or IPv6. Default is taken as IPv4. Possible - * values are: 'IPv4' and 'IPv6'. - * - * Possible values: "IPv4", "IPv6" - */ - publicIPAddressVersion?: IPVersion; - /** - * Specify what happens to the public IP when the VM is deleted - * - * Possible values: "Delete", "Detach" - */ - deleteOption?: DeleteOptions; -} - -/** Describes a virtual machines scale sets network configuration's DNS settings. */ -export interface VirtualMachineScaleSetPublicIPAddressConfigurationDnsSettings { - /** - * The Domain name label.The concatenation of the domain name label and vm index - * will be the domain name labels of the PublicIPAddress resources that will be - * created - */ - domainNameLabel: string; - /** - * The Domain name label scope.The concatenation of the hashed domain name label - * that generated according to the policy from domain name label scope and vm - * index will be the domain name labels of the PublicIPAddress resources that will - * be created - * - * Possible values: "TenantReuse", "SubscriptionReuse", "ResourceGroupReuse", "NoReuse" - */ - domainNameLabelScope?: DomainNameLabelScopeTypes; -} - -/** Contains the IP tag associated with the public IP address. */ -export interface VirtualMachineScaleSetIpTag { - /** IP tag type. Example: FirstPartyUsage. */ - ipTagType?: string; - /** IP tag associated with the public IP. Example: SQL, Storage etc. */ - tag?: string; -} - -/** - * Describes the public IP Sku. It can only be set with OrchestrationMode as - * Flexible. - */ -export interface PublicIPAddressSku { - /** - * Specify public IP sku name - * - * Possible values: "Basic", "Standard" - */ - name?: PublicIPAddressSkuName; - /** - * Specify public IP sku tier - * - * Possible values: "Regional", "Global" - */ - tier?: PublicIPAddressSkuTier; -} - -/** - * Specifies the Security profile settings for the virtual machine or virtual - * machine scale set. - */ -export interface SecurityProfile { - /** - * Specifies the security settings like secure boot and vTPM used while creating - * the virtual machine. Minimum api-version: 2020-12-01. - */ - uefiSettings?: UefiSettings; - /** - * This property can be used by user in the request to enable or disable the Host - * Encryption for the virtual machine or virtual machine scale set. This will - * enable the encryption for all the disks including Resource/Temp disk at host - * itself. The default behavior is: The Encryption at host will be disabled unless - * this property is set to true for the resource. - */ - encryptionAtHost?: boolean; - /** - * Specifies the SecurityType of the virtual machine. It has to be set to any - * specified value to enable UefiSettings. The default behavior is: UefiSettings - * will not be enabled unless this property is set. - * - * Possible values: "TrustedLaunch", "ConfidentialVM" - */ - securityType?: SecurityTypes; - /** - * Specifies the Managed Identity used by ADE to get access token for keyvault - * operations. - */ - encryptionIdentity?: EncryptionIdentity; - /** - * Specifies ProxyAgent settings while creating the virtual machine. Minimum - * api-version: 2023-09-01. - */ - proxyAgentSettings?: ProxyAgentSettings; -} - -/** - * Specifies the security settings like secure boot and vTPM used while creating - * the virtual machine. Minimum api-version: 2020-12-01. - */ -export interface UefiSettings { - /** - * Specifies whether secure boot should be enabled on the virtual machine. Minimum - * api-version: 2020-12-01. - */ - secureBootEnabled?: boolean; - /** - * Specifies whether vTPM should be enabled on the virtual machine. Minimum - * api-version: 2020-12-01. - */ - vTpmEnabled?: boolean; -} - -/** - * Specifies the Managed Identity used by ADE to get access token for keyvault - * operations. - */ -export interface EncryptionIdentity { - /** Specifies ARM Resource ID of one of the user identities associated with the VM. */ - userAssignedIdentityResourceId?: string; -} - -/** - * Specifies ProxyAgent settings while creating the virtual machine. Minimum - * api-version: 2023-09-01. - */ -export interface ProxyAgentSettings { - /** - * Specifies whether ProxyAgent feature should be enabled on the virtual machine - * or virtual machine scale set. - */ - enabled?: boolean; - /** - * Specifies the mode that ProxyAgent will execute on if the feature is enabled. - * ProxyAgent will start to audit or monitor but not enforce access control over - * requests to host endpoints in Audit mode, while in Enforce mode it will enforce - * access control. The default value is Enforce mode. - * - * Possible values: "Audit", "Enforce" - */ - mode?: Mode; - /** - * Increase the value of this property allows user to reset the key used for - * securing communication channel between guest and host. - */ - keyIncarnationId?: number; -} - -/** Specifies the boot diagnostic settings state. Minimum api-version: 2015-06-15. */ -export interface DiagnosticsProfile { - /** - * Boot Diagnostics is a debugging feature which allows you to view Console Output - * and Screenshot to diagnose VM status. **NOTE**: If storageUri is being - * specified then ensure that the storage account is in the same region and - * subscription as the VM. You can easily view the output of your console log. - * Azure also enables you to see a screenshot of the VM from the hypervisor. - */ - bootDiagnostics?: BootDiagnostics; -} - -/** - * Boot Diagnostics is a debugging feature which allows you to view Console Output - * and Screenshot to diagnose VM status. You can easily view the output of your - * console log. Azure also enables you to see a screenshot of the VM from the - * hypervisor. - */ -export interface BootDiagnostics { - /** Whether boot diagnostics should be enabled on the Virtual Machine. */ - enabled?: boolean; - /** - * Uri of the storage account to use for placing the console output and - * screenshot. If storageUri is not specified while enabling boot diagnostics, - * managed storage will be used. - */ - storageUri?: string; -} - -/** Describes a virtual machine scale set extension profile. */ -export interface VirtualMachineScaleSetExtensionProfile { - /** The virtual machine scale set child extension resources. */ - extensions?: Array; - /** - * Specifies the time alloted for all extensions to start. The time duration - * should be between 15 minutes and 120 minutes (inclusive) and should be - * specified in ISO 8601 format. The default value is 90 minutes (PT1H30M). - * Minimum api-version: 2020-06-01. - */ - extensionsTimeBudget?: string; -} - -/** Describes a Virtual Machine Scale Set Extension. */ -export interface VirtualMachineScaleSetExtension { - /** The name of the extension. */ - name?: string; - /** Describes the properties of a Virtual Machine Scale Set Extension. */ - properties?: VirtualMachineScaleSetExtensionProperties; -} - -/** Describes the properties of a Virtual Machine Scale Set Extension. */ -export interface VirtualMachineScaleSetExtensionProperties { - /** - * If a value is provided and is different from the previous value, the extension - * handler will be forced to update even if the extension configuration has not - * changed. - */ - forceUpdateTag?: string; - /** The name of the extension handler publisher. */ - publisher?: string; - /** Specifies the type of the extension; an example is "CustomScriptExtension". */ - type?: string; - /** Specifies the version of the script handler. */ - typeHandlerVersion?: string; - /** - * Indicates whether the extension should use a newer minor version if one is - * available at deployment time. Once deployed, however, the extension will not - * upgrade minor versions unless redeployed, even with this property set to true. - */ - autoUpgradeMinorVersion?: boolean; - /** - * Indicates whether the extension should be automatically upgraded by the - * platform if there is a newer version of the extension available. - */ - enableAutomaticUpgrade?: boolean; - /** Json formatted public settings for the extension. */ - settings?: Record; - /** - * The extension can contain either protectedSettings or - * protectedSettingsFromKeyVault or no protected settings at all. - */ - protectedSettings?: Record; - /** - * Collection of extension names after which this extension needs to be - * provisioned. - */ - provisionAfterExtensions?: string[]; - /** - * Indicates whether failures stemming from the extension will be suppressed - * (Operational failures such as not connecting to the VM will not be suppressed - * regardless of this value). The default is false. - */ - suppressFailures?: boolean; - /** - * The extensions protected settings that are passed by reference, and consumed - * from key vault - */ - protectedSettingsFromKeyVault?: KeyVaultSecretReference; -} - -/** Describes a reference to Key Vault Secret */ -export interface KeyVaultSecretReference { - /** The URL referencing a secret in a Key Vault. */ - secretUrl: string; - /** The relative URL of the Key Vault containing the secret. */ - sourceVault: SubResource; -} - -/** Specifies Scheduled Event related configurations. */ -export interface ScheduledEventsProfile { - /** Specifies Terminate Scheduled Event related configurations. */ - terminateNotificationProfile?: TerminateNotificationProfile; - /** Specifies OS Image Scheduled Event related configurations. */ - osImageNotificationProfile?: OSImageNotificationProfile; -} - -/** Specifies Terminate Scheduled Event related configurations. */ -export interface TerminateNotificationProfile { - /** - * Configurable length of time a Virtual Machine being deleted will have to - * potentially approve the Terminate Scheduled Event before the event is auto - * approved (timed out). The configuration must be specified in ISO 8601 format, - * the default value is 5 minutes (PT5M) - */ - notBeforeTimeout?: string; - /** Specifies whether the Terminate Scheduled event is enabled or disabled. */ - enable?: boolean; -} - -/** Specifies OS Image Scheduled Event related configurations. */ -export interface OSImageNotificationProfile { - /** - * Length of time a Virtual Machine being reimaged or having its OS upgraded will - * have to potentially approve the OS Image Scheduled Event before the event is - * auto approved (timed out). The configuration is specified in ISO 8601 format, - * and the value must not exceed 15 minutes (PT15M) - */ - notBeforeTimeout?: string; - /** Specifies whether the OS Image Scheduled event is enabled or disabled. */ - enable?: boolean; -} - -/** The parameters of a capacity reservation Profile. */ -export interface CapacityReservationProfile { - /** - * Specifies the capacity reservation group resource id that should be used for - * allocating the virtual machine or scaleset vm instances provided enough - * capacity has been reserved. Please refer to https://aka.ms/CapacityReservation - * for more details. - */ - capacityReservationGroup?: SubResource; -} - -/** - * Contains the list of gallery applications that should be made available to the - * VM/VMSS - */ -export interface ApplicationProfile { - /** Specifies the gallery applications that should be made available to the VM/VMSS */ - galleryApplications?: Array; -} - -/** - * Specifies the required information to reference a compute gallery application - * version - */ -export interface VMGalleryApplication { - /** Optional, Specifies a passthrough value for more generic context. */ - tags?: string; - /** Optional, Specifies the order in which the packages have to be installed */ - order?: number; - /** - * Specifies the GalleryApplicationVersion resource id on the form of - * /subscriptions/{SubscriptionId}/resourceGroups/{ResourceGroupName}/providers/Microsoft.Compute/galleries/{galleryName}/applications/{application}/versions/{version} - */ - packageReferenceId: string; - /** - * Optional, Specifies the uri to an azure blob that will replace the default - * configuration for the package if provided - */ - configurationReference?: string; - /** - * Optional, If true, any failure for any operation in the VmApplication will fail - * the deployment - */ - treatFailureAsDeploymentFailure?: boolean; - /** - * If set to true, when a new Gallery Application version is available in PIR/SIG, - * it will be automatically updated for the VM/VMSS - */ - enableAutomaticUpgrade?: boolean; -} - -/** Specifies the hardware settings for the virtual machine scale set. */ -export interface VirtualMachineScaleSetHardwareProfile { - /** - * Specifies the properties for customizing the size of the virtual machine. - * Minimum api-version: 2021-11-01. Please follow the instructions in [VM - * Customization](https://aka.ms/vmcustomization) for more details. - */ - vmSizeProperties?: VMSizeProperties; -} - -/** Specifies VM Size Property settings on the virtual machine. */ -export interface VMSizeProperties { - /** - * Specifies the number of vCPUs available for the VM. When this property is not - * 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). - */ - vCPUsAvailable?: number; - /** - * Specifies the vCPU to physical core ratio. When this property is not specified - * 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). - * **Setting this property to 1 also means that hyper-threading is disabled.** - */ - vCPUsPerCore?: number; -} - -/** - * Specifies the service artifact reference id used to set same image version for - * all virtual machines in the scale set when using 'latest' image version. - * Minimum api-version: 2022-11-01 - */ -export interface ServiceArtifactReference { - /** - * The service artifact reference id in the form of - * /subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/galleries/{galleryName}/serviceArtifacts/{serviceArtifactName}/vmArtifactsProfiles/{vmArtifactsProfilesName} - */ - id?: string; -} - -/** - * Specifies the security posture to be used for all virtual machines in the scale - * set. Minimum api-version: 2023-03-01 - */ -export interface SecurityPostureReference { - /** - * The security posture reference id in the form of - * /CommunityGalleries/{communityGalleryName}/securityPostures/{securityPostureName}/versions/{major.minor.patch}|{major.*}|latest - */ - id?: string; - /** - * List of virtual machine extension names to exclude when applying the security - * posture. - */ - excludeExtensions?: string[]; - /** Whether the security posture can be overridden by the user. */ - isOverridable?: boolean; -} - -/** Managed service identity (system assigned and/or user assigned identities) */ -export interface ManagedServiceIdentity { - /** - * The type of managed identity assigned to this resource. - * - * Possible values: "None", "SystemAssigned", "UserAssigned", "SystemAssigned,UserAssigned" - */ - type: ManagedServiceIdentityType; - /** The identities assigned to this resource by the user. */ - userAssignedIdentities?: Record; -} - -/** User assigned identity properties */ -export interface UserAssignedIdentity {} - -/** Plan for the resource. */ -export interface Plan { - /** A user defined name of the 3rd Party Artifact that is being procured. */ - name: string; - /** The publisher of the 3rd Party Artifact that is being bought. E.g. NewRelic */ - publisher: string; - /** The 3rd Party artifact that is being procured. E.g. NewRelic. Product maps to the OfferID specified for the artifact at the time of Data Market onboarding. */ - product: string; - /** A publisher provided promotion code as provisioned in Data Market for the said product/artifact. */ - promotionCode?: string; - /** The version of the desired product/artifact. */ - version?: string; -} - -/** The resource model definition for an Azure Resource Manager tracked top level resource which has 'tags' and a 'location' */ -export interface TrackedResource extends Resource { - /** Resource tags. */ - tags?: Record; - /** The geo-location where the resource lives */ - location: string; -} - -/** Common fields that are returned in the response for all Azure Resource Manager resources */ -export interface Resource {} - -/** Metadata pertaining to creation and last modification of the resource. */ -export interface SystemData { - /** The identity that created the resource. */ - createdBy?: string; - /** - * The type of identity that created the resource. - * - * Possible values: "User", "Application", "ManagedIdentity", "Key" - */ - createdByType?: CreatedByType; - /** The timestamp of resource creation (UTC). */ - createdAt?: Date | string; - /** The identity that last modified the resource. */ - lastModifiedBy?: string; - /** - * The type of identity that last modified the resource. - * - * Possible values: "User", "Application", "ManagedIdentity", "Key" - */ - lastModifiedByType?: CreatedByType; - /** The timestamp of resource last modification (UTC) */ - lastModifiedAt?: Date | string; -} - -/** The resource model definition for a Azure Resource Manager proxy resource. It will not have tags and a location */ -export interface ProxyResource extends Resource {} - -/** The base extension resource. */ -export interface ExtensionResource extends Resource {} - -/** The resource model definition for an Azure Resource Manager resource with an etag. */ -export interface AzureEntityResource extends Resource {} - -/** A private link resource. */ -export interface PrivateLinkResource extends Resource { - /** Resource properties. */ - properties?: PrivateLinkResourceProperties; -} - -/** Properties of a private link resource. */ -export interface PrivateLinkResourceProperties { - /** The private link resource private link DNS zone name. */ - requiredZoneNames?: string[]; -} - -/** The private endpoint connection resource */ -export interface PrivateEndpointConnection extends Resource { - /** The private endpoint connection properties */ - properties?: PrivateEndpointConnectionProperties; -} - -/** Properties of the private endpoint connection. */ -export interface PrivateEndpointConnectionProperties { - /** The private endpoint resource. */ - privateEndpoint?: PrivateEndpoint; - /** A collection of information about the state of the connection between service consumer and provider. */ - privateLinkServiceConnectionState: PrivateLinkServiceConnectionState; -} - -/** The Private Endpoint resource. */ -export interface PrivateEndpoint {} - -/** A collection of information about the state of the connection between service consumer and provider. */ -export interface PrivateLinkServiceConnectionState { - /** - * Indicates whether the connection has been Approved/Rejected/Removed by the owner of the service. - * - * Possible values: "Pending", "Approved", "Rejected" - */ - status?: PrivateEndpointServiceConnectionStatus; - /** The reason for approval/rejection of the connection. */ - description?: string; - /** A message indicating if changes on the service provider require any updates on the consumer. */ - actionsRequired?: string; -} - -/** The resource model definition containing the full set of allowed properties for a resource. Except properties bag, there cannot be a top level property outside of this set. */ -export interface ResourceModelWithAllowedPropertySet extends TrackedResource { - /** - * The fully qualified resource ID of the resource that manages this resource. Indicates if this resource is managed by another Azure resource. - * If this is present, complete mode deployment will not delete the resource if it is removed from the template since it is managed by another resource. - */ - managedBy?: string; - /** - * Metadata used by portal/tooling/etc to render different UX experiences for resources of the same type; e.g. ApiApps are a kind of Microsoft.Web/sites type. - * If supported, the resource provider must validate and persist this value. - */ - kind?: string; - /** - * The etag field is *not* required. If it is provided in the response body, it must also be provided as a header per the normal etag convention. - * Entity tags are used for comparing two or more entities from the same requested resource. HTTP/1.1 uses entity tags in the etag (section 14.19), - * If-Match (section 14.24), If-None-Match (section 14.26), and If-Range (section 14.27) header fields. - */ - eTag?: string; - identity?: Identity; - sku?: Sku; - plan?: Plan; -} - -/** Identity for the resource. */ -export interface Identity { - /** The identity type. */ - type?: ResourceIdentityType; -} - -/** The resource model definition representing SKU */ -export interface Sku { - /** The name of the SKU. Ex - P3. It is typically a letter+number code */ - name: string; - /** This field is required to be implemented by the Resource Provider if the service has more than one tier, but is not required on a PUT. */ - tier?: SkuTier; - /** The SKU size. When the name field is the combination of tier and some other value, this would be the standalone code. */ - size?: string; - /** If the service has different generations of hardware, for the same SKU, then that can be captured here. */ - family?: string; - /** If the SKU supports scale out/in then the capacity integer should be included. If scale out/in is not possible for the resource this may be omitted. */ - capacity?: number; -} - -/** Fleet Update Model */ -export interface FleetUpdate { - /** Resource tags. */ - tags?: Record; - /** Updatable managed service identity */ - identity?: ManagedServiceIdentityUpdate; - /** Updatable resource plan */ - plan?: ResourcePlanUpdate; - /** RP-specific updatable properties */ - properties?: FleetProperties; -} - -/** The template for adding optional properties. */ -export interface ManagedServiceIdentityUpdate { - /** - * The type of managed identity assigned to this resource. - * - * Possible values: "None", "SystemAssigned", "UserAssigned", "SystemAssigned,UserAssigned" - */ - type?: ManagedServiceIdentityType; - /** The identities assigned to this resource by the user. */ - userAssignedIdentities?: Record; -} - -/** The template for adding optional properties. */ -export interface ResourcePlanUpdate { - /** A user defined name of the 3rd Party Artifact that is being procured. */ - name?: string; - /** The publisher of the 3rd Party Artifact that is being bought. E.g. NewRelic */ - publisher?: string; - /** The 3rd Party artifact that is being procured. E.g. NewRelic. Product maps to the OfferID specified for the artifact at the time of Data Market onboarding. */ - product?: string; - /** A publisher provided promotion code as provisioned in Data Market for the said product/artifact. */ - promotionCode?: string; - /** The version of the desired product/artifact. */ - version?: string; -} - -/** Alias for ResourceProvisioningState */ -export type ResourceProvisioningState = string; -/** Alias for ProvisioningState */ -export type ProvisioningState = string; -/** Alias for EvictionPolicy */ -export type EvictionPolicy = string; -/** Alias for SpotAllocationStrategy */ -export type SpotAllocationStrategy = string; -/** Alias for RegularPriorityAllocationStrategy */ -export type RegularPriorityAllocationStrategy = string; -/** Alias for SettingNames */ -export type SettingNames = string; -/** Alias for WindowsVMGuestPatchMode */ -export type WindowsVMGuestPatchMode = string; -/** Alias for WindowsPatchAssessmentMode */ -export type WindowsPatchAssessmentMode = string; -/** Alias for WindowsVMGuestPatchAutomaticByPlatformRebootSetting */ -export type WindowsVMGuestPatchAutomaticByPlatformRebootSetting = string; -/** Alias for ProtocolTypes */ -export type ProtocolTypes = string; -/** Alias for LinuxVMGuestPatchMode */ -export type LinuxVMGuestPatchMode = string; -/** Alias for LinuxPatchAssessmentMode */ -export type LinuxPatchAssessmentMode = string; -/** Alias for LinuxVMGuestPatchAutomaticByPlatformRebootSetting */ -export type LinuxVMGuestPatchAutomaticByPlatformRebootSetting = string; -/** Alias for CachingTypes */ -export type CachingTypes = string; -/** Alias for DiskCreateOptionTypes */ -export type DiskCreateOptionTypes = string; -/** Alias for DiffDiskOptions */ -export type DiffDiskOptions = string; -/** Alias for DiffDiskPlacement */ -export type DiffDiskPlacement = string; -/** Alias for OperatingSystemTypes */ -export type OperatingSystemTypes = string; -/** Alias for StorageAccountTypes */ -export type StorageAccountTypes = string; -/** Alias for SecurityEncryptionTypes */ -export type SecurityEncryptionTypes = string; -/** Alias for DiskDeleteOptionTypes */ -export type DiskDeleteOptionTypes = string; -/** Alias for DiskControllerTypes */ -export type DiskControllerTypes = string; -/** Alias for DomainNameLabelScopeTypes */ -export type DomainNameLabelScopeTypes = string; -/** Alias for IPVersion */ -export type IPVersion = string; -/** Alias for DeleteOptions */ -export type DeleteOptions = string; -/** Alias for PublicIPAddressSkuName */ -export type PublicIPAddressSkuName = string; -/** Alias for PublicIPAddressSkuTier */ -export type PublicIPAddressSkuTier = string; -/** Alias for NetworkInterfaceAuxiliaryMode */ -export type NetworkInterfaceAuxiliaryMode = string; -/** Alias for NetworkInterfaceAuxiliarySku */ -export type NetworkInterfaceAuxiliarySku = string; -/** Alias for NetworkApiVersion */ -export type NetworkApiVersion = string; -/** Alias for SecurityTypes */ -export type SecurityTypes = string; -/** Alias for Mode */ -export type Mode = string; -/** Alias for ManagedServiceIdentityType */ -export type ManagedServiceIdentityType = string; -/** Alias for CreatedByType */ -export type CreatedByType = string; -/** Alias for PrivateEndpointServiceConnectionStatus */ -export type PrivateEndpointServiceConnectionStatus = string; -/** Alias for PrivateEndpointConnectionProvisioningState */ -export type PrivateEndpointConnectionProvisioningState = string; -/** Alias for ResourceIdentityType */ -export type ResourceIdentityType = "SystemAssigned"; -/** Alias for SkuTier */ -export type SkuTier = "Free" | "Basic" | "Standard" | "Premium"; diff --git a/sdk/computefleet/arm-computefleet/src/rest/outputModels.ts b/sdk/computefleet/arm-computefleet/src/rest/outputModels.ts deleted file mode 100644 index bfedd355c0b4..000000000000 --- a/sdk/computefleet/arm-computefleet/src/rest/outputModels.ts +++ /dev/null @@ -1,1854 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT license. - -import { Paged } from "@azure/core-paging"; - -/** Details of a REST API operation, returned from the Resource Provider Operations API */ -export interface OperationOutput { - /** 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?: OperationDisplayOutput; - /** - * The intended executor of the operation; as in Resource Based Access Control (RBAC) and audit logs UX. Default value is "user,system" - * - * Possible values: "user", "system", "user,system" - */ - readonly origin?: OriginOutput; - /** - * Extensible enum. Indicates the action type. "Internal" refers to actions that are for internal only APIs. - * - * Possible values: "Internal" - */ - actionType?: ActionTypeOutput; -} - -/** Localized display information for and operation. */ -export interface OperationDisplayOutput { - /** 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; -} - -/** Common error response for all Azure Resource Manager APIs to return error details for failed operations. */ -export interface ErrorResponseOutput { - /** The error object. */ - error?: ErrorDetailOutput; -} - -/** The error detail. */ -export interface ErrorDetailOutput { - /** The error code. */ - readonly code?: string; - /** The error message. */ - readonly message?: string; - /** The error target. */ - readonly target?: string; - /** The error details. */ - readonly details?: Array; - /** The error additional info. */ - readonly additionalInfo?: Array; -} - -/** The resource management error additional info. */ -export interface ErrorAdditionalInfoOutput { - /** The additional info type. */ - readonly type?: string; - /** The additional info. */ - readonly info?: Record; -} - -/** An Compute Fleet resource */ -export interface FleetOutput extends TrackedResourceOutput { - /** The resource-specific properties for this resource. */ - properties?: FleetPropertiesOutput; - /** Zones in which the Compute Fleet is available */ - zones?: string[]; - /** The managed service identities assigned to this resource. */ - identity?: ManagedServiceIdentityOutput; - /** Details of the resource plan. */ - plan?: PlanOutput; -} - -/** Details of the Compute Fleet. */ -export interface FleetPropertiesOutput { - /** - * The status of the last operation. - * - * Possible values: "Creating", "Updating", "Deleting", "Migrating" - */ - readonly provisioningState?: ProvisioningStateOutput; - /** Configuration Options for Spot instances in Compute Fleet. */ - spotPriorityProfile?: SpotPriorityProfileOutput; - /** Configuration Options for Regular instances in Compute Fleet. */ - regularPriorityProfile?: RegularPriorityProfileOutput; - /** List of VM sizes supported for Compute Fleet */ - vmSizesProfile: Array; - /** Compute Profile to use for running user's workloads. */ - computeProfile: ComputeProfileOutput; - /** Specifies the time at which the Compute Fleet is created. */ - readonly timeCreated?: string; - /** Specifies the ID which uniquely identifies a Compute Fleet. */ - readonly uniqueId?: string; -} - -/** Configuration Options for Spot instances in Compute Fleet. */ -export interface SpotPriorityProfileOutput { - /** Total capacity to achieve. It is currently in terms of number of VMs. */ - capacity?: number; - /** Minimum capacity to achieve which cannot be updated. If we will not be able to "guarantee" minimum capacity, we will reject the request in the sync path itself. */ - minCapacity?: number; - /** Price per hour of each Spot VM will never exceed this. */ - maxPricePerVM?: number; - /** - * Eviction Policy to follow when evicting Spot VMs. - * - * Possible values: "Delete", "Deallocate" - */ - evictionPolicy?: EvictionPolicyOutput; - /** - * Allocation strategy to follow when determining the VM sizes distribution for Spot VMs. - * - * Possible values: "PriceCapacityOptimized", "LowestPrice", "CapacityOptimized" - */ - allocationStrategy?: SpotAllocationStrategyOutput; - /** - * Flag to enable/disable continuous goal seeking for the desired capacity and restoration of evicted Spot VMs. - * If maintain is enabled, AzureFleetRP will use all VM sizes in vmSizesProfile to create new VMs (if VMs are evicted deleted) - * or update existing VMs with new VM sizes (if VMs are evicted deallocated or failed to allocate due to capacity constraint) in order to achieve the desired capacity. - * Maintain is enabled by default. - */ - maintain?: boolean; -} - -/** Configuration Options for Regular instances in Compute Fleet. */ -export interface RegularPriorityProfileOutput { - /** Total capacity to achieve. It is currently in terms of number of VMs. */ - capacity?: number; - /** Minimum capacity to achieve which cannot be updated. If we will not be able to "guarantee" minimum capacity, we will reject the request in the sync path itself. */ - minCapacity?: number; - /** - * Allocation strategy to follow when determining the VM sizes distribution for Regular VMs. - * - * Possible values: "LowestPrice", "Prioritized" - */ - allocationStrategy?: RegularPriorityAllocationStrategyOutput; -} - -/** Specifications about a VM Size. This will also contain the corresponding rank and weight in future. */ -export interface VmSizeProfileOutput { - /** The Sku name (e.g. 'Standard_DS1_v2') */ - name: string; - /** - * The rank of the VM size. This is used with 'RegularPriorityAllocationStrategy.Prioritized' - * The lower the number, the higher the priority. Starting with 0. - */ - rank?: number; -} - -/** Compute Profile to use for running user's workloads. */ -export interface ComputeProfileOutput { - /** Base Virtual Machine Profile Properties to be specified according to "specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/{computeApiVersion}/virtualMachineScaleSet.json#/definitions/VirtualMachineScaleSetVMProfile" */ - baseVirtualMachineProfile: BaseVirtualMachineProfileOutput; - /** - * Specifies the Microsoft.Compute API version to use when creating underlying Virtual Machine scale sets and Virtual Machines. - * The default value will be the latest supported computeApiVersion by Compute Fleet. - */ - computeApiVersion?: string; - /** - * Specifies the number of fault domains to use when creating the underlying VMSS. - * A fault domain is a logical group of hardware within an Azure datacenter. - * VMs in the same fault domain share a common power source and network switch. - * If not specified, defaults to 1, which represents "Max Spreading" (using as many fault domains as possible). - * This property cannot be updated. - */ - platformFaultDomainCount?: number; -} - -/** Describes the base virtual machine profile for fleet */ -export interface BaseVirtualMachineProfileOutput { - /** - * Specifies the operating system settings for the virtual machines in the scale - * set. - */ - osProfile?: VirtualMachineScaleSetOSProfileOutput; - /** Specifies the storage settings for the virtual machine disks. */ - storageProfile?: VirtualMachineScaleSetStorageProfileOutput; - /** - * Specifies properties of the network interfaces of the virtual machines in the - * scale set. - */ - networkProfile?: VirtualMachineScaleSetNetworkProfileOutput; - /** - * Specifies the Security related profile settings for the virtual machines in the - * scale set. - */ - securityProfile?: SecurityProfileOutput; - /** Specifies the boot diagnostic settings state. */ - diagnosticsProfile?: DiagnosticsProfileOutput; - /** - * Specifies a collection of settings for extensions installed on virtual machines - * in the scale set. - */ - extensionProfile?: VirtualMachineScaleSetExtensionProfileOutput; - /** - * Specifies that the image or disk that is being used was licensed on-premises. - *

Possible values for Windows Server operating system are:

- * Windows_Client

Windows_Server

Possible values for Linux - * 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) - *

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

Minimum api-version: 2015-06-15 - */ - licenseType?: string; - /** Specifies Scheduled Event related configurations. */ - scheduledEventsProfile?: ScheduledEventsProfileOutput; - /** - * UserData for the virtual machines in the scale set, which must be base-64 - * encoded. Customer should not pass any secrets in here. Minimum api-version: - * 2021-03-01. - */ - userData?: string; - /** - * Specifies the capacity reservation related details of a scale set. Minimum - * api-version: 2021-04-01. - */ - capacityReservation?: CapacityReservationProfileOutput; - /** Specifies the gallery applications that should be made available to the VM/VMSS */ - applicationProfile?: ApplicationProfileOutput; - /** - * Specifies the hardware profile related details of a scale set. Minimum - * api-version: 2021-11-01. - */ - hardwareProfile?: VirtualMachineScaleSetHardwareProfileOutput; - /** - * Specifies the service artifact reference id used to set same image version for - * all virtual machines in the scale set when using 'latest' image version. - * Minimum api-version: 2022-11-01 - */ - serviceArtifactReference?: ServiceArtifactReferenceOutput; - /** - * Specifies the security posture to be used for all virtual machines in the scale - * set. Minimum api-version: 2023-03-01 - */ - securityPostureReference?: SecurityPostureReferenceOutput; - /** - * Specifies the time in which this VM profile for the Virtual Machine Scale Set - * was created. Minimum API version for this property is 2023-09-01. This value - * will be added to VMSS Flex VM tags when creating/updating the VMSS VM Profile - * with minimum api-version 2023-09-01. Examples: "2024-07-01T00:00:01.1234567+00:00" - */ - readonly timeCreated?: string; -} - -/** Describes a virtual machine scale set OS profile. */ -export interface VirtualMachineScaleSetOSProfileOutput { - /** - * Specifies the computer name prefix for all of the virtual machines in the scale - * set. Computer name prefixes must be 1 to 15 characters long. - */ - computerNamePrefix?: string; - /** - * Specifies the name of the administrator account.

**Windows-only - * restriction:** Cannot end in "."

**Disallowed values:** - * "administrator", "admin", "user", "user1", "test", "user2", "test1", "user3", - * "admin1", "1", "123", "a", "actuser", "adm", "admin2", "aspnet", "backup", - * "console", "david", "guest", "john", "owner", "root", "server", "sql", - * "support", "support_388945a0", "sys", "test2", "test3", "user4", "user5". - *

**Minimum-length (Linux):** 1 character

**Max-length - * (Linux):** 64 characters

**Max-length (Windows):** 20 characters - */ - adminUsername?: string; - /** - * Specifies the password of the administrator account.

**Minimum-length - * (Windows):** 8 characters

**Minimum-length (Linux):** 6 characters - *

**Max-length (Windows):** 123 characters

**Max-length - * (Linux):** 72 characters

**Complexity requirements:** 3 out of 4 - * conditions below need to be fulfilled
Has lower characters
Has upper - * characters
Has a digit
Has a special character (Regex match [\W_]) - *

**Disallowed values:** "abc@123", "P@$$w0rd", "P@ssw0rd", - * "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) - *

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) - */ - adminPassword?: string; - /** - * Specifies a base-64 encoded string of custom data. The base-64 encoded string - * 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) - */ - customData?: string; - /** Specifies Windows operating system settings on the virtual machine. */ - windowsConfiguration?: WindowsConfigurationOutput; - /** - * 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). - */ - linuxConfiguration?: LinuxConfigurationOutput; - /** - * 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) - * or the [Azure Key Vault virtual machine extension for - * Windows](https://docs.microsoft.com/azure/virtual-machines/extensions/key-vault-windows). - */ - secrets?: Array; - /** - * Specifies whether extension operations should be allowed on the virtual machine - * scale set. This may only be set to False when no extensions are present on the - * virtual machine scale set. - */ - allowExtensionOperations?: boolean; - /** Optional property which must either be set to True or omitted. */ - requireGuestProvisionSignal?: boolean; -} - -/** Specifies Windows operating system settings on the virtual machine. */ -export interface WindowsConfigurationOutput { - /** - * Indicates whether virtual machine agent should be provisioned on the virtual - * machine. When this property is not specified in the request body, it is set to - * true by default. This will ensure that VM Agent is installed on the VM so that - * extensions can be added to the VM later. - */ - provisionVMAgent?: boolean; - /** - * Indicates whether Automatic Updates is enabled for the Windows virtual machine. - * Default value is true. For virtual machine scale sets, this property can be - * updated and updates will take effect on OS reprovisioning. - */ - enableAutomaticUpdates?: boolean; - /** - * 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) - * value from time zones returned by - * [TimeZoneInfo.GetSystemTimeZones](https://docs.microsoft.com/dotnet/api/system.timezoneinfo.getsystemtimezones). - */ - timeZone?: string; - /** - * Specifies additional base-64 encoded XML formatted information that can be - * included in the Unattend.xml file, which is used by Windows Setup. - */ - additionalUnattendContent?: Array; - /** [Preview Feature] Specifies settings related to VM Guest Patching on Windows. */ - patchSettings?: PatchSettingsOutput; - /** - * Specifies the Windows Remote Management listeners. This enables remote Windows - * PowerShell. - */ - winRM?: WinRMConfigurationOutput; - /** - * Indicates whether VMAgent Platform Updates is enabled for the Windows virtual - * machine. Default value is false. - */ - enableVMAgentPlatformUpdates?: boolean; -} - -/** - * Specifies additional XML formatted information that can be included in the - * Unattend.xml file, which is used by Windows Setup. Contents are defined by - * setting name, component name, and the pass in which the content is applied. - */ -export interface AdditionalUnattendContentOutput { - /** The pass name. Currently, the only allowable value is OobeSystem. */ - passName?: "OobeSystem"; - /** - * The component name. Currently, the only allowable value is - * Microsoft-Windows-Shell-Setup. - */ - componentName?: "Microsoft-Windows-Shell-Setup"; - /** - * Specifies the name of the setting to which the content applies. Possible values - * are: FirstLogonCommands and AutoLogon. - * - * Possible values: "AutoLogon", "FirstLogonCommands" - */ - settingName?: SettingNamesOutput; - /** - * Specifies the XML formatted content that is added to the unattend.xml file for - * the specified path and component. The XML must be less than 4KB and must - * include the root element for the setting or feature that is being inserted. - */ - content?: string; -} - -/** Specifies settings related to VM Guest Patching on Windows. */ -export interface PatchSettingsOutput { - /** - * Specifies the mode of VM Guest Patching to IaaS virtual machine or virtual - * machines associated to virtual machine scale set with OrchestrationMode as - * Flexible.

Possible values are:

**Manual** - You - * control the application of patches to a virtual machine. You do this by - * applying patches manually inside the VM. In this mode, automatic updates are - * disabled; the property WindowsConfiguration.enableAutomaticUpdates must be - * false

**AutomaticByOS** - The virtual machine will automatically be - * updated by the OS. The property WindowsConfiguration.enableAutomaticUpdates - * must be true.

**AutomaticByPlatform** - the virtual machine will - * automatically updated by the platform. The properties provisionVMAgent and - * WindowsConfiguration.enableAutomaticUpdates must be true - * - * Possible values: "Manual", "AutomaticByOS", "AutomaticByPlatform" - */ - patchMode?: WindowsVMGuestPatchModeOutput; - /** - * Enables customers to patch their Azure VMs without requiring a reboot. For - * enableHotpatching, the 'provisionVMAgent' must be set to true and 'patchMode' - * must be set to 'AutomaticByPlatform'. - */ - enableHotpatching?: boolean; - /** - * Specifies the mode of VM Guest patch assessment for the IaaS virtual - * machine.

Possible values are:

**ImageDefault** - You - * control the timing of patch assessments on a virtual machine.

- * **AutomaticByPlatform** - The platform will trigger periodic patch assessments. - * The property provisionVMAgent must be true. - * - * Possible values: "ImageDefault", "AutomaticByPlatform" - */ - assessmentMode?: WindowsPatchAssessmentModeOutput; - /** - * Specifies additional settings for patch mode AutomaticByPlatform in VM Guest - * Patching on Windows. - */ - automaticByPlatformSettings?: WindowsVMGuestPatchAutomaticByPlatformSettingsOutput; -} - -/** - * Specifies additional settings to be applied when patch mode AutomaticByPlatform - * is selected in Windows patch settings. - */ -export interface WindowsVMGuestPatchAutomaticByPlatformSettingsOutput { - /** - * Specifies the reboot setting for all AutomaticByPlatform patch installation - * operations. - * - * Possible values: "Unknown", "IfRequired", "Never", "Always" - */ - rebootSetting?: WindowsVMGuestPatchAutomaticByPlatformRebootSettingOutput; - /** Enables customer to schedule patching without accidental upgrades */ - bypassPlatformSafetyChecksOnUserSchedule?: boolean; -} - -/** Describes Windows Remote Management configuration of the VM */ -export interface WinRMConfigurationOutput { - /** The list of Windows Remote Management listeners */ - listeners?: Array; -} - -/** Describes Protocol and thumbprint of Windows Remote Management listener */ -export interface WinRMListenerOutput { - /** - * Specifies the protocol of WinRM listener. Possible values are: **http,** - * **https.** - * - * Possible values: "Http", "Https" - */ - protocol?: ProtocolTypesOutput; - /** - * 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). - * 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) - * or the [Azure Key Vault virtual machine extension for - * Windows](https://docs.microsoft.com/azure/virtual-machines/extensions/key-vault-windows). - */ - certificateUrl?: string; -} - -/** - * 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). - */ -export interface LinuxConfigurationOutput { - /** Specifies whether password authentication should be disabled. */ - disablePasswordAuthentication?: boolean; - /** Specifies the ssh key configuration for a Linux OS. */ - ssh?: SshConfigurationOutput; - /** - * Indicates whether virtual machine agent should be provisioned on the virtual - * machine. When this property is not specified in the request body, default - * behavior is to set it to true. This will ensure that VM Agent is installed on - * the VM so that extensions can be added to the VM later. - */ - provisionVMAgent?: boolean; - /** [Preview Feature] Specifies settings related to VM Guest Patching on Linux. */ - patchSettings?: LinuxPatchSettingsOutput; - /** - * Indicates whether VMAgent Platform Updates is enabled for the Linux virtual - * machine. Default value is false. - */ - enableVMAgentPlatformUpdates?: boolean; -} - -/** SSH configuration for Linux based VMs running on Azure */ -export interface SshConfigurationOutput { - /** The list of SSH public keys used to authenticate with linux based VMs. */ - publicKeys?: Array; -} - -/** - * Contains information about SSH certificate public key and the path on the Linux - * VM where the public key is placed. - */ -export interface SshPublicKeyOutput { - /** - * Specifies the full path on the created VM where ssh public key is stored. If - * the file already exists, the specified key is appended to the file. Example: - * /home/user/.ssh/authorized_keys - */ - path?: string; - /** - * 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). - */ - keyData?: string; -} - -/** Specifies settings related to VM Guest Patching on Linux. */ -export interface LinuxPatchSettingsOutput { - /** - * Specifies the mode of VM Guest Patching to IaaS virtual machine or virtual - * machines associated to virtual machine scale set with OrchestrationMode as - * Flexible.

Possible values are:

**ImageDefault** - The - * virtual machine's default patching configuration is used.

- * **AutomaticByPlatform** - The virtual machine will be automatically updated by - * the platform. The property provisionVMAgent must be true - * - * Possible values: "ImageDefault", "AutomaticByPlatform" - */ - patchMode?: LinuxVMGuestPatchModeOutput; - /** - * Specifies the mode of VM Guest Patch Assessment for the IaaS virtual - * machine.

Possible values are:

**ImageDefault** - You - * control the timing of patch assessments on a virtual machine.

- * **AutomaticByPlatform** - The platform will trigger periodic patch assessments. - * The property provisionVMAgent must be true. - * - * Possible values: "ImageDefault", "AutomaticByPlatform" - */ - assessmentMode?: LinuxPatchAssessmentModeOutput; - /** - * Specifies additional settings for patch mode AutomaticByPlatform in VM Guest - * Patching on Linux. - */ - automaticByPlatformSettings?: LinuxVMGuestPatchAutomaticByPlatformSettingsOutput; -} - -/** - * Specifies additional settings to be applied when patch mode AutomaticByPlatform - * is selected in Linux patch settings. - */ -export interface LinuxVMGuestPatchAutomaticByPlatformSettingsOutput { - /** - * Specifies the reboot setting for all AutomaticByPlatform patch installation - * operations. - * - * Possible values: "Unknown", "IfRequired", "Never", "Always" - */ - rebootSetting?: LinuxVMGuestPatchAutomaticByPlatformRebootSettingOutput; - /** Enables customer to schedule patching without accidental upgrades */ - bypassPlatformSafetyChecksOnUserSchedule?: boolean; -} - -/** Describes a set of certificates which are all in the same Key Vault. */ -export interface VaultSecretGroupOutput { - /** - * The relative URL of the Key Vault containing all of the certificates in - * VaultCertificates. - */ - sourceVault?: SubResourceOutput; - /** The list of key vault references in SourceVault which contain certificates. */ - vaultCertificates?: Array; -} - -/** Describes SubResource */ -export interface SubResourceOutput { - /** Resource Id */ - id?: string; -} - -/** - * Describes a single certificate reference in a Key Vault, and where the - * certificate should reside on the VM. - */ -export interface VaultCertificateOutput { - /** - * 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). - * 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) - * or the [Azure Key Vault virtual machine extension for - * Windows](https://docs.microsoft.com/azure/virtual-machines/extensions/key-vault-windows). - */ - certificateUrl?: string; - /** - * For Windows VMs, specifies the certificate store on the Virtual Machine to - * which the certificate should be added. The specified certificate store is - * implicitly in the LocalMachine account. For Linux VMs, the certificate file is - * placed under the /var/lib/waagent directory, with the file name - * <UppercaseThumbprint>.crt for the X509 certificate file and - * <UppercaseThumbprint>.prv for private key. Both of these files are .pem - * formatted. - */ - certificateStore?: string; -} - -/** Describes a virtual machine scale set storage profile. */ -export interface VirtualMachineScaleSetStorageProfileOutput { - /** - * Specifies information about the image to use. You can specify information about - * platform images, marketplace images, or virtual machine images. This element is - * required when you want to use a platform image, marketplace image, or virtual - * machine image, but is not used in other creation operations. - */ - imageReference?: ImageReferenceOutput; - /** - * 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). - */ - osDisk?: VirtualMachineScaleSetOSDiskOutput; - /** - * 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). - */ - dataDisks?: Array; - /** - * Specifies the disk controller type configured for the virtual machines in the scale set. Minimum api-version: 2022-08-01 - * - * Possible values: "SCSI", "NVMe" - */ - diskControllerType?: DiskControllerTypesOutput; -} - -/** - * Specifies information about the image to use. You can specify information about - * platform images, marketplace images, or virtual machine images. This element is - * required when you want to use a platform image, marketplace image, or virtual - * machine image, but is not used in other creation operations. NOTE: Image - * reference publisher and offer can only be set when you create the scale set. - */ -export interface ImageReferenceOutput { - /** Resource Id */ - id?: string; - /** The image publisher. */ - publisher?: string; - /** - * Specifies the offer of the platform image or marketplace image used to create - * the virtual machine. - */ - offer?: string; - /** The image SKU. */ - sku?: string; - /** - * Specifies the version of the platform image or marketplace image used to create - * the virtual machine. The allowed formats are Major.Minor.Build or 'latest'. - * Major, Minor, and Build are decimal numbers. Specify 'latest' to use the latest - * version of an image available at deploy time. Even if you use 'latest', the VM - * image will not automatically update after deploy time even if a new version - * becomes available. Please do not use field 'version' for gallery image - * deployment, gallery image should always use 'id' field for deployment, to use 'latest' - * version of gallery image, just set - * '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/galleries/{galleryName}/images/{imageName}' - * in the 'id' field without version input. - */ - version?: string; - /** - * Specifies in decimal numbers, the version of platform image or marketplace - * image used to create the virtual machine. This readonly field differs from 'version', - * only if the value specified in 'version' field is 'latest'. - */ - readonly exactVersion?: string; - /** - * Specified the shared gallery image unique id for vm deployment. This can be - * fetched from shared gallery image GET call. - */ - sharedGalleryImageId?: string; - /** - * Specified the community gallery image unique id for vm deployment. This can be - * fetched from community gallery image GET call. - */ - communityGalleryImageId?: string; -} - -/** Describes a virtual machine scale set operating system disk. */ -export interface VirtualMachineScaleSetOSDiskOutput { - /** The disk name. */ - name?: string; - /** - * Specifies the caching requirements. Possible values are: **None,** - * **ReadOnly,** **ReadWrite.** The default values are: **None for Standard - * storage. ReadOnly for Premium storage.** - * - * Possible values: "None", "ReadOnly", "ReadWrite" - */ - caching?: CachingTypesOutput; - /** Specifies whether writeAccelerator should be enabled or disabled on the disk. */ - writeAcceleratorEnabled?: boolean; - /** - * Specifies how the virtual machines in the scale set should be created. The only - * allowed value is: **FromImage.** This value is used when you are using an image - * to create the virtual machine. If you are using a platform image, you also use - * the imageReference element described above. If you are using a marketplace - * image, you also use the plan element previously described. - * - * Possible values: "FromImage", "Empty", "Attach", "Copy", "Restore" - */ - createOption: DiskCreateOptionTypesOutput; - /** - * Specifies the ephemeral disk Settings for the operating system disk used by the - * virtual machine scale set. - */ - diffDiskSettings?: DiffDiskSettingsOutput; - /** - * Specifies the size of an empty data disk in gigabytes. This element can be used - * to overwrite the size of the disk in a virtual machine image. The property 'diskSizeGB' - * is the number of bytes x 1024^3 for the disk and the value cannot - * be larger than 1023. - */ - diskSizeGB?: number; - /** - * This property allows you to specify the type of the OS that is included in the - * disk if creating a VM from user-image or a specialized VHD. Possible values - * are: **Windows,** **Linux.** - * - * Possible values: "Windows", "Linux" - */ - osType?: OperatingSystemTypesOutput; - /** Specifies information about the unmanaged user image to base the scale set on. */ - image?: VirtualHardDiskOutput; - /** - * Specifies the container urls that are used to store operating system disks for - * the scale set. - */ - vhdContainers?: string[]; - /** The managed disk parameters. */ - managedDisk?: VirtualMachineScaleSetManagedDiskParametersOutput; - /** - * Specifies whether OS Disk should be deleted or detached upon VMSS Flex deletion - * (This feature is available for VMSS with Flexible OrchestrationMode only). - *

Possible values:

**Delete** If this value is used, the OS - * disk is deleted when VMSS Flex VM is deleted.

**Detach** If this value - * is used, the OS disk is retained after VMSS Flex VM is deleted.

The - * default value is set to **Delete**. For an Ephemeral OS Disk, the default value - * is set to **Delete**. User cannot change the delete option for Ephemeral OS - * Disk. - * - * Possible values: "Delete", "Detach" - */ - deleteOption?: DiskDeleteOptionTypesOutput; -} - -/** - * Describes the parameters of ephemeral disk settings that can be specified for - * operating system disk. **Note:** The ephemeral disk settings can only be - * specified for managed disk. - */ -export interface DiffDiskSettingsOutput { - /** - * Specifies the ephemeral disk settings for operating system disk. - * - * Possible values: "Local" - */ - option?: DiffDiskOptionsOutput; - /** - * Specifies the ephemeral disk placement for operating system disk. Possible - * 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 - * sizes exposes a cache disk. - * - * Possible values: "CacheDisk", "ResourceDisk", "NvmeDisk" - */ - placement?: DiffDiskPlacementOutput; -} - -/** Describes the uri of a disk. */ -export interface VirtualHardDiskOutput { - /** Specifies the virtual hard disk's uri. */ - uri?: string; -} - -/** Describes the parameters of a ScaleSet managed disk. */ -export interface VirtualMachineScaleSetManagedDiskParametersOutput { - /** - * Specifies the storage account type for the managed disk. NOTE: UltraSSD_LRS can - * only be used with data disks, it cannot be used with OS Disk. - * - * Possible values: "Standard_LRS", "Premium_LRS", "StandardSSD_LRS", "UltraSSD_LRS", "Premium_ZRS", "StandardSSD_ZRS", "PremiumV2_LRS" - */ - storageAccountType?: StorageAccountTypesOutput; - /** - * Specifies the customer managed disk encryption set resource id for the managed - * disk. - */ - diskEncryptionSet?: DiskEncryptionSetParametersOutput; - /** Specifies the security profile for the managed disk. */ - securityProfile?: VMDiskSecurityProfileOutput; -} - -/** - * Describes the parameter of customer managed disk encryption set resource id - * that can be specified for disk. **Note:** The disk encryption set resource id - * can only be specified for managed disk. Please refer - * https://aka.ms/mdssewithcmkoverview for more details. - */ -export interface DiskEncryptionSetParametersOutput { - /** Resource Id */ - id?: string; -} - -/** - * Specifies the security profile settings for the managed disk. **Note:** It can - * only be set for Confidential VMs. - */ -export interface VMDiskSecurityProfileOutput { - /** - * Specifies the EncryptionType of the managed disk. It is set to - * DiskWithVMGuestState for encryption of the managed disk along with VMGuestState - * blob, VMGuestStateOnly for encryption of just the VMGuestState blob, and - * NonPersistedTPM for not persisting firmware state in the VMGuestState blob.. - * **Note:** It can be set for only Confidential VMs. - * - * Possible values: "VMGuestStateOnly", "DiskWithVMGuestState", "NonPersistedTPM" - */ - securityEncryptionType?: SecurityEncryptionTypesOutput; - /** - * Specifies the customer managed disk encryption set resource id for the managed - * disk that is used for Customer Managed Key encrypted ConfidentialVM OS Disk and - * VMGuest blob. - */ - diskEncryptionSet?: DiskEncryptionSetParametersOutput; -} - -/** Describes a virtual machine scale set data disk. */ -export interface VirtualMachineScaleSetDataDiskOutput { - /** The disk name. */ - name?: string; - /** - * Specifies the logical unit number of the data disk. This value is used to - * identify data disks within the VM and therefore must be unique for each data - * disk attached to a VM. - */ - lun: number; - /** - * Specifies the caching requirements. Possible values are: **None,** - * **ReadOnly,** **ReadWrite.** The default values are: **None for Standard - * storage. ReadOnly for Premium storage.** - * - * Possible values: "None", "ReadOnly", "ReadWrite" - */ - caching?: CachingTypesOutput; - /** Specifies whether writeAccelerator should be enabled or disabled on the disk. */ - writeAcceleratorEnabled?: boolean; - /** - * The create option. - * - * Possible values: "FromImage", "Empty", "Attach", "Copy", "Restore" - */ - createOption: DiskCreateOptionTypesOutput; - /** - * Specifies the size of an empty data disk in gigabytes. This element can be used - * to overwrite the size of the disk in a virtual machine image. The property - * diskSizeGB is the number of bytes x 1024^3 for the disk and the value cannot be - * larger than 1023. - */ - diskSizeGB?: number; - /** The managed disk parameters. */ - managedDisk?: VirtualMachineScaleSetManagedDiskParametersOutput; - /** - * Specifies the Read-Write IOPS for the managed disk. Should be used only when - * StorageAccountType is UltraSSD_LRS. If not specified, a default value would be - * assigned based on diskSizeGB. - */ - 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 - * would be assigned based on diskSizeGB. - */ - diskMBpsReadWrite?: number; - /** - * Specifies whether data disk should be deleted or detached upon VMSS Flex - * deletion (This feature is available for VMSS with Flexible OrchestrationMode - * only).

Possible values:

**Delete** If this value is used, the - * data disk is deleted when the VMSS Flex VM is deleted.

**Detach** If - * this value is used, the data disk is retained after VMSS Flex VM is - * deleted.

The default value is set to **Delete**. - * - * Possible values: "Delete", "Detach" - */ - deleteOption?: DiskDeleteOptionTypesOutput; -} - -/** Describes a virtual machine scale set network profile. */ -export interface VirtualMachineScaleSetNetworkProfileOutput { - /** - * A reference to a load balancer probe used to determine the health of an - * instance in the virtual machine scale set. The reference will be in the form: - * '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/probes/{probeName}'. - */ - healthProbe?: ApiEntityReferenceOutput; - /** The list of network configurations. */ - networkInterfaceConfigurations?: Array; - /** - * specifies the Microsoft.Network API version used when creating networking - * resources in the Network Interface Configurations for Virtual Machine Scale Set - * with orchestration mode 'Flexible' - * - * Possible values: "2020-11-01" - */ - networkApiVersion?: NetworkApiVersionOutput; -} - -/** The API entity reference. */ -export interface ApiEntityReferenceOutput { - /** - * The ARM resource id in the form of - * /subscriptions/{SubscriptionId}/resourceGroups/{ResourceGroupName}/... - */ - id?: string; -} - -/** Describes a virtual machine scale set network profile's network configurations. */ -export interface VirtualMachineScaleSetNetworkConfigurationOutput { - /** The network configuration name. */ - name: string; - /** Describes a virtual machine scale set network profile's IP configuration. */ - properties?: VirtualMachineScaleSetNetworkConfigurationPropertiesOutput; -} - -/** Describes a virtual machine scale set network profile's IP configuration. */ -export interface VirtualMachineScaleSetNetworkConfigurationPropertiesOutput { - /** - * Specifies the primary network interface in case the virtual machine has more - * than 1 network interface. - */ - primary?: boolean; - /** Specifies whether the network interface is accelerated networking-enabled. */ - enableAcceleratedNetworking?: boolean; - /** Specifies whether the network interface is disabled for tcp state tracking. */ - disableTcpStateTracking?: boolean; - /** Specifies whether the network interface is FPGA networking-enabled. */ - enableFpga?: boolean; - /** The network security group. */ - networkSecurityGroup?: SubResourceOutput; - /** The dns settings to be applied on the network interfaces. */ - dnsSettings?: VirtualMachineScaleSetNetworkConfigurationDnsSettingsOutput; - /** Specifies the IP configurations of the network interface. */ - ipConfigurations: Array; - /** Whether IP forwarding enabled on this NIC. */ - enableIPForwarding?: boolean; - /** - * Specify what happens to the network interface when the VM is deleted - * - * Possible values: "Delete", "Detach" - */ - deleteOption?: DeleteOptionsOutput; - /** - * Specifies whether the Auxiliary mode is enabled for the Network Interface - * resource. - * - * Possible values: "None", "AcceleratedConnections", "Floating" - */ - auxiliaryMode?: NetworkInterfaceAuxiliaryModeOutput; - /** - * Specifies whether the Auxiliary sku is enabled for the Network Interface - * resource. - * - * Possible values: "None", "A1", "A2", "A4", "A8" - */ - auxiliarySku?: NetworkInterfaceAuxiliarySkuOutput; -} - -/** Describes a virtual machines scale sets network configuration's DNS settings. */ -export interface VirtualMachineScaleSetNetworkConfigurationDnsSettingsOutput { - /** List of DNS servers IP addresses */ - dnsServers?: string[]; -} - -/** Describes a virtual machine scale set network profile's IP configuration. */ -export interface VirtualMachineScaleSetIPConfigurationOutput { - /** The IP configuration name. */ - name: string; - /** - * Describes a virtual machine scale set network profile's IP configuration - * properties. - */ - properties?: VirtualMachineScaleSetIPConfigurationPropertiesOutput; -} - -/** - * Describes a virtual machine scale set network profile's IP configuration - * properties. - */ -export interface VirtualMachineScaleSetIPConfigurationPropertiesOutput { - /** Specifies the identifier of the subnet. */ - subnet?: ApiEntityReferenceOutput; - /** - * Specifies the primary network interface in case the virtual machine has more - * than 1 network interface. - */ - primary?: boolean; - /** The publicIPAddressConfiguration. */ - publicIPAddressConfiguration?: VirtualMachineScaleSetPublicIPAddressConfigurationOutput; - /** - * Available from Api-Version 2017-03-30 onwards, it represents whether the - * specific ipconfiguration is IPv4 or IPv6. Default is taken as IPv4. Possible - * values are: 'IPv4' and 'IPv6'. - * - * Possible values: "IPv4", "IPv6" - */ - privateIPAddressVersion?: IPVersionOutput; - /** - * Specifies an array of references to backend address pools of application - * gateways. A scale set can reference backend address pools of multiple - * application gateways. Multiple scale sets cannot use the same application - * gateway. - */ - applicationGatewayBackendAddressPools?: Array; - /** Specifies an array of references to application security group. */ - applicationSecurityGroups?: Array; - /** - * Specifies an array of references to backend address pools of load balancers. A - * scale set can reference backend address pools of one public and one internal - * load balancer. Multiple scale sets cannot use the same basic sku load balancer. - */ - loadBalancerBackendAddressPools?: Array; - /** - * Specifies an array of references to inbound Nat pools of the load balancers. A - * scale set can reference inbound nat pools of one public and one internal load - * balancer. Multiple scale sets cannot use the same basic sku load balancer. - */ - loadBalancerInboundNatPools?: Array; -} - -/** - * Describes a virtual machines scale set IP Configuration's PublicIPAddress - * configuration - */ -export interface VirtualMachineScaleSetPublicIPAddressConfigurationOutput { - /** The publicIP address configuration name. */ - name: string; - /** - * Describes a virtual machines scale set IP Configuration's PublicIPAddress - * configuration - */ - properties?: VirtualMachineScaleSetPublicIPAddressConfigurationPropertiesOutput; - /** - * Describes the public IP Sku. It can only be set with OrchestrationMode as - * Flexible. - */ - sku?: PublicIPAddressSkuOutput; -} - -/** - * Describes a virtual machines scale set IP Configuration's PublicIPAddress - * configuration - */ -export interface VirtualMachineScaleSetPublicIPAddressConfigurationPropertiesOutput { - /** The idle timeout of the public IP address. */ - idleTimeoutInMinutes?: number; - /** The dns settings to be applied on the publicIP addresses . */ - dnsSettings?: VirtualMachineScaleSetPublicIPAddressConfigurationDnsSettingsOutput; - /** The list of IP tags associated with the public IP address. */ - ipTags?: Array; - /** The PublicIPPrefix from which to allocate publicIP addresses. */ - publicIPPrefix?: SubResourceOutput; - /** - * Available from Api-Version 2019-07-01 onwards, it represents whether the - * specific ipconfiguration is IPv4 or IPv6. Default is taken as IPv4. Possible - * values are: 'IPv4' and 'IPv6'. - * - * Possible values: "IPv4", "IPv6" - */ - publicIPAddressVersion?: IPVersionOutput; - /** - * Specify what happens to the public IP when the VM is deleted - * - * Possible values: "Delete", "Detach" - */ - deleteOption?: DeleteOptionsOutput; -} - -/** Describes a virtual machines scale sets network configuration's DNS settings. */ -export interface VirtualMachineScaleSetPublicIPAddressConfigurationDnsSettingsOutput { - /** - * The Domain name label.The concatenation of the domain name label and vm index - * will be the domain name labels of the PublicIPAddress resources that will be - * created - */ - domainNameLabel: string; - /** - * The Domain name label scope.The concatenation of the hashed domain name label - * that generated according to the policy from domain name label scope and vm - * index will be the domain name labels of the PublicIPAddress resources that will - * be created - * - * Possible values: "TenantReuse", "SubscriptionReuse", "ResourceGroupReuse", "NoReuse" - */ - domainNameLabelScope?: DomainNameLabelScopeTypesOutput; -} - -/** Contains the IP tag associated with the public IP address. */ -export interface VirtualMachineScaleSetIpTagOutput { - /** IP tag type. Example: FirstPartyUsage. */ - ipTagType?: string; - /** IP tag associated with the public IP. Example: SQL, Storage etc. */ - tag?: string; -} - -/** - * Describes the public IP Sku. It can only be set with OrchestrationMode as - * Flexible. - */ -export interface PublicIPAddressSkuOutput { - /** - * Specify public IP sku name - * - * Possible values: "Basic", "Standard" - */ - name?: PublicIPAddressSkuNameOutput; - /** - * Specify public IP sku tier - * - * Possible values: "Regional", "Global" - */ - tier?: PublicIPAddressSkuTierOutput; -} - -/** - * Specifies the Security profile settings for the virtual machine or virtual - * machine scale set. - */ -export interface SecurityProfileOutput { - /** - * Specifies the security settings like secure boot and vTPM used while creating - * the virtual machine. Minimum api-version: 2020-12-01. - */ - uefiSettings?: UefiSettingsOutput; - /** - * This property can be used by user in the request to enable or disable the Host - * Encryption for the virtual machine or virtual machine scale set. This will - * enable the encryption for all the disks including Resource/Temp disk at host - * itself. The default behavior is: The Encryption at host will be disabled unless - * this property is set to true for the resource. - */ - encryptionAtHost?: boolean; - /** - * Specifies the SecurityType of the virtual machine. It has to be set to any - * specified value to enable UefiSettings. The default behavior is: UefiSettings - * will not be enabled unless this property is set. - * - * Possible values: "TrustedLaunch", "ConfidentialVM" - */ - securityType?: SecurityTypesOutput; - /** - * Specifies the Managed Identity used by ADE to get access token for keyvault - * operations. - */ - encryptionIdentity?: EncryptionIdentityOutput; - /** - * Specifies ProxyAgent settings while creating the virtual machine. Minimum - * api-version: 2023-09-01. - */ - proxyAgentSettings?: ProxyAgentSettingsOutput; -} - -/** - * Specifies the security settings like secure boot and vTPM used while creating - * the virtual machine. Minimum api-version: 2020-12-01. - */ -export interface UefiSettingsOutput { - /** - * Specifies whether secure boot should be enabled on the virtual machine. Minimum - * api-version: 2020-12-01. - */ - secureBootEnabled?: boolean; - /** - * Specifies whether vTPM should be enabled on the virtual machine. Minimum - * api-version: 2020-12-01. - */ - vTpmEnabled?: boolean; -} - -/** - * Specifies the Managed Identity used by ADE to get access token for keyvault - * operations. - */ -export interface EncryptionIdentityOutput { - /** Specifies ARM Resource ID of one of the user identities associated with the VM. */ - userAssignedIdentityResourceId?: string; -} - -/** - * Specifies ProxyAgent settings while creating the virtual machine. Minimum - * api-version: 2023-09-01. - */ -export interface ProxyAgentSettingsOutput { - /** - * Specifies whether ProxyAgent feature should be enabled on the virtual machine - * or virtual machine scale set. - */ - enabled?: boolean; - /** - * Specifies the mode that ProxyAgent will execute on if the feature is enabled. - * ProxyAgent will start to audit or monitor but not enforce access control over - * requests to host endpoints in Audit mode, while in Enforce mode it will enforce - * access control. The default value is Enforce mode. - * - * Possible values: "Audit", "Enforce" - */ - mode?: ModeOutput; - /** - * Increase the value of this property allows user to reset the key used for - * securing communication channel between guest and host. - */ - keyIncarnationId?: number; -} - -/** Specifies the boot diagnostic settings state. Minimum api-version: 2015-06-15. */ -export interface DiagnosticsProfileOutput { - /** - * Boot Diagnostics is a debugging feature which allows you to view Console Output - * and Screenshot to diagnose VM status. **NOTE**: If storageUri is being - * specified then ensure that the storage account is in the same region and - * subscription as the VM. You can easily view the output of your console log. - * Azure also enables you to see a screenshot of the VM from the hypervisor. - */ - bootDiagnostics?: BootDiagnosticsOutput; -} - -/** - * Boot Diagnostics is a debugging feature which allows you to view Console Output - * and Screenshot to diagnose VM status. You can easily view the output of your - * console log. Azure also enables you to see a screenshot of the VM from the - * hypervisor. - */ -export interface BootDiagnosticsOutput { - /** Whether boot diagnostics should be enabled on the Virtual Machine. */ - enabled?: boolean; - /** - * Uri of the storage account to use for placing the console output and - * screenshot. If storageUri is not specified while enabling boot diagnostics, - * managed storage will be used. - */ - storageUri?: string; -} - -/** Describes a virtual machine scale set extension profile. */ -export interface VirtualMachineScaleSetExtensionProfileOutput { - /** The virtual machine scale set child extension resources. */ - extensions?: Array; - /** - * Specifies the time alloted for all extensions to start. The time duration - * should be between 15 minutes and 120 minutes (inclusive) and should be - * specified in ISO 8601 format. The default value is 90 minutes (PT1H30M). - * Minimum api-version: 2020-06-01. - */ - extensionsTimeBudget?: string; -} - -/** Describes a Virtual Machine Scale Set Extension. */ -export interface VirtualMachineScaleSetExtensionOutput { - /** Resource Id */ - readonly id?: string; - /** The name of the extension. */ - name?: string; - /** Resource type */ - readonly type?: string; - /** Describes the properties of a Virtual Machine Scale Set Extension. */ - properties?: VirtualMachineScaleSetExtensionPropertiesOutput; -} - -/** Describes the properties of a Virtual Machine Scale Set Extension. */ -export interface VirtualMachineScaleSetExtensionPropertiesOutput { - /** - * If a value is provided and is different from the previous value, the extension - * handler will be forced to update even if the extension configuration has not - * changed. - */ - forceUpdateTag?: string; - /** The name of the extension handler publisher. */ - publisher?: string; - /** Specifies the type of the extension; an example is "CustomScriptExtension". */ - type?: string; - /** Specifies the version of the script handler. */ - typeHandlerVersion?: string; - /** - * Indicates whether the extension should use a newer minor version if one is - * available at deployment time. Once deployed, however, the extension will not - * upgrade minor versions unless redeployed, even with this property set to true. - */ - autoUpgradeMinorVersion?: boolean; - /** - * Indicates whether the extension should be automatically upgraded by the - * platform if there is a newer version of the extension available. - */ - enableAutomaticUpgrade?: boolean; - /** Json formatted public settings for the extension. */ - settings?: Record; - /** - * The extension can contain either protectedSettings or - * protectedSettingsFromKeyVault or no protected settings at all. - */ - protectedSettings?: Record; - /** The provisioning state, which only appears in the response. */ - readonly provisioningState?: string; - /** - * Collection of extension names after which this extension needs to be - * provisioned. - */ - provisionAfterExtensions?: string[]; - /** - * Indicates whether failures stemming from the extension will be suppressed - * (Operational failures such as not connecting to the VM will not be suppressed - * regardless of this value). The default is false. - */ - suppressFailures?: boolean; - /** - * The extensions protected settings that are passed by reference, and consumed - * from key vault - */ - protectedSettingsFromKeyVault?: KeyVaultSecretReferenceOutput; -} - -/** Describes a reference to Key Vault Secret */ -export interface KeyVaultSecretReferenceOutput { - /** The URL referencing a secret in a Key Vault. */ - secretUrl: string; - /** The relative URL of the Key Vault containing the secret. */ - sourceVault: SubResourceOutput; -} - -/** Specifies Scheduled Event related configurations. */ -export interface ScheduledEventsProfileOutput { - /** Specifies Terminate Scheduled Event related configurations. */ - terminateNotificationProfile?: TerminateNotificationProfileOutput; - /** Specifies OS Image Scheduled Event related configurations. */ - osImageNotificationProfile?: OSImageNotificationProfileOutput; -} - -/** Specifies Terminate Scheduled Event related configurations. */ -export interface TerminateNotificationProfileOutput { - /** - * Configurable length of time a Virtual Machine being deleted will have to - * potentially approve the Terminate Scheduled Event before the event is auto - * approved (timed out). The configuration must be specified in ISO 8601 format, - * the default value is 5 minutes (PT5M) - */ - notBeforeTimeout?: string; - /** Specifies whether the Terminate Scheduled event is enabled or disabled. */ - enable?: boolean; -} - -/** Specifies OS Image Scheduled Event related configurations. */ -export interface OSImageNotificationProfileOutput { - /** - * Length of time a Virtual Machine being reimaged or having its OS upgraded will - * have to potentially approve the OS Image Scheduled Event before the event is - * auto approved (timed out). The configuration is specified in ISO 8601 format, - * and the value must not exceed 15 minutes (PT15M) - */ - notBeforeTimeout?: string; - /** Specifies whether the OS Image Scheduled event is enabled or disabled. */ - enable?: boolean; -} - -/** The parameters of a capacity reservation Profile. */ -export interface CapacityReservationProfileOutput { - /** - * Specifies the capacity reservation group resource id that should be used for - * allocating the virtual machine or scaleset vm instances provided enough - * capacity has been reserved. Please refer to https://aka.ms/CapacityReservation - * for more details. - */ - capacityReservationGroup?: SubResourceOutput; -} - -/** - * Contains the list of gallery applications that should be made available to the - * VM/VMSS - */ -export interface ApplicationProfileOutput { - /** Specifies the gallery applications that should be made available to the VM/VMSS */ - galleryApplications?: Array; -} - -/** - * Specifies the required information to reference a compute gallery application - * version - */ -export interface VMGalleryApplicationOutput { - /** Optional, Specifies a passthrough value for more generic context. */ - tags?: string; - /** Optional, Specifies the order in which the packages have to be installed */ - order?: number; - /** - * Specifies the GalleryApplicationVersion resource id on the form of - * /subscriptions/{SubscriptionId}/resourceGroups/{ResourceGroupName}/providers/Microsoft.Compute/galleries/{galleryName}/applications/{application}/versions/{version} - */ - packageReferenceId: string; - /** - * Optional, Specifies the uri to an azure blob that will replace the default - * configuration for the package if provided - */ - configurationReference?: string; - /** - * Optional, If true, any failure for any operation in the VmApplication will fail - * the deployment - */ - treatFailureAsDeploymentFailure?: boolean; - /** - * If set to true, when a new Gallery Application version is available in PIR/SIG, - * it will be automatically updated for the VM/VMSS - */ - enableAutomaticUpgrade?: boolean; -} - -/** Specifies the hardware settings for the virtual machine scale set. */ -export interface VirtualMachineScaleSetHardwareProfileOutput { - /** - * Specifies the properties for customizing the size of the virtual machine. - * Minimum api-version: 2021-11-01. Please follow the instructions in [VM - * Customization](https://aka.ms/vmcustomization) for more details. - */ - vmSizeProperties?: VMSizePropertiesOutput; -} - -/** Specifies VM Size Property settings on the virtual machine. */ -export interface VMSizePropertiesOutput { - /** - * Specifies the number of vCPUs available for the VM. When this property is not - * 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). - */ - vCPUsAvailable?: number; - /** - * Specifies the vCPU to physical core ratio. When this property is not specified - * 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). - * **Setting this property to 1 also means that hyper-threading is disabled.** - */ - vCPUsPerCore?: number; -} - -/** - * Specifies the service artifact reference id used to set same image version for - * all virtual machines in the scale set when using 'latest' image version. - * Minimum api-version: 2022-11-01 - */ -export interface ServiceArtifactReferenceOutput { - /** - * The service artifact reference id in the form of - * /subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/galleries/{galleryName}/serviceArtifacts/{serviceArtifactName}/vmArtifactsProfiles/{vmArtifactsProfilesName} - */ - id?: string; -} - -/** - * Specifies the security posture to be used for all virtual machines in the scale - * set. Minimum api-version: 2023-03-01 - */ -export interface SecurityPostureReferenceOutput { - /** - * The security posture reference id in the form of - * /CommunityGalleries/{communityGalleryName}/securityPostures/{securityPostureName}/versions/{major.minor.patch}|{major.*}|latest - */ - id?: string; - /** - * List of virtual machine extension names to exclude when applying the security - * posture. - */ - excludeExtensions?: string[]; - /** Whether the security posture can be overridden by the user. */ - isOverridable?: boolean; -} - -/** Managed service identity (system assigned and/or user assigned identities) */ -export interface ManagedServiceIdentityOutput { - /** The service principal ID of the system assigned identity. This property will only be provided for a system assigned identity. */ - readonly principalId?: string; - /** The tenant ID of the system assigned identity. This property will only be provided for a system assigned identity. */ - readonly tenantId?: string; - /** - * The type of managed identity assigned to this resource. - * - * Possible values: "None", "SystemAssigned", "UserAssigned", "SystemAssigned,UserAssigned" - */ - type: ManagedServiceIdentityTypeOutput; - /** The identities assigned to this resource by the user. */ - userAssignedIdentities?: Record; -} - -/** User assigned identity properties */ -export interface UserAssignedIdentityOutput { - /** The principal ID of the assigned identity. */ - readonly principalId?: string; - /** The client ID of the assigned identity. */ - readonly clientId?: string; -} - -/** Plan for the resource. */ -export interface PlanOutput { - /** A user defined name of the 3rd Party Artifact that is being procured. */ - name: string; - /** The publisher of the 3rd Party Artifact that is being bought. E.g. NewRelic */ - publisher: string; - /** The 3rd Party artifact that is being procured. E.g. NewRelic. Product maps to the OfferID specified for the artifact at the time of Data Market onboarding. */ - product: string; - /** A publisher provided promotion code as provisioned in Data Market for the said product/artifact. */ - promotionCode?: string; - /** The version of the desired product/artifact. */ - version?: string; -} - -/** The resource model definition for an Azure Resource Manager tracked top level resource which has 'tags' and a 'location' */ -export interface TrackedResourceOutput extends ResourceOutput { - /** Resource tags. */ - tags?: Record; - /** The geo-location where the resource lives */ - location: string; -} - -/** Common fields that are returned in the response for all Azure Resource Manager resources */ -export interface ResourceOutput { - /** Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} */ - readonly id?: string; - /** The name of the resource */ - readonly name?: string; - /** The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" */ - readonly type?: string; - /** Azure Resource Manager metadata containing createdBy and modifiedBy information. */ - readonly systemData?: SystemDataOutput; -} - -/** Metadata pertaining to creation and last modification of the resource. */ -export interface SystemDataOutput { - /** The identity that created the resource. */ - createdBy?: string; - /** - * The type of identity that created the resource. - * - * Possible values: "User", "Application", "ManagedIdentity", "Key" - */ - createdByType?: CreatedByTypeOutput; - /** The timestamp of resource creation (UTC). */ - createdAt?: string; - /** The identity that last modified the resource. */ - lastModifiedBy?: string; - /** - * The type of identity that last modified the resource. - * - * Possible values: "User", "Application", "ManagedIdentity", "Key" - */ - lastModifiedByType?: CreatedByTypeOutput; - /** The timestamp of resource last modification (UTC) */ - lastModifiedAt?: string; -} - -/** The resource model definition for a Azure Resource Manager proxy resource. It will not have tags and a location */ -export interface ProxyResourceOutput extends ResourceOutput {} - -/** The base extension resource. */ -export interface ExtensionResourceOutput extends ResourceOutput {} - -/** The resource model definition for an Azure Resource Manager resource with an etag. */ -export interface AzureEntityResourceOutput extends ResourceOutput { - /** Resource Etag. */ - readonly etag?: string; -} - -/** A private link resource. */ -export interface PrivateLinkResourceOutput extends ResourceOutput { - /** Resource properties. */ - properties?: PrivateLinkResourcePropertiesOutput; -} - -/** Properties of a private link resource. */ -export interface PrivateLinkResourcePropertiesOutput { - /** The private link resource group id. */ - readonly groupId?: string; - /** The private link resource required member names. */ - readonly requiredMembers?: string[]; - /** The private link resource private link DNS zone name. */ - requiredZoneNames?: string[]; -} - -/** The private endpoint connection resource */ -export interface PrivateEndpointConnectionOutput extends ResourceOutput { - /** The private endpoint connection properties */ - properties?: PrivateEndpointConnectionPropertiesOutput; -} - -/** Properties of the private endpoint connection. */ -export interface PrivateEndpointConnectionPropertiesOutput { - /** The group ids for the private endpoint resource. */ - readonly groupIds?: string[]; - /** The private endpoint resource. */ - privateEndpoint?: PrivateEndpointOutput; - /** A collection of information about the state of the connection between service consumer and provider. */ - privateLinkServiceConnectionState: PrivateLinkServiceConnectionStateOutput; - /** - * The provisioning state of the private endpoint connection resource. - * - * Possible values: "Succeeded", "Creating", "Deleting", "Failed" - */ - readonly provisioningState?: PrivateEndpointConnectionProvisioningStateOutput; -} - -/** The Private Endpoint resource. */ -export interface PrivateEndpointOutput { - /** The resource identifier for private endpoint */ - readonly id?: string; -} - -/** A collection of information about the state of the connection between service consumer and provider. */ -export interface PrivateLinkServiceConnectionStateOutput { - /** - * Indicates whether the connection has been Approved/Rejected/Removed by the owner of the service. - * - * Possible values: "Pending", "Approved", "Rejected" - */ - status?: PrivateEndpointServiceConnectionStatusOutput; - /** The reason for approval/rejection of the connection. */ - description?: string; - /** A message indicating if changes on the service provider require any updates on the consumer. */ - actionsRequired?: string; -} - -/** The resource model definition containing the full set of allowed properties for a resource. Except properties bag, there cannot be a top level property outside of this set. */ -export interface ResourceModelWithAllowedPropertySetOutput extends TrackedResourceOutput { - /** - * The fully qualified resource ID of the resource that manages this resource. Indicates if this resource is managed by another Azure resource. - * If this is present, complete mode deployment will not delete the resource if it is removed from the template since it is managed by another resource. - */ - managedBy?: string; - /** - * Metadata used by portal/tooling/etc to render different UX experiences for resources of the same type; e.g. ApiApps are a kind of Microsoft.Web/sites type. - * If supported, the resource provider must validate and persist this value. - */ - kind?: string; - /** - * The etag field is *not* required. If it is provided in the response body, it must also be provided as a header per the normal etag convention. - * Entity tags are used for comparing two or more entities from the same requested resource. HTTP/1.1 uses entity tags in the etag (section 14.19), - * If-Match (section 14.24), If-None-Match (section 14.26), and If-Range (section 14.27) header fields. - */ - eTag?: string; - identity?: IdentityOutput; - sku?: SkuOutput; - plan?: PlanOutput; -} - -/** Identity for the resource. */ -export interface IdentityOutput { - /** The principal ID of resource identity. The value must be an UUID. */ - readonly principalId?: string; - /** The tenant ID of resource. The value must be an UUID. */ - readonly tenantId?: string; - /** The identity type. */ - type?: ResourceIdentityTypeOutput; -} - -/** The resource model definition representing SKU */ -export interface SkuOutput { - /** The name of the SKU. Ex - P3. It is typically a letter+number code */ - name: string; - /** This field is required to be implemented by the Resource Provider if the service has more than one tier, but is not required on a PUT. */ - tier?: SkuTierOutput; - /** The SKU size. When the name field is the combination of tier and some other value, this would be the standalone code. */ - size?: string; - /** If the service has different generations of hardware, for the same SKU, then that can be captured here. */ - family?: string; - /** If the SKU supports scale out/in then the capacity integer should be included. If scale out/in is not possible for the resource this may be omitted. */ - capacity?: number; -} - -/** The response of a VirtualMachineScaleSet list operation. */ -export interface VirtualMachineScaleSetListResultOutput { - /** The VirtualMachineScaleSet items on this page */ - value: Array; - /** The link to the next page of items */ - nextLink?: string; -} - -/** An AzureFleet's virtualMachineScaleSet */ -export interface VirtualMachineScaleSetOutput { - /** - * The compute RP resource id of the virtualMachineScaleSet - * "subscriptions/{subId}/resourceGroups/{rgName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmssName}" - */ - readonly id: string; - /** Type of the virtualMachineScaleSet */ - readonly type?: string; - /** - * This represents the operationStatus of the VMSS in response to the last operation that was performed on it by Azure Fleet resource. - * - * Possible values: "Creating", "Updating", "Deleting", "Migrating" - */ - readonly operationStatus: ProvisioningStateOutput; - /** Error Information when `operationStatus` is `Failed` */ - readonly error?: ApiErrorOutput; -} - -/** ApiError for Fleet */ -export interface ApiErrorOutput { - /** The error code. */ - code?: string; - /** The target of the particular error. */ - target?: string; - /** The error message. */ - message?: string; - /** The API error details */ - details?: Array; - /** The API inner error */ - innererror?: InnerErrorOutput; -} - -/** API error base. */ -export interface ApiErrorBaseOutput { - /** The error code. */ - code?: string; - /** The target of the particular error. */ - target?: string; - /** The error message. */ - message?: string; -} - -/** Inner error details. */ -export interface InnerErrorOutput { - /** The exception type. */ - exceptionType?: string; - /** The internal error message or exception dump. */ - errorDetail?: string; -} - -/** 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 type OperationListResultOutput = Paged; -/** Alias for OriginOutput */ -export type OriginOutput = string; -/** Alias for ActionTypeOutput */ -export type ActionTypeOutput = string; -/** Alias for ResourceProvisioningStateOutput */ -export type ResourceProvisioningStateOutput = string; -/** Alias for ProvisioningStateOutput */ -export type ProvisioningStateOutput = string; -/** Alias for EvictionPolicyOutput */ -export type EvictionPolicyOutput = string; -/** Alias for SpotAllocationStrategyOutput */ -export type SpotAllocationStrategyOutput = string; -/** Alias for RegularPriorityAllocationStrategyOutput */ -export type RegularPriorityAllocationStrategyOutput = string; -/** Alias for SettingNamesOutput */ -export type SettingNamesOutput = string; -/** Alias for WindowsVMGuestPatchModeOutput */ -export type WindowsVMGuestPatchModeOutput = string; -/** Alias for WindowsPatchAssessmentModeOutput */ -export type WindowsPatchAssessmentModeOutput = string; -/** Alias for WindowsVMGuestPatchAutomaticByPlatformRebootSettingOutput */ -export type WindowsVMGuestPatchAutomaticByPlatformRebootSettingOutput = string; -/** Alias for ProtocolTypesOutput */ -export type ProtocolTypesOutput = string; -/** Alias for LinuxVMGuestPatchModeOutput */ -export type LinuxVMGuestPatchModeOutput = string; -/** Alias for LinuxPatchAssessmentModeOutput */ -export type LinuxPatchAssessmentModeOutput = string; -/** Alias for LinuxVMGuestPatchAutomaticByPlatformRebootSettingOutput */ -export type LinuxVMGuestPatchAutomaticByPlatformRebootSettingOutput = string; -/** Alias for CachingTypesOutput */ -export type CachingTypesOutput = string; -/** Alias for DiskCreateOptionTypesOutput */ -export type DiskCreateOptionTypesOutput = string; -/** Alias for DiffDiskOptionsOutput */ -export type DiffDiskOptionsOutput = string; -/** Alias for DiffDiskPlacementOutput */ -export type DiffDiskPlacementOutput = string; -/** Alias for OperatingSystemTypesOutput */ -export type OperatingSystemTypesOutput = string; -/** Alias for StorageAccountTypesOutput */ -export type StorageAccountTypesOutput = string; -/** Alias for SecurityEncryptionTypesOutput */ -export type SecurityEncryptionTypesOutput = string; -/** Alias for DiskDeleteOptionTypesOutput */ -export type DiskDeleteOptionTypesOutput = string; -/** Alias for DiskControllerTypesOutput */ -export type DiskControllerTypesOutput = string; -/** Alias for DomainNameLabelScopeTypesOutput */ -export type DomainNameLabelScopeTypesOutput = string; -/** Alias for IPVersionOutput */ -export type IPVersionOutput = string; -/** Alias for DeleteOptionsOutput */ -export type DeleteOptionsOutput = string; -/** Alias for PublicIPAddressSkuNameOutput */ -export type PublicIPAddressSkuNameOutput = string; -/** Alias for PublicIPAddressSkuTierOutput */ -export type PublicIPAddressSkuTierOutput = string; -/** Alias for NetworkInterfaceAuxiliaryModeOutput */ -export type NetworkInterfaceAuxiliaryModeOutput = string; -/** Alias for NetworkInterfaceAuxiliarySkuOutput */ -export type NetworkInterfaceAuxiliarySkuOutput = string; -/** Alias for NetworkApiVersionOutput */ -export type NetworkApiVersionOutput = string; -/** Alias for SecurityTypesOutput */ -export type SecurityTypesOutput = string; -/** Alias for ModeOutput */ -export type ModeOutput = string; -/** Alias for ManagedServiceIdentityTypeOutput */ -export type ManagedServiceIdentityTypeOutput = string; -/** Alias for CreatedByTypeOutput */ -export type CreatedByTypeOutput = string; -/** Alias for PrivateEndpointServiceConnectionStatusOutput */ -export type PrivateEndpointServiceConnectionStatusOutput = string; -/** Alias for PrivateEndpointConnectionProvisioningStateOutput */ -export type PrivateEndpointConnectionProvisioningStateOutput = string; -/** Alias for ResourceIdentityTypeOutput */ -export type ResourceIdentityTypeOutput = "SystemAssigned"; -/** Alias for SkuTierOutput */ -export type SkuTierOutput = "Free" | "Basic" | "Standard" | "Premium"; -/** The response of a Fleet list operation. */ -export type FleetListResultOutput = Paged; diff --git a/sdk/computefleet/arm-computefleet/src/rest/paginateHelper.ts b/sdk/computefleet/arm-computefleet/src/rest/paginateHelper.ts deleted file mode 100644 index f0d91c952cda..000000000000 --- a/sdk/computefleet/arm-computefleet/src/rest/paginateHelper.ts +++ /dev/null @@ -1,131 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT license. - -import { getPagedAsyncIterator, PagedAsyncIterableIterator, PagedResult } from "@azure/core-paging"; -import { Client, createRestError, PathUncheckedResponse } from "@azure-rest/core-client"; - -/** - * Helper type to extract the type of an array - */ -export type GetArrayType = T extends Array ? TData : never; - -/** - * The type of a custom function that defines how to get a page and a link to the next one if any. - */ -export type GetPage = ( - pageLink: string, - maxPageSize?: number, -) => Promise<{ - page: TPage; - nextPageLink?: string; -}>; - -/** - * Options for the paging helper - */ -export interface PagingOptions { - /** - * Custom function to extract pagination details for crating the PagedAsyncIterableIterator - */ - customGetPage?: GetPage[]>; -} - -/** - * Helper type to infer the Type of the paged elements from the response type - * This type is generated based on the swagger information for x-ms-pageable - * specifically on the itemName property which indicates the property of the response - * where the page items are found. The default value is `value`. - * This type will allow us to provide strongly typed Iterator based on the response we get as second parameter - */ -export type PaginateReturn = TResult extends { - body: { value?: infer TPage }; -} - ? GetArrayType - : Array; - -/** - * Helper to paginate results from an initial response that follows the specification of Autorest `x-ms-pageable` extension - * @param client - Client to use for sending the next page requests - * @param initialResponse - Initial response containing the nextLink and current page of elements - * @param customGetPage - Optional - Function to define how to extract the page and next link to be used to paginate the results - * @returns - PagedAsyncIterableIterator to iterate the elements - */ -export function paginate( - client: Client, - initialResponse: TResponse, - options: PagingOptions = {}, -): PagedAsyncIterableIterator> { - // Extract element type from initial response - type TElement = PaginateReturn; - let firstRun = true; - const itemName = "value"; - const nextLinkName = "nextLink"; - const { customGetPage } = options; - const pagedResult: PagedResult = { - firstPageLink: "", - getPage: - typeof customGetPage === "function" - ? customGetPage - : async (pageLink: string) => { - const result = firstRun ? initialResponse : await client.pathUnchecked(pageLink).get(); - firstRun = false; - checkPagingRequest(result); - const nextLink = getNextLink(result.body, nextLinkName); - const values = getElements(result.body, itemName); - return { - page: values, - nextPageLink: nextLink, - }; - }, - }; - - return getPagedAsyncIterator(pagedResult); -} - -/** - * Gets for the value of nextLink in the body - */ -function getNextLink(body: unknown, nextLinkName?: string): string | undefined { - if (!nextLinkName) { - return undefined; - } - - const nextLink = (body as Record)[nextLinkName]; - - if (typeof nextLink !== "string" && typeof nextLink !== "undefined") { - throw new Error(`Body Property ${nextLinkName} should be a string or undefined`); - } - - return nextLink; -} - -/** - * Gets the elements of the current request in the body. - */ -function getElements(body: unknown, itemName: string): T[] { - const value = (body as Record)[itemName] as T[]; - - // value has to be an array according to the x-ms-pageable extension. - // The fact that this must be an array is used above to calculate the - // type of elements in the page in PaginateReturn - if (!Array.isArray(value)) { - throw new Error( - `Couldn't paginate response\n Body doesn't contain an array property with name: ${itemName}`, - ); - } - - return value ?? []; -} - -/** - * Checks if a request failed - */ -function checkPagingRequest(response: PathUncheckedResponse): void { - const Http2xxStatusCodes = ["200", "201", "202", "203", "204", "205", "206", "207", "208", "226"]; - if (!Http2xxStatusCodes.includes(response.status)) { - throw createRestError( - `Pagination failed with unexpected statusCode ${response.status}`, - response, - ); - } -} diff --git a/sdk/computefleet/arm-computefleet/src/rest/parameters.ts b/sdk/computefleet/arm-computefleet/src/rest/parameters.ts deleted file mode 100644 index 1c7adf3f6ca1..000000000000 --- a/sdk/computefleet/arm-computefleet/src/rest/parameters.ts +++ /dev/null @@ -1,26 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT license. - -import { RequestParameters } from "@azure-rest/core-client"; -import { Fleet, FleetUpdate } from "./models.js"; - -export type OperationsListParameters = RequestParameters; -export type FleetsGetParameters = RequestParameters; - -export interface FleetsCreateOrUpdateBodyParam { - /** Resource create parameters. */ - body: Fleet; -} - -export type FleetsCreateOrUpdateParameters = FleetsCreateOrUpdateBodyParam & RequestParameters; - -export interface FleetsUpdateBodyParam { - /** The resource properties to be updated. */ - body: FleetUpdate; -} - -export type FleetsUpdateParameters = FleetsUpdateBodyParam & RequestParameters; -export type FleetsDeleteParameters = RequestParameters; -export type FleetsListByResourceGroupParameters = RequestParameters; -export type FleetsListBySubscriptionParameters = RequestParameters; -export type FleetsListVirtualMachineScaleSetsParameters = RequestParameters; diff --git a/sdk/computefleet/arm-computefleet/src/rest/pollingHelper.ts b/sdk/computefleet/arm-computefleet/src/rest/pollingHelper.ts deleted file mode 100644 index c6dae60f8b0f..000000000000 --- a/sdk/computefleet/arm-computefleet/src/rest/pollingHelper.ts +++ /dev/null @@ -1,232 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT license. - -import { Client, HttpResponse } from "@azure-rest/core-client"; -import { AbortSignalLike } from "@azure/abort-controller"; -import { - CancelOnProgress, - CreateHttpPollerOptions, - RunningOperation, - OperationResponse, - OperationState, - createHttpPoller, -} from "@azure/core-lro"; -import { - FleetsCreateOrUpdate200Response, - FleetsCreateOrUpdate201Response, - FleetsCreateOrUpdateDefaultResponse, - FleetsCreateOrUpdateLogicalResponse, - FleetsUpdate200Response, - FleetsUpdate202Response, - FleetsUpdateDefaultResponse, - FleetsUpdateLogicalResponse, - FleetsDelete202Response, - FleetsDelete204Response, - FleetsDeleteDefaultResponse, - FleetsDeleteLogicalResponse, -} from "./responses.js"; - -/** - * A simple poller that can be used to poll a long running operation. - */ -export interface SimplePollerLike, TResult> { - /** - * Returns true if the poller has finished polling. - */ - isDone(): boolean; - /** - * Returns the state of the operation. - */ - getOperationState(): TState; - /** - * Returns the result value of the operation, - * regardless of the state of the poller. - * It can return undefined or an incomplete form of the final TResult value - * depending on the implementation. - */ - getResult(): TResult | undefined; - /** - * Returns a promise that will resolve once a single polling request finishes. - * It does this by calling the update method of the Poller's operation. - */ - poll(options?: { abortSignal?: AbortSignalLike }): Promise; - /** - * Returns a promise that will resolve once the underlying operation is completed. - */ - pollUntilDone(pollOptions?: { abortSignal?: AbortSignalLike }): Promise; - /** - * Invokes the provided callback after each polling is completed, - * sending the current state of the poller's operation. - * - * It returns a method that can be used to stop receiving updates on the given callback function. - */ - onProgress(callback: (state: TState) => void): CancelOnProgress; - - /** - * Returns a promise that could be used for serialized version of the poller's operation - * by invoking the operation's serialize method. - */ - serialize(): Promise; - - /** - * Wait the poller to be submitted. - */ - submitted(): Promise; - - /** - * Returns a string representation of the poller's operation. Similar to serialize but returns a string. - * @deprecated Use serialize() instead. - */ - toString(): string; - - /** - * Stops the poller from continuing to poll. Please note this will only stop the client-side polling - * @deprecated Use abortSignal to stop polling instead. - */ - stopPolling(): void; - - /** - * Returns true if the poller is stopped. - * @deprecated Use abortSignal status to track this instead. - */ - isStopped(): boolean; -} - -/** - * Helper function that builds a Poller object to help polling a long running operation. - * @param client - Client to use for sending the request to get additional pages. - * @param initialResponse - The initial response. - * @param options - Options to set a resume state or custom polling interval. - * @returns - A poller object to poll for operation state updates and eventually get the final response. - */ -export async function getLongRunningPoller< - TResult extends FleetsCreateOrUpdateLogicalResponse | FleetsCreateOrUpdateDefaultResponse, ->( - client: Client, - initialResponse: - | FleetsCreateOrUpdate200Response - | FleetsCreateOrUpdate201Response - | FleetsCreateOrUpdateDefaultResponse, - options?: CreateHttpPollerOptions>, -): Promise, TResult>>; -export async function getLongRunningPoller< - TResult extends FleetsUpdateLogicalResponse | FleetsUpdateDefaultResponse, ->( - client: Client, - initialResponse: FleetsUpdate200Response | FleetsUpdate202Response | FleetsUpdateDefaultResponse, - options?: CreateHttpPollerOptions>, -): Promise, TResult>>; -export async function getLongRunningPoller< - TResult extends FleetsDeleteLogicalResponse | FleetsDeleteDefaultResponse, ->( - client: Client, - initialResponse: FleetsDelete202Response | FleetsDelete204Response | FleetsDeleteDefaultResponse, - options?: CreateHttpPollerOptions>, -): Promise, TResult>>; -export async function getLongRunningPoller( - client: Client, - initialResponse: TResult, - options: CreateHttpPollerOptions> = {}, -): Promise, TResult>> { - const abortController = new AbortController(); - const poller: RunningOperation = { - sendInitialRequest: async () => { - // In the case of Rest Clients we are building the LRO poller object from a response that's the reason - // we are not triggering the initial request here, just extracting the information from the - // response we were provided. - return getLroResponse(initialResponse); - }, - sendPollRequest: async (path: string, pollOptions?: { abortSignal?: AbortSignalLike }) => { - // This is the callback that is going to be called to poll the service - // to get the latest status. We use the client provided and the polling path - // which is an opaque URL provided by caller, the service sends this in one of the following headers: operation-location, azure-asyncoperation or location - // depending on the lro pattern that the service implements. If non is provided we default to the initial path. - function abortListener(): void { - abortController.abort(); - } - const inputAbortSignal = pollOptions?.abortSignal; - const abortSignal = abortController.signal; - if (inputAbortSignal?.aborted) { - abortController.abort(); - } else if (!abortSignal.aborted) { - inputAbortSignal?.addEventListener("abort", abortListener, { - once: true, - }); - } - let response; - try { - response = await client - .pathUnchecked(path ?? initialResponse.request.url) - .get({ abortSignal }); - } finally { - inputAbortSignal?.removeEventListener("abort", abortListener); - } - const lroResponse = getLroResponse(response as TResult); - lroResponse.rawResponse.headers["x-ms-original-url"] = initialResponse.request.url; - return lroResponse; - }, - }; - - options.resolveOnUnsuccessful = options.resolveOnUnsuccessful ?? true; - const httpPoller = createHttpPoller(poller, options); - const simplePoller: SimplePollerLike, TResult> = { - isDone() { - return httpPoller.isDone; - }, - isStopped() { - return abortController.signal.aborted; - }, - getOperationState() { - if (!httpPoller.operationState) { - throw new Error( - "Operation state is not available. The poller may not have been started and you could await submitted() before calling getOperationState().", - ); - } - return httpPoller.operationState; - }, - getResult() { - return httpPoller.result; - }, - toString() { - if (!httpPoller.operationState) { - throw new Error( - "Operation state is not available. The poller may not have been started and you could await submitted() before calling getOperationState().", - ); - } - return JSON.stringify({ - state: httpPoller.operationState, - }); - }, - stopPolling() { - abortController.abort(); - }, - onProgress: httpPoller.onProgress, - poll: httpPoller.poll, - pollUntilDone: httpPoller.pollUntilDone, - serialize: httpPoller.serialize, - submitted: httpPoller.submitted, - }; - return simplePoller; -} - -/** - * Converts a Rest Client response to a response that the LRO implementation understands - * @param response - a rest client http response - * @returns - An LRO response that the LRO implementation understands - */ -function getLroResponse( - response: TResult, -): OperationResponse { - if (Number.isNaN(response.status)) { - throw new TypeError(`Status code of the response is not a number. Value: ${response.status}`); - } - - return { - flatResponse: response, - rawResponse: { - ...response, - statusCode: Number.parseInt(response.status), - body: response.body, - }, - }; -} diff --git a/sdk/computefleet/arm-computefleet/src/rest/responses.ts b/sdk/computefleet/arm-computefleet/src/rest/responses.ts deleted file mode 100644 index 39ffac09de6c..000000000000 --- a/sdk/computefleet/arm-computefleet/src/rest/responses.ts +++ /dev/null @@ -1,154 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT license. - -import { RawHttpHeaders } from "@azure/core-rest-pipeline"; -import { HttpResponse } from "@azure-rest/core-client"; -import { - OperationListResultOutput, - ErrorResponseOutput, - FleetOutput, - FleetListResultOutput, - VirtualMachineScaleSetListResultOutput, -} from "./outputModels.js"; - -/** Azure operation completed successfully. */ -export interface OperationsList200Response extends HttpResponse { - status: "200"; - body: OperationListResultOutput; -} - -export interface OperationsListDefaultResponse extends HttpResponse { - status: string; - body: ErrorResponseOutput; -} - -/** Azure operation completed successfully. */ -export interface FleetsGet200Response extends HttpResponse { - status: "200"; - body: FleetOutput; -} - -export interface FleetsGetDefaultResponse extends HttpResponse { - status: string; - body: ErrorResponseOutput; -} - -/** Resource 'Fleet' update operation succeeded */ -export interface FleetsCreateOrUpdate200Response extends HttpResponse { - status: "200"; - body: FleetOutput; -} - -export interface FleetsCreateOrUpdate201Headers { - /** The Retry-After header can indicate how long the client should wait before polling the operation status. */ - "retry-after"?: number; -} - -/** Resource 'Fleet' create operation succeeded */ -export interface FleetsCreateOrUpdate201Response extends HttpResponse { - status: "201"; - body: FleetOutput; - headers: RawHttpHeaders & FleetsCreateOrUpdate201Headers; -} - -export interface FleetsCreateOrUpdateDefaultResponse extends HttpResponse { - status: string; - body: ErrorResponseOutput; -} - -/** The final response for long-running createOrUpdate operation */ -export interface FleetsCreateOrUpdateLogicalResponse extends HttpResponse { - status: "200"; - body: FleetOutput; -} - -/** Azure operation completed successfully. */ -export interface FleetsUpdate200Response extends HttpResponse { - status: "200"; - body: FleetOutput; -} - -export interface FleetsUpdate202Headers { - /** The Location header contains the URL where the status of the long running operation can be checked. */ - location?: string; - /** The Retry-After header can indicate how long the client should wait before polling the operation status. */ - "retry-after"?: number; -} - -/** Resource update request accepted. */ -export interface FleetsUpdate202Response extends HttpResponse { - status: "202"; - headers: RawHttpHeaders & FleetsUpdate202Headers; -} - -export interface FleetsUpdateDefaultResponse extends HttpResponse { - status: string; - body: ErrorResponseOutput; -} - -/** The final response for long-running update operation */ -export interface FleetsUpdateLogicalResponse extends HttpResponse { - status: "200"; - body: FleetOutput; -} - -export interface FleetsDelete202Headers { - /** The Location header contains the URL where the status of the long running operation can be checked. */ - location?: string; - /** The Retry-After header can indicate how long the client should wait before polling the operation status. */ - "retry-after"?: number; -} - -/** Resource deletion accepted. */ -export interface FleetsDelete202Response extends HttpResponse { - status: "202"; - headers: RawHttpHeaders & FleetsDelete202Headers; -} - -/** Resource does not exist. */ -export interface FleetsDelete204Response extends HttpResponse { - status: "204"; -} - -export interface FleetsDeleteDefaultResponse extends HttpResponse { - status: string; - body: ErrorResponseOutput; -} - -/** The final response for long-running delete operation */ -export interface FleetsDeleteLogicalResponse extends HttpResponse { - status: "200"; -} - -/** Azure operation completed successfully. */ -export interface FleetsListByResourceGroup200Response extends HttpResponse { - status: "200"; - body: FleetListResultOutput; -} - -export interface FleetsListByResourceGroupDefaultResponse extends HttpResponse { - status: string; - body: ErrorResponseOutput; -} - -/** Azure operation completed successfully. */ -export interface FleetsListBySubscription200Response extends HttpResponse { - status: "200"; - body: FleetListResultOutput; -} - -export interface FleetsListBySubscriptionDefaultResponse extends HttpResponse { - status: string; - body: ErrorResponseOutput; -} - -/** Azure operation completed successfully. */ -export interface FleetsListVirtualMachineScaleSets200Response extends HttpResponse { - status: "200"; - body: VirtualMachineScaleSetListResultOutput; -} - -export interface FleetsListVirtualMachineScaleSetsDefaultResponse extends HttpResponse { - status: string; - body: ErrorResponseOutput; -} diff --git a/sdk/computefleet/arm-computefleet/src/restorePollerHelpers.ts b/sdk/computefleet/arm-computefleet/src/restorePollerHelpers.ts deleted file mode 100644 index 3e7d4a7f01e0..000000000000 --- a/sdk/computefleet/arm-computefleet/src/restorePollerHelpers.ts +++ /dev/null @@ -1,152 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT license. - -import { - PollerLike, - OperationState, - deserializeState, - ResourceLocationConfig, -} from "@azure/core-lro"; -import { AzureFleetClient } from "./azureFleetClient.js"; -import { getLongRunningPoller } from "./api/pollingHelpers.js"; -import { - _fleetsCreateOrUpdateDeserialize, - _fleetsUpdateDeserialize, - _fleetsDeleteDeserialize, -} from "./api/fleets/index.js"; -import { PathUncheckedResponse, OperationOptions } from "@azure-rest/core-client"; -import { AbortSignalLike } from "@azure/abort-controller"; - -export interface RestorePollerOptions< - TResult, - TResponse extends PathUncheckedResponse = PathUncheckedResponse, -> extends OperationOptions { - /** Delay to wait until next poll, in milliseconds. */ - updateIntervalInMs?: number; - /** - * The signal which can be used to abort requests. - */ - abortSignal?: AbortSignalLike; - /** Deserialization function for raw response body */ - processResponseBody?: (result: TResponse) => Promise; -} - -/** - * Creates a poller from the serialized state of another poller. This can be - * useful when you want to create pollers on a different host or a poller - * needs to be constructed after the original one is not in scope. - */ -export function restorePoller( - client: AzureFleetClient, - serializedState: string, - sourceOperation: (...args: any[]) => PollerLike, TResult>, - options?: RestorePollerOptions, -): PollerLike, TResult> { - const pollerConfig = deserializeState(serializedState).config; - const { initialRequestUrl, requestMethod, metadata } = pollerConfig; - if (!initialRequestUrl || !requestMethod) { - throw new Error( - `Invalid serialized state: ${serializedState} for sourceOperation ${sourceOperation?.name}`, - ); - } - const resourceLocationConfig = metadata?.["resourceLocationConfig"] as - | ResourceLocationConfig - | undefined; - const deserializeHelper = - options?.processResponseBody ?? getDeserializationHelper(initialRequestUrl, requestMethod); - if (!deserializeHelper) { - throw new Error( - `Please ensure the operation is in this client! We can't find its deserializeHelper for ${sourceOperation?.name}.`, - ); - } - return getLongRunningPoller( - (client as any)["_client"] ?? client, - deserializeHelper as (result: TResponse) => Promise, - { - updateIntervalInMs: options?.updateIntervalInMs, - abortSignal: options?.abortSignal, - resourceLocationConfig, - restoreFrom: serializedState, - initialRequestUrl, - }, - ); -} - -const deserializeMap: Record = { - "PUT /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureFleet/fleets/{fleetName}": - _fleetsCreateOrUpdateDeserialize, - "PATCH /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureFleet/fleets/{fleetName}": - _fleetsUpdateDeserialize, - "DELETE /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureFleet/fleets/{fleetName}": - _fleetsDeleteDeserialize, -}; - -function getDeserializationHelper( - urlStr: string, - method: string, -): ((result: unknown) => Promise) | undefined { - const path = new URL(urlStr).pathname; - const pathParts = path.split("/"); - - // Traverse list to match the longest candidate - // matchedLen: the length of candidate path - // matchedValue: the matched status code array - let matchedLen = -1, - matchedValue: ((result: unknown) => Promise) | undefined; - - // Iterate the responseMap to find a match - for (const [key, value] of Object.entries(deserializeMap)) { - // Extracting the path from the map key which is in format - // GET /path/foo - if (!key.startsWith(method)) { - continue; - } - const candidatePath = getPathFromMapKey(key); - // Get each part of the url path - const candidateParts = candidatePath.split("/"); - - // track if we have found a match to return the values found. - let found = true; - for (let i = candidateParts.length - 1, j = pathParts.length - 1; i >= 1 && j >= 1; i--, j--) { - if (candidateParts[i]?.startsWith("{") && candidateParts[i]?.indexOf("}") !== -1) { - const start = candidateParts[i]!.indexOf("}") + 1, - end = candidateParts[i]?.length; - // If the current part of the candidate is a "template" part - // Try to use the suffix of pattern to match the path - // {guid} ==> $ - // {guid}:export ==> :export$ - const isMatched = new RegExp(`${candidateParts[i]?.slice(start, end)}`).test( - pathParts[j] || "", - ); - - if (!isMatched) { - found = false; - break; - } - continue; - } - - // If the candidate part is not a template and - // the parts don't match mark the candidate as not found - // to move on with the next candidate path. - if (candidateParts[i] !== pathParts[j]) { - found = false; - break; - } - } - - // We finished evaluating the current candidate parts - // Update the matched value if and only if we found the longer pattern - if (found && candidatePath.length > matchedLen) { - matchedLen = candidatePath.length; - matchedValue = value as (result: unknown) => Promise; - } - } - - return matchedValue; -} - -function getPathFromMapKey(mapKey: string): string { - const pathStart = mapKey.indexOf("/"); - return mapKey.slice(pathStart); -} 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 ff1e729f9c0f..000000000000 --- a/sdk/computefleet/arm-computefleet/test/public/computefleet_operations_test.spec.ts +++ /dev/null @@ -1,176 +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 { env, Recorder, 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 function () { - 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 function () { - 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 function () { - const res = await client.fleets.get(resourceGroup, resourcename); - assert.equal(res.name, resourcename); - }); - - it("fleets list test", async function () { - const resArray = new Array(); - for await (let item of client.fleets.listByResourceGroup(resourceGroup)) { - resArray.push(item); - } - assert.equal(resArray.length, 1); - }); - - it("fleets delete test", async function () { - const resArray = new Array(); - const res = await client.fleets.delete(resourceGroup, resourcename); - for await (let item of client.fleets.listByResourceGroup(resourceGroup)) { - resArray.push(item); - } - assert.equal(resArray.length, 0); - }); - - it("operation list test", async function () { - const resArray = new Array(); - for await (let item of client.operations.list()) { - resArray.push(item); - } - assert.notEqual(resArray.length, 0); - }); -}); diff --git a/sdk/computefleet/arm-computefleet/test/public/utils/recordedClient.ts b/sdk/computefleet/arm-computefleet/test/public/utils/recordedClient.ts deleted file mode 100644 index 5f44b6a8179a..000000000000 --- a/sdk/computefleet/arm-computefleet/test/public/utils/recordedClient.ts +++ /dev/null @@ -1,27 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT license. - -import { Recorder, RecorderStartOptions, VitestTestContext } from "@azure-tools/test-recorder"; - -const replaceableVariables: Record = { - SUBSCRIPTION_ID: "azure_subscription_id", -}; - -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 - ], -}; - -/** - * creates the recorder and reads the environment variables from the `.env` file. - * Should be called first in the test suite to make sure environment variables are - * read before they are being used. - */ -export async function createRecorder(context: VitestTestContext): Promise { - const recorder = new Recorder(context); - await recorder.start(recorderEnvSetup); - return recorder; -} diff --git a/sdk/computefleet/arm-computefleet/test/sampleTest.ts b/sdk/computefleet/arm-computefleet/test/sampleTest.ts new file mode 100644 index 000000000000..d64be981b694 --- /dev/null +++ b/sdk/computefleet/arm-computefleet/test/sampleTest.ts @@ -0,0 +1,43 @@ +/* + * 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 { + Recorder, + RecorderStartOptions, + env, +} from "@azure-tools/test-recorder"; +import { assert } from "chai"; +import { Context } from "mocha"; + +const replaceableVariables: Record = { + AZURE_CLIENT_ID: "azure_client_id", + AZURE_CLIENT_SECRET: "azure_client_secret", + AZURE_TENANT_ID: "88888888-8888-8888-8888-888888888888", + SUBSCRIPTION_ID: "azure_subscription_id", +}; + +const recorderOptions: RecorderStartOptions = { + envSetupForPlayback: replaceableVariables, +}; + +describe("My test", () => { + let recorder: Recorder; + + beforeEach(async function (this: Context) { + recorder = new Recorder(this.currentTest); + await recorder.start(recorderOptions); + }); + + afterEach(async function () { + await recorder.stop(); + }); + + it("sample test", async function () { + console.log("Hi, I'm a test!"); + }); +}); diff --git a/sdk/computefleet/arm-computefleet/tsconfig.browser.config.json b/sdk/computefleet/arm-computefleet/tsconfig.browser.config.json deleted file mode 100644 index 1b37aebc5457..000000000000 --- a/sdk/computefleet/arm-computefleet/tsconfig.browser.config.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "extends": "./.tshy/build.json", - "include": ["./src/**/*.ts", "./src/**/*.mts", "./test/**/*.spec.ts"], - "exclude": ["./test/**/node/**/*.ts"], - "compilerOptions": { - "outDir": "./dist-test/browser", - "rootDir": ".", - "skipLibCheck": true - } -} diff --git a/sdk/computefleet/arm-computefleet/tsconfig.json b/sdk/computefleet/arm-computefleet/tsconfig.json index a10f22a54c88..3e6ae96443f3 100644 --- a/sdk/computefleet/arm-computefleet/tsconfig.json +++ b/sdk/computefleet/arm-computefleet/tsconfig.json @@ -1,9 +1,27 @@ { - "extends": "../../../tsconfig", "compilerOptions": { - "module": "NodeNext", - "moduleResolution": "NodeNext", - "rootDir": "." + "module": "es6", + "moduleResolution": "node", + "strict": true, + "target": "es6", + "sourceMap": true, + "declarationMap": true, + "esModuleInterop": true, + "allowSyntheticDefaultImports": true, + "forceConsistentCasingInFileNames": true, + "lib": [ + "es6", + "dom" + ], + "declaration": true, + "outDir": "./dist-esm", + "importHelpers": true }, - "include": ["./src/**/*.ts", "./src/**/*.mts", "./src/**/*.cts", "test/**/*.ts", "./test/**/*.ts"] -} + "include": [ + "./src/**/*.ts", + "./test/**/*.ts" + ], + "exclude": [ + "node_modules" + ] +} \ No newline at end of file diff --git a/sdk/computefleet/arm-computefleet/tsp-location.yaml b/sdk/computefleet/arm-computefleet/tsp-location.yaml deleted file mode 100644 index 8bbcfc81e272..000000000000 --- a/sdk/computefleet/arm-computefleet/tsp-location.yaml +++ /dev/null @@ -1,3 +0,0 @@ -directory: specification/azurefleet/AzureFleet.Management -commit: b75726f11c9af676feef91a67ea7e5365b3b111d -repo: Azure/azure-rest-api-specs diff --git a/sdk/computefleet/arm-computefleet/vitest.browser.config.ts b/sdk/computefleet/arm-computefleet/vitest.browser.config.ts deleted file mode 100644 index eda90c3ea96b..000000000000 --- a/sdk/computefleet/arm-computefleet/vitest.browser.config.ts +++ /dev/null @@ -1,37 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT license. - -import { defineConfig } from "vitest/config"; -import { relativeRecordingsPath } from "@azure-tools/test-recorder"; - -process.env.RECORDINGS_RELATIVE_PATH = relativeRecordingsPath(); - -export default defineConfig({ - define: { - "process.env": process.env, - }, - test: { - reporters: ["basic", "junit"], - outputFile: { - junit: "test-results.browser.xml", - }, - browser: { - enabled: true, - headless: true, - name: "chromium", - provider: "playwright", - }, - fakeTimers: { - toFake: ["setTimeout", "Date"], - }, - watch: false, - include: ["dist-test/browser/**/*.spec.js"], - coverage: { - include: ["dist-test/browser/**/*.spec.js"], - provider: "istanbul", - reporter: ["text", "json", "html"], - reportsDirectory: "coverage-browser", - }, - testTimeout: 1200000, - }, -}); diff --git a/sdk/computefleet/arm-computefleet/vitest.config.ts b/sdk/computefleet/arm-computefleet/vitest.config.ts deleted file mode 100644 index 7928f980b01c..000000000000 --- a/sdk/computefleet/arm-computefleet/vitest.config.ts +++ /dev/null @@ -1,33 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT license. - -import { defineConfig } from "vitest/config"; -import { relativeRecordingsPath } from "@azure-tools/test-recorder"; - -export default defineConfig({ - test: { - reporters: ["basic", "junit"], - outputFile: { - junit: "test-results.browser.xml", - }, - fakeTimers: { - toFake: ["setTimeout", "Date"], - }, - watch: false, - include: ["test/**/*.spec.ts"], - exclude: ["test/**/browser/*.spec.ts"], - coverage: { - include: ["src/**/*.ts"], - exclude: [ - "src/**/*-browser.mts", - "src/**/*-react-native.mts", - "vitest*.config.ts", - "samples-dev/**/*.ts", - ], - provider: "istanbul", - reporter: ["text", "json", "html"], - reportsDirectory: "coverage", - }, - testTimeout: 1200000, - }, -});