@pulumi/kubernetes
Version:
[](https://github.com/pulumi/pulumi-kubernetes/actions) [](https://slack.pulumi.com) [: obj is Provider;
/**
* Create a Provider 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?: ProviderArgs, opts?: pulumi.ResourceOptions);
}
/**
* The set of arguments for constructing a Provider resource.
*/
export interface ProviderArgs {
/**
* If present and set to true, all resources will be rendered to the directory specified by renderYamlToDirectory on every update, even if the resource has not changed. This is useful for tools like ArgoCD Config Management Plugin that require all manifests to be regenerated on each run. Only valid when renderYamlToDirectory is set.
*/
alwaysRender?: pulumi.Input<boolean | undefined>;
/**
* If present, the name of the kubeconfig cluster to use.
*/
cluster?: pulumi.Input<string | undefined>;
/**
* If present, this value will control the provider's replacement behavior. In particular, the provider will _only_ be replaced when `clusterIdentifier` changes; all other changes to provider configuration will be treated as updates.
*
* Kubernetes does not yet offer an API for cluster identification, so Pulumi uses heuristics to decide when a provider resource should be replaced or updated. These heuristics can sometimes lead to destructive replace operations when an update would be more appropriate, or vice versa.
*
* Use `clusterIdentifier` for more fine-grained control of the provider resource's lifecycle.
*/
clusterIdentifier?: pulumi.Input<string | undefined>;
/**
* If present, the name of the kubeconfig context to use.
*/
context?: pulumi.Input<string | undefined>;
/**
* If present and set to true, the provider will delete resources associated with an unreachable Kubernetes cluster from Pulumi state
*/
deleteUnreachable?: pulumi.Input<boolean | undefined>;
/**
* BETA FEATURE - If present and set to true, allow ConfigMaps to be mutated.
* This feature is in developer preview, and is disabled by default.
*
* This config can be specified in the following ways using this precedence:
* 1. This `enableConfigMapMutable` parameter.
* 2. The `PULUMI_K8S_ENABLE_CONFIGMAP_MUTABLE` environment variable.
*/
enableConfigMapMutable?: pulumi.Input<boolean | undefined>;
/**
* If present and set to true, enable patch force on all Server-Side Apply operations, overriding any field conflicts.
* See https://github.com/pulumi/pulumi-kubernetes/issues/2280 for additional details.
*
* This config can be specified in the following ways using this precedence:
* 1. The `pulumi.com/patchForce` annotation on the resource.
* 2. This `enablePatchForce` parameter.
* 3. The `PULUMI_K8S_ENABLE_PATCH_FORCE` environment variable.
*/
enablePatchForce?: pulumi.Input<boolean | undefined>;
/**
* BETA FEATURE - If present and set to true, allow Secrets to be mutated.
* This feature is in developer preview, and is disabled by default.
*
* This config can be specified in the following ways using this precedence:
* 1. This `enableSecretMutable` parameter.
* 2. The `PULUMI_K8S_ENABLE_SECRET_MUTABLE` environment variable.
*/
enableSecretMutable?: pulumi.Input<boolean | undefined>;
/**
* If present and set to false, disable Server-Side Apply mode.
* See https://github.com/pulumi/pulumi-kubernetes/issues/2011 for additional details.
*/
enableServerSideApply?: pulumi.Input<boolean | undefined>;
/**
* Options to configure the Helm Release resource.
*/
helmReleaseSettings?: pulumi.Input<inputs.HelmReleaseSettings | undefined>;
/**
* Options for tuning the Kubernetes client used by a Provider.
*/
kubeClientSettings?: pulumi.Input<inputs.KubeClientSettings | undefined>;
/**
* The contents of a kubeconfig file or the path to a kubeconfig file.
*/
kubeconfig?: pulumi.Input<string | undefined>;
/**
* If present, the default namespace to use. This flag is ignored for cluster-scoped resources.
*
* A namespace can be specified in multiple places, and the precedence is as follows:
* 1. `.metadata.namespace` set on the resource.
* 2. This `namespace` parameter.
* 3. `namespace` set for the active context in the kubeconfig.
*/
namespace?: pulumi.Input<string | undefined>;
/**
* BETA FEATURE - If present, render resource manifests to this directory. In this mode, resources will not
* be created on a Kubernetes cluster, but the rendered manifests will be kept in sync with changes
* to the Pulumi program. This feature is in developer preview, and is disabled by default.
*
* Render mode attempts to connect to the cluster identified by your kubeconfig to determine whether
* custom resources are namespaced or cluster-scoped. When no cluster is reachable, rendering proceeds
* anyway. Affected resources are written without a namespace scope, falling back to kubectl's default
* namespace behavior on apply, and a warning naming each unresolved kind is emitted.
*
* Note that some computed Outputs such as status fields will not be populated
* since the resources are not created on a Kubernetes cluster. These Output values will remain undefined,
* and may result in an error if they are referenced by other resources. Also note that any secret values
* used in these resources will be rendered in plaintext to the resulting YAML.
*/
renderYamlToDirectory?: pulumi.Input<string | undefined>;
/**
* If present and set to true, the provider will skip resources update associated with an unreachable Kubernetes cluster from Pulumi state
*/
skipUpdateUnreachable?: pulumi.Input<boolean | undefined>;
/**
* If present and set to true, suppress apiVersion deprecation warnings from the CLI.
*/
suppressDeprecationWarnings?: pulumi.Input<boolean | undefined>;
/**
* If present and set to true, suppress unsupported Helm hook warnings from the CLI.
*/
suppressHelmHookWarnings?: pulumi.Input<boolean | undefined>;
/**
* If present and set to true, allow Pulumi to create resources that already exist in the cluster by updating them instead of returning an error.
* By default, Pulumi will error if a resource already exists in the cluster to prevent accidental data loss. When a Pulumi resource is renamed without using aliases, the engine plans a create followed by a delete targeting the same cluster object. With server-side apply, the create silently updates the existing object, and the subsequent delete removes it — resulting in unexpected resource deletion.
* Enabling this option restores the previous upsert behavior for users who intentionally adopt existing cluster resources into Pulumi.
*
* This config can be specified in the following ways using this precedence:
* 1. This `upsertExistingObjects` parameter.
* 2. The `PULUMI_K8S_UPSERT_EXISTING_OBJECTS` environment variable.
*/
upsertExistingObjects?: pulumi.Input<boolean | undefined>;
}
//# sourceMappingURL=provider.d.ts.map