import * as pulumi from "@pulumi/pulumi"; /** * Obtain the Cluster’s Kubeconfig. * * ## Declaration * * ### Required * * - **name** (String) Name of the Mk8s. * * > **Note** Only one of the below can be included in the resource. * * - **profile** (String) The name of the cpln profile used to generate the kubeconfig file for authenticating with your Kubernetes cluster. * - **service_account** (String) The name of an existing service account for which a key will be generated, enabling kubeconfig-based authentication with your Kubernetes cluster. * * ## Outputs * * The following attributes are exported: * * - **kubeconfig** (String) The Kubeconfig in YAML format. * * ## Example Usage * * ### Profile * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as cpln from "@pulumiverse/cpln"; * * export = async () => { * const _new = new cpln.Mk8sKubeconfig("new", { * name: "generic-cluster", * profile: "default", * }); * return { * "generic-cluster-kubeconfig": _new.kubeconfig, * }; * } * ``` * * ### Service Account * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as cpln from "@pulumiverse/cpln"; * * export = async () => { * const _new = new cpln.Mk8sKubeconfig("new", { * name: "generic-cluster", * serviceAccount: "devops-sa", * }); * return { * "generic-cluster-kubeconfig": _new.kubeconfig, * }; * } * ``` */ export declare class Mk8sKubeconfig extends pulumi.CustomResource { /** * Get an existing Mk8sKubeconfig 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, state?: Mk8sKubeconfigState, opts?: pulumi.CustomResourceOptions): Mk8sKubeconfig; /** * Returns true if the given object is an instance of Mk8sKubeconfig. 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 Mk8sKubeconfig; /** * The Kubeconfig of your MK8s cluster in YAML format. */ readonly kubeconfig: pulumi.Output; /** * Name of the MK8s to create the Kubeconfig for. */ readonly name: pulumi.Output; /** * Profile name to extract the token from. */ readonly profile: pulumi.Output; /** * A service account to add a key to. */ readonly serviceAccount: pulumi.Output; /** * Create a Mk8sKubeconfig 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?: Mk8sKubeconfigArgs, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering Mk8sKubeconfig resources. */ export interface Mk8sKubeconfigState { /** * The Kubeconfig of your MK8s cluster in YAML format. */ kubeconfig?: pulumi.Input; /** * Name of the MK8s to create the Kubeconfig for. */ name?: pulumi.Input; /** * Profile name to extract the token from. */ profile?: pulumi.Input; /** * A service account to add a key to. */ serviceAccount?: pulumi.Input; } /** * The set of arguments for constructing a Mk8sKubeconfig resource. */ export interface Mk8sKubeconfigArgs { /** * Name of the MK8s to create the Kubeconfig for. */ name?: pulumi.Input; /** * Profile name to extract the token from. */ profile?: pulumi.Input; /** * A service account to add a key to. */ serviceAccount?: pulumi.Input; }