@cdktf/provider-vsphere
Version:
Prebuilt vsphere Provider for Terraform CDK (cdktf)
220 lines (219 loc) • 10.7 kB
TypeScript
/**
* Copyright (c) HashiCorp, Inc.
* SPDX-License-Identifier: MPL-2.0
*/
import { Construct } from 'constructs';
import * as cdktf from 'cdktf';
export interface VappContainerConfig extends cdktf.TerraformMetaArguments {
/**
* Determines if the reservation on a vApp container can grow beyond the specified value, if the parent resource pool has unreserved resources.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/vmware/vsphere/2.15.0/docs/resources/vapp_container#cpu_expandable VappContainer#cpu_expandable}
*/
readonly cpuExpandable?: boolean | cdktf.IResolvable;
/**
* The utilization of a vApp container will not exceed this limit, even if there are available resources. Set to -1 for unlimited.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/vmware/vsphere/2.15.0/docs/resources/vapp_container#cpu_limit VappContainer#cpu_limit}
*/
readonly cpuLimit?: number;
/**
* Amount of CPU (MHz) that is guaranteed available to the vApp container.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/vmware/vsphere/2.15.0/docs/resources/vapp_container#cpu_reservation VappContainer#cpu_reservation}
*/
readonly cpuReservation?: number;
/**
* The allocation level. The level is a simplified view of shares. Levels map to a pre-determined set of numeric values for shares. Can be one of low, normal, high, or custom.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/vmware/vsphere/2.15.0/docs/resources/vapp_container#cpu_share_level VappContainer#cpu_share_level}
*/
readonly cpuShareLevel?: string;
/**
* The number of shares allocated. Used to determine resource allocation in case of resource contention. If this is set, cpu_share_level must be custom.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/vmware/vsphere/2.15.0/docs/resources/vapp_container#cpu_shares VappContainer#cpu_shares}
*/
readonly cpuShares?: number;
/**
* A list of custom attributes to set on this resource.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/vmware/vsphere/2.15.0/docs/resources/vapp_container#custom_attributes VappContainer#custom_attributes}
*/
readonly customAttributes?: {
[key: string]: string;
};
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/vmware/vsphere/2.15.0/docs/resources/vapp_container#id VappContainer#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;
/**
* Determines if the reservation on a vApp container can grow beyond the specified value, if the parent resource pool has unreserved resources.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/vmware/vsphere/2.15.0/docs/resources/vapp_container#memory_expandable VappContainer#memory_expandable}
*/
readonly memoryExpandable?: boolean | cdktf.IResolvable;
/**
* The utilization of a vApp container will not exceed this limit, even if there are available resources. Set to -1 for unlimited.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/vmware/vsphere/2.15.0/docs/resources/vapp_container#memory_limit VappContainer#memory_limit}
*/
readonly memoryLimit?: number;
/**
* Amount of memory (MB) that is guaranteed available to the vApp container.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/vmware/vsphere/2.15.0/docs/resources/vapp_container#memory_reservation VappContainer#memory_reservation}
*/
readonly memoryReservation?: number;
/**
* The allocation level. The level is a simplified view of shares. Levels map to a pre-determined set of numeric values for shares. Can be one of low, normal, high, or custom.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/vmware/vsphere/2.15.0/docs/resources/vapp_container#memory_share_level VappContainer#memory_share_level}
*/
readonly memoryShareLevel?: string;
/**
* The number of shares allocated. Used to determine resource allocation in case of resource contention. If this is set, memory_share_level must be custom.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/vmware/vsphere/2.15.0/docs/resources/vapp_container#memory_shares VappContainer#memory_shares}
*/
readonly memoryShares?: number;
/**
* The name of the vApp container.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/vmware/vsphere/2.15.0/docs/resources/vapp_container#name VappContainer#name}
*/
readonly name: string;
/**
* The ID of the parent VM folder.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/vmware/vsphere/2.15.0/docs/resources/vapp_container#parent_folder_id VappContainer#parent_folder_id}
*/
readonly parentFolderId?: string;
/**
* The managed object ID of the parent resource pool or the compute resource the vApp container is in.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/vmware/vsphere/2.15.0/docs/resources/vapp_container#parent_resource_pool_id VappContainer#parent_resource_pool_id}
*/
readonly parentResourcePoolId: string;
/**
* A list of tag IDs to apply to this object.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/vmware/vsphere/2.15.0/docs/resources/vapp_container#tags VappContainer#tags}
*/
readonly tags?: string[];
}
/**
* Represents a {@link https://registry.terraform.io/providers/vmware/vsphere/2.15.0/docs/resources/vapp_container vsphere_vapp_container}
*/
export declare class VappContainer extends cdktf.TerraformResource {
static readonly tfResourceType = "vsphere_vapp_container";
/**
* Generates CDKTF code for importing a VappContainer resource upon running "cdktf plan <stack-name>"
* @param scope The scope in which to define this construct
* @param importToId The construct id used in the generated config for the VappContainer to import
* @param importFromId The id of the existing VappContainer that should be imported. Refer to the {@link https://registry.terraform.io/providers/vmware/vsphere/2.15.0/docs/resources/vapp_container#import import section} in the documentation of this resource for the id to use
* @param provider? Optional instance of the provider where the VappContainer to import is found
*/
static generateConfigForImport(scope: Construct, importToId: string, importFromId: string, provider?: cdktf.TerraformProvider): cdktf.ImportableResource;
/**
* Create a new {@link https://registry.terraform.io/providers/vmware/vsphere/2.15.0/docs/resources/vapp_container vsphere_vapp_container} Resource
*
* @param scope The scope in which to define this construct
* @param id The scoped construct ID. Must be unique amongst siblings in the same scope
* @param options VappContainerConfig
*/
constructor(scope: Construct, id: string, config: VappContainerConfig);
private _cpuExpandable?;
get cpuExpandable(): boolean | cdktf.IResolvable;
set cpuExpandable(value: boolean | cdktf.IResolvable);
resetCpuExpandable(): void;
get cpuExpandableInput(): boolean | cdktf.IResolvable | undefined;
private _cpuLimit?;
get cpuLimit(): number;
set cpuLimit(value: number);
resetCpuLimit(): void;
get cpuLimitInput(): number | undefined;
private _cpuReservation?;
get cpuReservation(): number;
set cpuReservation(value: number);
resetCpuReservation(): void;
get cpuReservationInput(): number | undefined;
private _cpuShareLevel?;
get cpuShareLevel(): string;
set cpuShareLevel(value: string);
resetCpuShareLevel(): void;
get cpuShareLevelInput(): string | undefined;
private _cpuShares?;
get cpuShares(): number;
set cpuShares(value: number);
resetCpuShares(): void;
get cpuSharesInput(): number | undefined;
private _customAttributes?;
get customAttributes(): {
[key: string]: string;
};
set customAttributes(value: {
[key: string]: string;
});
resetCustomAttributes(): void;
get customAttributesInput(): {
[key: string]: string;
} | undefined;
private _id?;
get id(): string;
set id(value: string);
resetId(): void;
get idInput(): string | undefined;
private _memoryExpandable?;
get memoryExpandable(): boolean | cdktf.IResolvable;
set memoryExpandable(value: boolean | cdktf.IResolvable);
resetMemoryExpandable(): void;
get memoryExpandableInput(): boolean | cdktf.IResolvable | undefined;
private _memoryLimit?;
get memoryLimit(): number;
set memoryLimit(value: number);
resetMemoryLimit(): void;
get memoryLimitInput(): number | undefined;
private _memoryReservation?;
get memoryReservation(): number;
set memoryReservation(value: number);
resetMemoryReservation(): void;
get memoryReservationInput(): number | undefined;
private _memoryShareLevel?;
get memoryShareLevel(): string;
set memoryShareLevel(value: string);
resetMemoryShareLevel(): void;
get memoryShareLevelInput(): string | undefined;
private _memoryShares?;
get memoryShares(): number;
set memoryShares(value: number);
resetMemoryShares(): void;
get memorySharesInput(): number | undefined;
private _name?;
get name(): string;
set name(value: string);
get nameInput(): string | undefined;
private _parentFolderId?;
get parentFolderId(): string;
set parentFolderId(value: string);
resetParentFolderId(): void;
get parentFolderIdInput(): string | undefined;
private _parentResourcePoolId?;
get parentResourcePoolId(): string;
set parentResourcePoolId(value: string);
get parentResourcePoolIdInput(): string | undefined;
private _tags?;
get tags(): string[];
set tags(value: string[]);
resetTags(): void;
get tagsInput(): string[] | undefined;
protected synthesizeAttributes(): {
[name: string]: any;
};
protected synthesizeHclAttributes(): {
[name: string]: any;
};
}