@cdktf/provider-vsphere
Version:
Prebuilt vsphere Provider for Terraform CDK (cdktf)
542 lines (541 loc) • 25.4 kB
TypeScript
/**
* Copyright (c) HashiCorp, Inc.
* SPDX-License-Identifier: MPL-2.0
*/
import { Construct } from 'constructs';
import * as cdktf from 'cdktf';
export interface SupervisorConfig extends cdktf.TerraformMetaArguments {
/**
* ID of the vSphere cluster on which workload management will be enabled.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/vmware/vsphere/2.15.0/docs/resources/supervisor#cluster Supervisor#cluster}
*/
readonly cluster: string;
/**
* ID of the subscribed content library.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/vmware/vsphere/2.15.0/docs/resources/supervisor#content_library Supervisor#content_library}
*/
readonly contentLibrary: string;
/**
* The UUID (not ID) of the distributed switch.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/vmware/vsphere/2.15.0/docs/resources/supervisor#dvs_uuid Supervisor#dvs_uuid}
*/
readonly dvsUuid: string;
/**
* ID of the NSX Edge Cluster.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/vmware/vsphere/2.15.0/docs/resources/supervisor#edge_cluster Supervisor#edge_cluster}
*/
readonly edgeCluster: string;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/vmware/vsphere/2.15.0/docs/resources/supervisor#id Supervisor#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;
/**
* List of DNS servers to use on the Kubernetes API server.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/vmware/vsphere/2.15.0/docs/resources/supervisor#main_dns Supervisor#main_dns}
*/
readonly mainDns: string[];
/**
* List of NTP servers to use on the Kubernetes API server.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/vmware/vsphere/2.15.0/docs/resources/supervisor#main_ntp Supervisor#main_ntp}
*/
readonly mainNtp: string[];
/**
* List of DNS search domains.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/vmware/vsphere/2.15.0/docs/resources/supervisor#search_domains Supervisor#search_domains}
*/
readonly searchDomains: string[];
/**
* Size of the Kubernetes API server.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/vmware/vsphere/2.15.0/docs/resources/supervisor#sizing_hint Supervisor#sizing_hint}
*/
readonly sizingHint: string;
/**
* The name of a storage policy associated with the datastore where the container images will be stored.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/vmware/vsphere/2.15.0/docs/resources/supervisor#storage_policy Supervisor#storage_policy}
*/
readonly storagePolicy: string;
/**
* List of DNS servers to use on the worker nodes.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/vmware/vsphere/2.15.0/docs/resources/supervisor#worker_dns Supervisor#worker_dns}
*/
readonly workerDns: string[];
/**
* List of NTP servers to use on the worker nodes.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/vmware/vsphere/2.15.0/docs/resources/supervisor#worker_ntp Supervisor#worker_ntp}
*/
readonly workerNtp: string[];
/**
* egress_cidr block
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/vmware/vsphere/2.15.0/docs/resources/supervisor#egress_cidr Supervisor#egress_cidr}
*/
readonly egressCidr: SupervisorEgressCidr[] | cdktf.IResolvable;
/**
* ingress_cidr block
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/vmware/vsphere/2.15.0/docs/resources/supervisor#ingress_cidr Supervisor#ingress_cidr}
*/
readonly ingressCidr: SupervisorIngressCidr[] | cdktf.IResolvable;
/**
* management_network block
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/vmware/vsphere/2.15.0/docs/resources/supervisor#management_network Supervisor#management_network}
*/
readonly managementNetwork: SupervisorManagementNetwork;
/**
* namespace block
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/vmware/vsphere/2.15.0/docs/resources/supervisor#namespace Supervisor#namespace}
*/
readonly namespace?: SupervisorNamespace[] | cdktf.IResolvable;
/**
* pod_cidr block
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/vmware/vsphere/2.15.0/docs/resources/supervisor#pod_cidr Supervisor#pod_cidr}
*/
readonly podCidr: SupervisorPodCidr[] | cdktf.IResolvable;
/**
* service_cidr block
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/vmware/vsphere/2.15.0/docs/resources/supervisor#service_cidr Supervisor#service_cidr}
*/
readonly serviceCidr: SupervisorServiceCidr;
}
export interface SupervisorEgressCidr {
/**
* Network address.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/vmware/vsphere/2.15.0/docs/resources/supervisor#address Supervisor#address}
*/
readonly address: string;
/**
* Subnet prefix.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/vmware/vsphere/2.15.0/docs/resources/supervisor#prefix Supervisor#prefix}
*/
readonly prefix: number;
}
export declare function supervisorEgressCidrToTerraform(struct?: SupervisorEgressCidr | cdktf.IResolvable): any;
export declare function supervisorEgressCidrToHclTerraform(struct?: SupervisorEgressCidr | cdktf.IResolvable): any;
export declare class SupervisorEgressCidrOutputReference 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(): SupervisorEgressCidr | cdktf.IResolvable | undefined;
set internalValue(value: SupervisorEgressCidr | cdktf.IResolvable | undefined);
private _address?;
get address(): string;
set address(value: string);
get addressInput(): string | undefined;
private _prefix?;
get prefix(): number;
set prefix(value: number);
get prefixInput(): number | undefined;
}
export declare class SupervisorEgressCidrList extends cdktf.ComplexList {
protected terraformResource: cdktf.IInterpolatingParent;
protected terraformAttribute: string;
protected wrapsSet: boolean;
internalValue?: SupervisorEgressCidr[] | 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): SupervisorEgressCidrOutputReference;
}
export interface SupervisorIngressCidr {
/**
* Network address.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/vmware/vsphere/2.15.0/docs/resources/supervisor#address Supervisor#address}
*/
readonly address: string;
/**
* Subnet prefix.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/vmware/vsphere/2.15.0/docs/resources/supervisor#prefix Supervisor#prefix}
*/
readonly prefix: number;
}
export declare function supervisorIngressCidrToTerraform(struct?: SupervisorIngressCidr | cdktf.IResolvable): any;
export declare function supervisorIngressCidrToHclTerraform(struct?: SupervisorIngressCidr | cdktf.IResolvable): any;
export declare class SupervisorIngressCidrOutputReference 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(): SupervisorIngressCidr | cdktf.IResolvable | undefined;
set internalValue(value: SupervisorIngressCidr | cdktf.IResolvable | undefined);
private _address?;
get address(): string;
set address(value: string);
get addressInput(): string | undefined;
private _prefix?;
get prefix(): number;
set prefix(value: number);
get prefixInput(): number | undefined;
}
export declare class SupervisorIngressCidrList extends cdktf.ComplexList {
protected terraformResource: cdktf.IInterpolatingParent;
protected terraformAttribute: string;
protected wrapsSet: boolean;
internalValue?: SupervisorIngressCidr[] | 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): SupervisorIngressCidrOutputReference;
}
export interface SupervisorManagementNetwork {
/**
* Number of addresses to allocate. Starts from 'starting_address'
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/vmware/vsphere/2.15.0/docs/resources/supervisor#address_count Supervisor#address_count}
*/
readonly addressCount: number;
/**
* Gateway IP address.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/vmware/vsphere/2.15.0/docs/resources/supervisor#gateway Supervisor#gateway}
*/
readonly gateway: string;
/**
* ID of the network. (e.g. a distributed port group).
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/vmware/vsphere/2.15.0/docs/resources/supervisor#network Supervisor#network}
*/
readonly network: string;
/**
* Starting address of the management network range.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/vmware/vsphere/2.15.0/docs/resources/supervisor#starting_address Supervisor#starting_address}
*/
readonly startingAddress: string;
/**
* Subnet mask.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/vmware/vsphere/2.15.0/docs/resources/supervisor#subnet_mask Supervisor#subnet_mask}
*/
readonly subnetMask: string;
}
export declare function supervisorManagementNetworkToTerraform(struct?: SupervisorManagementNetworkOutputReference | SupervisorManagementNetwork): any;
export declare function supervisorManagementNetworkToHclTerraform(struct?: SupervisorManagementNetworkOutputReference | SupervisorManagementNetwork): any;
export declare class SupervisorManagementNetworkOutputReference 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(): SupervisorManagementNetwork | undefined;
set internalValue(value: SupervisorManagementNetwork | undefined);
private _addressCount?;
get addressCount(): number;
set addressCount(value: number);
get addressCountInput(): number | undefined;
private _gateway?;
get gateway(): string;
set gateway(value: string);
get gatewayInput(): string | undefined;
private _network?;
get network(): string;
set network(value: string);
get networkInput(): string | undefined;
private _startingAddress?;
get startingAddress(): string;
set startingAddress(value: string);
get startingAddressInput(): string | undefined;
private _subnetMask?;
get subnetMask(): string;
set subnetMask(value: string);
get subnetMaskInput(): string | undefined;
}
export interface SupervisorNamespace {
/**
* A list of content libraries.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/vmware/vsphere/2.15.0/docs/resources/supervisor#content_libraries Supervisor#content_libraries}
*/
readonly contentLibraries?: string[];
/**
* The name of the namespace.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/vmware/vsphere/2.15.0/docs/resources/supervisor#name Supervisor#name}
*/
readonly name: string;
/**
* A list of virtual machine classes.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/vmware/vsphere/2.15.0/docs/resources/supervisor#vm_classes Supervisor#vm_classes}
*/
readonly vmClasses?: string[];
}
export declare function supervisorNamespaceToTerraform(struct?: SupervisorNamespace | cdktf.IResolvable): any;
export declare function supervisorNamespaceToHclTerraform(struct?: SupervisorNamespace | cdktf.IResolvable): any;
export declare class SupervisorNamespaceOutputReference 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(): SupervisorNamespace | cdktf.IResolvable | undefined;
set internalValue(value: SupervisorNamespace | cdktf.IResolvable | undefined);
private _contentLibraries?;
get contentLibraries(): string[];
set contentLibraries(value: string[]);
resetContentLibraries(): void;
get contentLibrariesInput(): string[] | undefined;
private _name?;
get name(): string;
set name(value: string);
get nameInput(): string | undefined;
private _vmClasses?;
get vmClasses(): string[];
set vmClasses(value: string[]);
resetVmClasses(): void;
get vmClassesInput(): string[] | undefined;
}
export declare class SupervisorNamespaceList extends cdktf.ComplexList {
protected terraformResource: cdktf.IInterpolatingParent;
protected terraformAttribute: string;
protected wrapsSet: boolean;
internalValue?: SupervisorNamespace[] | 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): SupervisorNamespaceOutputReference;
}
export interface SupervisorPodCidr {
/**
* Network address.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/vmware/vsphere/2.15.0/docs/resources/supervisor#address Supervisor#address}
*/
readonly address: string;
/**
* Subnet prefix.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/vmware/vsphere/2.15.0/docs/resources/supervisor#prefix Supervisor#prefix}
*/
readonly prefix: number;
}
export declare function supervisorPodCidrToTerraform(struct?: SupervisorPodCidr | cdktf.IResolvable): any;
export declare function supervisorPodCidrToHclTerraform(struct?: SupervisorPodCidr | cdktf.IResolvable): any;
export declare class SupervisorPodCidrOutputReference 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(): SupervisorPodCidr | cdktf.IResolvable | undefined;
set internalValue(value: SupervisorPodCidr | cdktf.IResolvable | undefined);
private _address?;
get address(): string;
set address(value: string);
get addressInput(): string | undefined;
private _prefix?;
get prefix(): number;
set prefix(value: number);
get prefixInput(): number | undefined;
}
export declare class SupervisorPodCidrList extends cdktf.ComplexList {
protected terraformResource: cdktf.IInterpolatingParent;
protected terraformAttribute: string;
protected wrapsSet: boolean;
internalValue?: SupervisorPodCidr[] | 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): SupervisorPodCidrOutputReference;
}
export interface SupervisorServiceCidr {
/**
* Network address.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/vmware/vsphere/2.15.0/docs/resources/supervisor#address Supervisor#address}
*/
readonly address: string;
/**
* Subnet prefix.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/vmware/vsphere/2.15.0/docs/resources/supervisor#prefix Supervisor#prefix}
*/
readonly prefix: number;
}
export declare function supervisorServiceCidrToTerraform(struct?: SupervisorServiceCidrOutputReference | SupervisorServiceCidr): any;
export declare function supervisorServiceCidrToHclTerraform(struct?: SupervisorServiceCidrOutputReference | SupervisorServiceCidr): any;
export declare class SupervisorServiceCidrOutputReference 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(): SupervisorServiceCidr | undefined;
set internalValue(value: SupervisorServiceCidr | undefined);
private _address?;
get address(): string;
set address(value: string);
get addressInput(): string | undefined;
private _prefix?;
get prefix(): number;
set prefix(value: number);
get prefixInput(): number | undefined;
}
/**
* Represents a {@link https://registry.terraform.io/providers/vmware/vsphere/2.15.0/docs/resources/supervisor vsphere_supervisor}
*/
export declare class Supervisor extends cdktf.TerraformResource {
static readonly tfResourceType = "vsphere_supervisor";
/**
* Generates CDKTF code for importing a Supervisor 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 Supervisor to import
* @param importFromId The id of the existing Supervisor that should be imported. Refer to the {@link https://registry.terraform.io/providers/vmware/vsphere/2.15.0/docs/resources/supervisor#import import section} in the documentation of this resource for the id to use
* @param provider? Optional instance of the provider where the Supervisor 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/supervisor vsphere_supervisor} 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 SupervisorConfig
*/
constructor(scope: Construct, id: string, config: SupervisorConfig);
private _cluster?;
get cluster(): string;
set cluster(value: string);
get clusterInput(): string | undefined;
private _contentLibrary?;
get contentLibrary(): string;
set contentLibrary(value: string);
get contentLibraryInput(): string | undefined;
private _dvsUuid?;
get dvsUuid(): string;
set dvsUuid(value: string);
get dvsUuidInput(): string | undefined;
private _edgeCluster?;
get edgeCluster(): string;
set edgeCluster(value: string);
get edgeClusterInput(): string | undefined;
private _id?;
get id(): string;
set id(value: string);
resetId(): void;
get idInput(): string | undefined;
private _mainDns?;
get mainDns(): string[];
set mainDns(value: string[]);
get mainDnsInput(): string[] | undefined;
private _mainNtp?;
get mainNtp(): string[];
set mainNtp(value: string[]);
get mainNtpInput(): string[] | undefined;
private _searchDomains?;
get searchDomains(): string[];
set searchDomains(value: string[]);
get searchDomainsInput(): string[] | undefined;
private _sizingHint?;
get sizingHint(): string;
set sizingHint(value: string);
get sizingHintInput(): string | undefined;
private _storagePolicy?;
get storagePolicy(): string;
set storagePolicy(value: string);
get storagePolicyInput(): string | undefined;
private _workerDns?;
get workerDns(): string[];
set workerDns(value: string[]);
get workerDnsInput(): string[] | undefined;
private _workerNtp?;
get workerNtp(): string[];
set workerNtp(value: string[]);
get workerNtpInput(): string[] | undefined;
private _egressCidr;
get egressCidr(): SupervisorEgressCidrList;
putEgressCidr(value: SupervisorEgressCidr[] | cdktf.IResolvable): void;
get egressCidrInput(): cdktf.IResolvable | SupervisorEgressCidr[] | undefined;
private _ingressCidr;
get ingressCidr(): SupervisorIngressCidrList;
putIngressCidr(value: SupervisorIngressCidr[] | cdktf.IResolvable): void;
get ingressCidrInput(): cdktf.IResolvable | SupervisorIngressCidr[] | undefined;
private _managementNetwork;
get managementNetwork(): SupervisorManagementNetworkOutputReference;
putManagementNetwork(value: SupervisorManagementNetwork): void;
get managementNetworkInput(): SupervisorManagementNetwork | undefined;
private _namespace;
get namespace(): SupervisorNamespaceList;
putNamespace(value: SupervisorNamespace[] | cdktf.IResolvable): void;
resetNamespace(): void;
get namespaceInput(): cdktf.IResolvable | SupervisorNamespace[] | undefined;
private _podCidr;
get podCidr(): SupervisorPodCidrList;
putPodCidr(value: SupervisorPodCidr[] | cdktf.IResolvable): void;
get podCidrInput(): cdktf.IResolvable | SupervisorPodCidr[] | undefined;
private _serviceCidr;
get serviceCidr(): SupervisorServiceCidrOutputReference;
putServiceCidr(value: SupervisorServiceCidr): void;
get serviceCidrInput(): SupervisorServiceCidr | undefined;
protected synthesizeAttributes(): {
[name: string]: any;
};
protected synthesizeHclAttributes(): {
[name: string]: any;
};
}