@cdktf/provider-azurerm
Version:
Prebuilt azurerm Provider for Terraform CDK (cdktf)
969 lines • 130 kB
TypeScript
/**
* Copyright (c) HashiCorp, Inc.
* SPDX-License-Identifier: MPL-2.0
*/
import { Construct } from 'constructs';
import * as cdktf from 'cdktf';
export interface ContainerAppConfig extends cdktf.TerraformMetaArguments {
/**
* The ID of the Container App Environment to host this Container App.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/container_app#container_app_environment_id ContainerApp#container_app_environment_id}
*/
readonly containerAppEnvironmentId: string;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/container_app#id ContainerApp#id}
*
* Please be aware that the id field is automatically added to all resources in Terraform providers using a Terraform provider SDK version below 2.
* If you experience problems setting this value it might not be settable. Please take a look at the provider documentation to ensure it should be settable.
*/
readonly id?: string;
/**
* The name for this Container App.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/container_app#name ContainerApp#name}
*/
readonly name: string;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/container_app#resource_group_name ContainerApp#resource_group_name}
*/
readonly resourceGroupName: string;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/container_app#revision_mode ContainerApp#revision_mode}
*/
readonly revisionMode: string;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/container_app#tags ContainerApp#tags}
*/
readonly tags?: {
[key: string]: string;
};
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/container_app#workload_profile_name ContainerApp#workload_profile_name}
*/
readonly workloadProfileName?: string;
/**
* dapr block
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/container_app#dapr ContainerApp#dapr}
*/
readonly dapr?: ContainerAppDapr;
/**
* identity block
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/container_app#identity ContainerApp#identity}
*/
readonly identity?: ContainerAppIdentity;
/**
* ingress block
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/container_app#ingress ContainerApp#ingress}
*/
readonly ingress?: ContainerAppIngress;
/**
* registry block
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/container_app#registry ContainerApp#registry}
*/
readonly registry?: ContainerAppRegistry[] | cdktf.IResolvable;
/**
* secret block
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/container_app#secret ContainerApp#secret}
*/
readonly secret?: ContainerAppSecret[] | cdktf.IResolvable;
/**
* template block
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/container_app#template ContainerApp#template}
*/
readonly template: ContainerAppTemplate;
/**
* timeouts block
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/container_app#timeouts ContainerApp#timeouts}
*/
readonly timeouts?: ContainerAppTimeouts;
}
export interface ContainerAppDapr {
/**
* The Dapr Application Identifier.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/container_app#app_id ContainerApp#app_id}
*/
readonly appId: string;
/**
* The port which the application is listening on. This is the same as the `ingress` port.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/container_app#app_port ContainerApp#app_port}
*/
readonly appPort?: number;
/**
* The protocol for the app. Possible values include `http` and `grpc`. Defaults to `http`.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/container_app#app_protocol ContainerApp#app_protocol}
*/
readonly appProtocol?: string;
}
export declare function containerAppDaprToTerraform(struct?: ContainerAppDaprOutputReference | ContainerAppDapr): any;
export declare function containerAppDaprToHclTerraform(struct?: ContainerAppDaprOutputReference | ContainerAppDapr): any;
export declare class ContainerAppDaprOutputReference extends cdktf.ComplexObject {
private isEmptyObject;
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
get internalValue(): ContainerAppDapr | undefined;
set internalValue(value: ContainerAppDapr | undefined);
private _appId?;
get appId(): string;
set appId(value: string);
get appIdInput(): string | undefined;
private _appPort?;
get appPort(): number;
set appPort(value: number);
resetAppPort(): void;
get appPortInput(): number | undefined;
private _appProtocol?;
get appProtocol(): string;
set appProtocol(value: string);
resetAppProtocol(): void;
get appProtocolInput(): string | undefined;
}
export interface ContainerAppIdentity {
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/container_app#identity_ids ContainerApp#identity_ids}
*/
readonly identityIds?: string[];
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/container_app#type ContainerApp#type}
*/
readonly type: string;
}
export declare function containerAppIdentityToTerraform(struct?: ContainerAppIdentityOutputReference | ContainerAppIdentity): any;
export declare function containerAppIdentityToHclTerraform(struct?: ContainerAppIdentityOutputReference | ContainerAppIdentity): any;
export declare class ContainerAppIdentityOutputReference extends cdktf.ComplexObject {
private isEmptyObject;
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
get internalValue(): ContainerAppIdentity | undefined;
set internalValue(value: ContainerAppIdentity | undefined);
private _identityIds?;
get identityIds(): string[];
set identityIds(value: string[]);
resetIdentityIds(): void;
get identityIdsInput(): string[] | undefined;
get principalId(): string;
get tenantId(): string;
private _type?;
get type(): string;
set type(value: string);
get typeInput(): string | undefined;
}
export interface ContainerAppIngressCustomDomain {
/**
* The Binding type. Possible values include `Disabled` and `SniEnabled`. Defaults to `Disabled`
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/container_app#certificate_binding_type ContainerApp#certificate_binding_type}
*/
readonly certificateBindingType?: string;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/container_app#certificate_id ContainerApp#certificate_id}
*/
readonly certificateId: string;
/**
* The hostname of the Certificate. Must be the CN or a named SAN in the certificate.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/container_app#name ContainerApp#name}
*/
readonly name: string;
}
export declare function containerAppIngressCustomDomainToTerraform(struct?: ContainerAppIngressCustomDomainOutputReference | ContainerAppIngressCustomDomain): any;
export declare function containerAppIngressCustomDomainToHclTerraform(struct?: ContainerAppIngressCustomDomainOutputReference | ContainerAppIngressCustomDomain): any;
export declare class ContainerAppIngressCustomDomainOutputReference extends cdktf.ComplexObject {
private isEmptyObject;
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
get internalValue(): ContainerAppIngressCustomDomain | undefined;
set internalValue(value: ContainerAppIngressCustomDomain | undefined);
private _certificateBindingType?;
get certificateBindingType(): string;
set certificateBindingType(value: string);
resetCertificateBindingType(): void;
get certificateBindingTypeInput(): string | undefined;
private _certificateId?;
get certificateId(): string;
set certificateId(value: string);
get certificateIdInput(): string | undefined;
private _name?;
get name(): string;
set name(value: string);
get nameInput(): string | undefined;
}
export interface ContainerAppIngressIpSecurityRestriction {
/**
* The action. Allow or Deny.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/container_app#action ContainerApp#action}
*/
readonly action: string;
/**
* Describe the IP restriction rule that is being sent to the container-app.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/container_app#description ContainerApp#description}
*/
readonly description?: string;
/**
* The incoming IP address or range of IP addresses (in CIDR notation).
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/container_app#ip_address_range ContainerApp#ip_address_range}
*/
readonly ipAddressRange: string;
/**
* Name for the IP restriction rule.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/container_app#name ContainerApp#name}
*/
readonly name: string;
}
export declare function containerAppIngressIpSecurityRestrictionToTerraform(struct?: ContainerAppIngressIpSecurityRestriction | cdktf.IResolvable): any;
export declare function containerAppIngressIpSecurityRestrictionToHclTerraform(struct?: ContainerAppIngressIpSecurityRestriction | cdktf.IResolvable): any;
export declare class ContainerAppIngressIpSecurityRestrictionOutputReference extends cdktf.ComplexObject {
private isEmptyObject;
private resolvableValue?;
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
* @param complexObjectIndex the index of this item in the list
* @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
*/
constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean);
get internalValue(): ContainerAppIngressIpSecurityRestriction | cdktf.IResolvable | undefined;
set internalValue(value: ContainerAppIngressIpSecurityRestriction | cdktf.IResolvable | undefined);
private _action?;
get action(): string;
set action(value: string);
get actionInput(): string | undefined;
private _description?;
get description(): string;
set description(value: string);
resetDescription(): void;
get descriptionInput(): string | undefined;
private _ipAddressRange?;
get ipAddressRange(): string;
set ipAddressRange(value: string);
get ipAddressRangeInput(): string | undefined;
private _name?;
get name(): string;
set name(value: string);
get nameInput(): string | undefined;
}
export declare class ContainerAppIngressIpSecurityRestrictionList extends cdktf.ComplexList {
protected terraformResource: cdktf.IInterpolatingParent;
protected terraformAttribute: string;
protected wrapsSet: boolean;
internalValue?: ContainerAppIngressIpSecurityRestriction[] | cdktf.IResolvable;
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
* @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
*/
constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, wrapsSet: boolean);
/**
* @param index the index of the item to return
*/
get(index: number): ContainerAppIngressIpSecurityRestrictionOutputReference;
}
export interface ContainerAppIngressTrafficWeight {
/**
* The label to apply to the revision as a name prefix for routing traffic.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/container_app#label ContainerApp#label}
*/
readonly label?: string;
/**
* This traffic Weight relates to the latest stable Container Revision.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/container_app#latest_revision ContainerApp#latest_revision}
*/
readonly latestRevision?: boolean | cdktf.IResolvable;
/**
* The percentage of traffic to send to this revision.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/container_app#percentage ContainerApp#percentage}
*/
readonly percentage: number;
/**
* The suffix string to append to the revision. This must be unique for the Container App's lifetime. A default hash created by the service will be used if this value is omitted.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/container_app#revision_suffix ContainerApp#revision_suffix}
*/
readonly revisionSuffix?: string;
}
export declare function containerAppIngressTrafficWeightToTerraform(struct?: ContainerAppIngressTrafficWeight | cdktf.IResolvable): any;
export declare function containerAppIngressTrafficWeightToHclTerraform(struct?: ContainerAppIngressTrafficWeight | cdktf.IResolvable): any;
export declare class ContainerAppIngressTrafficWeightOutputReference extends cdktf.ComplexObject {
private isEmptyObject;
private resolvableValue?;
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
* @param complexObjectIndex the index of this item in the list
* @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
*/
constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean);
get internalValue(): ContainerAppIngressTrafficWeight | cdktf.IResolvable | undefined;
set internalValue(value: ContainerAppIngressTrafficWeight | cdktf.IResolvable | undefined);
private _label?;
get label(): string;
set label(value: string);
resetLabel(): void;
get labelInput(): string | undefined;
private _latestRevision?;
get latestRevision(): boolean | cdktf.IResolvable;
set latestRevision(value: boolean | cdktf.IResolvable);
resetLatestRevision(): void;
get latestRevisionInput(): boolean | cdktf.IResolvable | undefined;
private _percentage?;
get percentage(): number;
set percentage(value: number);
get percentageInput(): number | undefined;
private _revisionSuffix?;
get revisionSuffix(): string;
set revisionSuffix(value: string);
resetRevisionSuffix(): void;
get revisionSuffixInput(): string | undefined;
}
export declare class ContainerAppIngressTrafficWeightList extends cdktf.ComplexList {
protected terraformResource: cdktf.IInterpolatingParent;
protected terraformAttribute: string;
protected wrapsSet: boolean;
internalValue?: ContainerAppIngressTrafficWeight[] | cdktf.IResolvable;
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
* @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
*/
constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, wrapsSet: boolean);
/**
* @param index the index of the item to return
*/
get(index: number): ContainerAppIngressTrafficWeightOutputReference;
}
export interface ContainerAppIngress {
/**
* Should this ingress allow insecure connections?
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/container_app#allow_insecure_connections ContainerApp#allow_insecure_connections}
*/
readonly allowInsecureConnections?: boolean | cdktf.IResolvable;
/**
* The exposed port on the container for the Ingress traffic.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/container_app#exposed_port ContainerApp#exposed_port}
*/
readonly exposedPort?: number;
/**
* Is this an external Ingress.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/container_app#external_enabled ContainerApp#external_enabled}
*/
readonly externalEnabled?: boolean | cdktf.IResolvable;
/**
* The target port on the container for the Ingress traffic.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/container_app#target_port ContainerApp#target_port}
*/
readonly targetPort: number;
/**
* The transport method for the Ingress. Possible values include `auto`, `http`, and `http2`, `tcp`. Defaults to `auto`
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/container_app#transport ContainerApp#transport}
*/
readonly transport?: string;
/**
* custom_domain block
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/container_app#custom_domain ContainerApp#custom_domain}
*/
readonly customDomain?: ContainerAppIngressCustomDomain;
/**
* ip_security_restriction block
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/container_app#ip_security_restriction ContainerApp#ip_security_restriction}
*/
readonly ipSecurityRestriction?: ContainerAppIngressIpSecurityRestriction[] | cdktf.IResolvable;
/**
* traffic_weight block
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/container_app#traffic_weight ContainerApp#traffic_weight}
*/
readonly trafficWeight: ContainerAppIngressTrafficWeight[] | cdktf.IResolvable;
}
export declare function containerAppIngressToTerraform(struct?: ContainerAppIngressOutputReference | ContainerAppIngress): any;
export declare function containerAppIngressToHclTerraform(struct?: ContainerAppIngressOutputReference | ContainerAppIngress): any;
export declare class ContainerAppIngressOutputReference extends cdktf.ComplexObject {
private isEmptyObject;
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
get internalValue(): ContainerAppIngress | undefined;
set internalValue(value: ContainerAppIngress | undefined);
private _allowInsecureConnections?;
get allowInsecureConnections(): boolean | cdktf.IResolvable;
set allowInsecureConnections(value: boolean | cdktf.IResolvable);
resetAllowInsecureConnections(): void;
get allowInsecureConnectionsInput(): boolean | cdktf.IResolvable | undefined;
private _exposedPort?;
get exposedPort(): number;
set exposedPort(value: number);
resetExposedPort(): void;
get exposedPortInput(): number | undefined;
private _externalEnabled?;
get externalEnabled(): boolean | cdktf.IResolvable;
set externalEnabled(value: boolean | cdktf.IResolvable);
resetExternalEnabled(): void;
get externalEnabledInput(): boolean | cdktf.IResolvable | undefined;
get fqdn(): string;
private _targetPort?;
get targetPort(): number;
set targetPort(value: number);
get targetPortInput(): number | undefined;
private _transport?;
get transport(): string;
set transport(value: string);
resetTransport(): void;
get transportInput(): string | undefined;
private _customDomain;
get customDomain(): ContainerAppIngressCustomDomainOutputReference;
putCustomDomain(value: ContainerAppIngressCustomDomain): void;
resetCustomDomain(): void;
get customDomainInput(): ContainerAppIngressCustomDomain | undefined;
private _ipSecurityRestriction;
get ipSecurityRestriction(): ContainerAppIngressIpSecurityRestrictionList;
putIpSecurityRestriction(value: ContainerAppIngressIpSecurityRestriction[] | cdktf.IResolvable): void;
resetIpSecurityRestriction(): void;
get ipSecurityRestrictionInput(): cdktf.IResolvable | ContainerAppIngressIpSecurityRestriction[] | undefined;
private _trafficWeight;
get trafficWeight(): ContainerAppIngressTrafficWeightList;
putTrafficWeight(value: ContainerAppIngressTrafficWeight[] | cdktf.IResolvable): void;
get trafficWeightInput(): cdktf.IResolvable | ContainerAppIngressTrafficWeight[] | undefined;
}
export interface ContainerAppRegistry {
/**
* ID of the System or User Managed Identity used to pull images from the Container Registry
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/container_app#identity ContainerApp#identity}
*/
readonly identity?: string;
/**
* The name of the Secret Reference containing the password value for this user on the Container Registry.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/container_app#password_secret_name ContainerApp#password_secret_name}
*/
readonly passwordSecretName?: string;
/**
* The hostname for the Container Registry.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/container_app#server ContainerApp#server}
*/
readonly server: string;
/**
* The username to use for this Container Registry.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/container_app#username ContainerApp#username}
*/
readonly username?: string;
}
export declare function containerAppRegistryToTerraform(struct?: ContainerAppRegistry | cdktf.IResolvable): any;
export declare function containerAppRegistryToHclTerraform(struct?: ContainerAppRegistry | cdktf.IResolvable): any;
export declare class ContainerAppRegistryOutputReference extends cdktf.ComplexObject {
private isEmptyObject;
private resolvableValue?;
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
* @param complexObjectIndex the index of this item in the list
* @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
*/
constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean);
get internalValue(): ContainerAppRegistry | cdktf.IResolvable | undefined;
set internalValue(value: ContainerAppRegistry | cdktf.IResolvable | undefined);
private _identity?;
get identity(): string;
set identity(value: string);
resetIdentity(): void;
get identityInput(): string | undefined;
private _passwordSecretName?;
get passwordSecretName(): string;
set passwordSecretName(value: string);
resetPasswordSecretName(): void;
get passwordSecretNameInput(): string | undefined;
private _server?;
get server(): string;
set server(value: string);
get serverInput(): string | undefined;
private _username?;
get username(): string;
set username(value: string);
resetUsername(): void;
get usernameInput(): string | undefined;
}
export declare class ContainerAppRegistryList extends cdktf.ComplexList {
protected terraformResource: cdktf.IInterpolatingParent;
protected terraformAttribute: string;
protected wrapsSet: boolean;
internalValue?: ContainerAppRegistry[] | cdktf.IResolvable;
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
* @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
*/
constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, wrapsSet: boolean);
/**
* @param index the index of the item to return
*/
get(index: number): ContainerAppRegistryOutputReference;
}
export interface ContainerAppSecret {
/**
* The identity to use for accessing key vault reference.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/container_app#identity ContainerApp#identity}
*/
readonly identity?: string;
/**
* The Key Vault Secret ID. Could be either one of `id` or `versionless_id`.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/container_app#key_vault_secret_id ContainerApp#key_vault_secret_id}
*/
readonly keyVaultSecretId?: string;
/**
* The secret name.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/container_app#name ContainerApp#name}
*/
readonly name: string;
/**
* The value for this secret.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/container_app#value ContainerApp#value}
*/
readonly value?: string;
}
export declare function containerAppSecretToTerraform(struct?: ContainerAppSecret | cdktf.IResolvable): any;
export declare function containerAppSecretToHclTerraform(struct?: ContainerAppSecret | cdktf.IResolvable): any;
export declare class ContainerAppSecretOutputReference extends cdktf.ComplexObject {
private isEmptyObject;
private resolvableValue?;
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
* @param complexObjectIndex the index of this item in the list
* @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
*/
constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean);
get internalValue(): ContainerAppSecret | cdktf.IResolvable | undefined;
set internalValue(value: ContainerAppSecret | cdktf.IResolvable | undefined);
private _identity?;
get identity(): string;
set identity(value: string);
resetIdentity(): void;
get identityInput(): string | undefined;
private _keyVaultSecretId?;
get keyVaultSecretId(): string;
set keyVaultSecretId(value: string);
resetKeyVaultSecretId(): void;
get keyVaultSecretIdInput(): string | undefined;
private _name?;
get name(): string;
set name(value: string);
get nameInput(): string | undefined;
private _value?;
get value(): string;
set value(value: string);
resetValue(): void;
get valueInput(): string | undefined;
}
export declare class ContainerAppSecretList extends cdktf.ComplexList {
protected terraformResource: cdktf.IInterpolatingParent;
protected terraformAttribute: string;
protected wrapsSet: boolean;
internalValue?: ContainerAppSecret[] | cdktf.IResolvable;
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
* @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
*/
constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, wrapsSet: boolean);
/**
* @param index the index of the item to return
*/
get(index: number): ContainerAppSecretOutputReference;
}
export interface ContainerAppTemplateAzureQueueScaleRuleAuthentication {
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/container_app#secret_name ContainerApp#secret_name}
*/
readonly secretName: string;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/container_app#trigger_parameter ContainerApp#trigger_parameter}
*/
readonly triggerParameter: string;
}
export declare function containerAppTemplateAzureQueueScaleRuleAuthenticationToTerraform(struct?: ContainerAppTemplateAzureQueueScaleRuleAuthentication | cdktf.IResolvable): any;
export declare function containerAppTemplateAzureQueueScaleRuleAuthenticationToHclTerraform(struct?: ContainerAppTemplateAzureQueueScaleRuleAuthentication | cdktf.IResolvable): any;
export declare class ContainerAppTemplateAzureQueueScaleRuleAuthenticationOutputReference extends cdktf.ComplexObject {
private isEmptyObject;
private resolvableValue?;
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
* @param complexObjectIndex the index of this item in the list
* @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
*/
constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean);
get internalValue(): ContainerAppTemplateAzureQueueScaleRuleAuthentication | cdktf.IResolvable | undefined;
set internalValue(value: ContainerAppTemplateAzureQueueScaleRuleAuthentication | cdktf.IResolvable | undefined);
private _secretName?;
get secretName(): string;
set secretName(value: string);
get secretNameInput(): string | undefined;
private _triggerParameter?;
get triggerParameter(): string;
set triggerParameter(value: string);
get triggerParameterInput(): string | undefined;
}
export declare class ContainerAppTemplateAzureQueueScaleRuleAuthenticationList extends cdktf.ComplexList {
protected terraformResource: cdktf.IInterpolatingParent;
protected terraformAttribute: string;
protected wrapsSet: boolean;
internalValue?: ContainerAppTemplateAzureQueueScaleRuleAuthentication[] | cdktf.IResolvable;
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
* @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
*/
constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, wrapsSet: boolean);
/**
* @param index the index of the item to return
*/
get(index: number): ContainerAppTemplateAzureQueueScaleRuleAuthenticationOutputReference;
}
export interface ContainerAppTemplateAzureQueueScaleRule {
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/container_app#name ContainerApp#name}
*/
readonly name: string;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/container_app#queue_length ContainerApp#queue_length}
*/
readonly queueLength: number;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/container_app#queue_name ContainerApp#queue_name}
*/
readonly queueName: string;
/**
* authentication block
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/container_app#authentication ContainerApp#authentication}
*/
readonly authentication: ContainerAppTemplateAzureQueueScaleRuleAuthentication[] | cdktf.IResolvable;
}
export declare function containerAppTemplateAzureQueueScaleRuleToTerraform(struct?: ContainerAppTemplateAzureQueueScaleRule | cdktf.IResolvable): any;
export declare function containerAppTemplateAzureQueueScaleRuleToHclTerraform(struct?: ContainerAppTemplateAzureQueueScaleRule | cdktf.IResolvable): any;
export declare class ContainerAppTemplateAzureQueueScaleRuleOutputReference extends cdktf.ComplexObject {
private isEmptyObject;
private resolvableValue?;
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
* @param complexObjectIndex the index of this item in the list
* @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
*/
constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean);
get internalValue(): ContainerAppTemplateAzureQueueScaleRule | cdktf.IResolvable | undefined;
set internalValue(value: ContainerAppTemplateAzureQueueScaleRule | cdktf.IResolvable | undefined);
private _name?;
get name(): string;
set name(value: string);
get nameInput(): string | undefined;
private _queueLength?;
get queueLength(): number;
set queueLength(value: number);
get queueLengthInput(): number | undefined;
private _queueName?;
get queueName(): string;
set queueName(value: string);
get queueNameInput(): string | undefined;
private _authentication;
get authentication(): ContainerAppTemplateAzureQueueScaleRuleAuthenticationList;
putAuthentication(value: ContainerAppTemplateAzureQueueScaleRuleAuthentication[] | cdktf.IResolvable): void;
get authenticationInput(): cdktf.IResolvable | ContainerAppTemplateAzureQueueScaleRuleAuthentication[] | undefined;
}
export declare class ContainerAppTemplateAzureQueueScaleRuleList extends cdktf.ComplexList {
protected terraformResource: cdktf.IInterpolatingParent;
protected terraformAttribute: string;
protected wrapsSet: boolean;
internalValue?: ContainerAppTemplateAzureQueueScaleRule[] | cdktf.IResolvable;
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
* @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
*/
constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, wrapsSet: boolean);
/**
* @param index the index of the item to return
*/
get(index: number): ContainerAppTemplateAzureQueueScaleRuleOutputReference;
}
export interface ContainerAppTemplateContainerEnv {
/**
* The name of the environment variable for the container.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/container_app#name ContainerApp#name}
*/
readonly name: string;
/**
* The name of the secret that contains the value for this environment variable.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/container_app#secret_name ContainerApp#secret_name}
*/
readonly secretName?: string;
/**
* The value for this environment variable. **NOTE:** This value is ignored if `secret_name` is used
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/container_app#value ContainerApp#value}
*/
readonly value?: string;
}
export declare function containerAppTemplateContainerEnvToTerraform(struct?: ContainerAppTemplateContainerEnv | cdktf.IResolvable): any;
export declare function containerAppTemplateContainerEnvToHclTerraform(struct?: ContainerAppTemplateContainerEnv | cdktf.IResolvable): any;
export declare class ContainerAppTemplateContainerEnvOutputReference extends cdktf.ComplexObject {
private isEmptyObject;
private resolvableValue?;
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
* @param complexObjectIndex the index of this item in the list
* @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
*/
constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean);
get internalValue(): ContainerAppTemplateContainerEnv | cdktf.IResolvable | undefined;
set internalValue(value: ContainerAppTemplateContainerEnv | cdktf.IResolvable | undefined);
private _name?;
get name(): string;
set name(value: string);
get nameInput(): string | undefined;
private _secretName?;
get secretName(): string;
set secretName(value: string);
resetSecretName(): void;
get secretNameInput(): string | undefined;
private _value?;
get value(): string;
set value(value: string);
resetValue(): void;
get valueInput(): string | undefined;
}
export declare class ContainerAppTemplateContainerEnvList extends cdktf.ComplexList {
protected terraformResource: cdktf.IInterpolatingParent;
protected terraformAttribute: string;
protected wrapsSet: boolean;
internalValue?: ContainerAppTemplateContainerEnv[] | cdktf.IResolvable;
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
* @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
*/
constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, wrapsSet: boolean);
/**
* @param index the index of the item to return
*/
get(index: number): ContainerAppTemplateContainerEnvOutputReference;
}
export interface ContainerAppTemplateContainerLivenessProbeHeader {
/**
* The HTTP Header Name.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/container_app#name ContainerApp#name}
*/
readonly name: string;
/**
* The HTTP Header value.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/container_app#value ContainerApp#value}
*/
readonly value: string;
}
export declare function containerAppTemplateContainerLivenessProbeHeaderToTerraform(struct?: ContainerAppTemplateContainerLivenessProbeHeader | cdktf.IResolvable): any;
export declare function containerAppTemplateContainerLivenessProbeHeaderToHclTerraform(struct?: ContainerAppTemplateContainerLivenessProbeHeader | cdktf.IResolvable): any;
export declare class ContainerAppTemplateContainerLivenessProbeHeaderOutputReference extends cdktf.ComplexObject {
private isEmptyObject;
private resolvableValue?;
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
* @param complexObjectIndex the index of this item in the list
* @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
*/
constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean);
get internalValue(): ContainerAppTemplateContainerLivenessProbeHeader | cdktf.IResolvable | undefined;
set internalValue(value: ContainerAppTemplateContainerLivenessProbeHeader | cdktf.IResolvable | undefined);
private _name?;
get name(): string;
set name(value: string);
get nameInput(): string | undefined;
private _value?;
get value(): string;
set value(value: string);
get valueInput(): string | undefined;
}
export declare class ContainerAppTemplateContainerLivenessProbeHeaderList extends cdktf.ComplexList {
protected terraformResource: cdktf.IInterpolatingParent;
protected terraformAttribute: string;
protected wrapsSet: boolean;
internalValue?: ContainerAppTemplateContainerLivenessProbeHeader[] | cdktf.IResolvable;
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
* @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
*/
constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, wrapsSet: boolean);
/**
* @param index the index of the item to return
*/
get(index: number): ContainerAppTemplateContainerLivenessProbeHeaderOutputReference;
}
export interface ContainerAppTemplateContainerLivenessProbe {
/**
* The number of consecutive failures required to consider this probe as failed. Possible values are between `1` and `10`. Defaults to `3`.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/container_app#failure_count_threshold ContainerApp#failure_count_threshold}
*/
readonly failureCountThreshold?: number;
/**
* The probe hostname. Defaults to the pod IP address. Setting a value for `Host` in `headers` can be used to override this for `http` and `https` type probes.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/container_app#host ContainerApp#host}
*/
readonly host?: string;
/**
* The time in seconds to wait after the container has started before the probe is started.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/container_app#initial_delay ContainerApp#initial_delay}
*/
readonly initialDelay?: number;
/**
* How often, in seconds, the probe should run. Possible values are between `1` and `240`. Defaults to `10`
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/container_app#interval_seconds ContainerApp#interval_seconds}
*/
readonly intervalSeconds?: number;
/**
* The URI to use with the `host` for http type probes. Not valid for `TCP` type probes. Defaults to `/`.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/container_app#path ContainerApp#path}
*/
readonly path?: string;
/**
* The port number on which to connect. Possible values are between `1` and `65535`.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/container_app#port ContainerApp#port}
*/
readonly port: number;
/**
* Time in seconds after which the probe times out. Possible values are between `1` an `240`. Defaults to `1`.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/container_app#timeout ContainerApp#timeout}
*/
readonly timeout?: number;
/**
* Type of probe. Possible values are `TCP`, `HTTP`, and `HTTPS`.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/container_app#transport ContainerApp#transport}
*/
readonly transport: string;
/**
* header block
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/container_app#header ContainerApp#header}
*/
readonly header?: ContainerAppTemplateContainerLivenessProbeHeader[] | cdktf.IResolvable;
}
export declare function containerAppTemplateContainerLivenessProbeToTerraform(struct?: ContainerAppTemplateContainerLivenessProbe | cdktf.IResolvable): any;
export declare function containerAppTemplateContainerLivenessProbeToHclTerraform(struct?: ContainerAppTemplateContainerLivenessProbe | cdktf.IResolvable): any;
export declare class ContainerAppTemplateContainerLivenessProbeOutputReference extends cdktf.ComplexObject {
private isEmptyObject;
private resolvableValue?;
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
* @param complexObjectIndex the index of this item in the list
* @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
*/
constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean);
get internalValue(): ContainerAppTemplateContainerLivenessProbe | cdktf.IResolvable | undefined;
set internalValue(value: ContainerAppTemplateContainerLivenessProbe | cdktf.IResolvable | undefined);
private _failureCountThreshold?;
get failureCountThreshold(): number;
set failureCountThreshold(value: number);
resetFailureCountThreshold(): void;
get failureCountThresholdInput(): number | undefined;
private _host?;
get host(): string;
set host(value: string);
resetHost(): void;
get hostInput(): string | undefined;
private _initialDelay?;
get initialDelay(): number;
set initialDelay(value: number);
resetInitialDelay(): void;
get initialDelayInput(): number | undefined;
private _intervalSeconds?;
get intervalSeconds(): number;
set intervalSeconds(value: number);
resetIntervalSeconds(): void;
get intervalSecondsInput(): number | undefined;
private _path?;
get path(): string;
set path(value: string);
resetPath(): void;
get pathInput(): string | undefined;
private _port?;
get port(): number;
set port(value: number);
get portInput(): number | undefined;
get terminationGracePeriodSeconds(): number;
private _timeout?;
get timeout(): number;
set timeout(value: number);
resetTimeout(): void;
get timeoutInput(): number | undefined;
private _transport?;
get transport(): string;
set transport(value: string);
get transportInput(): string | undefined;
private _header;
get header(): ContainerAppTemplateContainerLivenessProbeHeaderList;
putHeader(value: ContainerAppTemplateContainerLivenessProbeHeader[] | cdktf.IResolvable): void;
resetHeader(): void;
get headerInput(): cdktf.IResolvable | ContainerAppTemplateContainerLivenessProbeHeader[] | undefined;
}
export declare class ContainerAppTemplateContainerLivenessProbeList extends cdktf.ComplexList {
protected terraformResource: cdktf.IInterpolatingParent;
protected terraformAttribute: string;
protected wrapsSet: boolean;
internalValue?: ContainerAppTemplateContainerLivenessProbe[] | cdktf.IResolvable;
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referen