diff --git a/common/config/rush/pnpm-lock.yaml b/common/config/rush/pnpm-lock.yaml index 23e660a64126..a1c0483cddd5 100644 --- a/common/config/rush/pnpm-lock.yaml +++ b/common/config/rush/pnpm-lock.yaml @@ -12683,7 +12683,7 @@ packages: dev: false file:projects/arm-appservice-1.tgz: - resolution: {integrity: sha512-mTPkB0S2WMTWFivB6kmxsh3KpkaGZTEn99uOXf1Di7nY/CwIHJpBG8ki32zxFKMrvdHtJjJWkLqhxgqkTEvvew==, tarball: file:projects/arm-appservice-1.tgz} + resolution: {integrity: sha512-amfwCiVShLMaHhfwptTfDfPw0+pDGiD9OAn900ef8xX9OW+kqk4cNNdZh4KTwHFtkHPfrC3C2WN45FBEUi8qug==, tarball: file:projects/arm-appservice-1.tgz} name: '@rush-temp/arm-appservice-1' version: 0.0.0 dependencies: @@ -12702,10 +12702,10 @@ packages: mkdirp: 3.0.1 mocha: 10.7.3 rimraf: 5.0.10 - ts-node: 10.9.2(@types/node@18.19.54)(typescript@5.6.2) + ts-node: 10.9.2(@types/node@18.19.54)(typescript@5.5.4) tslib: 2.7.0 tsx: 4.19.1 - typescript: 5.6.2 + typescript: 5.5.4 uglify-js: 3.19.3 transitivePeerDependencies: - '@swc/core' diff --git a/sdk/appservice/arm-appservice/CHANGELOG.md b/sdk/appservice/arm-appservice/CHANGELOG.md index 13462b727975..5dda129dcdd8 100644 --- a/sdk/appservice/arm-appservice/CHANGELOG.md +++ b/sdk/appservice/arm-appservice/CHANGELOG.md @@ -1,15 +1,22 @@ # Release History - -## 15.0.1 (Unreleased) - + +## 15.1.0 (2024-10-02) + ### Features Added -### Breaking Changes - -### Bugs Fixed - -### Other Changes - + - Added operation WebApps.updateMachineKey + - Added Interface CipherSuites + - Added Interface WebAppsUpdateMachineKeyOptionalParams + - Added Type Alias AutoGeneratedDomainNameLabelScope + - Added Type Alias IPMode + - Added Type Alias WebAppsUpdateMachineKeyResponse + - Interface Site has a new optional parameter autoGeneratedDomainNameLabelScope + - Interface Site has a new optional parameter endToEndEncryptionEnabled + - Interface Site has a new optional parameter ipMode + - Interface Site has a new optional parameter sku + - Interface WebSiteInstanceStatus has a new optional parameter physicalZone + + ## 15.0.0 (2024-06-11) ### Features Added diff --git a/sdk/appservice/arm-appservice/_meta.json b/sdk/appservice/arm-appservice/_meta.json index cc1c202d06c6..20fdbf8bbf43 100644 --- a/sdk/appservice/arm-appservice/_meta.json +++ b/sdk/appservice/arm-appservice/_meta.json @@ -1,8 +1,8 @@ { - "commit": "e9f47ec88eb06646c53f2a561f3b27434ac5ac57", + "commit": "cf2870c3d6554ef0543db96283c8820cb9ed7c2b", "readme": "specification/web/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=D:\\Git\\azure-sdk-for-js ..\\azure-rest-api-specs\\specification\\web\\resource-manager\\readme.md --use=@autorest/typescript@6.0.23 --generate-sample=true", + "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/web/resource-manager/readme.md --use=@autorest/typescript@^6.0.12", "repository_url": "https://github.com/Azure/azure-rest-api-specs.git", - "release_tool": "@azure-tools/js-sdk-release-tools@2.7.9", - "use": "@autorest/typescript@6.0.23" + "release_tool": "@azure-tools/js-sdk-release-tools@2.7.14", + "use": "@autorest/typescript@^6.0.12" } \ No newline at end of file diff --git a/sdk/appservice/arm-appservice/package.json b/sdk/appservice/arm-appservice/package.json index a56494287177..21f610210123 100644 --- a/sdk/appservice/arm-appservice/package.json +++ b/sdk/appservice/arm-appservice/package.json @@ -3,16 +3,16 @@ "sdk-type": "mgmt", "author": "Microsoft Corporation", "description": "A generated SDK for WebSiteManagementClient.", - "version": "15.0.1", + "version": "15.1.0", "engines": { "node": ">=18.0.0" }, "dependencies": { - "@azure/abort-controller": "^1.0.0", - "@azure/core-auth": "^1.6.0", - "@azure/core-client": "^1.7.0", "@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" }, @@ -28,24 +28,24 @@ "module": "./dist-esm/src/index.js", "types": "./types/arm-appservice.d.ts", "devDependencies": { - "@azure-tools/test-credential": "^1.1.0", - "@azure-tools/test-recorder": "^3.0.0", - "@azure/dev-tool": "^1.0.0", - "@azure/identity": "^4.0.1", "@microsoft/api-extractor": "^7.31.1", - "@types/chai": "^4.2.8", - "@types/mocha": "^10.0.0", - "@types/node": "^18.0.0", - "chai": "^4.2.0", - "cross-env": "^7.0.2", - "dotenv": "^16.0.0", "mkdirp": "^3.0.1", - "mocha": "^10.0.0", + "typescript": "~5.5.3", + "uglify-js": "^3.4.9", "rimraf": "^5.0.0", - "ts-node": "^10.0.0", + "dotenv": "^16.0.0", + "@azure/dev-tool": "^1.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", - "typescript": "~5.6.2", - "uglify-js": "^3.4.9" + "@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", @@ -73,29 +73,28 @@ ], "scripts": { "build": "npm run clean && tsc && dev-tool run bundle && npm run minify && mkdirp ./review && npm run extract-api", - "build:browser": "echo skipped", + "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", + "clean": "rimraf --glob dist dist-browser dist-esm test-dist temp types *.tgz *.log", "build:node": "echo skipped", - "build:samples": "echo skipped.", + "build:browser": "echo skipped", "build:test": "echo skipped", + "build:samples": "echo skipped.", "check-format": "echo skipped", - "clean": "rimraf --glob dist dist-browser dist-esm test-dist temp types *.tgz *.log", "execute:samples": "echo skipped", - "extract-api": "dev-tool run extract-api", "format": "echo skipped", - "integration-test": "npm run integration-test:node && npm run integration-test:browser", - "integration-test:browser": "echo skipped", - "integration-test:node": "dev-tool run test:node-ts-input -- --timeout 1200000 'test/*.ts'", - "lint": "echo skipped", - "minify": "uglifyjs -c -m --comments --source-map \"content='./dist/index.js.map'\" -o ./dist/index.min.js ./dist/index.js", - "pack": "npm pack 2>&1", - "prepack": "npm run build", "test": "npm run integration-test", - "test:browser": "echo skipped", "test:node": "echo skipped", + "test:browser": "echo skipped", "unit-test": "npm run unit-test:node && npm run unit-test:browser", - "unit-test:browser": "echo skipped", "unit-test:node": "cross-env TEST_MODE=playback npm run integration-test:node", - "update-snippets": "echo skipped" + "unit-test:browser": "echo skipped", + "integration-test": "npm run integration-test:node && npm run integration-test:browser", + "integration-test:node": "dev-tool run test:node-ts-input -- --timeout 1200000 'test/*.ts'", + "integration-test:browser": "echo skipped" }, "sideEffects": false, "//metadata": { @@ -107,13 +106,5 @@ ] }, "autoPublish": true, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/appservice/arm-appservice", - "//sampleConfiguration": { - "productName": "", - "productSlugs": [ - "azure" - ], - "disableDocsMs": true, - "apiRefLink": "https://docs.microsoft.com/javascript/api/@azure/arm-appservice?view=azure-node-preview" - } + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/appservice/arm-appservice" } \ No newline at end of file diff --git a/sdk/appservice/arm-appservice/review/arm-appservice.api.md b/sdk/appservice/arm-appservice/review/arm-appservice.api.md index d370c17b072c..2cce28d3c241 100644 --- a/sdk/appservice/arm-appservice/review/arm-appservice.api.md +++ b/sdk/appservice/arm-appservice/review/arm-appservice.api.md @@ -1471,6 +1471,9 @@ export interface AuthPlatform { // @public export type AuthType = "Anonymous" | "UserCredentials" | "SystemIdentity" | "UserAssigned"; +// @public +export type AutoGeneratedDomainNameLabelScope = "TenantReuse" | "SubscriptionReuse" | "ResourceGroupReuse" | "NoReuse"; + // @public export interface AutoHealActions { actionType?: AutoHealActionType; @@ -1919,6 +1922,11 @@ export type CheckNameAvailabilityResponse = ResourceNameAvailability; // @public export type CheckNameResourceTypes = string; +// @public +export interface CipherSuites { + suites?: string[]; +} + // @public export type ClientCertMode = "Required" | "Optional" | "OptionalInteractiveUser"; @@ -4059,6 +4067,9 @@ export interface IpAddressRange { // @public export type IpFilterTag = string; +// @public +export type IPMode = "IPv4" | "IPv6" | "IPv4AndIPv6"; + // @public export interface IpSecurityRestriction { action?: string; @@ -6189,6 +6200,7 @@ export interface ServiceSpecification { // @public export interface Site extends Resource { + autoGeneratedDomainNameLabelScope?: AutoGeneratedDomainNameLabelScope; readonly availabilityState?: SiteAvailabilityState; clientAffinityEnabled?: boolean; clientCertEnabled?: boolean; @@ -6203,6 +6215,7 @@ export interface Site extends Resource { dnsConfiguration?: SiteDnsConfig; enabled?: boolean; readonly enabledHostNames?: string[]; + endToEndEncryptionEnabled?: boolean; extendedLocation?: ExtendedLocation; functionAppConfig?: FunctionAppConfig; hostingEnvironmentProfile?: HostingEnvironmentProfile; @@ -6213,6 +6226,7 @@ export interface Site extends Resource { hyperV?: boolean; identity?: ManagedServiceIdentity; readonly inProgressOperationId?: string; + ipMode?: IPMode; readonly isDefaultContainer?: boolean; isXenon?: boolean; keyVaultReferenceIdentity?: string; @@ -6230,6 +6244,7 @@ export interface Site extends Resource { scmSiteAlsoStopped?: boolean; serverFarmId?: string; siteConfig?: SiteConfig; + readonly sku?: string; readonly slotSwapStatus?: SlotSwapStatus; readonly state?: string; storageAccountRequired?: boolean; @@ -6569,7 +6584,7 @@ export interface SiteLimits { } // @public -export type SiteLoadBalancing = "WeightedRoundRobin" | "LeastRequests" | "LeastResponseTime" | "WeightedTotalTraffic" | "RequestHash" | "PerSiteRoundRobin"; +export type SiteLoadBalancing = "WeightedRoundRobin" | "LeastRequests" | "LeastResponseTime" | "WeightedTotalTraffic" | "RequestHash" | "PerSiteRoundRobin" | "LeastRequestsWithTieBreaker"; // @public export interface SiteLogsConfig extends ProxyOnlyResource { @@ -8769,6 +8784,7 @@ export interface WebApps { updateFtpAllowedSlot(resourceGroupName: string, name: string, slot: string, csmPublishingAccessPoliciesEntity: CsmPublishingCredentialsPoliciesEntity, options?: WebAppsUpdateFtpAllowedSlotOptionalParams): Promise; updateHybridConnection(resourceGroupName: string, name: string, namespaceName: string, relayName: string, connectionEnvelope: HybridConnection, options?: WebAppsUpdateHybridConnectionOptionalParams): Promise; updateHybridConnectionSlot(resourceGroupName: string, name: string, namespaceName: string, relayName: string, slot: string, connectionEnvelope: HybridConnection, options?: WebAppsUpdateHybridConnectionSlotOptionalParams): Promise; + updateMachineKey(resourceGroupName: string, name: string, options?: WebAppsUpdateMachineKeyOptionalParams): Promise; updateMetadata(resourceGroupName: string, name: string, metadata: StringDictionary, options?: WebAppsUpdateMetadataOptionalParams): Promise; updateMetadataSlot(resourceGroupName: string, name: string, slot: string, metadata: StringDictionary, options?: WebAppsUpdateMetadataSlotOptionalParams): Promise; updatePremierAddOn(resourceGroupName: string, name: string, premierAddOnName: string, premierAddOn: PremierAddOnPatchResource, options?: WebAppsUpdatePremierAddOnOptionalParams): Promise; @@ -11932,6 +11948,13 @@ export interface WebAppsUpdateHybridConnectionSlotOptionalParams extends coreCli // @public export type WebAppsUpdateHybridConnectionSlotResponse = HybridConnection; +// @public +export interface WebAppsUpdateMachineKeyOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type WebAppsUpdateMachineKeyResponse = Record; + // @public export interface WebAppsUpdateMetadataOptionalParams extends coreClient.OperationOptions { } @@ -12109,6 +12132,7 @@ export interface WebSiteInstanceStatus extends ProxyOnlyResource { }; detectorUrl?: string; healthCheckUrl?: string; + physicalZone?: string; // (undocumented) state?: SiteRuntimeState; statusUrl?: string; diff --git a/sdk/appservice/arm-appservice/src/models/index.ts b/sdk/appservice/arm-appservice/src/models/index.ts index ed3c7fb3e8dd..fce4ab0999de 100644 --- a/sdk/appservice/arm-appservice/src/models/index.ts +++ b/sdk/appservice/arm-appservice/src/models/index.ts @@ -100,7 +100,7 @@ export interface Resource { * NOTE: This property will not be serialized. It can only be populated by the server. */ readonly name?: string; - /** Kind of resource. */ + /** Kind of resource. If the resource is an app, you can refer to https://github.com/Azure/app-service-linux-docs/blob/master/Things_You_Should_Know/kind_property.md#app-service-resource-kind-reference for details supported values for kind. */ kind?: string; /** Resource Location. */ location: string; @@ -5085,6 +5085,12 @@ export interface WorkflowVersionListResult { nextLink?: string; } +/** Describes valid TLS cipher suites. */ +export interface CipherSuites { + /** List of TLS Cipher Suites that are supported by App Service. */ + suites?: string[]; +} + /** Github access token for Appservice CLI github integration. */ export interface AppserviceGithubToken { /** Github access token for Appservice CLI github integration */ @@ -5479,6 +5485,10 @@ export interface Site extends Resource { clientCertMode?: ClientCertMode; /** client certificate authentication comma-separated exclusion paths */ clientCertExclusionPaths?: string; + /** Specifies the IP mode of the app. */ + ipMode?: IPMode; + /** Whether to use end to end encryption between the FrontEnd and the Worker */ + endToEndEncryptionEnabled?: boolean; /** * true to disable the public hostnames of the app; otherwise, false. * If true, the app is only accessible via API management process. @@ -5551,6 +5561,8 @@ export interface Site extends Resource { storageAccountRequired?: boolean; /** Identity to use for Key Vault Reference authentication. */ keyVaultReferenceIdentity?: string; + /** Specifies the scope of uniqueness for the default hostname during resource creation */ + autoGeneratedDomainNameLabelScope?: AutoGeneratedDomainNameLabelScope; /** * Azure Resource Manager ID of the Virtual network and subnet to be joined by Regional VNET Integration. * This must be of the form /subscriptions/{subscriptionName}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{vnetName}/subnets/{subnetName} @@ -5558,6 +5570,11 @@ export interface Site extends Resource { virtualNetworkSubnetId?: string; /** Azure Resource Manager ID of the customer's selected Managed Environment on which to host this app. This must be of the form /subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.App/managedEnvironments/{managedEnvironmentName} */ managedEnvironmentId?: string; + /** + * Current SKU of application based on associated App Service Plan. Some valid SKU values are Free, Shared, Basic, Dynamic, FlexConsumption, Standard, Premium, PremiumV2, PremiumV3, Isolated, IsolatedV2 + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly sku?: string; } /** App Service plan. */ @@ -8501,6 +8518,8 @@ export interface WebSiteInstanceStatus extends ProxyOnlyResource { healthCheckUrl?: string; /** Dictionary of */ containers?: { [propertyName: string]: ContainerInfo }; + /** The physical zone that the instance is in */ + physicalZone?: string; } /** Process Thread Information. */ @@ -11010,7 +11029,8 @@ export type SiteLoadBalancing = | "LeastResponseTime" | "WeightedTotalTraffic" | "RequestHash" - | "PerSiteRoundRobin"; + | "PerSiteRoundRobin" + | "LeastRequestsWithTieBreaker"; /** Defines values for AutoHealActionType. */ export type AutoHealActionType = "Recycle" | "LogEvent" | "CustomAction"; /** Defines values for AzureStorageType. */ @@ -11026,6 +11046,8 @@ export type ClientCertMode = | "Required" | "Optional" | "OptionalInteractiveUser"; +/** Defines values for IPMode. */ +export type IPMode = "IPv4" | "IPv6" | "IPv4AndIPv6"; /** Defines values for RedundancyMode. */ export type RedundancyMode = | "None" @@ -11033,6 +11055,12 @@ export type RedundancyMode = | "Failover" | "ActiveActive" | "GeoRedundant"; +/** Defines values for AutoGeneratedDomainNameLabelScope. */ +export type AutoGeneratedDomainNameLabelScope = + | "TenantReuse" + | "SubscriptionReuse" + | "ResourceGroupReuse" + | "NoReuse"; /** Defines values for ManagedServiceIdentityType. */ export type ManagedServiceIdentityType = | "SystemAssigned" @@ -11435,6 +11463,22 @@ export interface CertificateRegistrationProviderListOperationsNextOptionalParams export type CertificateRegistrationProviderListOperationsNextResponse = CsmOperationCollection; +/** Optional parameters. */ +export interface DomainRegistrationProviderListOperationsOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the listOperations operation. */ +export type DomainRegistrationProviderListOperationsResponse = + CsmOperationCollection; + +/** Optional parameters. */ +export interface DomainRegistrationProviderListOperationsNextOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the listOperationsNext operation. */ +export type DomainRegistrationProviderListOperationsNextResponse = + CsmOperationCollection; + /** Optional parameters. */ export interface DomainsCheckAvailabilityOptionalParams extends coreClient.OperationOptions {} @@ -11614,22 +11658,6 @@ export interface TopLevelDomainsListAgreementsNextOptionalParams export type TopLevelDomainsListAgreementsNextResponse = TldLegalAgreementCollection; -/** Optional parameters. */ -export interface DomainRegistrationProviderListOperationsOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listOperations operation. */ -export type DomainRegistrationProviderListOperationsResponse = - CsmOperationCollection; - -/** Optional parameters. */ -export interface DomainRegistrationProviderListOperationsNextOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listOperationsNext operation. */ -export type DomainRegistrationProviderListOperationsNextResponse = - CsmOperationCollection; - /** Optional parameters. */ export interface AppServiceEnvironmentsListOptionalParams extends coreClient.OperationOptions {} @@ -15236,6 +15264,13 @@ export interface WebAppsListSyncFunctionTriggersOptionalParams /** Contains response data for the listSyncFunctionTriggers operation. */ export type WebAppsListSyncFunctionTriggersResponse = FunctionSecrets; +/** Optional parameters. */ +export interface WebAppsUpdateMachineKeyOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the updateMachineKey operation. */ +export type WebAppsUpdateMachineKeyResponse = Record; + /** Optional parameters. */ export interface WebAppsMigrateStorageOptionalParams extends coreClient.OperationOptions { diff --git a/sdk/appservice/arm-appservice/src/models/mappers.ts b/sdk/appservice/arm-appservice/src/models/mappers.ts index de2fa23e8993..fd0a77ec5f0b 100644 --- a/sdk/appservice/arm-appservice/src/models/mappers.ts +++ b/sdk/appservice/arm-appservice/src/models/mappers.ts @@ -2964,6 +2964,7 @@ export const SiteConfig: coreClient.CompositeMapper = { "WeightedTotalTraffic", "RequestHash", "PerSiteRoundRobin", + "LeastRequestsWithTieBreaker", ], }, }, @@ -15353,6 +15354,29 @@ export const WorkflowVersionListResult: coreClient.CompositeMapper = { }, }; +export const CipherSuites: coreClient.CompositeMapper = { + serializedName: "CipherSuites", + type: { + name: "Composite", + className: "CipherSuites", + modelProperties: { + suites: { + serializedName: "suites", + xmlName: "suites", + xmlElementName: "CipherSuitesItem", + type: { + name: "Sequence", + element: { + type: { + name: "String", + }, + }, + }, + }, + }, + }, +}; + export const AppserviceGithubToken: coreClient.CompositeMapper = { serializedName: "AppserviceGithubToken", type: { @@ -16472,6 +16496,21 @@ export const Site: coreClient.CompositeMapper = { name: "String", }, }, + ipMode: { + serializedName: "properties.ipMode", + xmlName: "properties.ipMode", + type: { + name: "Enum", + allowedValues: ["IPv4", "IPv6", "IPv4AndIPv6"], + }, + }, + endToEndEncryptionEnabled: { + serializedName: "properties.endToEndEncryptionEnabled", + xmlName: "properties.endToEndEncryptionEnabled", + type: { + name: "Boolean", + }, + }, hostNamesDisabled: { serializedName: "properties.hostNamesDisabled", xmlName: "properties.hostNamesDisabled", @@ -16622,6 +16661,19 @@ export const Site: coreClient.CompositeMapper = { name: "String", }, }, + autoGeneratedDomainNameLabelScope: { + serializedName: "properties.autoGeneratedDomainNameLabelScope", + xmlName: "properties.autoGeneratedDomainNameLabelScope", + type: { + name: "Enum", + allowedValues: [ + "TenantReuse", + "SubscriptionReuse", + "ResourceGroupReuse", + "NoReuse", + ], + }, + }, virtualNetworkSubnetId: { serializedName: "properties.virtualNetworkSubnetId", xmlName: "properties.virtualNetworkSubnetId", @@ -16636,6 +16688,14 @@ export const Site: coreClient.CompositeMapper = { name: "String", }, }, + sku: { + serializedName: "properties.sku", + readOnly: true, + xmlName: "properties.sku", + type: { + name: "String", + }, + }, }, }, }; @@ -23022,6 +23082,7 @@ export const SiteConfigResource: coreClient.CompositeMapper = { "WeightedTotalTraffic", "RequestHash", "PerSiteRoundRobin", + "LeastRequestsWithTieBreaker", ], }, }, @@ -24632,6 +24693,13 @@ export const WebSiteInstanceStatus: coreClient.CompositeMapper = { value: { type: { name: "Composite", className: "ContainerInfo" } }, }, }, + physicalZone: { + serializedName: "properties.physicalZone", + xmlName: "properties.physicalZone", + type: { + name: "String", + }, + }, }, }, }; diff --git a/sdk/appservice/arm-appservice/src/models/parameters.ts b/sdk/appservice/arm-appservice/src/models/parameters.ts index c29d757b3d5f..d5932fac6b4f 100644 --- a/sdk/appservice/arm-appservice/src/models/parameters.ts +++ b/sdk/appservice/arm-appservice/src/models/parameters.ts @@ -141,7 +141,7 @@ export const subscriptionId: OperationURLParameter = { export const apiVersion: OperationQueryParameter = { parameterPath: "apiVersion", mapper: { - defaultValue: "2023-12-01", + defaultValue: "2024-04-01", isConstant: true, serializedName: "api-version", type: { diff --git a/sdk/appservice/arm-appservice/src/operations/index.ts b/sdk/appservice/arm-appservice/src/operations/index.ts index 87d60f834b34..884815439549 100644 --- a/sdk/appservice/arm-appservice/src/operations/index.ts +++ b/sdk/appservice/arm-appservice/src/operations/index.ts @@ -9,9 +9,9 @@ export * from "./appServiceCertificateOrders"; export * from "./certificateOrdersDiagnostics"; export * from "./certificateRegistrationProvider"; +export * from "./domainRegistrationProvider"; export * from "./domains"; export * from "./topLevelDomains"; -export * from "./domainRegistrationProvider"; export * from "./appServiceEnvironments"; export * from "./appServicePlans"; export * from "./certificates"; diff --git a/sdk/appservice/arm-appservice/src/operations/webApps.ts b/sdk/appservice/arm-appservice/src/operations/webApps.ts index dd716d143822..d8939fb22aa5 100644 --- a/sdk/appservice/arm-appservice/src/operations/webApps.ts +++ b/sdk/appservice/arm-appservice/src/operations/webApps.ts @@ -455,6 +455,8 @@ import { WebAppsIsCloneableResponse, WebAppsListSyncFunctionTriggersOptionalParams, WebAppsListSyncFunctionTriggersResponse, + WebAppsUpdateMachineKeyOptionalParams, + WebAppsUpdateMachineKeyResponse, StorageMigrationOptions, WebAppsMigrateStorageOptionalParams, WebAppsMigrateStorageResponse, @@ -9983,6 +9985,23 @@ export class WebAppsImpl implements WebApps { ); } + /** + * Updates the machine key of an app. + * @param resourceGroupName Name of the resource group to which the resource belongs. + * @param name Name of the app. + * @param options The options parameters. + */ + updateMachineKey( + resourceGroupName: string, + name: string, + options?: WebAppsUpdateMachineKeyOptionalParams, + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, name, options }, + updateMachineKeyOperationSpec, + ); + } + /** * Description for Restores a web app. * @param subscriptionName Azure subscription. @@ -22677,6 +22696,29 @@ const listSyncFunctionTriggersOperationSpec: coreClient.OperationSpec = { headerParameters: [Parameters.accept], serializer, }; +const updateMachineKeyOperationSpec: coreClient.OperationSpec = { + path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/updatemachinekey", + httpMethod: "POST", + responses: { + 200: { + bodyMapper: { + type: { name: "Dictionary", value: { type: { name: "any" } } }, + }, + }, + default: { + bodyMapper: Mappers.DefaultErrorResponse, + }, + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.name, + ], + headerParameters: [Parameters.accept], + serializer, +}; const migrateStorageOperationSpec: coreClient.OperationSpec = { path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/migrate", httpMethod: "PUT", diff --git a/sdk/appservice/arm-appservice/src/operationsInterfaces/index.ts b/sdk/appservice/arm-appservice/src/operationsInterfaces/index.ts index 87d60f834b34..884815439549 100644 --- a/sdk/appservice/arm-appservice/src/operationsInterfaces/index.ts +++ b/sdk/appservice/arm-appservice/src/operationsInterfaces/index.ts @@ -9,9 +9,9 @@ export * from "./appServiceCertificateOrders"; export * from "./certificateOrdersDiagnostics"; export * from "./certificateRegistrationProvider"; +export * from "./domainRegistrationProvider"; export * from "./domains"; export * from "./topLevelDomains"; -export * from "./domainRegistrationProvider"; export * from "./appServiceEnvironments"; export * from "./appServicePlans"; export * from "./certificates"; diff --git a/sdk/appservice/arm-appservice/src/operationsInterfaces/webApps.ts b/sdk/appservice/arm-appservice/src/operationsInterfaces/webApps.ts index b9e29e31b4e7..01af87193db6 100644 --- a/sdk/appservice/arm-appservice/src/operationsInterfaces/webApps.ts +++ b/sdk/appservice/arm-appservice/src/operationsInterfaces/webApps.ts @@ -306,6 +306,8 @@ import { WebAppsIsCloneableResponse, WebAppsListSyncFunctionTriggersOptionalParams, WebAppsListSyncFunctionTriggersResponse, + WebAppsUpdateMachineKeyOptionalParams, + WebAppsUpdateMachineKeyResponse, StorageMigrationOptions, WebAppsMigrateStorageOptionalParams, WebAppsMigrateStorageResponse, @@ -3108,6 +3110,17 @@ export interface WebApps { name: string, options?: WebAppsListSyncFunctionTriggersOptionalParams, ): Promise; + /** + * Updates the machine key of an app. + * @param resourceGroupName Name of the resource group to which the resource belongs. + * @param name Name of the app. + * @param options The options parameters. + */ + updateMachineKey( + resourceGroupName: string, + name: string, + options?: WebAppsUpdateMachineKeyOptionalParams, + ): Promise; /** * Description for Restores a web app. * @param subscriptionName Azure subscription. diff --git a/sdk/appservice/arm-appservice/src/webSiteManagementClient.ts b/sdk/appservice/arm-appservice/src/webSiteManagementClient.ts index 27963e761b6e..e5cf3abec5c6 100644 --- a/sdk/appservice/arm-appservice/src/webSiteManagementClient.ts +++ b/sdk/appservice/arm-appservice/src/webSiteManagementClient.ts @@ -20,9 +20,9 @@ import { AppServiceCertificateOrdersImpl, CertificateOrdersDiagnosticsImpl, CertificateRegistrationProviderImpl, + DomainRegistrationProviderImpl, DomainsImpl, TopLevelDomainsImpl, - DomainRegistrationProviderImpl, AppServiceEnvironmentsImpl, AppServicePlansImpl, CertificatesImpl, @@ -52,9 +52,9 @@ import { AppServiceCertificateOrders, CertificateOrdersDiagnostics, CertificateRegistrationProvider, + DomainRegistrationProvider, Domains, TopLevelDomains, - DomainRegistrationProvider, AppServiceEnvironments, AppServicePlans, Certificates, @@ -195,7 +195,7 @@ export class WebSiteManagementClient extends coreClient.ServiceClient { credential: credentials, }; - const packageDetails = `azsdk-js-arm-appservice/15.0.1`; + const packageDetails = `azsdk-js-arm-appservice/15.1.0`; const userAgentPrefix = options.userAgentOptions && options.userAgentOptions.userAgentPrefix ? `${options.userAgentOptions.userAgentPrefix} ${packageDetails}` @@ -249,7 +249,7 @@ export class WebSiteManagementClient extends coreClient.ServiceClient { // Assigning values to Constant parameters this.$host = options.$host || "https://management.azure.com"; - this.apiVersion = options.apiVersion || "2023-12-01"; + this.apiVersion = options.apiVersion || "2024-04-01"; this.appServiceCertificateOrders = new AppServiceCertificateOrdersImpl( this, ); @@ -258,9 +258,9 @@ export class WebSiteManagementClient extends coreClient.ServiceClient { ); this.certificateRegistrationProvider = new CertificateRegistrationProviderImpl(this); + this.domainRegistrationProvider = new DomainRegistrationProviderImpl(this); this.domains = new DomainsImpl(this); this.topLevelDomains = new TopLevelDomainsImpl(this); - this.domainRegistrationProvider = new DomainRegistrationProviderImpl(this); this.appServiceEnvironments = new AppServiceEnvironmentsImpl(this); this.appServicePlans = new AppServicePlansImpl(this); this.certificates = new CertificatesImpl(this); @@ -1090,9 +1090,9 @@ export class WebSiteManagementClient extends coreClient.ServiceClient { appServiceCertificateOrders: AppServiceCertificateOrders; certificateOrdersDiagnostics: CertificateOrdersDiagnostics; certificateRegistrationProvider: CertificateRegistrationProvider; + domainRegistrationProvider: DomainRegistrationProvider; domains: Domains; topLevelDomains: TopLevelDomains; - domainRegistrationProvider: DomainRegistrationProvider; appServiceEnvironments: AppServiceEnvironments; appServicePlans: AppServicePlans; certificates: Certificates; diff --git a/sdk/appservice/arm-appservice/test/sampleTest.ts b/sdk/appservice/arm-appservice/test/sampleTest.ts new file mode 100644 index 000000000000..d64be981b694 --- /dev/null +++ b/sdk/appservice/arm-appservice/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/appservice/arm-appservice/tsconfig.json b/sdk/appservice/arm-appservice/tsconfig.json index c0481691633c..3e6ae96443f3 100644 --- a/sdk/appservice/arm-appservice/tsconfig.json +++ b/sdk/appservice/arm-appservice/tsconfig.json @@ -15,17 +15,11 @@ ], "declaration": true, "outDir": "./dist-esm", - "importHelpers": true, - "paths": { - "@azure/arm-appservice": [ - "./src/index" - ] - } + "importHelpers": true }, "include": [ "./src/**/*.ts", - "./test/**/*.ts", - "samples-dev/**/*.ts" + "./test/**/*.ts" ], "exclude": [ "node_modules"