@pulumi/azure-native
Version:
[](https://slack.pulumi.com) [](https://npmjs.com/package/@pulumi/azure-native) [ • 10.2 kB
TypeScript
import * as pulumi from "@pulumi/pulumi";
import * as inputs from "../types/input";
import * as outputs from "../types/output";
/**
* App Service plan.
*
* Uses Azure REST API version 2024-04-01. In version 2.x of the Azure Native provider, it used API version 2022-09-01.
*
* Other available API versions: 2016-09-01, 2018-02-01, 2019-08-01, 2020-06-01, 2020-09-01, 2020-10-01, 2020-12-01, 2021-01-01, 2021-01-15, 2021-02-01, 2021-03-01, 2022-03-01, 2022-09-01, 2023-01-01, 2023-12-01, 2024-11-01. These can be accessed by generating a local SDK package using the CLI command `pulumi package add azure-native web [ApiVersion]`. See the [version guide](../../../version-guide/#accessing-any-api-version-via-local-packages) for details.
*/
export declare class AppServicePlan extends pulumi.CustomResource {
/**
* Get an existing AppServicePlan resource's state with the given name, ID, and optional extra
* properties used to qualify the lookup.
*
* @param name The _unique_ name of the resulting resource.
* @param id The _unique_ provider ID of the resource to lookup.
* @param opts Optional settings to control the behavior of the CustomResource.
*/
static get(name: string, id: pulumi.Input<pulumi.ID>, opts?: pulumi.CustomResourceOptions): AppServicePlan;
/**
* Returns true if the given object is an instance of AppServicePlan. This is designed to work even
* when multiple copies of the Pulumi SDK have been loaded into the same process.
*/
static isInstance(obj: any): obj is AppServicePlan;
/**
* The Azure API version of the resource.
*/
readonly azureApiVersion: pulumi.Output<string>;
/**
* ServerFarm supports ElasticScale. Apps in this plan will scale as if the ServerFarm was ElasticPremium sku
*/
readonly elasticScaleEnabled: pulumi.Output<boolean | undefined>;
/**
* Extended Location.
*/
readonly extendedLocation: pulumi.Output<outputs.web.ExtendedLocationResponse | undefined>;
/**
* The time when the server farm free offer expires.
*/
readonly freeOfferExpirationTime: pulumi.Output<string | undefined>;
/**
* Geographical location for the App Service plan.
*/
readonly geoRegion: pulumi.Output<string>;
/**
* Specification for the App Service Environment to use for the App Service plan.
*/
readonly hostingEnvironmentProfile: pulumi.Output<outputs.web.HostingEnvironmentProfileResponse | undefined>;
/**
* If Hyper-V container app service plan <code>true</code>, <code>false</code> otherwise.
*/
readonly hyperV: pulumi.Output<boolean | undefined>;
/**
* If <code>true</code>, this App Service Plan owns spot instances.
*/
readonly isSpot: pulumi.Output<boolean | undefined>;
/**
* Obsolete: If Hyper-V container app service plan <code>true</code>, <code>false</code> otherwise.
*/
readonly isXenon: pulumi.Output<boolean | undefined>;
/**
* Kind of resource. If the resource is an app, you can refer to https://github.com/Azure/app-service-linux-docs/blob/master/Things_You_Should_Know/kind_property.md#app-service-resource-kind-reference for details supported values for kind.
*/
readonly kind: pulumi.Output<string | undefined>;
/**
* Specification for the Kubernetes Environment to use for the App Service plan.
*/
readonly kubeEnvironmentProfile: pulumi.Output<outputs.web.KubeEnvironmentProfileResponse | undefined>;
/**
* Resource Location.
*/
readonly location: pulumi.Output<string>;
/**
* Maximum number of total workers allowed for this ElasticScaleEnabled App Service Plan
*/
readonly maximumElasticWorkerCount: pulumi.Output<number | undefined>;
/**
* Maximum number of instances that can be assigned to this App Service plan.
*/
readonly maximumNumberOfWorkers: pulumi.Output<number>;
/**
* Resource Name.
*/
readonly name: pulumi.Output<string>;
/**
* Number of apps assigned to this App Service plan.
*/
readonly numberOfSites: pulumi.Output<number>;
/**
* The number of instances that are assigned to this App Service plan.
*/
readonly numberOfWorkers: pulumi.Output<number>;
/**
* If <code>true</code>, apps assigned to this App Service plan can be scaled independently.
* If <code>false</code>, apps assigned to this App Service plan will scale to all instances of the plan.
*/
readonly perSiteScaling: pulumi.Output<boolean | undefined>;
/**
* Provisioning state of the App Service Plan.
*/
readonly provisioningState: pulumi.Output<string>;
/**
* If Linux app service plan <code>true</code>, <code>false</code> otherwise.
*/
readonly reserved: pulumi.Output<boolean | undefined>;
/**
* Resource group of the App Service plan.
*/
readonly resourceGroup: pulumi.Output<string>;
/**
* Description of a SKU for a scalable resource.
*/
readonly sku: pulumi.Output<outputs.web.SkuDescriptionResponse | undefined>;
/**
* The time when the server farm expires. Valid only if it is a spot server farm.
*/
readonly spotExpirationTime: pulumi.Output<string | undefined>;
/**
* App Service plan status.
*/
readonly status: pulumi.Output<string>;
/**
* App Service plan subscription.
*/
readonly subscription: pulumi.Output<string>;
/**
* Resource tags.
*/
readonly tags: pulumi.Output<{
[key: string]: string;
} | undefined>;
/**
* Scaling worker count.
*/
readonly targetWorkerCount: pulumi.Output<number | undefined>;
/**
* Scaling worker size ID.
*/
readonly targetWorkerSizeId: pulumi.Output<number | undefined>;
/**
* Resource type.
*/
readonly type: pulumi.Output<string>;
/**
* Target worker tier assigned to the App Service plan.
*/
readonly workerTierName: pulumi.Output<string | undefined>;
/**
* If <code>true</code>, this App Service Plan will perform availability zone balancing.
* If <code>false</code>, this App Service Plan will not perform availability zone balancing.
*/
readonly zoneRedundant: pulumi.Output<boolean | undefined>;
/**
* Create a AppServicePlan resource with the given unique name, arguments, and options.
*
* @param name The _unique_ name of the resource.
* @param args The arguments to use to populate this resource's properties.
* @param opts A bag of options that control this resource's behavior.
*/
constructor(name: string, args: AppServicePlanArgs, opts?: pulumi.CustomResourceOptions);
}
/**
* The set of arguments for constructing a AppServicePlan resource.
*/
export interface AppServicePlanArgs {
/**
* ServerFarm supports ElasticScale. Apps in this plan will scale as if the ServerFarm was ElasticPremium sku
*/
elasticScaleEnabled?: pulumi.Input<boolean>;
/**
* Extended Location.
*/
extendedLocation?: pulumi.Input<inputs.web.ExtendedLocationArgs>;
/**
* The time when the server farm free offer expires.
*/
freeOfferExpirationTime?: pulumi.Input<string>;
/**
* Specification for the App Service Environment to use for the App Service plan.
*/
hostingEnvironmentProfile?: pulumi.Input<inputs.web.HostingEnvironmentProfileArgs>;
/**
* If Hyper-V container app service plan <code>true</code>, <code>false</code> otherwise.
*/
hyperV?: pulumi.Input<boolean>;
/**
* If <code>true</code>, this App Service Plan owns spot instances.
*/
isSpot?: pulumi.Input<boolean>;
/**
* Obsolete: If Hyper-V container app service plan <code>true</code>, <code>false</code> otherwise.
*/
isXenon?: pulumi.Input<boolean>;
/**
* Kind of resource. If the resource is an app, you can refer to https://github.com/Azure/app-service-linux-docs/blob/master/Things_You_Should_Know/kind_property.md#app-service-resource-kind-reference for details supported values for kind.
*/
kind?: pulumi.Input<string>;
/**
* Specification for the Kubernetes Environment to use for the App Service plan.
*/
kubeEnvironmentProfile?: pulumi.Input<inputs.web.KubeEnvironmentProfileArgs>;
/**
* Resource Location.
*/
location?: pulumi.Input<string>;
/**
* Maximum number of total workers allowed for this ElasticScaleEnabled App Service Plan
*/
maximumElasticWorkerCount?: pulumi.Input<number>;
/**
* Name of the App Service plan.
*/
name?: pulumi.Input<string>;
/**
* If <code>true</code>, apps assigned to this App Service plan can be scaled independently.
* If <code>false</code>, apps assigned to this App Service plan will scale to all instances of the plan.
*/
perSiteScaling?: pulumi.Input<boolean>;
/**
* If Linux app service plan <code>true</code>, <code>false</code> otherwise.
*/
reserved?: pulumi.Input<boolean>;
/**
* Name of the resource group to which the resource belongs.
*/
resourceGroupName: pulumi.Input<string>;
/**
* Description of a SKU for a scalable resource.
*/
sku?: pulumi.Input<inputs.web.SkuDescriptionArgs>;
/**
* The time when the server farm expires. Valid only if it is a spot server farm.
*/
spotExpirationTime?: pulumi.Input<string>;
/**
* Resource tags.
*/
tags?: pulumi.Input<{
[key: string]: pulumi.Input<string>;
}>;
/**
* Scaling worker count.
*/
targetWorkerCount?: pulumi.Input<number>;
/**
* Scaling worker size ID.
*/
targetWorkerSizeId?: pulumi.Input<number>;
/**
* Target worker tier assigned to the App Service plan.
*/
workerTierName?: pulumi.Input<string>;
/**
* If <code>true</code>, this App Service Plan will perform availability zone balancing.
* If <code>false</code>, this App Service Plan will not perform availability zone balancing.
*/
zoneRedundant?: pulumi.Input<boolean>;
}