diff --git a/sdk/appservice/arm-appservice/CHANGELOG.md b/sdk/appservice/arm-appservice/CHANGELOG.md index 8a733e7296f2..c013400fc067 100644 --- a/sdk/appservice/arm-appservice/CHANGELOG.md +++ b/sdk/appservice/arm-appservice/CHANGELOG.md @@ -1,15 +1,111 @@ # Release History + +## 11.0.0 (2022-01-06) + +**Features** -## 10.0.1 (Unreleased) + - Added operation group ContainerApps + - Added operation group ContainerAppsRevisions + - Added operation Domains.transferOut + - Added operation WebApps.getAuthSettingsV2WithoutSecrets + - Added Interface Configuration + - Added Interface Container + - Added Interface ContainerAppCollection + - Added Interface ContainerAppsConfiguration + - Added Interface ContainerAppsCreateOrUpdateOptionalParams + - Added Interface ContainerAppsDeleteOptionalParams + - Added Interface ContainerAppSecret + - Added Interface ContainerAppsGetOptionalParams + - Added Interface ContainerAppsListByResourceGroupNextOptionalParams + - Added Interface ContainerAppsListByResourceGroupOptionalParams + - Added Interface ContainerAppsListBySubscriptionNextOptionalParams + - Added Interface ContainerAppsListBySubscriptionOptionalParams + - Added Interface ContainerAppsListSecretsOptionalParams + - Added Interface ContainerAppsRevisionsActivateRevisionOptionalParams + - Added Interface ContainerAppsRevisionsDeactivateRevisionOptionalParams + - Added Interface ContainerAppsRevisionsGetRevisionOptionalParams + - Added Interface ContainerAppsRevisionsListRevisionsNextOptionalParams + - Added Interface ContainerAppsRevisionsListRevisionsOptionalParams + - Added Interface ContainerAppsRevisionsRestartRevisionOptionalParams + - Added Interface ContainerResources + - Added Interface CustomHostnameSitesCollection + - Added Interface CustomScaleRule + - Added Interface Dapr + - Added Interface DaprComponent + - Added Interface DaprMetadata + - Added Interface DomainsTransferOutOptionalParams + - Added Interface EnvironmentVar + - Added Interface HttpScaleRule + - Added Interface Ingress + - Added Interface ListCustomHostNameSitesNextOptionalParams + - Added Interface ListCustomHostNameSitesOptionalParams + - Added Interface QueueScaleRule + - Added Interface RegistryCredentials + - Added Interface RevisionCollection + - Added Interface Scale + - Added Interface ScaleRule + - Added Interface ScaleRuleAuth + - Added Interface Secret + - Added Interface SecretsCollection + - Added Interface Template + - Added Interface TrafficWeight + - Added Interface WebAppsGetAuthSettingsV2WithoutSecretsOptionalParams + - Added Type Alias ActiveRevisionsMode + - Added Type Alias ContainerApp + - Added Type Alias ContainerAppProvisioningState + - Added Type Alias ContainerAppsCreateOrUpdateResponse + - Added Type Alias ContainerAppsGetResponse + - Added Type Alias ContainerAppsListByResourceGroupNextResponse + - Added Type Alias ContainerAppsListByResourceGroupResponse + - Added Type Alias ContainerAppsListBySubscriptionNextResponse + - Added Type Alias ContainerAppsListBySubscriptionResponse + - Added Type Alias ContainerAppsListSecretsResponse + - Added Type Alias ContainerAppsRevisionsGetRevisionResponse + - Added Type Alias ContainerAppsRevisionsListRevisionsNextResponse + - Added Type Alias ContainerAppsRevisionsListRevisionsResponse + - Added Type Alias CustomHostnameSites + - Added Type Alias DomainsTransferOutResponse + - Added Type Alias EnterpriseGradeCdnStatus + - Added Type Alias Enum16 + - Added Type Alias Enum17 + - Added Type Alias Enum18 + - Added Type Alias Enum19 + - Added Type Alias Enum20 + - Added Type Alias IngressTransportMethod + - Added Type Alias ListCustomHostNameSitesNextResponse + - Added Type Alias ListCustomHostNameSitesResponse + - Added Type Alias Revision + - Added Type Alias RevisionHealthState + - Added Type Alias RevisionProvisioningState + - Added Type Alias WebAppsGetAuthSettingsV2WithoutSecretsResponse + - Class WebSiteManagementClient has a new parameter containerApps + - Class WebSiteManagementClient has a new parameter containerAppsRevisions + - Type Alias KubeEnvironment has a new parameter environmentType + - Type Alias KubeEnvironment has a new parameter containerAppsConfiguration + - Type Alias KubeEnvironmentPatchResource has a new parameter containerAppsConfiguration + - Type Alias StaticSiteARMResource has a new parameter enterpriseGradeCdnStatus + - Type Alias StaticSitePatchResource has a new parameter enterpriseGradeCdnStatus + - Added Enum KnownActiveRevisionsMode + - Added Enum KnownContainerAppProvisioningState + - Added Enum KnownEnterpriseGradeCdnStatus + - Added Enum KnownEnum16 + - Added Enum KnownEnum17 + - Added Enum KnownEnum18 + - Added Enum KnownEnum19 + - Added Enum KnownEnum20 + - Added Enum KnownIngressTransportMethod + - Added Enum KnownRevisionHealthState + - Added Enum KnownRevisionProvisioningState -### Features Added - -### Breaking Changes - -### Bugs Fixed - -### Other Changes +**Breaking Changes** + - Removed Enum KnownEnum10 + - Removed Enum KnownEnum11 + - Removed Enum KnownEnum12 + - Removed Enum KnownEnum13 + - Removed Enum KnownEnum14 + + ## 10.0.0 (2021-12-13) The package of @azure/arm-appservice is using our next generation design principles since version 10.0.0, which contains breaking changes. diff --git a/sdk/appservice/arm-appservice/LICENSE b/sdk/appservice/arm-appservice/LICENSE index ccb63b166732..5d1d36e0af80 100644 --- a/sdk/appservice/arm-appservice/LICENSE +++ b/sdk/appservice/arm-appservice/LICENSE @@ -1,6 +1,6 @@ The MIT License (MIT) -Copyright (c) 2021 Microsoft +Copyright (c) 2022 Microsoft Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/sdk/appservice/arm-appservice/_meta.json b/sdk/appservice/arm-appservice/_meta.json index d8ba943f7094..45078dd3ce7d 100644 --- a/sdk/appservice/arm-appservice/_meta.json +++ b/sdk/appservice/arm-appservice/_meta.json @@ -1,7 +1,7 @@ { - "commit": "b8cae07c799a07f2e779a9e301f639e9b85124b1", + "commit": "bbc623e46174253535ed0393d073741069ce9c31", "readme": "specification/web/resource-manager/readme.md", - "autorest_command": "autorest --version=3.1.3 --typescript --modelerfour.lenient-model-deduplication --head-as-boolean=true --license-header=MICROSOFT_MIT_NO_VERSION --generate-test --typescript-sdks-folder=D:\\mydev\\azure-sdk-for-js ../azure-rest-api-specs/specification/web/resource-manager/readme.md --use=@autorest/typescript@6.0.0-alpha.16.20211207.1", + "autorest_command": "autorest --version=3.1.3 --typescript --modelerfour.lenient-model-deduplication --head-as-boolean=true --license-header=MICROSOFT_MIT_NO_VERSION --generate-test --typescript-sdks-folder=/home/vsts/work/1/s/azure-sdk-for-js ../azure-rest-api-specs/specification/web/resource-manager/readme.md --use=@autorest/typescript@6.0.0-alpha.16.20211130.1", "repository_url": "https://github.com/Azure/azure-rest-api-specs.git", - "use": "@autorest/typescript@6.0.0-alpha.16.20211207.1" + "use": "@autorest/typescript@6.0.0-alpha.16.20211130.1" } \ No newline at end of file diff --git a/sdk/appservice/arm-appservice/package.json b/sdk/appservice/arm-appservice/package.json index 3844edc758e7..dacf6ca639ad 100644 --- a/sdk/appservice/arm-appservice/package.json +++ b/sdk/appservice/arm-appservice/package.json @@ -3,10 +3,8 @@ "sdk-type": "mgmt", "author": "Microsoft Corporation", "description": "A generated SDK for WebSiteManagementClient.", - "version": "10.0.1", - "engines": { - "node": ">=12.0.0" - }, + "version": "11.0.0", + "engines": { "node": ">=12.0.0" }, "dependencies": { "@azure/core-lro": "^2.2.0", "@azure/abort-controller": "^1.0.0", @@ -16,13 +14,7 @@ "@azure/core-rest-pipeline": "^1.1.0", "tslib": "^2.2.0" }, - "keywords": [ - "node", - "azure", - "typescript", - "browser", - "isomorphic" - ], + "keywords": ["node", "azure", "typescript", "browser", "isomorphic"], "license": "MIT", "main": "./dist/index.js", "module": "./dist-esm/src/index.js", @@ -49,9 +41,7 @@ "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" }, - "bugs": { - "url": "https://github.com/Azure/azure-sdk-for-js/issues" - }, + "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, "files": [ "dist/**/*.js", "dist/**/*.js.map", diff --git a/sdk/appservice/arm-appservice/review/arm-appservice.api.md b/sdk/appservice/arm-appservice/review/arm-appservice.api.md index baae67de81e7..bb4099c67807 100644 --- a/sdk/appservice/arm-appservice/review/arm-appservice.api.md +++ b/sdk/appservice/arm-appservice/review/arm-appservice.api.md @@ -20,6 +20,9 @@ export interface AbnormalTimePeriod { startTime?: Date; } +// @public +export type ActiveRevisionsMode = string; + // @public export interface Address { address1: string; @@ -1861,6 +1864,14 @@ export interface CloningInfo { // @public export type ComputeModeOptions = "Shared" | "Dedicated" | "Dynamic"; +// @public +export interface Configuration { + activeRevisionsMode?: ActiveRevisionsMode; + ingress?: Ingress; + registries?: RegistryCredentials[]; + secrets?: Secret[]; +} + // @public export type ConnectionStringDictionary = ProxyOnlyResource & { properties?: { @@ -1897,6 +1908,162 @@ export interface Contact { phone: string; } +// @public +export interface Container { + args?: string[]; + command?: string[]; + env?: EnvironmentVar[]; + image?: string; + name?: string; + resources?: ContainerResources; +} + +// @public +export type ContainerApp = Resource & { + readonly provisioningState?: ContainerAppProvisioningState; + kubeEnvironmentId?: string; + readonly latestRevisionName?: string; + readonly latestRevisionFqdn?: string; + configuration?: Configuration; + template?: Template; +}; + +// @public +export interface ContainerAppCollection { + readonly nextLink?: string; + value: ContainerApp[]; +} + +// @public +export type ContainerAppProvisioningState = string; + +// @public +export interface ContainerApps { + beginCreateOrUpdate(resourceGroupName: string, name: string, containerAppEnvelope: ContainerApp, options?: ContainerAppsCreateOrUpdateOptionalParams): Promise, ContainerAppsCreateOrUpdateResponse>>; + beginCreateOrUpdateAndWait(resourceGroupName: string, name: string, containerAppEnvelope: ContainerApp, options?: ContainerAppsCreateOrUpdateOptionalParams): Promise; + beginDelete(resourceGroupName: string, name: string, options?: ContainerAppsDeleteOptionalParams): Promise, void>>; + beginDeleteAndWait(resourceGroupName: string, name: string, options?: ContainerAppsDeleteOptionalParams): Promise; + get(resourceGroupName: string, name: string, options?: ContainerAppsGetOptionalParams): Promise; + listByResourceGroup(resourceGroupName: string, options?: ContainerAppsListByResourceGroupOptionalParams): PagedAsyncIterableIterator; + listBySubscription(options?: ContainerAppsListBySubscriptionOptionalParams): PagedAsyncIterableIterator; + listSecrets(name: string, options?: ContainerAppsListSecretsOptionalParams): Promise; +} + +// @public (undocumented) +export interface ContainerAppsConfiguration { + appSubnetResourceId?: string; + controlPlaneSubnetResourceId?: string; + daprAIInstrumentationKey?: string; + dockerBridgeCidr?: string; + platformReservedCidr?: string; + platformReservedDnsIP?: string; +} + +// @public +export interface ContainerAppsCreateOrUpdateOptionalParams extends coreClient.OperationOptions { + resumeFrom?: string; + updateIntervalInMs?: number; +} + +// @public +export type ContainerAppsCreateOrUpdateResponse = ContainerApp; + +// @public +export interface ContainerAppsDeleteOptionalParams extends coreClient.OperationOptions { + resumeFrom?: string; + updateIntervalInMs?: number; +} + +// @public +export interface ContainerAppSecret { + readonly name?: string; + readonly value?: string; +} + +// @public +export interface ContainerAppsGetOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type ContainerAppsGetResponse = ContainerApp; + +// @public +export interface ContainerAppsListByResourceGroupNextOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type ContainerAppsListByResourceGroupNextResponse = ContainerAppCollection; + +// @public +export interface ContainerAppsListByResourceGroupOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type ContainerAppsListByResourceGroupResponse = ContainerAppCollection; + +// @public +export interface ContainerAppsListBySubscriptionNextOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type ContainerAppsListBySubscriptionNextResponse = ContainerAppCollection; + +// @public +export interface ContainerAppsListBySubscriptionOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type ContainerAppsListBySubscriptionResponse = ContainerAppCollection; + +// @public +export interface ContainerAppsListSecretsOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type ContainerAppsListSecretsResponse = SecretsCollection; + +// @public +export interface ContainerAppsRevisions { + activateRevision(resourceGroupName: string, containerAppName: string, name: string, options?: ContainerAppsRevisionsActivateRevisionOptionalParams): Promise; + deactivateRevision(resourceGroupName: string, containerAppName: string, name: string, options?: ContainerAppsRevisionsDeactivateRevisionOptionalParams): Promise; + getRevision(resourceGroupName: string, containerAppName: string, name: string, options?: ContainerAppsRevisionsGetRevisionOptionalParams): Promise; + listRevisions(resourceGroupName: string, containerAppName: string, options?: ContainerAppsRevisionsListRevisionsOptionalParams): PagedAsyncIterableIterator; + restartRevision(resourceGroupName: string, containerAppName: string, name: string, options?: ContainerAppsRevisionsRestartRevisionOptionalParams): Promise; +} + +// @public +export interface ContainerAppsRevisionsActivateRevisionOptionalParams extends coreClient.OperationOptions { +} + +// @public +export interface ContainerAppsRevisionsDeactivateRevisionOptionalParams extends coreClient.OperationOptions { +} + +// @public +export interface ContainerAppsRevisionsGetRevisionOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type ContainerAppsRevisionsGetRevisionResponse = Revision; + +// @public +export interface ContainerAppsRevisionsListRevisionsNextOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type ContainerAppsRevisionsListRevisionsNextResponse = RevisionCollection; + +// @public +export interface ContainerAppsRevisionsListRevisionsOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type ContainerAppsRevisionsListRevisionsResponse = RevisionCollection; + +// @public +export interface ContainerAppsRevisionsRestartRevisionOptionalParams extends coreClient.OperationOptions { +} + // @public (undocumented) export interface ContainerCpuStatistics { // (undocumented) @@ -1971,6 +2138,12 @@ export interface ContainerNetworkInterfaceStatistics { txPackets?: number; } +// @public +export interface ContainerResources { + cpu?: number; + memory?: string; +} + // @public (undocumented) export interface ContainerThrottlingData { // (undocumented) @@ -2117,6 +2290,19 @@ export type CustomHostnameAnalysisResult = ProxyOnlyResource & { // @public export type CustomHostNameDnsRecordType = "CName" | "A"; +// @public +export type CustomHostnameSites = ProxyOnlyResource & { + customHostname?: string; + region?: string; + siteResourceIds?: Identifier[]; +}; + +// @public +export interface CustomHostnameSitesCollection { + readonly nextLink?: string; + value: CustomHostnameSites[]; +} + // @public export interface CustomOpenIdConnectProvider { enabled?: boolean; @@ -2124,6 +2310,38 @@ export interface CustomOpenIdConnectProvider { registration?: OpenIdConnectRegistration; } +// @public +export interface CustomScaleRule { + auth?: ScaleRuleAuth[]; + metadata?: { + [propertyName: string]: string; + }; + type?: string; +} + +// @public +export interface Dapr { + appId?: string; + appPort?: number; + components?: DaprComponent[]; + enabled?: boolean; +} + +// @public +export interface DaprComponent { + metadata?: DaprMetadata[]; + name?: string; + type?: string; + version?: string; +} + +// @public +export interface DaprMetadata { + name?: string; + secretRef?: string; + value?: string; +} + // @public export interface DatabaseBackupSetting { connectionString?: string; @@ -2829,6 +3047,7 @@ export interface Domains { listOwnershipIdentifiers(resourceGroupName: string, domainName: string, options?: DomainsListOwnershipIdentifiersOptionalParams): PagedAsyncIterableIterator; listRecommendations(parameters: DomainRecommendationSearchParameters, options?: DomainsListRecommendationsOptionalParams): PagedAsyncIterableIterator; renew(resourceGroupName: string, domainName: string, options?: DomainsRenewOptionalParams): Promise; + transferOut(resourceGroupName: string, domainName: string, options?: DomainsTransferOutOptionalParams): Promise; update(resourceGroupName: string, domainName: string, domain: DomainPatchResource, options?: DomainsUpdateOptionalParams): Promise; updateOwnershipIdentifier(resourceGroupName: string, domainName: string, name: string, domainOwnershipIdentifier: DomainOwnershipIdentifier, options?: DomainsUpdateOwnershipIdentifierOptionalParams): Promise; } @@ -2949,6 +3168,13 @@ export interface DomainsRenewOptionalParams extends coreClient.OperationOptions // @public export type DomainStatus = "Active" | "Awaiting" | "Cancelled" | "Confiscated" | "Disabled" | "Excluded" | "Expired" | "Failed" | "Held" | "Locked" | "Parked" | "Pending" | "Reserved" | "Reverted" | "Suspended" | "Transferred" | "Unknown" | "Unlocked" | "Unparked" | "Updated" | "JsonConverterFailed"; +// @public +export interface DomainsTransferOutOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type DomainsTransferOutResponse = Domain; + // @public export interface DomainsUpdateOptionalParams extends coreClient.OperationOptions { } @@ -2986,22 +3212,32 @@ export interface EndpointDetail { } // @public -export type Enum10 = string; +export type EnterpriseGradeCdnStatus = string; // @public -export type Enum11 = string; +export type Enum15 = string; // @public -export type Enum12 = string; +export type Enum16 = string; // @public -export type Enum13 = string; +export type Enum17 = string; // @public -export type Enum14 = string; +export type Enum18 = string; // @public -export type Enum15 = string; +export type Enum19 = string; + +// @public +export type Enum20 = string; + +// @public +export interface EnvironmentVar { + name?: string; + secretRef?: string; + value?: string; +} // @public export interface ErrorEntity { @@ -3374,6 +3610,14 @@ export interface HttpLogsConfig { fileSystem?: FileSystemHttpLogsConfig; } +// @public +export interface HttpScaleRule { + auth?: ScaleRuleAuth[]; + metadata?: { + [propertyName: string]: string; + }; +} + // @public export interface HttpSettings { forwardProxy?: ForwardProxy; @@ -3458,6 +3702,20 @@ export interface InboundEnvironmentEndpointCollection { value: InboundEnvironmentEndpoint[]; } +// @public +export interface Ingress { + allowInsecure?: boolean; + external?: boolean; + readonly fqdn?: string; + targetPort?: number; + // (undocumented) + traffic?: TrafficWeight[]; + transport?: IngressTransportMethod; +} + +// @public +export type IngressTransportMethod = string; + // @public export type InsightStatus = "Critical" | "Warning" | "Info" | "Success" | "None"; @@ -3505,6 +3763,14 @@ export interface KeyValuePairStringObject { // @public export type KeyVaultSecretStatus = "Initialized" | "WaitingOnCertificateOrder" | "Succeeded" | "CertificateOrderFailed" | "OperationNotPermittedOnKeyVault" | "AzureServiceUnauthorizedToAccessKeyVault" | "KeyVaultDoesNotExist" | "KeyVaultSecretDoesNotExist" | "UnknownError" | "ExternalPrivateKey" | "Unknown"; +// @public +export enum KnownActiveRevisionsMode { + // (undocumented) + Multiple = "multiple", + // (undocumented) + Single = "single" +} + // @public export enum KnownAppServiceCertificateOrderPatchResourcePropertiesAppServiceCertificateNotRenewableReasonsItem { // (undocumented) @@ -3563,6 +3829,18 @@ export enum KnownCheckNameResourceTypes { Slot = "Slot" } +// @public +export enum KnownContainerAppProvisioningState { + // (undocumented) + Canceled = "Canceled", + // (undocumented) + Failed = "Failed", + // (undocumented) + InProgress = "InProgress", + // (undocumented) + Succeeded = "Succeeded" +} + // @public export enum KnownCustomDomainStatus { // (undocumented) @@ -3612,7 +3890,19 @@ export enum KnownDomainPropertiesDomainNotRenewableReasonsItem { } // @public -export enum KnownEnum10 { +export enum KnownEnterpriseGradeCdnStatus { + // (undocumented) + Disabled = "Disabled", + // (undocumented) + Disabling = "Disabling", + // (undocumented) + Enabled = "Enabled", + // (undocumented) + Enabling = "Enabling" +} + +// @public +export enum KnownEnum15 { // (undocumented) All = "All", // (undocumented) @@ -3626,7 +3916,7 @@ export enum KnownEnum10 { } // @public -export enum KnownEnum11 { +export enum KnownEnum16 { // (undocumented) All = "All", // (undocumented) @@ -3636,7 +3926,7 @@ export enum KnownEnum11 { } // @public -export enum KnownEnum12 { +export enum KnownEnum17 { // (undocumented) All = "All", // (undocumented) @@ -3646,7 +3936,7 @@ export enum KnownEnum12 { } // @public -export enum KnownEnum13 { +export enum KnownEnum18 { // (undocumented) All = "All", // (undocumented) @@ -3656,7 +3946,7 @@ export enum KnownEnum13 { } // @public -export enum KnownEnum14 { +export enum KnownEnum19 { // (undocumented) All = "All", // (undocumented) @@ -3666,7 +3956,7 @@ export enum KnownEnum14 { } // @public -export enum KnownEnum15 { +export enum KnownEnum20 { // (undocumented) All = "All", // (undocumented) @@ -3697,6 +3987,16 @@ export enum KnownInAvailabilityReasonType { Invalid = "Invalid" } +// @public +export enum KnownIngressTransportMethod { + // (undocumented) + Auto = "auto", + // (undocumented) + Http = "http", + // (undocumented) + Http2 = "http2" +} + // @public export enum KnownIpFilterTag { // (undocumented) @@ -3739,6 +4039,30 @@ export enum KnownResourceScopeType { WebSite = "WebSite" } +// @public +export enum KnownRevisionHealthState { + // (undocumented) + Healthy = "Healthy", + // (undocumented) + None = "None", + // (undocumented) + Unhealthy = "Unhealthy" +} + +// @public +export enum KnownRevisionProvisioningState { + // (undocumented) + Deprovisioned = "Deprovisioned", + // (undocumented) + Deprovisioning = "Deprovisioning", + // (undocumented) + Failed = "Failed", + // (undocumented) + Provisioned = "Provisioned", + // (undocumented) + Provisioning = "Provisioning" +} + // @public export enum KnownRouteType { // (undocumented) @@ -3847,8 +4171,10 @@ export type KubeEnvironment = Resource & { internalLoadBalancerEnabled?: boolean; readonly defaultDomain?: string; staticIp?: string; + environmentType?: string; arcConfiguration?: ArcConfiguration; appLogsConfiguration?: AppLogsConfiguration; + containerAppsConfiguration?: ContainerAppsConfiguration; aksResourceID?: string; }; @@ -3867,6 +4193,7 @@ export type KubeEnvironmentPatchResource = ProxyOnlyResource & { staticIp?: string; arcConfiguration?: ArcConfiguration; appLogsConfiguration?: AppLogsConfiguration; + containerAppsConfiguration?: ContainerAppsConfiguration; aksResourceID?: string; }; @@ -3987,6 +4314,20 @@ export interface ListBillingMetersOptionalParams extends coreClient.OperationOpt // @public export type ListBillingMetersResponse = BillingMeterCollection; +// @public +export interface ListCustomHostNameSitesNextOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type ListCustomHostNameSitesNextResponse = CustomHostnameSitesCollection; + +// @public +export interface ListCustomHostNameSitesOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type ListCustomHostNameSitesResponse = CustomHostnameSitesCollection; + // @public export interface ListGeoRegionsNextOptionalParams extends coreClient.OperationOptions { linuxDynamicWorkersEnabled?: boolean; @@ -4561,7 +4902,7 @@ export interface Provider { // @public export interface ProviderGetAvailableStacksNextOptionalParams extends coreClient.OperationOptions { // (undocumented) - osTypeSelected?: Enum10; + osTypeSelected?: Enum15; } // @public @@ -4570,7 +4911,7 @@ export type ProviderGetAvailableStacksNextResponse = ApplicationStackCollection; // @public export interface ProviderGetAvailableStacksOnPremNextOptionalParams extends coreClient.OperationOptions { // (undocumented) - osTypeSelected?: Enum15; + osTypeSelected?: Enum20; } // @public @@ -4579,7 +4920,7 @@ export type ProviderGetAvailableStacksOnPremNextResponse = ApplicationStackColle // @public export interface ProviderGetAvailableStacksOnPremOptionalParams extends coreClient.OperationOptions { // (undocumented) - osTypeSelected?: Enum15; + osTypeSelected?: Enum20; } // @public @@ -4588,7 +4929,7 @@ export type ProviderGetAvailableStacksOnPremResponse = ApplicationStackCollectio // @public export interface ProviderGetAvailableStacksOptionalParams extends coreClient.OperationOptions { // (undocumented) - osTypeSelected?: Enum10; + osTypeSelected?: Enum15; } // @public @@ -4596,7 +4937,7 @@ export type ProviderGetAvailableStacksResponse = ApplicationStackCollection; // @public export interface ProviderGetFunctionAppStacksForLocationNextOptionalParams extends coreClient.OperationOptions { - stackOsType?: Enum12; + stackOsType?: Enum17; } // @public @@ -4604,7 +4945,7 @@ export type ProviderGetFunctionAppStacksForLocationNextResponse = FunctionAppSta // @public export interface ProviderGetFunctionAppStacksForLocationOptionalParams extends coreClient.OperationOptions { - stackOsType?: Enum12; + stackOsType?: Enum17; } // @public @@ -4612,7 +4953,7 @@ export type ProviderGetFunctionAppStacksForLocationResponse = FunctionAppStackCo // @public export interface ProviderGetFunctionAppStacksNextOptionalParams extends coreClient.OperationOptions { - stackOsType?: Enum11; + stackOsType?: Enum16; } // @public @@ -4620,7 +4961,7 @@ export type ProviderGetFunctionAppStacksNextResponse = FunctionAppStackCollectio // @public export interface ProviderGetFunctionAppStacksOptionalParams extends coreClient.OperationOptions { - stackOsType?: Enum11; + stackOsType?: Enum16; } // @public @@ -4628,7 +4969,7 @@ export type ProviderGetFunctionAppStacksResponse = FunctionAppStackCollection; // @public export interface ProviderGetWebAppStacksForLocationNextOptionalParams extends coreClient.OperationOptions { - stackOsType?: Enum13; + stackOsType?: Enum18; } // @public @@ -4636,7 +4977,7 @@ export type ProviderGetWebAppStacksForLocationNextResponse = WebAppStackCollecti // @public export interface ProviderGetWebAppStacksForLocationOptionalParams extends coreClient.OperationOptions { - stackOsType?: Enum13; + stackOsType?: Enum18; } // @public @@ -4644,7 +4985,7 @@ export type ProviderGetWebAppStacksForLocationResponse = WebAppStackCollection; // @public export interface ProviderGetWebAppStacksNextOptionalParams extends coreClient.OperationOptions { - stackOsType?: Enum14; + stackOsType?: Enum19; } // @public @@ -4652,7 +4993,7 @@ export type ProviderGetWebAppStacksNextResponse = WebAppStackCollection; // @public export interface ProviderGetWebAppStacksOptionalParams extends coreClient.OperationOptions { - stackOsType?: Enum14; + stackOsType?: Enum19; } // @public @@ -4728,6 +5069,13 @@ export interface QueryUtterancesResults { results?: QueryUtterancesResult[]; } +// @public +export interface QueueScaleRule { + auth?: ScaleRuleAuth[]; + queueLength?: number; + queueName?: string; +} + // @public export interface RampUpRule { actionHostName?: string; @@ -4952,6 +5300,13 @@ export interface RecommendationsResetAllFiltersOptionalParams extends coreClient // @public export type RedundancyMode = "None" | "Manual" | "Failover" | "ActiveActive" | "GeoRedundant"; +// @public +export interface RegistryCredentials { + passwordSecretRef?: string; + server?: string; + username?: string; +} + // @public export type ReissueCertificateOrderRequest = ProxyOnlyResource & { keySize?: number; @@ -5201,6 +5556,31 @@ export type RestoreRequest = ProxyOnlyResource & { hostingEnvironment?: string; }; +// @public +export type Revision = Resource & { + readonly createdTime?: Date; + readonly fqdn?: string; + readonly template?: Template; + readonly active?: boolean; + readonly replicas?: number; + readonly trafficWeight?: number; + readonly provisioningError?: string; + readonly healthState?: RevisionHealthState; + readonly provisioningState?: RevisionProvisioningState; +}; + +// @public +export interface RevisionCollection { + readonly nextLink?: string; + value: Revision[]; +} + +// @public +export type RevisionHealthState = string; + +// @public +export type RevisionProvisioningState = string; + // @public export type RouteType = string; @@ -5211,9 +5591,41 @@ export interface SampleUtterance { text?: string; } +// @public +export interface Scale { + maxReplicas?: number; + minReplicas?: number; + rules?: ScaleRule[]; +} + +// @public +export interface ScaleRule { + azureQueue?: QueueScaleRule; + custom?: CustomScaleRule; + http?: HttpScaleRule; + name?: string; +} + +// @public +export interface ScaleRuleAuth { + secretRef?: string; + triggerParameter?: string; +} + // @public export type ScmType = string; +// @public +export interface Secret { + name?: string; + value?: string; +} + +// @public +export interface SecretsCollection { + value: ContainerAppSecret[]; +} + // @public export interface ServiceSpecification { // (undocumented) @@ -5857,7 +6269,8 @@ export type StaticSiteARMResource = Resource & { readonly contentDistributionEndpoint?: string; readonly keyVaultReferenceIdentity?: string; readonly userProvidedFunctionApps?: StaticSiteUserProvidedFunctionApp[]; - readonly provider?: string; + provider?: string; + enterpriseGradeCdnStatus?: EnterpriseGradeCdnStatus; }; // @public @@ -5943,7 +6356,8 @@ export type StaticSitePatchResource = ProxyOnlyResource & { readonly contentDistributionEndpoint?: string; readonly keyVaultReferenceIdentity?: string; readonly userProvidedFunctionApps?: StaticSiteUserProvidedFunctionApp[]; - readonly provider?: string; + provider?: string; + enterpriseGradeCdnStatus?: EnterpriseGradeCdnStatus; }; // @public @@ -6569,6 +6983,14 @@ export type SwiftVirtualNetwork = ProxyOnlyResource & { swiftSupported?: boolean; }; +// @public +export interface Template { + containers?: Container[]; + dapr?: Dapr; + revisionSuffix?: string; + scale?: Scale; +} + // @public export interface TldLegalAgreement { agreementKey: string; @@ -6650,6 +7072,13 @@ export interface TopLevelDomainsListOptionalParams extends coreClient.OperationO // @public export type TopLevelDomainsListResponse = TopLevelDomainCollection; +// @public +export interface TrafficWeight { + latestRevision?: boolean; + revisionName?: string; + weight?: number; +} + // @public export type TriggeredJobHistory = ProxyOnlyResource & { runs?: TriggeredJobRun[]; @@ -7117,6 +7546,7 @@ export interface WebApps { getAuthSettingsSlot(resourceGroupName: string, name: string, slot: string, options?: WebAppsGetAuthSettingsSlotOptionalParams): Promise; getAuthSettingsV2(resourceGroupName: string, name: string, options?: WebAppsGetAuthSettingsV2OptionalParams): Promise; getAuthSettingsV2Slot(resourceGroupName: string, name: string, slot: string, options?: WebAppsGetAuthSettingsV2SlotOptionalParams): Promise; + getAuthSettingsV2WithoutSecrets(resourceGroupName: string, name: string, options?: WebAppsGetAuthSettingsV2WithoutSecretsOptionalParams): Promise; getBackupConfiguration(resourceGroupName: string, name: string, options?: WebAppsGetBackupConfigurationOptionalParams): Promise; getBackupConfigurationSlot(resourceGroupName: string, name: string, slot: string, options?: WebAppsGetBackupConfigurationSlotOptionalParams): Promise; getBackupStatus(resourceGroupName: string, name: string, backupId: string, options?: WebAppsGetBackupStatusOptionalParams): Promise; @@ -8005,6 +8435,13 @@ export interface WebAppsGetAuthSettingsV2SlotOptionalParams extends coreClient.O // @public export type WebAppsGetAuthSettingsV2SlotResponse = SiteAuthSettingsV2; +// @public +export interface WebAppsGetAuthSettingsV2WithoutSecretsOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type WebAppsGetAuthSettingsV2WithoutSecretsResponse = SiteAuthSettingsV2; + // @public export interface WebAppsGetBackupConfigurationOptionalParams extends coreClient.OperationOptions { } @@ -10535,6 +10972,10 @@ export class WebSiteManagementClient extends coreClient.ServiceClient { certificates: Certificates; checkNameAvailability(name: string, typeParam: CheckNameResourceTypes, options?: CheckNameAvailabilityOptionalParams): Promise; // (undocumented) + containerApps: ContainerApps; + // (undocumented) + containerAppsRevisions: ContainerAppsRevisions; + // (undocumented) deletedWebApps: DeletedWebApps; // (undocumented) diagnostics: Diagnostics; @@ -10550,6 +10991,7 @@ export class WebSiteManagementClient extends coreClient.ServiceClient { // (undocumented) kubeEnvironments: KubeEnvironments; listBillingMeters(options?: ListBillingMetersOptionalParams): PagedAsyncIterableIterator; + listCustomHostNameSites(options?: ListCustomHostNameSitesOptionalParams): PagedAsyncIterableIterator; listGeoRegions(options?: ListGeoRegionsOptionalParams): PagedAsyncIterableIterator; listPremierAddOnOffers(options?: ListPremierAddOnOffersOptionalParams): PagedAsyncIterableIterator; listSiteIdentifiersAssignedToHostName(nameIdentifier: NameIdentifier, options?: ListSiteIdentifiersAssignedToHostNameOptionalParams): PagedAsyncIterableIterator; diff --git a/sdk/appservice/arm-appservice/src/models/index.ts b/sdk/appservice/arm-appservice/src/models/index.ts index 71c802d51f81..b32f79a854c2 100644 --- a/sdk/appservice/arm-appservice/src/models/index.ts +++ b/sdk/appservice/arm-appservice/src/models/index.ts @@ -1790,6 +1790,254 @@ export interface CertificateCollection { readonly nextLink?: string; } +/** Container App collection ARM resource. */ +export interface ContainerAppCollection { + /** Collection of resources. */ + value: ContainerApp[]; + /** + * Link to next page of resources. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly nextLink?: string; +} + +/** Non versioned Container App configuration properties that define the mutable settings of a Container app */ +export interface Configuration { + /** Collection of secrets used by a Container app */ + secrets?: Secret[]; + /** + * ActiveRevisionsMode controls how active revisions are handled for the Container app: + * Multiple: multiple revisions can be active. If no value if provided, this is the defaultSingle: Only one revision can be active at a time. Revision weights can not be used in this mode + */ + activeRevisionsMode?: ActiveRevisionsMode; + /** Ingress configurations. */ + ingress?: Ingress; + /** Collection of private container registry credentials for containers used by the Container app */ + registries?: RegistryCredentials[]; +} + +/** Container App Secret. */ +export interface Secret { + /** Secret Name. */ + name?: string; + /** Secret Value. */ + value?: string; +} + +/** Container App Ingress configuration. */ +export interface Ingress { + /** + * Hostname. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly fqdn?: string; + /** Bool indicating if app exposes an external http endpoint */ + external?: boolean; + /** Target Port in containers for traffic from ingress */ + targetPort?: number; + /** Ingress transport protocol */ + transport?: IngressTransportMethod; + traffic?: TrafficWeight[]; + /** Bool indicating if HTTP connections to is allowed. If set to false HTTP connections are automatically redirected to HTTPS connections */ + allowInsecure?: boolean; +} + +/** Traffic weight assigned to a revision */ +export interface TrafficWeight { + /** Name of a revision */ + revisionName?: string; + /** Traffic weight assigned to a revision */ + weight?: number; + /** Indicates that the traffic weight belongs to a latest stable revision */ + latestRevision?: boolean; +} + +/** Container App Private Registry */ +export interface RegistryCredentials { + /** Container Registry Server */ + server?: string; + /** Container Registry Username */ + username?: string; + /** The name of the Secret that contains the registry login password */ + passwordSecretRef?: string; +} + +/** + * Container App versioned application definition. + * Defines the desired state of an immutable revision. + * Any changes to this section Will result in a new revision being created + */ +export interface Template { + /** User friendly suffix that is appended to the revision name */ + revisionSuffix?: string; + /** List of container definitions for the Container App. */ + containers?: Container[]; + /** Scaling properties for the Container App. */ + scale?: Scale; + /** Dapr configuration for the Container App. */ + dapr?: Dapr; +} + +/** Container App container definition. */ +export interface Container { + /** Container image tag. */ + image?: string; + /** Custom container name. */ + name?: string; + /** Container start command. */ + command?: string[]; + /** Container start command arguments. */ + args?: string[]; + /** Container environment variables. */ + env?: EnvironmentVar[]; + /** Container resource requirements. */ + resources?: ContainerResources; +} + +/** Container App container environment variable. */ +export interface EnvironmentVar { + /** Environment variable name. */ + name?: string; + /** Non-secret environment variable value. */ + value?: string; + /** Name of the Container App secret from which to pull the environment variable value. */ + secretRef?: string; +} + +/** Container App container resource requirements. */ +export interface ContainerResources { + /** Required CPU in cores, e.g. 0.5 */ + cpu?: number; + /** Required memory, e.g. "250Mb" */ + memory?: string; +} + +/** Container App scaling configurations. */ +export interface Scale { + /** Optional. Minimum number of container replicas. */ + minReplicas?: number; + /** Optional. Maximum number of container replicas. Defaults to 10 if not set. */ + maxReplicas?: number; + /** Scaling rules. */ + rules?: ScaleRule[]; +} + +/** Container App container scaling rule. */ +export interface ScaleRule { + /** Scale Rule Name */ + name?: string; + /** Azure Queue based scaling. */ + azureQueue?: QueueScaleRule; + /** Custom scale rule. */ + custom?: CustomScaleRule; + /** HTTP requests based scaling. */ + http?: HttpScaleRule; +} + +/** Container App container Azure Queue based scaling rule. */ +export interface QueueScaleRule { + /** Queue name. */ + queueName?: string; + /** Queue length. */ + queueLength?: number; + /** Authentication secrets for the queue scale rule. */ + auth?: ScaleRuleAuth[]; +} + +/** Auth Secrets for Container App Scale Rule */ +export interface ScaleRuleAuth { + /** Name of the Container App secret from which to pull the auth params. */ + secretRef?: string; + /** Trigger Parameter that uses the secret */ + triggerParameter?: string; +} + +/** Container App container Custom scaling rule. */ +export interface CustomScaleRule { + /** + * Type of the custom scale rule + * eg: azure-servicebus, redis etc. + */ + type?: string; + /** Metadata properties to describe custom scale rule. */ + metadata?: { [propertyName: string]: string }; + /** Authentication secrets for the custom scale rule. */ + auth?: ScaleRuleAuth[]; +} + +/** Container App container Custom scaling rule. */ +export interface HttpScaleRule { + /** Metadata properties to describe http scale rule. */ + metadata?: { [propertyName: string]: string }; + /** Authentication secrets for the custom scale rule. */ + auth?: ScaleRuleAuth[]; +} + +/** Container App Dapr configuration. */ +export interface Dapr { + /** Boolean indicating if the Dapr side car is enabled */ + enabled?: boolean; + /** Dapr application identifier */ + appId?: string; + /** Port on which the Dapr side car */ + appPort?: number; + /** Collection of Dapr components */ + components?: DaprComponent[]; +} + +/** Dapr component configuration */ +export interface DaprComponent { + /** Component name */ + name?: string; + /** Component type */ + type?: string; + /** Component version */ + version?: string; + /** Component metadata */ + metadata?: DaprMetadata[]; +} + +/** Container App Dapr component metadata. */ +export interface DaprMetadata { + /** Metadata property name. */ + name?: string; + /** Metadata property value. */ + value?: string; + /** Name of the Container App secret from which to pull the metadata property value. */ + secretRef?: string; +} + +/** Container App Secrets Collection ARM resource. */ +export interface SecretsCollection { + /** Collection of resources. */ + value: ContainerAppSecret[]; +} + +/** Container App Secret. */ +export interface ContainerAppSecret { + /** + * Secret Name. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly name?: string; + /** + * Secret Value. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly value?: string; +} + +/** Container App Revisions collection ARM resource. */ +export interface RevisionCollection { + /** Collection of resources. */ + value: Revision[]; + /** + * Link to next page of resources. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly nextLink?: string; +} + /** Collection of deleted apps. */ export interface DeletedWebAppCollection { /** Collection of resources. */ @@ -2007,6 +2255,21 @@ export interface LogAnalyticsConfiguration { sharedKey?: string; } +export interface ContainerAppsConfiguration { + /** Azure Monitor instrumentation key used by Dapr to export Service to Service communication telemetry */ + daprAIInstrumentationKey?: string; + /** IP range in CIDR notation that can be reserved for environment infrastructure IP addresses. It must not overlap with any other Subnet IP ranges. */ + platformReservedCidr?: string; + /** An IP address from the IP range defined by platformReservedCidr that will be reserved for the internal DNS server */ + platformReservedDnsIP?: string; + /** Resource ID of a subnet for control plane infrastructure components. This subnet must be in the same VNET as the subnet defined in appSubnetResourceId. Must not overlap with the IP range defined in platformReservedCidr, if defined. */ + controlPlaneSubnetResourceId?: string; + /** Resource ID of a subnet for control plane infrastructure components. This subnet must be in the same VNET as the subnet defined in appSubnetResourceId. Must not overlap with the IP range defined in platformReservedCidr, if defined. */ + appSubnetResourceId?: string; + /** CIDR notation IP range assigned to the Docker bridge network. It must not overlap with any Subnet IP ranges or the IP range defined in platformReservedCidr, if defined. */ + dockerBridgeCidr?: string; +} + /** Collection of Application Stacks */ export interface ApplicationStackCollection { /** Collection of resources. */ @@ -2550,6 +2813,17 @@ export interface ResourceNameAvailability { message?: string; } +/** Collection of custom hostname sites */ +export interface CustomHostnameSitesCollection { + /** Collection of resources. */ + value: CustomHostnameSites[]; + /** + * Link to next page of resources. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly nextLink?: string; +} + /** * List of available locations (regions or App Service Environments) for * deployment of App Service resources. @@ -4464,6 +4738,83 @@ export type Certificate = Resource & { domainValidationMethod?: string; }; +/** Container App. */ +export type ContainerApp = Resource & { + /** + * Provisioning state of the Container App. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly provisioningState?: ContainerAppProvisioningState; + /** Resource ID of the Container App's KubeEnvironment. */ + kubeEnvironmentId?: string; + /** + * Name of the latest revision of the Container App. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly latestRevisionName?: string; + /** + * Fully Qualified Domain Name of the latest revision of the Container App. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly latestRevisionFqdn?: string; + /** Non versioned Container App configuration properties. */ + configuration?: Configuration; + /** Container App versioned application definition. */ + template?: Template; +}; + +/** Container App Revision. */ +export type Revision = Resource & { + /** + * Timestamp describing when the revision was created + * by controller + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly createdTime?: Date; + /** + * Fully qualified domain name of the revision + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly fqdn?: string; + /** + * Container App Revision Template with all possible settings and the + * defaults if user did not provide them. The defaults are populated + * as they were at the creation time + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly template?: Template; + /** + * Boolean describing if the Revision is Active + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly active?: boolean; + /** + * Number of pods currently running for this revision + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly replicas?: number; + /** + * Traffic weight assigned to this revision + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly trafficWeight?: number; + /** + * Optional Field - Platform Error Message + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly provisioningError?: string; + /** + * Current health State of the revision + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly healthState?: RevisionHealthState; + /** + * Current provisioning State of the revision + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly provisioningState?: RevisionProvisioningState; +}; + /** A Kubernetes cluster specialized for web workloads by Azure App Service */ export type KubeEnvironment = Resource & { /** Extended Location. */ @@ -4487,6 +4838,8 @@ export type KubeEnvironment = Resource & { readonly defaultDomain?: string; /** Static IP of the KubeEnvironment */ staticIp?: string; + /** Type of Kubernetes Environment. Only supported for Container App Environments with value as Managed */ + environmentType?: string; /** * Cluster configuration which determines the ARC cluster * components types. Eg: Choosing between BuildService kind, @@ -4499,6 +4852,8 @@ export type KubeEnvironment = Resource & { * supported */ appLogsConfiguration?: AppLogsConfiguration; + /** Cluster configuration for Container Apps Environments to configure Dapr Instrumentation Key and VNET Configuration */ + containerAppsConfiguration?: ContainerAppsConfiguration; aksResourceID?: string; }; @@ -4552,11 +4907,10 @@ export type StaticSiteARMResource = Resource & { * NOTE: This property will not be serialized. It can only be populated by the server. */ readonly userProvidedFunctionApps?: StaticSiteUserProvidedFunctionApp[]; - /** - * The provider that submitted the last deployment to the primary environment of the static site. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly provider?: string; + /** The provider that submitted the last deployment to the primary environment of the static site. */ + provider?: string; + /** State indicating the status of the enterprise grade CDN serving traffic to the static web app. */ + enterpriseGradeCdnStatus?: EnterpriseGradeCdnStatus; }; /** Premier add-on. */ @@ -5446,6 +5800,8 @@ export type KubeEnvironmentPatchResource = ProxyOnlyResource & { * supported */ appLogsConfiguration?: AppLogsConfiguration; + /** Cluster configuration for Container Apps Environments to configure Dapr Instrumentation Key and VNET Configuration */ + containerAppsConfiguration?: ContainerAppsConfiguration; aksResourceID?: string; }; @@ -5673,6 +6029,19 @@ export type BillingMeter = ProxyOnlyResource & { multiplier?: number; }; +/** A domain specific resource identifier. */ +export type Identifier = ProxyOnlyResource & { + /** String representation of the identity. */ + value?: string; +}; + +/** A hostname and its assigned sites */ +export type CustomHostnameSites = ProxyOnlyResource & { + customHostname?: string; + region?: string; + siteResourceIds?: Identifier[]; +}; + /** Geographical region. */ export type GeoRegion = ProxyOnlyResource & { /** @@ -5692,12 +6061,6 @@ export type GeoRegion = ProxyOnlyResource & { readonly orgDomain?: string; }; -/** A domain specific resource identifier. */ -export type Identifier = ProxyOnlyResource & { - /** String representation of the identity. */ - value?: string; -}; - /** Premier add-on offer. */ export type PremierAddOnOffer = ProxyOnlyResource & { /** Premier add on SKU. */ @@ -5849,11 +6212,10 @@ export type StaticSitePatchResource = ProxyOnlyResource & { * NOTE: This property will not be serialized. It can only be populated by the server. */ readonly userProvidedFunctionApps?: StaticSiteUserProvidedFunctionApp[]; - /** - * The provider that submitted the last deployment to the primary environment of the static site. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly provider?: string; + /** The provider that submitted the last deployment to the primary environment of the static site. */ + provider?: string; + /** State indicating the status of the enterprise grade CDN serving traffic to the static web app. */ + enterpriseGradeCdnStatus?: EnterpriseGradeCdnStatus; }; /** Static Site User ARM resource. */ @@ -7638,8 +8000,102 @@ export enum KnownRouteType { */ export type RouteType = string; -/** Known values of {@link Enum10} that the service accepts. */ -export enum KnownEnum10 { +/** Known values of {@link ContainerAppProvisioningState} that the service accepts. */ +export enum KnownContainerAppProvisioningState { + InProgress = "InProgress", + Succeeded = "Succeeded", + Failed = "Failed", + Canceled = "Canceled" +} + +/** + * Defines values for ContainerAppProvisioningState. \ + * {@link KnownContainerAppProvisioningState} can be used interchangeably with ContainerAppProvisioningState, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **InProgress** \ + * **Succeeded** \ + * **Failed** \ + * **Canceled** + */ +export type ContainerAppProvisioningState = string; + +/** Known values of {@link ActiveRevisionsMode} that the service accepts. */ +export enum KnownActiveRevisionsMode { + Multiple = "multiple", + Single = "single" +} + +/** + * Defines values for ActiveRevisionsMode. \ + * {@link KnownActiveRevisionsMode} can be used interchangeably with ActiveRevisionsMode, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **multiple** \ + * **single** + */ +export type ActiveRevisionsMode = string; + +/** Known values of {@link IngressTransportMethod} that the service accepts. */ +export enum KnownIngressTransportMethod { + Auto = "auto", + Http = "http", + Http2 = "http2" +} + +/** + * Defines values for IngressTransportMethod. \ + * {@link KnownIngressTransportMethod} can be used interchangeably with IngressTransportMethod, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **auto** \ + * **http** \ + * **http2** + */ +export type IngressTransportMethod = string; + +/** Known values of {@link RevisionHealthState} that the service accepts. */ +export enum KnownRevisionHealthState { + Healthy = "Healthy", + Unhealthy = "Unhealthy", + None = "None" +} + +/** + * Defines values for RevisionHealthState. \ + * {@link KnownRevisionHealthState} can be used interchangeably with RevisionHealthState, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Healthy** \ + * **Unhealthy** \ + * **None** + */ +export type RevisionHealthState = string; + +/** Known values of {@link RevisionProvisioningState} that the service accepts. */ +export enum KnownRevisionProvisioningState { + Provisioning = "Provisioning", + Provisioned = "Provisioned", + Failed = "Failed", + Deprovisioning = "Deprovisioning", + Deprovisioned = "Deprovisioned" +} + +/** + * Defines values for RevisionProvisioningState. \ + * {@link KnownRevisionProvisioningState} can be used interchangeably with RevisionProvisioningState, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Provisioning** \ + * **Provisioned** \ + * **Failed** \ + * **Deprovisioning** \ + * **Deprovisioned** + */ +export type RevisionProvisioningState = string; + +/** Known values of {@link Enum15} that the service accepts. */ +export enum KnownEnum15 { Windows = "Windows", Linux = "Linux", WindowsFunctions = "WindowsFunctions", @@ -7648,8 +8104,8 @@ export enum KnownEnum10 { } /** - * Defines values for Enum10. \ - * {@link KnownEnum10} can be used interchangeably with Enum10, + * Defines values for Enum15. \ + * {@link KnownEnum15} can be used interchangeably with Enum15, * this enum contains the known values that the service supports. * ### Known values supported by the service * **Windows** \ @@ -7658,82 +8114,82 @@ export enum KnownEnum10 { * **LinuxFunctions** \ * **All** */ -export type Enum10 = string; +export type Enum15 = string; -/** Known values of {@link Enum11} that the service accepts. */ -export enum KnownEnum11 { +/** Known values of {@link Enum16} that the service accepts. */ +export enum KnownEnum16 { Windows = "Windows", Linux = "Linux", All = "All" } /** - * Defines values for Enum11. \ - * {@link KnownEnum11} can be used interchangeably with Enum11, + * Defines values for Enum16. \ + * {@link KnownEnum16} can be used interchangeably with Enum16, * this enum contains the known values that the service supports. * ### Known values supported by the service * **Windows** \ * **Linux** \ * **All** */ -export type Enum11 = string; +export type Enum16 = string; -/** Known values of {@link Enum12} that the service accepts. */ -export enum KnownEnum12 { +/** Known values of {@link Enum17} that the service accepts. */ +export enum KnownEnum17 { Windows = "Windows", Linux = "Linux", All = "All" } /** - * Defines values for Enum12. \ - * {@link KnownEnum12} can be used interchangeably with Enum12, + * Defines values for Enum17. \ + * {@link KnownEnum17} can be used interchangeably with Enum17, * this enum contains the known values that the service supports. * ### Known values supported by the service * **Windows** \ * **Linux** \ * **All** */ -export type Enum12 = string; +export type Enum17 = string; -/** Known values of {@link Enum13} that the service accepts. */ -export enum KnownEnum13 { +/** Known values of {@link Enum18} that the service accepts. */ +export enum KnownEnum18 { Windows = "Windows", Linux = "Linux", All = "All" } /** - * Defines values for Enum13. \ - * {@link KnownEnum13} can be used interchangeably with Enum13, + * Defines values for Enum18. \ + * {@link KnownEnum18} can be used interchangeably with Enum18, * this enum contains the known values that the service supports. * ### Known values supported by the service * **Windows** \ * **Linux** \ * **All** */ -export type Enum13 = string; +export type Enum18 = string; -/** Known values of {@link Enum14} that the service accepts. */ -export enum KnownEnum14 { +/** Known values of {@link Enum19} that the service accepts. */ +export enum KnownEnum19 { Windows = "Windows", Linux = "Linux", All = "All" } /** - * Defines values for Enum14. \ - * {@link KnownEnum14} can be used interchangeably with Enum14, + * Defines values for Enum19. \ + * {@link KnownEnum19} can be used interchangeably with Enum19, * this enum contains the known values that the service supports. * ### Known values supported by the service * **Windows** \ * **Linux** \ * **All** */ -export type Enum14 = string; +export type Enum19 = string; -/** Known values of {@link Enum15} that the service accepts. */ -export enum KnownEnum15 { +/** Known values of {@link Enum20} that the service accepts. */ +export enum KnownEnum20 { Windows = "Windows", Linux = "Linux", WindowsFunctions = "WindowsFunctions", @@ -7742,8 +8198,8 @@ export enum KnownEnum15 { } /** - * Defines values for Enum15. \ - * {@link KnownEnum15} can be used interchangeably with Enum15, + * Defines values for Enum20. \ + * {@link KnownEnum20} can be used interchangeably with Enum20, * this enum contains the known values that the service supports. * ### Known values supported by the service * **Windows** \ @@ -7752,7 +8208,7 @@ export enum KnownEnum15 { * **LinuxFunctions** \ * **All** */ -export type Enum15 = string; +export type Enum20 = string; /** Known values of {@link ResourceScopeType} that the service accepts. */ export enum KnownResourceScopeType { @@ -7872,6 +8328,26 @@ export enum KnownValidateResourceTypes { */ export type ValidateResourceTypes = string; +/** Known values of {@link EnterpriseGradeCdnStatus} that the service accepts. */ +export enum KnownEnterpriseGradeCdnStatus { + Enabled = "Enabled", + Enabling = "Enabling", + Disabled = "Disabled", + Disabling = "Disabling" +} + +/** + * Defines values for EnterpriseGradeCdnStatus. \ + * {@link KnownEnterpriseGradeCdnStatus} can be used interchangeably with EnterpriseGradeCdnStatus, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Enabled** \ + * **Enabling** \ + * **Disabled** \ + * **Disabling** + */ +export type EnterpriseGradeCdnStatus = string; + /** Known values of {@link BuildStatus} that the service accepts. */ export enum KnownBuildStatus { WaitingForDeployment = "WaitingForDeployment", @@ -8631,6 +9107,13 @@ export type DomainsUpdateOwnershipIdentifierResponse = DomainOwnershipIdentifier export interface DomainsRenewOptionalParams extends coreClient.OperationOptions {} +/** Optional parameters. */ +export interface DomainsTransferOutOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the transferOut operation. */ +export type DomainsTransferOutResponse = Domain; + /** Optional parameters. */ export interface DomainsListNextOptionalParams extends coreClient.OperationOptions {} @@ -9534,6 +10017,102 @@ export interface CertificatesListByResourceGroupNextOptionalParams /** Contains response data for the listByResourceGroupNext operation. */ export type CertificatesListByResourceGroupNextResponse = CertificateCollection; +/** Optional parameters. */ +export interface ContainerAppsListBySubscriptionOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the listBySubscription operation. */ +export type ContainerAppsListBySubscriptionResponse = ContainerAppCollection; + +/** Optional parameters. */ +export interface ContainerAppsListByResourceGroupOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the listByResourceGroup operation. */ +export type ContainerAppsListByResourceGroupResponse = ContainerAppCollection; + +/** Optional parameters. */ +export interface ContainerAppsGetOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the get operation. */ +export type ContainerAppsGetResponse = ContainerApp; + +/** Optional parameters. */ +export interface ContainerAppsCreateOrUpdateOptionalParams + 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 ContainerAppsCreateOrUpdateResponse = ContainerApp; + +/** Optional parameters. */ +export interface ContainerAppsDeleteOptionalParams + extends coreClient.OperationOptions { + /** Delay to wait until next poll, in milliseconds. */ + updateIntervalInMs?: number; + /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */ + resumeFrom?: string; +} + +/** Optional parameters. */ +export interface ContainerAppsListSecretsOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the listSecrets operation. */ +export type ContainerAppsListSecretsResponse = SecretsCollection; + +/** Optional parameters. */ +export interface ContainerAppsListBySubscriptionNextOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the listBySubscriptionNext operation. */ +export type ContainerAppsListBySubscriptionNextResponse = ContainerAppCollection; + +/** Optional parameters. */ +export interface ContainerAppsListByResourceGroupNextOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the listByResourceGroupNext operation. */ +export type ContainerAppsListByResourceGroupNextResponse = ContainerAppCollection; + +/** Optional parameters. */ +export interface ContainerAppsRevisionsListRevisionsOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the listRevisions operation. */ +export type ContainerAppsRevisionsListRevisionsResponse = RevisionCollection; + +/** Optional parameters. */ +export interface ContainerAppsRevisionsGetRevisionOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the getRevision operation. */ +export type ContainerAppsRevisionsGetRevisionResponse = Revision; + +/** Optional parameters. */ +export interface ContainerAppsRevisionsActivateRevisionOptionalParams + extends coreClient.OperationOptions {} + +/** Optional parameters. */ +export interface ContainerAppsRevisionsDeactivateRevisionOptionalParams + extends coreClient.OperationOptions {} + +/** Optional parameters. */ +export interface ContainerAppsRevisionsRestartRevisionOptionalParams + extends coreClient.OperationOptions {} + +/** Optional parameters. */ +export interface ContainerAppsRevisionsListRevisionsNextOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the listRevisionsNext operation. */ +export type ContainerAppsRevisionsListRevisionsNextResponse = RevisionCollection; + /** Optional parameters. */ export interface DeletedWebAppsListOptionalParams extends coreClient.OperationOptions {} @@ -9919,7 +10498,7 @@ export type KubeEnvironmentsListByResourceGroupNextResponse = KubeEnvironmentCol /** Optional parameters. */ export interface ProviderGetAvailableStacksOptionalParams extends coreClient.OperationOptions { - osTypeSelected?: Enum10; + osTypeSelected?: Enum15; } /** Contains response data for the getAvailableStacks operation. */ @@ -9929,7 +10508,7 @@ export type ProviderGetAvailableStacksResponse = ApplicationStackCollection; export interface ProviderGetFunctionAppStacksOptionalParams extends coreClient.OperationOptions { /** Stack OS Type */ - stackOsType?: Enum11; + stackOsType?: Enum16; } /** Contains response data for the getFunctionAppStacks operation. */ @@ -9939,7 +10518,7 @@ export type ProviderGetFunctionAppStacksResponse = FunctionAppStackCollection; export interface ProviderGetFunctionAppStacksForLocationOptionalParams extends coreClient.OperationOptions { /** Stack OS Type */ - stackOsType?: Enum12; + stackOsType?: Enum17; } /** Contains response data for the getFunctionAppStacksForLocation operation. */ @@ -9949,7 +10528,7 @@ export type ProviderGetFunctionAppStacksForLocationResponse = FunctionAppStackCo export interface ProviderGetWebAppStacksForLocationOptionalParams extends coreClient.OperationOptions { /** Stack OS Type */ - stackOsType?: Enum13; + stackOsType?: Enum18; } /** Contains response data for the getWebAppStacksForLocation operation. */ @@ -9966,7 +10545,7 @@ export type ProviderListOperationsResponse = CsmOperationCollection; export interface ProviderGetWebAppStacksOptionalParams extends coreClient.OperationOptions { /** Stack OS Type */ - stackOsType?: Enum14; + stackOsType?: Enum19; } /** Contains response data for the getWebAppStacks operation. */ @@ -9975,7 +10554,7 @@ export type ProviderGetWebAppStacksResponse = WebAppStackCollection; /** Optional parameters. */ export interface ProviderGetAvailableStacksOnPremOptionalParams extends coreClient.OperationOptions { - osTypeSelected?: Enum15; + osTypeSelected?: Enum20; } /** Contains response data for the getAvailableStacksOnPrem operation. */ @@ -9984,7 +10563,7 @@ export type ProviderGetAvailableStacksOnPremResponse = ApplicationStackCollectio /** Optional parameters. */ export interface ProviderGetAvailableStacksNextOptionalParams extends coreClient.OperationOptions { - osTypeSelected?: Enum10; + osTypeSelected?: Enum15; } /** Contains response data for the getAvailableStacksNext operation. */ @@ -9994,7 +10573,7 @@ export type ProviderGetAvailableStacksNextResponse = ApplicationStackCollection; export interface ProviderGetFunctionAppStacksNextOptionalParams extends coreClient.OperationOptions { /** Stack OS Type */ - stackOsType?: Enum11; + stackOsType?: Enum16; } /** Contains response data for the getFunctionAppStacksNext operation. */ @@ -10004,7 +10583,7 @@ export type ProviderGetFunctionAppStacksNextResponse = FunctionAppStackCollectio export interface ProviderGetFunctionAppStacksForLocationNextOptionalParams extends coreClient.OperationOptions { /** Stack OS Type */ - stackOsType?: Enum12; + stackOsType?: Enum17; } /** Contains response data for the getFunctionAppStacksForLocationNext operation. */ @@ -10014,7 +10593,7 @@ export type ProviderGetFunctionAppStacksForLocationNextResponse = FunctionAppSta export interface ProviderGetWebAppStacksForLocationNextOptionalParams extends coreClient.OperationOptions { /** Stack OS Type */ - stackOsType?: Enum13; + stackOsType?: Enum18; } /** Contains response data for the getWebAppStacksForLocationNext operation. */ @@ -10031,7 +10610,7 @@ export type ProviderListOperationsNextResponse = CsmOperationCollection; export interface ProviderGetWebAppStacksNextOptionalParams extends coreClient.OperationOptions { /** Stack OS Type */ - stackOsType?: Enum14; + stackOsType?: Enum19; } /** Contains response data for the getWebAppStacksNext operation. */ @@ -10040,7 +10619,7 @@ export type ProviderGetWebAppStacksNextResponse = WebAppStackCollection; /** Optional parameters. */ export interface ProviderGetAvailableStacksOnPremNextOptionalParams extends coreClient.OperationOptions { - osTypeSelected?: Enum15; + osTypeSelected?: Enum20; } /** Contains response data for the getAvailableStacksOnPremNext operation. */ @@ -10349,6 +10928,13 @@ export interface CheckNameAvailabilityOptionalParams /** Contains response data for the checkNameAvailability operation. */ export type CheckNameAvailabilityResponse = ResourceNameAvailability; +/** Optional parameters. */ +export interface ListCustomHostNameSitesOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the listCustomHostNameSites operation. */ +export type ListCustomHostNameSitesResponse = CustomHostnameSitesCollection; + /** Optional parameters. */ export interface GetSubscriptionDeploymentLocationsOptionalParams extends coreClient.OperationOptions {} @@ -10431,6 +11017,13 @@ export interface ListBillingMetersNextOptionalParams /** Contains response data for the listBillingMetersNext operation. */ export type ListBillingMetersNextResponse = BillingMeterCollection; +/** Optional parameters. */ +export interface ListCustomHostNameSitesNextOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the listCustomHostNameSitesNext operation. */ +export type ListCustomHostNameSitesNextResponse = CustomHostnameSitesCollection; + /** Optional parameters. */ export interface ListGeoRegionsNextOptionalParams extends coreClient.OperationOptions { @@ -11082,6 +11675,13 @@ export interface WebAppsGetAuthSettingsOptionalParams /** Contains response data for the getAuthSettings operation. */ export type WebAppsGetAuthSettingsResponse = SiteAuthSettings; +/** Optional parameters. */ +export interface WebAppsGetAuthSettingsV2WithoutSecretsOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the getAuthSettingsV2WithoutSecrets operation. */ +export type WebAppsGetAuthSettingsV2WithoutSecretsResponse = SiteAuthSettingsV2; + /** Optional parameters. */ export interface WebAppsUpdateAuthSettingsV2OptionalParams extends coreClient.OperationOptions {} diff --git a/sdk/appservice/arm-appservice/src/models/mappers.ts b/sdk/appservice/arm-appservice/src/models/mappers.ts index 51cc4dc1ed54..17d734f50d9d 100644 --- a/sdk/appservice/arm-appservice/src/models/mappers.ts +++ b/sdk/appservice/arm-appservice/src/models/mappers.ts @@ -5418,6 +5418,831 @@ export const CertificateCollection: coreClient.CompositeMapper = { } }; +export const ContainerAppCollection: coreClient.CompositeMapper = { + serializedName: "ContainerAppCollection", + type: { + name: "Composite", + className: "ContainerAppCollection", + modelProperties: { + value: { + serializedName: "value", + required: true, + xmlName: "value", + xmlElementName: "ContainerApp", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ContainerApp" + } + } + } + }, + nextLink: { + serializedName: "nextLink", + readOnly: true, + xmlName: "nextLink", + type: { + name: "String" + } + } + } + } +}; + +export const Configuration: coreClient.CompositeMapper = { + serializedName: "Configuration", + type: { + name: "Composite", + className: "Configuration", + modelProperties: { + secrets: { + serializedName: "secrets", + xmlName: "secrets", + xmlElementName: "Secret", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "Secret" + } + } + } + }, + activeRevisionsMode: { + serializedName: "activeRevisionsMode", + xmlName: "activeRevisionsMode", + type: { + name: "String" + } + }, + ingress: { + serializedName: "ingress", + xmlName: "ingress", + type: { + name: "Composite", + className: "Ingress" + } + }, + registries: { + serializedName: "registries", + xmlName: "registries", + xmlElementName: "RegistryCredentials", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "RegistryCredentials" + } + } + } + } + } + } +}; + +export const Secret: coreClient.CompositeMapper = { + serializedName: "Secret", + type: { + name: "Composite", + className: "Secret", + modelProperties: { + name: { + serializedName: "name", + xmlName: "name", + type: { + name: "String" + } + }, + value: { + serializedName: "value", + xmlName: "value", + type: { + name: "String" + } + } + } + } +}; + +export const Ingress: coreClient.CompositeMapper = { + serializedName: "Ingress", + type: { + name: "Composite", + className: "Ingress", + modelProperties: { + fqdn: { + serializedName: "fqdn", + readOnly: true, + xmlName: "fqdn", + type: { + name: "String" + } + }, + external: { + defaultValue: false, + serializedName: "external", + xmlName: "external", + type: { + name: "Boolean" + } + }, + targetPort: { + serializedName: "targetPort", + xmlName: "targetPort", + type: { + name: "Number" + } + }, + transport: { + serializedName: "transport", + xmlName: "transport", + type: { + name: "String" + } + }, + traffic: { + serializedName: "traffic", + xmlName: "traffic", + xmlElementName: "TrafficWeight", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "TrafficWeight" + } + } + } + }, + allowInsecure: { + serializedName: "allowInsecure", + xmlName: "allowInsecure", + type: { + name: "Boolean" + } + } + } + } +}; + +export const TrafficWeight: coreClient.CompositeMapper = { + serializedName: "TrafficWeight", + type: { + name: "Composite", + className: "TrafficWeight", + modelProperties: { + revisionName: { + serializedName: "revisionName", + xmlName: "revisionName", + type: { + name: "String" + } + }, + weight: { + serializedName: "weight", + xmlName: "weight", + type: { + name: "Number" + } + }, + latestRevision: { + defaultValue: false, + serializedName: "latestRevision", + xmlName: "latestRevision", + type: { + name: "Boolean" + } + } + } + } +}; + +export const RegistryCredentials: coreClient.CompositeMapper = { + serializedName: "RegistryCredentials", + type: { + name: "Composite", + className: "RegistryCredentials", + modelProperties: { + server: { + serializedName: "server", + xmlName: "server", + type: { + name: "String" + } + }, + username: { + serializedName: "username", + xmlName: "username", + type: { + name: "String" + } + }, + passwordSecretRef: { + serializedName: "passwordSecretRef", + xmlName: "passwordSecretRef", + type: { + name: "String" + } + } + } + } +}; + +export const Template: coreClient.CompositeMapper = { + serializedName: "Template", + type: { + name: "Composite", + className: "Template", + modelProperties: { + revisionSuffix: { + serializedName: "revisionSuffix", + xmlName: "revisionSuffix", + type: { + name: "String" + } + }, + containers: { + serializedName: "containers", + xmlName: "containers", + xmlElementName: "Container", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "Container" + } + } + } + }, + scale: { + serializedName: "scale", + xmlName: "scale", + type: { + name: "Composite", + className: "Scale" + } + }, + dapr: { + serializedName: "dapr", + xmlName: "dapr", + type: { + name: "Composite", + className: "Dapr" + } + } + } + } +}; + +export const Container: coreClient.CompositeMapper = { + serializedName: "Container", + type: { + name: "Composite", + className: "Container", + modelProperties: { + image: { + serializedName: "image", + xmlName: "image", + type: { + name: "String" + } + }, + name: { + serializedName: "name", + xmlName: "name", + type: { + name: "String" + } + }, + command: { + serializedName: "command", + xmlName: "command", + xmlElementName: "ContainerCommandItem", + type: { + name: "Sequence", + element: { + type: { + name: "String" + } + } + } + }, + args: { + serializedName: "args", + xmlName: "args", + xmlElementName: "ContainerArgsItem", + type: { + name: "Sequence", + element: { + type: { + name: "String" + } + } + } + }, + env: { + serializedName: "env", + xmlName: "env", + xmlElementName: "EnvironmentVar", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "EnvironmentVar" + } + } + } + }, + resources: { + serializedName: "resources", + xmlName: "resources", + type: { + name: "Composite", + className: "ContainerResources" + } + } + } + } +}; + +export const EnvironmentVar: coreClient.CompositeMapper = { + serializedName: "EnvironmentVar", + type: { + name: "Composite", + className: "EnvironmentVar", + modelProperties: { + name: { + serializedName: "name", + xmlName: "name", + type: { + name: "String" + } + }, + value: { + serializedName: "value", + xmlName: "value", + type: { + name: "String" + } + }, + secretRef: { + serializedName: "secretRef", + xmlName: "secretRef", + type: { + name: "String" + } + } + } + } +}; + +export const ContainerResources: coreClient.CompositeMapper = { + serializedName: "ContainerResources", + type: { + name: "Composite", + className: "ContainerResources", + modelProperties: { + cpu: { + serializedName: "cpu", + xmlName: "cpu", + type: { + name: "Number" + } + }, + memory: { + serializedName: "memory", + xmlName: "memory", + type: { + name: "String" + } + } + } + } +}; + +export const Scale: coreClient.CompositeMapper = { + serializedName: "Scale", + type: { + name: "Composite", + className: "Scale", + modelProperties: { + minReplicas: { + serializedName: "minReplicas", + xmlName: "minReplicas", + type: { + name: "Number" + } + }, + maxReplicas: { + serializedName: "maxReplicas", + xmlName: "maxReplicas", + type: { + name: "Number" + } + }, + rules: { + serializedName: "rules", + xmlName: "rules", + xmlElementName: "ScaleRule", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ScaleRule" + } + } + } + } + } + } +}; + +export const ScaleRule: coreClient.CompositeMapper = { + serializedName: "ScaleRule", + type: { + name: "Composite", + className: "ScaleRule", + modelProperties: { + name: { + serializedName: "name", + xmlName: "name", + type: { + name: "String" + } + }, + azureQueue: { + serializedName: "azureQueue", + xmlName: "azureQueue", + type: { + name: "Composite", + className: "QueueScaleRule" + } + }, + custom: { + serializedName: "custom", + xmlName: "custom", + type: { + name: "Composite", + className: "CustomScaleRule" + } + }, + http: { + serializedName: "http", + xmlName: "http", + type: { + name: "Composite", + className: "HttpScaleRule" + } + } + } + } +}; + +export const QueueScaleRule: coreClient.CompositeMapper = { + serializedName: "QueueScaleRule", + type: { + name: "Composite", + className: "QueueScaleRule", + modelProperties: { + queueName: { + serializedName: "queueName", + xmlName: "queueName", + type: { + name: "String" + } + }, + queueLength: { + serializedName: "queueLength", + xmlName: "queueLength", + type: { + name: "Number" + } + }, + auth: { + serializedName: "auth", + xmlName: "auth", + xmlElementName: "ScaleRuleAuth", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ScaleRuleAuth" + } + } + } + } + } + } +}; + +export const ScaleRuleAuth: coreClient.CompositeMapper = { + serializedName: "ScaleRuleAuth", + type: { + name: "Composite", + className: "ScaleRuleAuth", + modelProperties: { + secretRef: { + serializedName: "secretRef", + xmlName: "secretRef", + type: { + name: "String" + } + }, + triggerParameter: { + serializedName: "triggerParameter", + xmlName: "triggerParameter", + type: { + name: "String" + } + } + } + } +}; + +export const CustomScaleRule: coreClient.CompositeMapper = { + serializedName: "CustomScaleRule", + type: { + name: "Composite", + className: "CustomScaleRule", + modelProperties: { + type: { + serializedName: "type", + xmlName: "type", + type: { + name: "String" + } + }, + metadata: { + serializedName: "metadata", + xmlName: "metadata", + type: { + name: "Dictionary", + value: { type: { name: "String" } } + } + }, + auth: { + serializedName: "auth", + xmlName: "auth", + xmlElementName: "ScaleRuleAuth", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ScaleRuleAuth" + } + } + } + } + } + } +}; + +export const HttpScaleRule: coreClient.CompositeMapper = { + serializedName: "HttpScaleRule", + type: { + name: "Composite", + className: "HttpScaleRule", + modelProperties: { + metadata: { + serializedName: "metadata", + xmlName: "metadata", + type: { + name: "Dictionary", + value: { type: { name: "String" } } + } + }, + auth: { + serializedName: "auth", + xmlName: "auth", + xmlElementName: "ScaleRuleAuth", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ScaleRuleAuth" + } + } + } + } + } + } +}; + +export const Dapr: coreClient.CompositeMapper = { + serializedName: "Dapr", + type: { + name: "Composite", + className: "Dapr", + modelProperties: { + enabled: { + serializedName: "enabled", + xmlName: "enabled", + type: { + name: "Boolean" + } + }, + appId: { + serializedName: "appId", + xmlName: "appId", + type: { + name: "String" + } + }, + appPort: { + serializedName: "appPort", + xmlName: "appPort", + type: { + name: "Number" + } + }, + components: { + serializedName: "components", + xmlName: "components", + xmlElementName: "DaprComponent", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "DaprComponent" + } + } + } + } + } + } +}; + +export const DaprComponent: coreClient.CompositeMapper = { + serializedName: "DaprComponent", + type: { + name: "Composite", + className: "DaprComponent", + modelProperties: { + name: { + serializedName: "name", + xmlName: "name", + type: { + name: "String" + } + }, + type: { + serializedName: "type", + xmlName: "type", + type: { + name: "String" + } + }, + version: { + serializedName: "version", + xmlName: "version", + type: { + name: "String" + } + }, + metadata: { + serializedName: "metadata", + xmlName: "metadata", + xmlElementName: "DaprMetadata", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "DaprMetadata" + } + } + } + } + } + } +}; + +export const DaprMetadata: coreClient.CompositeMapper = { + serializedName: "DaprMetadata", + type: { + name: "Composite", + className: "DaprMetadata", + modelProperties: { + name: { + serializedName: "name", + xmlName: "name", + type: { + name: "String" + } + }, + value: { + serializedName: "value", + xmlName: "value", + type: { + name: "String" + } + }, + secretRef: { + serializedName: "secretRef", + xmlName: "secretRef", + type: { + name: "String" + } + } + } + } +}; + +export const SecretsCollection: coreClient.CompositeMapper = { + serializedName: "SecretsCollection", + type: { + name: "Composite", + className: "SecretsCollection", + modelProperties: { + value: { + serializedName: "value", + required: true, + xmlName: "value", + xmlElementName: "ContainerAppSecret", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ContainerAppSecret" + } + } + } + } + } + } +}; + +export const ContainerAppSecret: coreClient.CompositeMapper = { + serializedName: "ContainerAppSecret", + type: { + name: "Composite", + className: "ContainerAppSecret", + modelProperties: { + name: { + serializedName: "name", + readOnly: true, + xmlName: "name", + type: { + name: "String" + } + }, + value: { + serializedName: "value", + readOnly: true, + xmlName: "value", + type: { + name: "String" + } + } + } + } +}; + +export const RevisionCollection: coreClient.CompositeMapper = { + serializedName: "RevisionCollection", + type: { + name: "Composite", + className: "RevisionCollection", + modelProperties: { + value: { + serializedName: "value", + required: true, + xmlName: "value", + xmlElementName: "Revision", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "Revision" + } + } + } + }, + nextLink: { + serializedName: "nextLink", + readOnly: true, + xmlName: "nextLink", + type: { + name: "String" + } + } + } + } +}; + export const DeletedWebAppCollection: coreClient.CompositeMapper = { serializedName: "DeletedWebAppCollection", type: { @@ -6216,6 +7041,58 @@ export const LogAnalyticsConfiguration: coreClient.CompositeMapper = { } }; +export const ContainerAppsConfiguration: coreClient.CompositeMapper = { + serializedName: "ContainerAppsConfiguration", + type: { + name: "Composite", + className: "ContainerAppsConfiguration", + modelProperties: { + daprAIInstrumentationKey: { + serializedName: "daprAIInstrumentationKey", + xmlName: "daprAIInstrumentationKey", + type: { + name: "String" + } + }, + platformReservedCidr: { + serializedName: "platformReservedCidr", + xmlName: "platformReservedCidr", + type: { + name: "String" + } + }, + platformReservedDnsIP: { + serializedName: "platformReservedDnsIP", + xmlName: "platformReservedDnsIP", + type: { + name: "String" + } + }, + controlPlaneSubnetResourceId: { + serializedName: "controlPlaneSubnetResourceId", + xmlName: "controlPlaneSubnetResourceId", + type: { + name: "String" + } + }, + appSubnetResourceId: { + serializedName: "appSubnetResourceId", + xmlName: "appSubnetResourceId", + type: { + name: "String" + } + }, + dockerBridgeCidr: { + serializedName: "dockerBridgeCidr", + xmlName: "dockerBridgeCidr", + type: { + name: "String" + } + } + } + } +}; + export const ApplicationStackCollection: coreClient.CompositeMapper = { serializedName: "ApplicationStackCollection", type: { @@ -7395,6 +8272,39 @@ export const ResourceNameAvailability: coreClient.CompositeMapper = { } }; +export const CustomHostnameSitesCollection: coreClient.CompositeMapper = { + serializedName: "CustomHostnameSitesCollection", + type: { + name: "Composite", + className: "CustomHostnameSitesCollection", + modelProperties: { + value: { + serializedName: "value", + required: true, + xmlName: "value", + xmlElementName: "CustomHostnameSites", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "CustomHostnameSites" + } + } + } + }, + nextLink: { + serializedName: "nextLink", + readOnly: true, + xmlName: "nextLink", + type: { + name: "String" + } + } + } + } +}; + export const DeploymentLocations: coreClient.CompositeMapper = { serializedName: "DeploymentLocations", type: { @@ -13107,6 +14017,147 @@ export const Certificate: coreClient.CompositeMapper = { } }; +export const ContainerApp: coreClient.CompositeMapper = { + serializedName: "ContainerApp", + type: { + name: "Composite", + className: "ContainerApp", + modelProperties: { + ...Resource.type.modelProperties, + provisioningState: { + serializedName: "properties.provisioningState", + readOnly: true, + xmlName: "properties.provisioningState", + type: { + name: "String" + } + }, + kubeEnvironmentId: { + serializedName: "properties.kubeEnvironmentId", + xmlName: "properties.kubeEnvironmentId", + type: { + name: "String" + } + }, + latestRevisionName: { + serializedName: "properties.latestRevisionName", + readOnly: true, + xmlName: "properties.latestRevisionName", + type: { + name: "String" + } + }, + latestRevisionFqdn: { + serializedName: "properties.latestRevisionFqdn", + readOnly: true, + xmlName: "properties.latestRevisionFqdn", + type: { + name: "String" + } + }, + configuration: { + serializedName: "properties.configuration", + xmlName: "properties.configuration", + type: { + name: "Composite", + className: "Configuration" + } + }, + template: { + serializedName: "properties.template", + xmlName: "properties.template", + type: { + name: "Composite", + className: "Template" + } + } + } + } +}; + +export const Revision: coreClient.CompositeMapper = { + serializedName: "Revision", + type: { + name: "Composite", + className: "Revision", + modelProperties: { + ...Resource.type.modelProperties, + createdTime: { + serializedName: "properties.createdTime", + readOnly: true, + xmlName: "properties.createdTime", + type: { + name: "DateTime" + } + }, + fqdn: { + serializedName: "properties.fqdn", + readOnly: true, + xmlName: "properties.fqdn", + type: { + name: "String" + } + }, + template: { + serializedName: "properties.template", + xmlName: "properties.template", + type: { + name: "Composite", + className: "Template" + } + }, + active: { + serializedName: "properties.active", + readOnly: true, + xmlName: "properties.active", + type: { + name: "Boolean" + } + }, + replicas: { + serializedName: "properties.replicas", + readOnly: true, + xmlName: "properties.replicas", + type: { + name: "Number" + } + }, + trafficWeight: { + serializedName: "properties.trafficWeight", + readOnly: true, + xmlName: "properties.trafficWeight", + type: { + name: "Number" + } + }, + provisioningError: { + serializedName: "properties.provisioningError", + readOnly: true, + xmlName: "properties.provisioningError", + type: { + name: "String" + } + }, + healthState: { + serializedName: "properties.healthState", + readOnly: true, + xmlName: "properties.healthState", + type: { + name: "String" + } + }, + provisioningState: { + serializedName: "properties.provisioningState", + readOnly: true, + xmlName: "properties.provisioningState", + type: { + name: "String" + } + } + } + } +}; + export const KubeEnvironment: coreClient.CompositeMapper = { serializedName: "KubeEnvironment", type: { @@ -13172,6 +14223,13 @@ export const KubeEnvironment: coreClient.CompositeMapper = { name: "String" } }, + environmentType: { + serializedName: "properties.environmentType", + xmlName: "properties.environmentType", + type: { + name: "String" + } + }, arcConfiguration: { serializedName: "properties.arcConfiguration", xmlName: "properties.arcConfiguration", @@ -13188,6 +14246,14 @@ export const KubeEnvironment: coreClient.CompositeMapper = { className: "AppLogsConfiguration" } }, + containerAppsConfiguration: { + serializedName: "properties.containerAppsConfiguration", + xmlName: "properties.containerAppsConfiguration", + type: { + name: "Composite", + className: "ContainerAppsConfiguration" + } + }, aksResourceID: { serializedName: "properties.aksResourceID", xmlName: "properties.aksResourceID", @@ -13346,11 +14412,17 @@ export const StaticSiteARMResource: coreClient.CompositeMapper = { }, provider: { serializedName: "properties.provider", - readOnly: true, xmlName: "properties.provider", type: { name: "String" } + }, + enterpriseGradeCdnStatus: { + serializedName: "properties.enterpriseGradeCdnStatus", + xmlName: "properties.enterpriseGradeCdnStatus", + type: { + name: "String" + } } } } @@ -15724,6 +16796,14 @@ export const KubeEnvironmentPatchResource: coreClient.CompositeMapper = { className: "AppLogsConfiguration" } }, + containerAppsConfiguration: { + serializedName: "properties.containerAppsConfiguration", + xmlName: "properties.containerAppsConfiguration", + type: { + name: "Composite", + className: "ContainerAppsConfiguration" + } + }, aksResourceID: { serializedName: "properties.aksResourceID", xmlName: "properties.aksResourceID", @@ -16405,6 +17485,63 @@ export const BillingMeter: coreClient.CompositeMapper = { } }; +export const Identifier: coreClient.CompositeMapper = { + serializedName: "Identifier", + type: { + name: "Composite", + className: "Identifier", + modelProperties: { + ...ProxyOnlyResource.type.modelProperties, + value: { + serializedName: "properties.id", + xmlName: "properties.id", + type: { + name: "String" + } + } + } + } +}; + +export const CustomHostnameSites: coreClient.CompositeMapper = { + serializedName: "CustomHostnameSites", + type: { + name: "Composite", + className: "CustomHostnameSites", + modelProperties: { + ...ProxyOnlyResource.type.modelProperties, + customHostname: { + serializedName: "properties.customHostname", + xmlName: "properties.customHostname", + type: { + name: "String" + } + }, + region: { + serializedName: "properties.region", + xmlName: "properties.region", + type: { + name: "String" + } + }, + siteResourceIds: { + serializedName: "properties.siteResourceIds", + xmlName: "properties.siteResourceIds", + xmlElementName: "Identifier", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "Identifier" + } + } + } + } + } + } +}; + export const GeoRegion: coreClient.CompositeMapper = { serializedName: "GeoRegion", type: { @@ -16440,24 +17577,6 @@ export const GeoRegion: coreClient.CompositeMapper = { } }; -export const Identifier: coreClient.CompositeMapper = { - serializedName: "Identifier", - type: { - name: "Composite", - className: "Identifier", - modelProperties: { - ...ProxyOnlyResource.type.modelProperties, - value: { - serializedName: "properties.id", - xmlName: "properties.id", - type: { - name: "String" - } - } - } - } -}; - export const PremierAddOnOffer: coreClient.CompositeMapper = { serializedName: "PremierAddOnOffer", type: { @@ -16937,11 +18056,17 @@ export const StaticSitePatchResource: coreClient.CompositeMapper = { }, provider: { serializedName: "properties.provider", - readOnly: true, xmlName: "properties.provider", type: { name: "String" } + }, + enterpriseGradeCdnStatus: { + serializedName: "properties.enterpriseGradeCdnStatus", + xmlName: "properties.enterpriseGradeCdnStatus", + type: { + name: "String" + } } } } diff --git a/sdk/appservice/arm-appservice/src/models/parameters.ts b/sdk/appservice/arm-appservice/src/models/parameters.ts index 08b736d1dfe5..f0be7cf969ed 100644 --- a/sdk/appservice/arm-appservice/src/models/parameters.ts +++ b/sdk/appservice/arm-appservice/src/models/parameters.ts @@ -37,6 +37,7 @@ import { VnetRoute as VnetRouteMapper, Certificate as CertificateMapper, CertificatePatchResource as CertificatePatchResourceMapper, + ContainerApp as ContainerAppMapper, KubeEnvironment as KubeEnvironmentMapper, KubeEnvironmentPatchResource as KubeEnvironmentPatchResourceMapper, User as UserMapper, @@ -131,7 +132,7 @@ export const subscriptionId: OperationURLParameter = { export const apiVersion: OperationQueryParameter = { parameterPath: "apiVersion", mapper: { - defaultValue: "2021-02-01", + defaultValue: "2021-03-01", isConstant: true, serializedName: "api-version", type: { @@ -630,6 +631,23 @@ export const certificateEnvelope1: OperationParameter = { mapper: CertificatePatchResourceMapper }; +export const containerAppEnvelope: OperationParameter = { + parameterPath: "containerAppEnvelope", + mapper: ContainerAppMapper +}; + +export const containerAppName: OperationURLParameter = { + parameterPath: "containerAppName", + mapper: { + serializedName: "containerAppName", + required: true, + xmlName: "containerAppName", + type: { + name: "String" + } + } +}; + export const location: OperationURLParameter = { parameterPath: "location", mapper: { diff --git a/sdk/appservice/arm-appservice/src/operations/containerApps.ts b/sdk/appservice/arm-appservice/src/operations/containerApps.ts new file mode 100644 index 000000000000..7dd6e415712a --- /dev/null +++ b/sdk/appservice/arm-appservice/src/operations/containerApps.ts @@ -0,0 +1,580 @@ +/* + * 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 { ContainerApps } from "../operationsInterfaces"; +import * as coreClient from "@azure/core-client"; +import * as Mappers from "../models/mappers"; +import * as Parameters from "../models/parameters"; +import { WebSiteManagementClient } from "../webSiteManagementClient"; +import { PollerLike, PollOperationState, LroEngine } from "@azure/core-lro"; +import { LroImpl } from "../lroImpl"; +import { + ContainerApp, + ContainerAppsListBySubscriptionNextOptionalParams, + ContainerAppsListBySubscriptionOptionalParams, + ContainerAppsListByResourceGroupNextOptionalParams, + ContainerAppsListByResourceGroupOptionalParams, + ContainerAppsListBySubscriptionResponse, + ContainerAppsListByResourceGroupResponse, + ContainerAppsGetOptionalParams, + ContainerAppsGetResponse, + ContainerAppsCreateOrUpdateOptionalParams, + ContainerAppsCreateOrUpdateResponse, + ContainerAppsDeleteOptionalParams, + ContainerAppsListSecretsOptionalParams, + ContainerAppsListSecretsResponse, + ContainerAppsListBySubscriptionNextResponse, + ContainerAppsListByResourceGroupNextResponse +} from "../models"; + +/// +/** Class containing ContainerApps operations. */ +export class ContainerAppsImpl implements ContainerApps { + private readonly client: WebSiteManagementClient; + + /** + * Initialize a new instance of the class ContainerApps class. + * @param client Reference to the service client + */ + constructor(client: WebSiteManagementClient) { + this.client = client; + } + + /** + * Get the Container Apps in a given subscription. + * @param options The options parameters. + */ + public listBySubscription( + options?: ContainerAppsListBySubscriptionOptionalParams + ): PagedAsyncIterableIterator { + const iter = this.listBySubscriptionPagingAll(options); + return { + next() { + return iter.next(); + }, + [Symbol.asyncIterator]() { + return this; + }, + byPage: () => { + return this.listBySubscriptionPagingPage(options); + } + }; + } + + private async *listBySubscriptionPagingPage( + options?: ContainerAppsListBySubscriptionOptionalParams + ): AsyncIterableIterator { + let result = await this._listBySubscription(options); + yield result.value || []; + let continuationToken = result.nextLink; + while (continuationToken) { + result = await this._listBySubscriptionNext(continuationToken, options); + continuationToken = result.nextLink; + yield result.value || []; + } + } + + private async *listBySubscriptionPagingAll( + options?: ContainerAppsListBySubscriptionOptionalParams + ): AsyncIterableIterator { + for await (const page of this.listBySubscriptionPagingPage(options)) { + yield* page; + } + } + + /** + * Get the Container Apps in a given resource group. + * @param resourceGroupName Name of the resource group to which the resource belongs. + * @param options The options parameters. + */ + public listByResourceGroup( + resourceGroupName: string, + options?: ContainerAppsListByResourceGroupOptionalParams + ): PagedAsyncIterableIterator { + const iter = this.listByResourceGroupPagingAll(resourceGroupName, options); + return { + next() { + return iter.next(); + }, + [Symbol.asyncIterator]() { + return this; + }, + byPage: () => { + return this.listByResourceGroupPagingPage(resourceGroupName, options); + } + }; + } + + private async *listByResourceGroupPagingPage( + resourceGroupName: string, + options?: ContainerAppsListByResourceGroupOptionalParams + ): AsyncIterableIterator { + let result = await this._listByResourceGroup(resourceGroupName, options); + yield result.value || []; + let continuationToken = result.nextLink; + while (continuationToken) { + result = await this._listByResourceGroupNext( + resourceGroupName, + continuationToken, + options + ); + continuationToken = result.nextLink; + yield result.value || []; + } + } + + private async *listByResourceGroupPagingAll( + resourceGroupName: string, + options?: ContainerAppsListByResourceGroupOptionalParams + ): AsyncIterableIterator { + for await (const page of this.listByResourceGroupPagingPage( + resourceGroupName, + options + )) { + yield* page; + } + } + + /** + * Get the Container Apps in a given subscription. + * @param options The options parameters. + */ + private _listBySubscription( + options?: ContainerAppsListBySubscriptionOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { options }, + listBySubscriptionOperationSpec + ); + } + + /** + * Get the Container Apps in a given resource group. + * @param resourceGroupName Name of the resource group to which the resource belongs. + * @param options The options parameters. + */ + private _listByResourceGroup( + resourceGroupName: string, + options?: ContainerAppsListByResourceGroupOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, options }, + listByResourceGroupOperationSpec + ); + } + + /** + * Get the properties of a Container App. + * @param resourceGroupName Name of the resource group to which the resource belongs. + * @param name Name of the Container App. + * @param options The options parameters. + */ + get( + resourceGroupName: string, + name: string, + options?: ContainerAppsGetOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, name, options }, + getOperationSpec + ); + } + + /** + * Description for Create or update a Container App. + * @param resourceGroupName Name of the resource group to which the resource belongs. + * @param name Name of the Container App. + * @param containerAppEnvelope Container App. + * @param options The options parameters. + */ + async beginCreateOrUpdate( + resourceGroupName: string, + name: string, + containerAppEnvelope: ContainerApp, + options?: ContainerAppsCreateOrUpdateOptionalParams + ): Promise< + PollerLike< + PollOperationState, + ContainerAppsCreateOrUpdateResponse + > + > { + const directSendOperation = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ): Promise => { + return this.client.sendOperationRequest(args, spec); + }; + const sendOperation = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ) => { + let currentRawResponse: + | coreClient.FullOperationResponse + | undefined = undefined; + const providedCallback = args.options?.onResponse; + const callback: coreClient.RawResponseCallback = ( + rawResponse: coreClient.FullOperationResponse, + flatResponse: unknown + ) => { + currentRawResponse = rawResponse; + providedCallback?.(rawResponse, flatResponse); + }; + const updatedArgs = { + ...args, + options: { + ...args.options, + onResponse: callback + } + }; + const flatResponse = await directSendOperation(updatedArgs, spec); + return { + flatResponse, + rawResponse: { + statusCode: currentRawResponse!.status, + body: currentRawResponse!.parsedBody, + headers: currentRawResponse!.headers.toJSON() + } + }; + }; + + const lro = new LroImpl( + sendOperation, + { resourceGroupName, name, containerAppEnvelope, options }, + createOrUpdateOperationSpec + ); + return new LroEngine(lro, { + resumeFrom: options?.resumeFrom, + intervalInMs: options?.updateIntervalInMs + }); + } + + /** + * Description for Create or update a Container App. + * @param resourceGroupName Name of the resource group to which the resource belongs. + * @param name Name of the Container App. + * @param containerAppEnvelope Container App. + * @param options The options parameters. + */ + async beginCreateOrUpdateAndWait( + resourceGroupName: string, + name: string, + containerAppEnvelope: ContainerApp, + options?: ContainerAppsCreateOrUpdateOptionalParams + ): Promise { + const poller = await this.beginCreateOrUpdate( + resourceGroupName, + name, + containerAppEnvelope, + options + ); + return poller.pollUntilDone(); + } + + /** + * Description for Delete a Container App. + * @param resourceGroupName Name of the resource group to which the resource belongs. + * @param name Name of the Container App. + * @param options The options parameters. + */ + async beginDelete( + resourceGroupName: string, + name: string, + options?: ContainerAppsDeleteOptionalParams + ): Promise, void>> { + const directSendOperation = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ): Promise => { + return this.client.sendOperationRequest(args, spec); + }; + const sendOperation = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ) => { + let currentRawResponse: + | coreClient.FullOperationResponse + | undefined = undefined; + const providedCallback = args.options?.onResponse; + const callback: coreClient.RawResponseCallback = ( + rawResponse: coreClient.FullOperationResponse, + flatResponse: unknown + ) => { + currentRawResponse = rawResponse; + providedCallback?.(rawResponse, flatResponse); + }; + const updatedArgs = { + ...args, + options: { + ...args.options, + onResponse: callback + } + }; + const flatResponse = await directSendOperation(updatedArgs, spec); + return { + flatResponse, + rawResponse: { + statusCode: currentRawResponse!.status, + body: currentRawResponse!.parsedBody, + headers: currentRawResponse!.headers.toJSON() + } + }; + }; + + const lro = new LroImpl( + sendOperation, + { resourceGroupName, name, options }, + deleteOperationSpec + ); + return new LroEngine(lro, { + resumeFrom: options?.resumeFrom, + intervalInMs: options?.updateIntervalInMs + }); + } + + /** + * Description for Delete a Container App. + * @param resourceGroupName Name of the resource group to which the resource belongs. + * @param name Name of the Container App. + * @param options The options parameters. + */ + async beginDeleteAndWait( + resourceGroupName: string, + name: string, + options?: ContainerAppsDeleteOptionalParams + ): Promise { + const poller = await this.beginDelete(resourceGroupName, name, options); + return poller.pollUntilDone(); + } + + /** + * List secrets for a container app + * @param name Name of the Container App. + * @param options The options parameters. + */ + listSecrets( + name: string, + options?: ContainerAppsListSecretsOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { name, options }, + listSecretsOperationSpec + ); + } + + /** + * ListBySubscriptionNext + * @param nextLink The nextLink from the previous successful call to the ListBySubscription method. + * @param options The options parameters. + */ + private _listBySubscriptionNext( + nextLink: string, + options?: ContainerAppsListBySubscriptionNextOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { nextLink, options }, + listBySubscriptionNextOperationSpec + ); + } + + /** + * ListByResourceGroupNext + * @param resourceGroupName Name of the resource group to which the resource belongs. + * @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?: ContainerAppsListByResourceGroupNextOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, nextLink, options }, + listByResourceGroupNextOperationSpec + ); + } +} +// Operation Specifications +const serializer = coreClient.createSerializer(Mappers, /* isXml */ false); + +const listBySubscriptionOperationSpec: coreClient.OperationSpec = { + path: "/subscriptions/{subscriptionId}/providers/Microsoft.Web/containerApps", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.ContainerAppCollection + }, + default: { + bodyMapper: Mappers.DefaultErrorResponse + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [Parameters.$host, Parameters.subscriptionId], + headerParameters: [Parameters.accept], + serializer +}; +const listByResourceGroupOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/containerApps", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.ContainerAppCollection + }, + default: { + bodyMapper: Mappers.DefaultErrorResponse + } + }, + 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.Web/containerApps/{name}", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.ContainerApp + }, + 404: { + isError: true + }, + default: { + bodyMapper: Mappers.DefaultErrorResponse + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.name + ], + headerParameters: [Parameters.accept], + serializer +}; +const createOrUpdateOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/containerApps/{name}", + httpMethod: "PUT", + responses: { + 200: { + bodyMapper: Mappers.ContainerApp + }, + 201: { + bodyMapper: Mappers.ContainerApp + }, + 202: { + bodyMapper: Mappers.ContainerApp + }, + 204: { + bodyMapper: Mappers.ContainerApp + }, + default: { + bodyMapper: Mappers.DefaultErrorResponse + } + }, + requestBody: Parameters.containerAppEnvelope, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.name + ], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", + serializer +}; +const deleteOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/containerApps/{name}", + httpMethod: "DELETE", + responses: { + 200: {}, + 201: {}, + 202: {}, + 204: {}, + default: { + bodyMapper: Mappers.DefaultErrorResponse + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.name + ], + headerParameters: [Parameters.accept], + serializer +}; +const listSecretsOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/providers/Microsoft.Web/containerApps/{name}/listSecrets", + httpMethod: "POST", + responses: { + 200: { + bodyMapper: Mappers.SecretsCollection + }, + default: { + bodyMapper: Mappers.DefaultErrorResponse + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [Parameters.$host, Parameters.subscriptionId, Parameters.name], + headerParameters: [Parameters.accept], + serializer +}; +const listBySubscriptionNextOperationSpec: coreClient.OperationSpec = { + path: "{nextLink}", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.ContainerAppCollection + }, + default: { + bodyMapper: Mappers.DefaultErrorResponse + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.nextLink + ], + headerParameters: [Parameters.accept], + serializer +}; +const listByResourceGroupNextOperationSpec: coreClient.OperationSpec = { + path: "{nextLink}", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.ContainerAppCollection + }, + default: { + bodyMapper: Mappers.DefaultErrorResponse + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.nextLink + ], + headerParameters: [Parameters.accept], + serializer +}; diff --git a/sdk/appservice/arm-appservice/src/operations/containerAppsRevisions.ts b/sdk/appservice/arm-appservice/src/operations/containerAppsRevisions.ts new file mode 100644 index 000000000000..5fcaebcbe77e --- /dev/null +++ b/sdk/appservice/arm-appservice/src/operations/containerAppsRevisions.ts @@ -0,0 +1,356 @@ +/* + * 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 { ContainerAppsRevisions } from "../operationsInterfaces"; +import * as coreClient from "@azure/core-client"; +import * as Mappers from "../models/mappers"; +import * as Parameters from "../models/parameters"; +import { WebSiteManagementClient } from "../webSiteManagementClient"; +import { + Revision, + ContainerAppsRevisionsListRevisionsNextOptionalParams, + ContainerAppsRevisionsListRevisionsOptionalParams, + ContainerAppsRevisionsListRevisionsResponse, + ContainerAppsRevisionsGetRevisionOptionalParams, + ContainerAppsRevisionsGetRevisionResponse, + ContainerAppsRevisionsActivateRevisionOptionalParams, + ContainerAppsRevisionsDeactivateRevisionOptionalParams, + ContainerAppsRevisionsRestartRevisionOptionalParams, + ContainerAppsRevisionsListRevisionsNextResponse +} from "../models"; + +/// +/** Class containing ContainerAppsRevisions operations. */ +export class ContainerAppsRevisionsImpl implements ContainerAppsRevisions { + private readonly client: WebSiteManagementClient; + + /** + * Initialize a new instance of the class ContainerAppsRevisions class. + * @param client Reference to the service client + */ + constructor(client: WebSiteManagementClient) { + this.client = client; + } + + /** + * Get the Revisions for a given Container App. + * @param resourceGroupName Name of the resource group to which the resource belongs. + * @param containerAppName Name of the Container App for which Revisions are needed. + * @param options The options parameters. + */ + public listRevisions( + resourceGroupName: string, + containerAppName: string, + options?: ContainerAppsRevisionsListRevisionsOptionalParams + ): PagedAsyncIterableIterator { + const iter = this.listRevisionsPagingAll( + resourceGroupName, + containerAppName, + options + ); + return { + next() { + return iter.next(); + }, + [Symbol.asyncIterator]() { + return this; + }, + byPage: () => { + return this.listRevisionsPagingPage( + resourceGroupName, + containerAppName, + options + ); + } + }; + } + + private async *listRevisionsPagingPage( + resourceGroupName: string, + containerAppName: string, + options?: ContainerAppsRevisionsListRevisionsOptionalParams + ): AsyncIterableIterator { + let result = await this._listRevisions( + resourceGroupName, + containerAppName, + options + ); + yield result.value || []; + let continuationToken = result.nextLink; + while (continuationToken) { + result = await this._listRevisionsNext( + resourceGroupName, + containerAppName, + continuationToken, + options + ); + continuationToken = result.nextLink; + yield result.value || []; + } + } + + private async *listRevisionsPagingAll( + resourceGroupName: string, + containerAppName: string, + options?: ContainerAppsRevisionsListRevisionsOptionalParams + ): AsyncIterableIterator { + for await (const page of this.listRevisionsPagingPage( + resourceGroupName, + containerAppName, + options + )) { + yield* page; + } + } + + /** + * Get the Revisions for a given Container App. + * @param resourceGroupName Name of the resource group to which the resource belongs. + * @param containerAppName Name of the Container App for which Revisions are needed. + * @param options The options parameters. + */ + private _listRevisions( + resourceGroupName: string, + containerAppName: string, + options?: ContainerAppsRevisionsListRevisionsOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, containerAppName, options }, + listRevisionsOperationSpec + ); + } + + /** + * Get a revision of a Container App. + * @param resourceGroupName Name of the resource group to which the resource belongs. + * @param containerAppName Name of the Container App. + * @param name Name of the Container App Revision. + * @param options The options parameters. + */ + getRevision( + resourceGroupName: string, + containerAppName: string, + name: string, + options?: ContainerAppsRevisionsGetRevisionOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, containerAppName, name, options }, + getRevisionOperationSpec + ); + } + + /** + * Activates a revision for a Container App + * @param resourceGroupName Name of the resource group to which the resource belongs. + * @param containerAppName Name of the Container App. + * @param name Name of the Container App Revision to activate + * @param options The options parameters. + */ + activateRevision( + resourceGroupName: string, + containerAppName: string, + name: string, + options?: ContainerAppsRevisionsActivateRevisionOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, containerAppName, name, options }, + activateRevisionOperationSpec + ); + } + + /** + * Deactivates a revision for a Container App + * @param resourceGroupName Name of the resource group to which the resource belongs. + * @param containerAppName Name of the Container App. + * @param name Name of the Container App Revision to deactivate + * @param options The options parameters. + */ + deactivateRevision( + resourceGroupName: string, + containerAppName: string, + name: string, + options?: ContainerAppsRevisionsDeactivateRevisionOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, containerAppName, name, options }, + deactivateRevisionOperationSpec + ); + } + + /** + * Restarts a revision for a Container App + * @param resourceGroupName Name of the resource group to which the resource belongs. + * @param containerAppName Name of the Container App. + * @param name Name of the Container App Revision to restart + * @param options The options parameters. + */ + restartRevision( + resourceGroupName: string, + containerAppName: string, + name: string, + options?: ContainerAppsRevisionsRestartRevisionOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, containerAppName, name, options }, + restartRevisionOperationSpec + ); + } + + /** + * ListRevisionsNext + * @param resourceGroupName Name of the resource group to which the resource belongs. + * @param containerAppName Name of the Container App for which Revisions are needed. + * @param nextLink The nextLink from the previous successful call to the ListRevisions method. + * @param options The options parameters. + */ + private _listRevisionsNext( + resourceGroupName: string, + containerAppName: string, + nextLink: string, + options?: ContainerAppsRevisionsListRevisionsNextOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, containerAppName, nextLink, options }, + listRevisionsNextOperationSpec + ); + } +} +// Operation Specifications +const serializer = coreClient.createSerializer(Mappers, /* isXml */ false); + +const listRevisionsOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/containerApps/{containerAppName}/revisions", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.RevisionCollection + }, + default: { + bodyMapper: Mappers.DefaultErrorResponse + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.containerAppName + ], + headerParameters: [Parameters.accept], + serializer +}; +const getRevisionOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/containerApps/{containerAppName}/revisions/{name}", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.Revision + }, + default: { + bodyMapper: Mappers.DefaultErrorResponse + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.name, + Parameters.containerAppName + ], + headerParameters: [Parameters.accept], + serializer +}; +const activateRevisionOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/containerApps/{containerAppName}/revisions/{name}/activate", + httpMethod: "POST", + responses: { + 200: {}, + default: { + bodyMapper: Mappers.DefaultErrorResponse + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.name, + Parameters.containerAppName + ], + headerParameters: [Parameters.accept], + serializer +}; +const deactivateRevisionOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/containerApps/{containerAppName}/revisions/{name}/deactivate", + httpMethod: "POST", + responses: { + 200: {}, + default: { + bodyMapper: Mappers.DefaultErrorResponse + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.name, + Parameters.containerAppName + ], + headerParameters: [Parameters.accept], + serializer +}; +const restartRevisionOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/containerApps/{containerAppName}/revisions/{name}/restart", + httpMethod: "POST", + responses: { + 200: {}, + default: { + bodyMapper: Mappers.DefaultErrorResponse + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.name, + Parameters.containerAppName + ], + headerParameters: [Parameters.accept], + serializer +}; +const listRevisionsNextOperationSpec: coreClient.OperationSpec = { + path: "{nextLink}", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.RevisionCollection + }, + default: { + bodyMapper: Mappers.DefaultErrorResponse + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.nextLink, + Parameters.containerAppName + ], + headerParameters: [Parameters.accept], + serializer +}; diff --git a/sdk/appservice/arm-appservice/src/operations/domains.ts b/sdk/appservice/arm-appservice/src/operations/domains.ts index 2d508976620a..0fcf3a26f467 100644 --- a/sdk/appservice/arm-appservice/src/operations/domains.ts +++ b/sdk/appservice/arm-appservice/src/operations/domains.ts @@ -51,6 +51,8 @@ import { DomainsUpdateOwnershipIdentifierOptionalParams, DomainsUpdateOwnershipIdentifierResponse, DomainsRenewOptionalParams, + DomainsTransferOutOptionalParams, + DomainsTransferOutResponse, DomainsListNextResponse, DomainsListRecommendationsNextResponse, DomainsListByResourceGroupNextResponse, @@ -628,6 +630,23 @@ export class DomainsImpl implements Domains { ); } + /** + * Transfer out domain to another registrar + * @param resourceGroupName Name of the resource group to which the resource belongs. + * @param domainName Name of domain. + * @param options The options parameters. + */ + transferOut( + resourceGroupName: string, + domainName: string, + options?: DomainsTransferOutOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, domainName, options }, + transferOutOperationSpec + ); + } + /** * ListNext * @param nextLink The nextLink from the previous successful call to the List method. @@ -1035,6 +1054,31 @@ const renewOperationSpec: coreClient.OperationSpec = { headerParameters: [Parameters.accept], serializer }; +const transferOutOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DomainRegistration/domains/{domainName}/transferOut", + httpMethod: "PUT", + responses: { + 200: { + bodyMapper: Mappers.Domain + }, + 400: { + isError: true + }, + default: { + bodyMapper: Mappers.DefaultErrorResponse + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.domainName + ], + headerParameters: [Parameters.accept], + serializer +}; const listNextOperationSpec: coreClient.OperationSpec = { path: "{nextLink}", httpMethod: "GET", diff --git a/sdk/appservice/arm-appservice/src/operations/index.ts b/sdk/appservice/arm-appservice/src/operations/index.ts index 9898e6bd474c..c51df10f8901 100644 --- a/sdk/appservice/arm-appservice/src/operations/index.ts +++ b/sdk/appservice/arm-appservice/src/operations/index.ts @@ -15,6 +15,8 @@ export * from "./domainRegistrationProvider"; export * from "./appServiceEnvironments"; export * from "./appServicePlans"; export * from "./certificates"; +export * from "./containerApps"; +export * from "./containerAppsRevisions"; export * from "./deletedWebApps"; export * from "./diagnostics"; export * from "./global"; diff --git a/sdk/appservice/arm-appservice/src/operations/webApps.ts b/sdk/appservice/arm-appservice/src/operations/webApps.ts index d5b91f1d2d73..9d0ce117cf5d 100644 --- a/sdk/appservice/arm-appservice/src/operations/webApps.ts +++ b/sdk/appservice/arm-appservice/src/operations/webApps.ts @@ -211,6 +211,8 @@ import { WebAppsUpdateAuthSettingsResponse, WebAppsGetAuthSettingsOptionalParams, WebAppsGetAuthSettingsResponse, + WebAppsGetAuthSettingsV2WithoutSecretsOptionalParams, + WebAppsGetAuthSettingsV2WithoutSecretsResponse, SiteAuthSettingsV2, WebAppsUpdateAuthSettingsV2OptionalParams, WebAppsUpdateAuthSettingsV2Response, @@ -6287,6 +6289,23 @@ export class WebAppsImpl implements WebApps { ); } + /** + * Description for Gets site's Authentication / Authorization settings for apps via the V2 format + * @param resourceGroupName Name of the resource group to which the resource belongs. + * @param name Name of the app. + * @param options The options parameters. + */ + getAuthSettingsV2WithoutSecrets( + resourceGroupName: string, + name: string, + options?: WebAppsGetAuthSettingsV2WithoutSecretsOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, name, options }, + getAuthSettingsV2WithoutSecretsOperationSpec + ); + } + /** * Description for Updates site's Authentication / Authorization settings for apps via the V2 format * @param resourceGroupName Name of the resource group to which the resource belongs. @@ -18156,6 +18175,28 @@ const getAuthSettingsOperationSpec: coreClient.OperationSpec = { headerParameters: [Parameters.accept], serializer }; +const getAuthSettingsV2WithoutSecretsOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/config/authsettingsV2", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.SiteAuthSettingsV2 + }, + default: { + bodyMapper: Mappers.DefaultErrorResponse + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.name + ], + headerParameters: [Parameters.accept], + serializer +}; const updateAuthSettingsV2OperationSpec: coreClient.OperationSpec = { path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/config/authsettingsV2", diff --git a/sdk/appservice/arm-appservice/src/operationsInterfaces/containerApps.ts b/sdk/appservice/arm-appservice/src/operationsInterfaces/containerApps.ts new file mode 100644 index 000000000000..82620cbfab63 --- /dev/null +++ b/sdk/appservice/arm-appservice/src/operationsInterfaces/containerApps.ts @@ -0,0 +1,116 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +import { PagedAsyncIterableIterator } from "@azure/core-paging"; +import { PollerLike, PollOperationState } from "@azure/core-lro"; +import { + ContainerApp, + ContainerAppsListBySubscriptionOptionalParams, + ContainerAppsListByResourceGroupOptionalParams, + ContainerAppsGetOptionalParams, + ContainerAppsGetResponse, + ContainerAppsCreateOrUpdateOptionalParams, + ContainerAppsCreateOrUpdateResponse, + ContainerAppsDeleteOptionalParams, + ContainerAppsListSecretsOptionalParams, + ContainerAppsListSecretsResponse +} from "../models"; + +/// +/** Interface representing a ContainerApps. */ +export interface ContainerApps { + /** + * Get the Container Apps in a given subscription. + * @param options The options parameters. + */ + listBySubscription( + options?: ContainerAppsListBySubscriptionOptionalParams + ): PagedAsyncIterableIterator; + /** + * Get the Container Apps in a given resource group. + * @param resourceGroupName Name of the resource group to which the resource belongs. + * @param options The options parameters. + */ + listByResourceGroup( + resourceGroupName: string, + options?: ContainerAppsListByResourceGroupOptionalParams + ): PagedAsyncIterableIterator; + /** + * Get the properties of a Container App. + * @param resourceGroupName Name of the resource group to which the resource belongs. + * @param name Name of the Container App. + * @param options The options parameters. + */ + get( + resourceGroupName: string, + name: string, + options?: ContainerAppsGetOptionalParams + ): Promise; + /** + * Description for Create or update a Container App. + * @param resourceGroupName Name of the resource group to which the resource belongs. + * @param name Name of the Container App. + * @param containerAppEnvelope Container App. + * @param options The options parameters. + */ + beginCreateOrUpdate( + resourceGroupName: string, + name: string, + containerAppEnvelope: ContainerApp, + options?: ContainerAppsCreateOrUpdateOptionalParams + ): Promise< + PollerLike< + PollOperationState, + ContainerAppsCreateOrUpdateResponse + > + >; + /** + * Description for Create or update a Container App. + * @param resourceGroupName Name of the resource group to which the resource belongs. + * @param name Name of the Container App. + * @param containerAppEnvelope Container App. + * @param options The options parameters. + */ + beginCreateOrUpdateAndWait( + resourceGroupName: string, + name: string, + containerAppEnvelope: ContainerApp, + options?: ContainerAppsCreateOrUpdateOptionalParams + ): Promise; + /** + * Description for Delete a Container App. + * @param resourceGroupName Name of the resource group to which the resource belongs. + * @param name Name of the Container App. + * @param options The options parameters. + */ + beginDelete( + resourceGroupName: string, + name: string, + options?: ContainerAppsDeleteOptionalParams + ): Promise, void>>; + /** + * Description for Delete a Container App. + * @param resourceGroupName Name of the resource group to which the resource belongs. + * @param name Name of the Container App. + * @param options The options parameters. + */ + beginDeleteAndWait( + resourceGroupName: string, + name: string, + options?: ContainerAppsDeleteOptionalParams + ): Promise; + /** + * List secrets for a container app + * @param name Name of the Container App. + * @param options The options parameters. + */ + listSecrets( + name: string, + options?: ContainerAppsListSecretsOptionalParams + ): Promise; +} diff --git a/sdk/appservice/arm-appservice/src/operationsInterfaces/containerAppsRevisions.ts b/sdk/appservice/arm-appservice/src/operationsInterfaces/containerAppsRevisions.ts new file mode 100644 index 000000000000..a6e571f0d820 --- /dev/null +++ b/sdk/appservice/arm-appservice/src/operationsInterfaces/containerAppsRevisions.ts @@ -0,0 +1,86 @@ +/* + * 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 { + Revision, + ContainerAppsRevisionsListRevisionsOptionalParams, + ContainerAppsRevisionsGetRevisionOptionalParams, + ContainerAppsRevisionsGetRevisionResponse, + ContainerAppsRevisionsActivateRevisionOptionalParams, + ContainerAppsRevisionsDeactivateRevisionOptionalParams, + ContainerAppsRevisionsRestartRevisionOptionalParams +} from "../models"; + +/// +/** Interface representing a ContainerAppsRevisions. */ +export interface ContainerAppsRevisions { + /** + * Get the Revisions for a given Container App. + * @param resourceGroupName Name of the resource group to which the resource belongs. + * @param containerAppName Name of the Container App for which Revisions are needed. + * @param options The options parameters. + */ + listRevisions( + resourceGroupName: string, + containerAppName: string, + options?: ContainerAppsRevisionsListRevisionsOptionalParams + ): PagedAsyncIterableIterator; + /** + * Get a revision of a Container App. + * @param resourceGroupName Name of the resource group to which the resource belongs. + * @param containerAppName Name of the Container App. + * @param name Name of the Container App Revision. + * @param options The options parameters. + */ + getRevision( + resourceGroupName: string, + containerAppName: string, + name: string, + options?: ContainerAppsRevisionsGetRevisionOptionalParams + ): Promise; + /** + * Activates a revision for a Container App + * @param resourceGroupName Name of the resource group to which the resource belongs. + * @param containerAppName Name of the Container App. + * @param name Name of the Container App Revision to activate + * @param options The options parameters. + */ + activateRevision( + resourceGroupName: string, + containerAppName: string, + name: string, + options?: ContainerAppsRevisionsActivateRevisionOptionalParams + ): Promise; + /** + * Deactivates a revision for a Container App + * @param resourceGroupName Name of the resource group to which the resource belongs. + * @param containerAppName Name of the Container App. + * @param name Name of the Container App Revision to deactivate + * @param options The options parameters. + */ + deactivateRevision( + resourceGroupName: string, + containerAppName: string, + name: string, + options?: ContainerAppsRevisionsDeactivateRevisionOptionalParams + ): Promise; + /** + * Restarts a revision for a Container App + * @param resourceGroupName Name of the resource group to which the resource belongs. + * @param containerAppName Name of the Container App. + * @param name Name of the Container App Revision to restart + * @param options The options parameters. + */ + restartRevision( + resourceGroupName: string, + containerAppName: string, + name: string, + options?: ContainerAppsRevisionsRestartRevisionOptionalParams + ): Promise; +} diff --git a/sdk/appservice/arm-appservice/src/operationsInterfaces/domains.ts b/sdk/appservice/arm-appservice/src/operationsInterfaces/domains.ts index fcbd17a6f30e..5afd75680b86 100644 --- a/sdk/appservice/arm-appservice/src/operationsInterfaces/domains.ts +++ b/sdk/appservice/arm-appservice/src/operationsInterfaces/domains.ts @@ -36,7 +36,9 @@ import { DomainsDeleteOwnershipIdentifierOptionalParams, DomainsUpdateOwnershipIdentifierOptionalParams, DomainsUpdateOwnershipIdentifierResponse, - DomainsRenewOptionalParams + DomainsRenewOptionalParams, + DomainsTransferOutOptionalParams, + DomainsTransferOutResponse } from "../models"; /// @@ -227,4 +229,15 @@ export interface Domains { domainName: string, options?: DomainsRenewOptionalParams ): Promise; + /** + * Transfer out domain to another registrar + * @param resourceGroupName Name of the resource group to which the resource belongs. + * @param domainName Name of domain. + * @param options The options parameters. + */ + transferOut( + resourceGroupName: string, + domainName: string, + options?: DomainsTransferOutOptionalParams + ): Promise; } diff --git a/sdk/appservice/arm-appservice/src/operationsInterfaces/index.ts b/sdk/appservice/arm-appservice/src/operationsInterfaces/index.ts index 9898e6bd474c..c51df10f8901 100644 --- a/sdk/appservice/arm-appservice/src/operationsInterfaces/index.ts +++ b/sdk/appservice/arm-appservice/src/operationsInterfaces/index.ts @@ -15,6 +15,8 @@ export * from "./domainRegistrationProvider"; export * from "./appServiceEnvironments"; export * from "./appServicePlans"; export * from "./certificates"; +export * from "./containerApps"; +export * from "./containerAppsRevisions"; export * from "./deletedWebApps"; export * from "./diagnostics"; export * from "./global"; diff --git a/sdk/appservice/arm-appservice/src/operationsInterfaces/webApps.ts b/sdk/appservice/arm-appservice/src/operationsInterfaces/webApps.ts index 2a5fb28bf690..c8f1715d7f59 100644 --- a/sdk/appservice/arm-appservice/src/operationsInterfaces/webApps.ts +++ b/sdk/appservice/arm-appservice/src/operationsInterfaces/webApps.ts @@ -137,6 +137,8 @@ import { WebAppsUpdateAuthSettingsResponse, WebAppsGetAuthSettingsOptionalParams, WebAppsGetAuthSettingsResponse, + WebAppsGetAuthSettingsV2WithoutSecretsOptionalParams, + WebAppsGetAuthSettingsV2WithoutSecretsResponse, SiteAuthSettingsV2, WebAppsUpdateAuthSettingsV2OptionalParams, WebAppsUpdateAuthSettingsV2Response, @@ -1807,6 +1809,17 @@ export interface WebApps { name: string, options?: WebAppsGetAuthSettingsOptionalParams ): Promise; + /** + * Description for Gets site's Authentication / Authorization settings for apps via the V2 format + * @param resourceGroupName Name of the resource group to which the resource belongs. + * @param name Name of the app. + * @param options The options parameters. + */ + getAuthSettingsV2WithoutSecrets( + resourceGroupName: string, + name: string, + options?: WebAppsGetAuthSettingsV2WithoutSecretsOptionalParams + ): Promise; /** * Description for Updates site's Authentication / Authorization settings for apps via the V2 format * @param resourceGroupName Name of the resource group to which the resource belongs. diff --git a/sdk/appservice/arm-appservice/src/webSiteManagementClient.ts b/sdk/appservice/arm-appservice/src/webSiteManagementClient.ts index 73a92e543ab4..ba39a5f606f5 100644 --- a/sdk/appservice/arm-appservice/src/webSiteManagementClient.ts +++ b/sdk/appservice/arm-appservice/src/webSiteManagementClient.ts @@ -19,6 +19,8 @@ import { AppServiceEnvironmentsImpl, AppServicePlansImpl, CertificatesImpl, + ContainerAppsImpl, + ContainerAppsRevisionsImpl, DeletedWebAppsImpl, DiagnosticsImpl, GlobalImpl, @@ -39,6 +41,8 @@ import { AppServiceEnvironments, AppServicePlans, Certificates, + ContainerApps, + ContainerAppsRevisions, DeletedWebApps, Diagnostics, Global, @@ -59,6 +63,9 @@ import { BillingMeter, ListBillingMetersNextOptionalParams, ListBillingMetersOptionalParams, + CustomHostnameSites, + ListCustomHostNameSitesNextOptionalParams, + ListCustomHostNameSitesOptionalParams, GeoRegion, ListGeoRegionsNextOptionalParams, ListGeoRegionsOptionalParams, @@ -83,6 +90,7 @@ import { CheckNameResourceTypes, CheckNameAvailabilityOptionalParams, CheckNameAvailabilityResponse, + ListCustomHostNameSitesResponse, GetSubscriptionDeploymentLocationsOptionalParams, GetSubscriptionDeploymentLocationsResponse, ListGeoRegionsResponse, @@ -101,6 +109,7 @@ import { ValidateMoveOptionalParams, ListSourceControlsNextResponse, ListBillingMetersNextResponse, + ListCustomHostNameSitesNextResponse, ListGeoRegionsNextResponse, ListSiteIdentifiersAssignedToHostNameNextResponse, ListPremierAddOnOffersNextResponse @@ -140,7 +149,7 @@ export class WebSiteManagementClient extends coreClient.ServiceClient { credential: credentials }; - const packageDetails = `azsdk-js-arm-appservice/10.0.0`; + const packageDetails = `azsdk-js-arm-appservice/11.0.0`; const userAgentPrefix = options.userAgentOptions && options.userAgentOptions.userAgentPrefix ? `${options.userAgentOptions.userAgentPrefix} ${packageDetails}` @@ -163,7 +172,7 @@ export class WebSiteManagementClient extends coreClient.ServiceClient { // Assigning values to Constant parameters this.$host = options.$host || "https://management.azure.com"; - this.apiVersion = options.apiVersion || "2021-02-01"; + this.apiVersion = options.apiVersion || "2021-03-01"; this.appServiceCertificateOrders = new AppServiceCertificateOrdersImpl( this ); @@ -179,6 +188,8 @@ export class WebSiteManagementClient extends coreClient.ServiceClient { this.appServiceEnvironments = new AppServiceEnvironmentsImpl(this); this.appServicePlans = new AppServicePlansImpl(this); this.certificates = new CertificatesImpl(this); + this.containerApps = new ContainerAppsImpl(this); + this.containerAppsRevisions = new ContainerAppsRevisionsImpl(this); this.deletedWebApps = new DeletedWebAppsImpl(this); this.diagnostics = new DiagnosticsImpl(this); this.global = new GlobalImpl(this); @@ -276,6 +287,51 @@ export class WebSiteManagementClient extends coreClient.ServiceClient { } } + /** + * Get custom hostnames under this subscription + * @param options The options parameters. + */ + public listCustomHostNameSites( + options?: ListCustomHostNameSitesOptionalParams + ): PagedAsyncIterableIterator { + const iter = this.listCustomHostNameSitesPagingAll(options); + return { + next() { + return iter.next(); + }, + [Symbol.asyncIterator]() { + return this; + }, + byPage: () => { + return this.listCustomHostNameSitesPagingPage(options); + } + }; + } + + private async *listCustomHostNameSitesPagingPage( + options?: ListCustomHostNameSitesOptionalParams + ): AsyncIterableIterator { + let result = await this._listCustomHostNameSites(options); + yield result.value || []; + let continuationToken = result.nextLink; + while (continuationToken) { + result = await this._listCustomHostNameSitesNext( + continuationToken, + options + ); + continuationToken = result.nextLink; + yield result.value || []; + } + } + + private async *listCustomHostNameSitesPagingAll( + options?: ListCustomHostNameSitesOptionalParams + ): AsyncIterableIterator { + for await (const page of this.listCustomHostNameSitesPagingPage(options)) { + yield* page; + } + } + /** * Description for Get a list of available geographical regions. * @param options The options parameters. @@ -528,6 +584,19 @@ export class WebSiteManagementClient extends coreClient.ServiceClient { ); } + /** + * Get custom hostnames under this subscription + * @param options The options parameters. + */ + private _listCustomHostNameSites( + options?: ListCustomHostNameSitesOptionalParams + ): Promise { + return this.sendOperationRequest( + { options }, + listCustomHostNameSitesOperationSpec + ); + } + /** * Description for Gets list of available geo regions plus ministamps * @param options The options parameters. @@ -684,6 +753,22 @@ export class WebSiteManagementClient extends coreClient.ServiceClient { ); } + /** + * ListCustomHostNameSitesNext + * @param nextLink The nextLink from the previous successful call to the ListCustomHostNameSites + * method. + * @param options The options parameters. + */ + private _listCustomHostNameSitesNext( + nextLink: string, + options?: ListCustomHostNameSitesNextOptionalParams + ): Promise { + return this.sendOperationRequest( + { nextLink, options }, + listCustomHostNameSitesNextOperationSpec + ); + } + /** * ListGeoRegionsNext * @param nextLink The nextLink from the previous successful call to the ListGeoRegions method. @@ -741,6 +826,8 @@ export class WebSiteManagementClient extends coreClient.ServiceClient { appServiceEnvironments: AppServiceEnvironments; appServicePlans: AppServicePlans; certificates: Certificates; + containerApps: ContainerApps; + containerAppsRevisions: ContainerAppsRevisions; deletedWebApps: DeletedWebApps; diagnostics: Diagnostics; global: Global; @@ -884,6 +971,23 @@ const checkNameAvailabilityOperationSpec: coreClient.OperationSpec = { mediaType: "json", serializer }; +const listCustomHostNameSitesOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/providers/Microsoft.Web/customhostnameSites", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.CustomHostnameSitesCollection + }, + default: { + bodyMapper: Mappers.DefaultErrorResponse + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [Parameters.$host, Parameters.subscriptionId], + headerParameters: [Parameters.accept], + serializer +}; const getSubscriptionDeploymentLocationsOperationSpec: coreClient.OperationSpec = { path: "/subscriptions/{subscriptionId}/providers/Microsoft.Web/deploymentLocations", @@ -1099,6 +1203,26 @@ const listBillingMetersNextOperationSpec: coreClient.OperationSpec = { headerParameters: [Parameters.accept], serializer }; +const listCustomHostNameSitesNextOperationSpec: coreClient.OperationSpec = { + path: "{nextLink}", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.CustomHostnameSitesCollection + }, + default: { + bodyMapper: Mappers.DefaultErrorResponse + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.nextLink + ], + headerParameters: [Parameters.accept], + serializer +}; const listGeoRegionsNextOperationSpec: coreClient.OperationSpec = { path: "{nextLink}", httpMethod: "GET", diff --git a/sdk/appservice/arm-appservice/test/sampleTest.ts b/sdk/appservice/arm-appservice/test/sampleTest.ts new file mode 100644 index 000000000000..7ed89b043e1b --- /dev/null +++ b/sdk/appservice/arm-appservice/test/sampleTest.ts @@ -0,0 +1,48 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +import { + env, + record, + RecorderEnvironmentSetup, + Recorder +} from "@azure-tools/test-recorder"; +import * as assert from "assert"; + +const recorderEnvSetup: RecorderEnvironmentSetup = { + replaceableVariables: { + AZURE_CLIENT_ID: "azure_client_id", + AZURE_CLIENT_SECRET: "azure_client_secret", + AZURE_TENANT_ID: "88888888-8888-8888-8888-888888888888", + SUBSCRIPTION_ID: "azure_subscription_id" + }, + customizationsOnRecordings: [ + (recording: any): any => + recording.replace( + /"access_token":"[^"]*"/g, + `"access_token":"access_token"` + ) + ], + queryParametersToSkip: [] +}; + +describe("My test", () => { + let recorder: Recorder; + + beforeEach(async function() { + recorder = record(this, recorderEnvSetup); + }); + + afterEach(async function() { + await recorder.stop(); + }); + + it("sample test", async function() { + console.log("Hi, I'm a test!"); + }); +});