UNPKG

@pulumi/linode

Version:

A Pulumi package for creating and managing linode cloud resources.

236 lines (235 loc) • 9.72 kB
import * as pulumi from "@pulumi/pulumi"; import * as inputs from "./types/input"; import * as outputs from "./types/output"; /** * ## Import * * LKE Clusters can be imported using the `id`, e.g. * * ```sh * $ pulumi import linode:index/lkeCluster:LkeCluster my_cluster 12345 * ``` */ export declare class LkeCluster extends pulumi.CustomResource { /** * Get an existing LkeCluster 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 state Any extra arguments used during the lookup. * @param opts Optional settings to control the behavior of the CustomResource. */ static get(name: string, id: pulumi.Input<pulumi.ID>, state?: LkeClusterState, opts?: pulumi.CustomResourceOptions): LkeCluster; /** * Returns true if the given object is an instance of LkeCluster. 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 LkeCluster; /** * The endpoints for the Kubernetes API server. */ readonly apiEndpoints: pulumi.Output<string[]>; /** * Enables the App Platform Layer */ readonly aplEnabled: pulumi.Output<boolean>; /** * Defines settings for the Kubernetes Control Plane. */ readonly controlPlane: pulumi.Output<outputs.LkeClusterControlPlane>; /** * The Kubernetes Dashboard access URL for this cluster. LKE Enterprise does not have a dashboard URL. */ readonly dashboardUrl: pulumi.Output<string>; /** * A set of node pool tags to ignore when planning and applying this cluster. This prevents externally managed node pools from being deleted or unintentionally updated on subsequent applies. See Externally Managed Node Pools for more details. */ readonly externalPoolTags: pulumi.Output<string[] | undefined>; /** * The desired Kubernetes version for this Kubernetes cluster in the format of `major.minor` (e.g. `1.21`), and the latest supported patch version will be deployed. */ readonly k8sVersion: pulumi.Output<string>; /** * The base64 encoded kubeconfig for the Kubernetes cluster. */ readonly kubeconfig: pulumi.Output<string>; /** * This Kubernetes cluster's unique label. */ readonly label: pulumi.Output<string>; /** * Additional nested attributes: */ readonly pools: pulumi.Output<outputs.LkeClusterPool[]>; /** * This Kubernetes cluster's location. * * * `pool` - (Required) The Node Pool specifications for the Kubernetes cluster. At least one Node Pool is required. * * * `controlPlane` (Optional) Defines settings for the Kubernetes Control Plane. */ readonly region: pulumi.Output<string>; /** * The networking stack type of the Kubernetes cluster. */ readonly stackType: pulumi.Output<string>; /** * The status of the node. (`ready`, `notReady`) */ readonly status: pulumi.Output<string>; /** * The ID of the VPC subnet to use for the Kubernetes cluster. This subnet must be dual stack (IPv4 and IPv6 should both be enabled). **NOTE: This field may not be available for all users and is only accepted and populated when apiVersion is set to `v4beta`.** */ readonly subnetId: pulumi.Output<number>; /** * An array of tags applied to the Kubernetes cluster. Tags are case-insensitive and are for organizational purposes only. */ readonly tags: pulumi.Output<string[]>; /** * The desired Kubernetes tier. **NOTE: This field may not be available to all users and is only accepted and populated when apiVersion is set to `v4beta`.** */ readonly tier: pulumi.Output<string>; /** * The ID of the VPC to use for the Kubernetes cluster. */ readonly vpcId: pulumi.Output<number>; /** * Create a LkeCluster 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: LkeClusterArgs, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering LkeCluster resources. */ export interface LkeClusterState { /** * The endpoints for the Kubernetes API server. */ apiEndpoints?: pulumi.Input<pulumi.Input<string>[]>; /** * Enables the App Platform Layer */ aplEnabled?: pulumi.Input<boolean>; /** * Defines settings for the Kubernetes Control Plane. */ controlPlane?: pulumi.Input<inputs.LkeClusterControlPlane>; /** * The Kubernetes Dashboard access URL for this cluster. LKE Enterprise does not have a dashboard URL. */ dashboardUrl?: pulumi.Input<string>; /** * A set of node pool tags to ignore when planning and applying this cluster. This prevents externally managed node pools from being deleted or unintentionally updated on subsequent applies. See Externally Managed Node Pools for more details. */ externalPoolTags?: pulumi.Input<pulumi.Input<string>[]>; /** * The desired Kubernetes version for this Kubernetes cluster in the format of `major.minor` (e.g. `1.21`), and the latest supported patch version will be deployed. */ k8sVersion?: pulumi.Input<string>; /** * The base64 encoded kubeconfig for the Kubernetes cluster. */ kubeconfig?: pulumi.Input<string>; /** * This Kubernetes cluster's unique label. */ label?: pulumi.Input<string>; /** * Additional nested attributes: */ pools?: pulumi.Input<pulumi.Input<inputs.LkeClusterPool>[]>; /** * This Kubernetes cluster's location. * * * `pool` - (Required) The Node Pool specifications for the Kubernetes cluster. At least one Node Pool is required. * * * `controlPlane` (Optional) Defines settings for the Kubernetes Control Plane. */ region?: pulumi.Input<string>; /** * The networking stack type of the Kubernetes cluster. */ stackType?: pulumi.Input<string>; /** * The status of the node. (`ready`, `notReady`) */ status?: pulumi.Input<string>; /** * The ID of the VPC subnet to use for the Kubernetes cluster. This subnet must be dual stack (IPv4 and IPv6 should both be enabled). **NOTE: This field may not be available for all users and is only accepted and populated when apiVersion is set to `v4beta`.** */ subnetId?: pulumi.Input<number>; /** * An array of tags applied to the Kubernetes cluster. Tags are case-insensitive and are for organizational purposes only. */ tags?: pulumi.Input<pulumi.Input<string>[]>; /** * The desired Kubernetes tier. **NOTE: This field may not be available to all users and is only accepted and populated when apiVersion is set to `v4beta`.** */ tier?: pulumi.Input<string>; /** * The ID of the VPC to use for the Kubernetes cluster. */ vpcId?: pulumi.Input<number>; } /** * The set of arguments for constructing a LkeCluster resource. */ export interface LkeClusterArgs { /** * Enables the App Platform Layer */ aplEnabled?: pulumi.Input<boolean>; /** * Defines settings for the Kubernetes Control Plane. */ controlPlane?: pulumi.Input<inputs.LkeClusterControlPlane>; /** * A set of node pool tags to ignore when planning and applying this cluster. This prevents externally managed node pools from being deleted or unintentionally updated on subsequent applies. See Externally Managed Node Pools for more details. */ externalPoolTags?: pulumi.Input<pulumi.Input<string>[]>; /** * The desired Kubernetes version for this Kubernetes cluster in the format of `major.minor` (e.g. `1.21`), and the latest supported patch version will be deployed. */ k8sVersion: pulumi.Input<string>; /** * This Kubernetes cluster's unique label. */ label: pulumi.Input<string>; /** * Additional nested attributes: */ pools: pulumi.Input<pulumi.Input<inputs.LkeClusterPool>[]>; /** * This Kubernetes cluster's location. * * * `pool` - (Required) The Node Pool specifications for the Kubernetes cluster. At least one Node Pool is required. * * * `controlPlane` (Optional) Defines settings for the Kubernetes Control Plane. */ region: pulumi.Input<string>; /** * The networking stack type of the Kubernetes cluster. */ stackType?: pulumi.Input<string>; /** * The ID of the VPC subnet to use for the Kubernetes cluster. This subnet must be dual stack (IPv4 and IPv6 should both be enabled). **NOTE: This field may not be available for all users and is only accepted and populated when apiVersion is set to `v4beta`.** */ subnetId?: pulumi.Input<number>; /** * An array of tags applied to the Kubernetes cluster. Tags are case-insensitive and are for organizational purposes only. */ tags?: pulumi.Input<pulumi.Input<string>[]>; /** * The desired Kubernetes tier. **NOTE: This field may not be available to all users and is only accepted and populated when apiVersion is set to `v4beta`.** */ tier?: pulumi.Input<string>; /** * The ID of the VPC to use for the Kubernetes cluster. */ vpcId?: pulumi.Input<number>; }