1. Packages
  2. Kubernetes
  3. API Docs
  4. helm
  5. helm/v3
  6. Release
Kubernetes v4.3.0 published on Monday, Sep 25, 2023 by Pulumi

kubernetes.helm.sh/v3.Release

Explore with Pulumi AI

kubernetes logo
Kubernetes v4.3.0 published on Monday, Sep 25, 2023 by Pulumi

    A Release is an instance of a chart running in a Kubernetes cluster. A Chart is a Helm package. It contains all the resource definitions necessary to run an application, tool, or service inside a Kubernetes cluster.

    This resource models a Helm Release as if it were created by the Helm CLI. The underlying implementation embeds Helm as a library to perform the orchestration of the resources. As a result, the full spectrum of Helm features are supported natively.

    Example Usage

    Local Chart Directory

    using Pulumi;
    using Pulumi.Kubernetes.Types.Inputs.Helm.V3;
    using Pulumi.Kubernetes.Helm.V3;
    
    class HelmStack : Stack
    {
        public HelmStack()
        {
            var nginx = new Release("nginx-ingress", new ReleaseArgs
            {
                Chart = "./nginx-ingress",
            });
    
        }
    }
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-kubernetes/sdk/v4/go/kubernetes/helm/v3"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := helm.NewRelease(ctx, "nginx-ingress", helm.ReleaseArgs{
    			Chart: pulumi.String("./nginx-ingress"),
    		})
    		if err != nil {
    			return err
    		}
    
    		return nil
    	})
    }
    

    Coming soon!

    from pulumi_kubernetes.helm.v3 import Release, ReleaseArgs
    
    nginx_ingress = Release(
        "nginx-ingress",
        ReleaseArgs(
            chart="./nginx-ingress",
        ),
    )
    
    import * as k8s from "@pulumi/kubernetes";
    
    const nginxIngress = new k8s.helm.v3.Release("nginx-ingress", {
        chart: "./nginx-ingress",
    });
    

    Coming soon!

    Remote Chart

    using Pulumi;
    using Pulumi.Kubernetes.Types.Inputs.Helm.V3;
    using Pulumi.Kubernetes.Helm.V3;
    
    class HelmStack : Stack
    {
        public HelmStack()
        {
            var nginx = new Release("nginx-ingress", new ReleaseArgs
            {
                Chart = "nginx-ingress",
                Version = "1.24.4",
                RepositoryOpts = new RepositoryOptsArgs
                {
                    Repo = "https://charts.helm.sh/stable"
                }
            });
    
        }
    }
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-kubernetes/sdk/v4/go/kubernetes/helm/v3"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := helm.NewRelease(ctx, "nginx-ingress", helm.ReleaseArgs{
    			Chart:   pulumi.String("nginx-ingress"),
    			Version: pulumi.String("1.24.4"),
    			RepositoryOpts: helm.RepositoryOptsArgs{
    				Repo: pulumi.String("https://charts.helm.sh/stable"),
    			},
    		})
    		if err != nil {
    			return err
    		}
    
    		return nil
    	})
    }
    

    Coming soon!

    from pulumi_kubernetes.helm.v3 import Release, ReleaseArgs, RepositoryOptsArgs
    
    nginx_ingress = Release(
        "nginx-ingress",
        ReleaseArgs(
            chart="nginx-ingress",
            version="1.24.4",
            repository_opts=RepositoryOptsArgs(
                repo="https://charts.helm.sh/stable",
            ),
        ),
    )
    
    import * as k8s from "@pulumi/kubernetes";
    
    const nginxIngress = new k8s.helm.v3.Release("nginx-ingress", {
        chart: "nginx-ingress",
        version: "1.24.4",
        repositoryOpts: {
            repo: "https://charts.helm.sh/stable",
        },
    });
    

    Coming soon!

    Set Chart Values

    using System.Collections.Generic;
    using Pulumi;
    using Pulumi.Kubernetes.Types.Inputs.Helm.V3;
    using Pulumi.Kubernetes.Helm.V3;
    
    class HelmStack : Stack
    {
        public HelmStack()
        {
            var values = new Dictionary<string, object>
            {
                ["controller"] = new Dictionary<string, object>
                {
                    ["metrics"] = new Dictionary<string, object>
                    {
                        ["enabled"] = true
                    }
                },
            };
    
            var nginx = new Release("nginx-ingress", new ReleaseArgs
            {
                Chart = "nginx-ingress",
                Version = "1.24.4",
                RepositoryOpts = new RepositoryOptsArgs
                {
                    Repo = "https://charts.helm.sh/stable"
                },
                Values = values,
            });
    
        }
    }
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-kubernetes/sdk/v4/go/kubernetes/helm/v3"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := helm.NewRelease(ctx, "nginx-ingress", helm.ReleaseArgs{
    			Chart:   pulumi.String("nginx-ingress"),
    			Version: pulumi.String("1.24.4"),
    			RepositoryOpts: helm.RepositoryOptsArgs{
    				Repo: pulumi.String("https://charts.helm.sh/stable"),
    			},
    			Values: pulumi.Map{
    				"controller": pulumi.Map{
    					"metrics": pulumi.Map{
    						"enabled": pulumi.Bool(true),
    					},
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    
    		return nil
    	})
    }
    

    Coming soon!

    from pulumi_kubernetes.helm.v3 import Release, ReleaseArgs, RepositoryOptsArgs
    
    nginx_ingress = Release(
        "nginx-ingress",
        ReleaseArgs(
            chart="nginx-ingress",
            version="1.24.4",
            repository_opts=RepositoryOptsArgs(
                repo="https://charts.helm.sh/stable",
            ),
            values={
                "controller": {
                    "metrics": {
                        "enabled": True,
                    },
                },
            },
        ),
    )
    
    import * as k8s from "@pulumi/kubernetes";
    
    const nginxIngress = new k8s.helm.v3.Release("nginx-ingress", {
        chart: "nginx-ingress",
        version: "1.24.4",
        repositoryOpts: {
            repo: "https://charts.helm.sh/stable",
        },
        values: {
            controller: {
                metrics: {
                    enabled: true,
                }
            }
        },
    });
    

    Coming soon!

    Deploy Chart into Namespace

    using Pulumi;
    using Pulumi.Kubernetes.Types.Inputs.Helm.V3;
    using Pulumi.Kubernetes.Helm.V3;
    
    class HelmStack : Stack
    {
        public HelmStack()
        {
            var nginx = new Release("nginx-ingress", new ReleaseArgs
            {
                Chart = "nginx-ingress",
                Version = "1.24.4",
                Namespace = "test-namespace",
                RepositoryOpts = new RepositoryOptsArgs
                {
                    Repo = "https://charts.helm.sh/stable"
                },
            });
    
        }
    }
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-kubernetes/sdk/v4/go/kubernetes/helm/v3"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := helm.NewRelease(ctx, "nginx-ingress", helm.ReleaseArgs{
    			Chart:     pulumi.String("nginx-ingress"),
    			Version:   pulumi.String("1.24.4"),
    			Namespace: pulumi.String("test-namespace"),
    			RepositoryOpts: helm.RepositoryOptsArgs{
    				Repo: pulumi.String("https://charts.helm.sh/stable"),
    			},
    		})
    		if err != nil {
    			return err
    		}
    
    		return nil
    	})
    }
    

    Coming soon!

    from pulumi_kubernetes.helm.v3 import Release, ReleaseArgs, RepositoryOptsArgs
    
    nginx_ingress = Release(
        "nginx-ingress",
        ReleaseArgs(
            chart="nginx-ingress",
            version="1.24.4",
            namespace="test-namespace",
            repository_opts=RepositoryOptsArgs(
                repo="https://charts.helm.sh/stable",
            ),
        ),
    )
    
    import * as k8s from "@pulumi/kubernetes";
    
    const nginxIngress = new k8s.helm.v3.Release("nginx-ingress", {
        chart: "nginx-ingress",
        version: "1.24.4",
        namespace: "test-namespace",
        repositoryOpts: {
            repo: "https://charts.helm.sh/stable",
        },
    });
    

    Coming soon!

    Depend on a Chart resource

    using System.Threading.Tasks;
    using Pulumi;
    using Pulumi.Kubernetes.Core.V1;
    using Pulumi.Kubernetes.Types.Inputs.Helm.V3;
    using Pulumi.Kubernetes.Helm.V3;
    
    class HelmStack : Stack
    {
        public HelmStack()
        {
            var nginx = new Release("nginx-ingress", new ReleaseArgs
            {
                Chart = "nginx-ingress",
                Version = "1.24.4",
                Namespace = "test-namespace",
                RepositoryOpts = new RepositoryOptsArgs
                {
                    Repo = "https://charts.helm.sh/stable"
                },
                SkipAwait = false,
            });
    
            // Create a ConfigMap depending on the Chart. The ConfigMap will not be created until after all of the Chart
            // resources are ready. Notice SkipAwait is set to false above. This is the default and will cause Helm
            // to await the underlying resources to be available. Setting it to true will make the ConfigMap available right away.
            new ConfigMap("foo", new Pulumi.Kubernetes.Types.Inputs.Core.V1.ConfigMapArgs
            {
                Data = new InputMap<string>
                {
                    {"foo", "bar"}
                },
            }, new CustomResourceOptions
            {
                DependsOn = nginx,
            });
    
        }
    }
    
    package main
    
    import (
    	corev1 "github.com/pulumi/pulumi-kubernetes/sdk/v4/go/kubernetes/core/v1"
    	"github.com/pulumi/pulumi-kubernetes/sdk/v4/go/kubernetes/helm/v3"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		release, err := helm.NewRelease(ctx, "nginx-ingress", helm.ReleaseArgs{
    			Chart:     pulumi.String("nginx-ingress"),
    			Version:   pulumi.String("1.24.4"),
    			Namespace: pulumi.String("test-namespace"),
    			RepositoryOpts: helm.RepositoryOptsArgs{
    				Repo: pulumi.String("https://charts.helm.sh/stable"),
    			},
    			SkipAwait: pulumi.Bool(false),
    		})
    		if err != nil {
    			return err
    		}
    
    		// Create a ConfigMap depending on the Chart. The ConfigMap will not be created until after all of the Chart
    		// resources are ready. Notice SkipAwait is set to false above. This is the default and will cause Helm
    		// to await the underlying resources to be available. Setting it to true will make the ConfigMap available right away.
    		_, err = corev1.NewConfigMap(ctx, "cm", &corev1.ConfigMapArgs{
    			Data: pulumi.StringMap{
    				"foo": pulumi.String("bar"),
    			},
    		}, pulumi.DependsOnInputs(release))
    		if err != nil {
    			return err
    		}
    
    		return nil
    	})
    }
    

    Coming soon!

    import pulumi
    from pulumi_kubernetes.core.v1 import ConfigMap, ConfigMapInitArgs
    from pulumi_kubernetes.helm.v3 import Release, ReleaseArgs, RepositoryOptsArgs
    
    nginx_ingress = Release(
        "nginx-ingress",
        ReleaseArgs(
            chart="nginx-ingress",
            version="1.24.4",
            namespace="test-namespace",
            repository_opts=RepositoryOptsArgs(
                repo="https://charts.helm.sh/stable",
            ),
            skip_await=False,
        ),
    )
    
    # Create a ConfigMap depending on the Chart. The ConfigMap will not be created until after all of the Chart
    # resources are ready. Notice skip_await is set to false above. This is the default and will cause Helm
    # to await the underlying resources to be available. Setting it to true will make the ConfigMap available right away.
    ConfigMap("foo", ConfigMapInitArgs(data={"foo": "bar"}), opts=pulumi.ResourceOptions(depends_on=nginx_ingress))
    
    import * as k8s from "@pulumi/kubernetes";
    
    const nginxIngress = new k8s.helm.v3.Release("nginx-ingress", {
        chart: "nginx-ingress",
        version: "1.24.4",
        namespace: "test-namespace",
        repositoryOpts: {
            repo: "https://charts.helm.sh/stable",
        },
        skipAwait: false,
    });
    
    // Create a ConfigMap depending on the Chart. The ConfigMap will not be created until after all of the Chart
    // resources are ready. Notice skipAwait is set to false above. This is the default and will cause Helm
    // to await the underlying resources to be available. Setting it to true will make the ConfigMap available right away.
    new k8s.core.v1.ConfigMap("foo", {
        metadata: {namespace: namespaceName},
        data: {foo: "bar"}
    }, {dependsOn: nginxIngress})
    

    Coming soon!

    Specify Helm Chart Values in File and Code

    using System.Collections.Generic;
    using Pulumi;
    using Pulumi.Kubernetes.Types.Inputs.Helm.V3;
    using Pulumi.Kubernetes.Helm.V3;
    
    class HelmStack : Stack
    {
        public HelmStack()
        {
            var nginx = new Release("redis", new ReleaseArgs
            {
                Chart = "redis",
                RepositoryOpts = new RepositoryOptsArgs
                {
                    Repo = "https://raw.githubusercontent.com/bitnami/charts/eb5f9a9513d987b519f0ecd732e7031241c50328/bitnami"
                },
                ValueYamlFiles = new FileAsset("./metrics.yml");
                Values = new InputMap<object>
                {
                    ["cluster"] = new Dictionary<string,object>
                    {
                        ["enabled"] = true,
                    },
                    ["rbac"] = new Dictionary<string,object>
                    {
                        ["create"] = true,
                    }
                },
            });
        }
    }
    
    // -- Contents of metrics.yml --
    // metrics:
    //     enabled: true
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-kubernetes/sdk/v4/go/kubernetes/helm/v3"
    	"github.com/pulumi/pulumi-kubernetes/sdk/v4/go/kubernetes/yaml"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := helm.NewRelease(ctx, "redis", helm.ReleaseArgs{
    			Chart:   pulumi.String("redis"),
    			RepositoryOpts: helm.RepositoryOptsArgs{
    				Repo: pulumi.String("https://charts.helm.sh/stable"),
    			},
    			ValueYamlFiles: pulumi.NewFileAsset("./metrics.yml"),
    			Value: pulumi.Map{
    				"cluster": pulumi.Map{
    					"enabled": pulumi.Bool(true),
    				},
    				"rbac": pulumi.Map{
    					"create": pulumi.Bool(true),
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    
    		return nil
    	})
    }
    
    // -- Contents of metrics.yml --
    // metrics:
    //     enabled: true
    

    Coming soon!

    import pulumi
    from pulumi_kubernetes.helm.v3 import Release, ReleaseArgs, RepositoryOptsArgs
    
    nginx_ingress = Release(
        "redis",
        ReleaseArgs(
            chart="redis",
            repository_opts=RepositoryOptsArgs(
                repo="https://raw.githubusercontent.com/bitnami/charts/eb5f9a9513d987b519f0ecd732e7031241c50328/bitnami",
            ),
            value_yaml_files=[pulumi.FileAsset("./metrics.yml")],
            values={
                cluster: {
                    enabled: true,
                },
                rbac: {
                    create: true,
                }
            },
        ),
    )
    
    # -- Contents of metrics.yml --
    # metrics:
    #     enabled: true
    
    import * as pulumi from "@pulumi/pulumi";
    import * as k8s from "@pulumi/kubernetes";
    import {FileAsset} from "@pulumi/pulumi/asset";
    
    const release = new k8s.helm.v3.Release("redis", {
        chart: "redis",
        repositoryOpts: {
            repo: "https://raw.githubusercontent.com/bitnami/charts/eb5f9a9513d987b519f0ecd732e7031241c50328/bitnami",
        },
        valueYamlFiles: [new FileAsset("./metrics.yml")],
        values: {
            cluster: {
                enabled: true,
            },
            rbac: {
                create: true,
            }
        },
    });
    
    // -- Contents of metrics.yml --
    // metrics:
    //     enabled: true
    

    Coming soon!

    Query Kubernetes Resource Installed By Helm Chart

    using System.Collections.Generic;
    using Pulumi;
    using Pulumi.Kubernetes.Types.Inputs.Helm.V3;
    using Pulumi.Kubernetes.Helm.V3;
    
    class HelmStack : Stack
    {
        public HelmStack()
        {
            var redis = new Release("redis", new ReleaseArgs
            {
                Chart = "redis",
                RepositoryOpts = new RepositoryOptsArgs
                {
                    Repo = "https://raw.githubusercontent.com/bitnami/charts/eb5f9a9513d987b519f0ecd732e7031241c50328/bitnami"
                },
                Values = new InputMap<object>
                {
                    ["cluster"] = new Dictionary<string,object>
                    {
                        ["enabled"] = true,
                    },
                    ["rbac"] = new Dictionary<string,object>
                    {
                        ["create"] = true,
                    }
                },
            });
    
            var status = redis.Status;
            // srv will only resolve after the redis chart is installed.
            var srv = Service.Get("redist-master-svc", Output.All(status).Apply(
                s => $"{s[0].Namespace}/{s[0].Name}-master"));
            this.RedisMasterClusterIP = srv.Spec.Apply(spec => spec.ClusterIP);
        }
    
        [Output]
        public Output<string> RedisMasterClusterIP { get; set; }
    }
    
    package main
    
    import (
    	"fmt"
    
    	corev1 "github.com/pulumi/pulumi-kubernetes/sdk/v4/go/kubernetes/core/v1"
    	"github.com/pulumi/pulumi-kubernetes/sdk/v4/go/kubernetes/helm/v3"
    	"github.com/pulumi/pulumi-random/sdk/v4/go/random"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		rel, err := helm.NewRelease(ctx, "redis", &helm.ReleaseArgs{
    			Chart: pulumi.String("redis"),
    			RepositoryOpts: helm.RepositoryOptsArgs{
    				Repo: pulumi.String("https://raw.githubusercontent.com/bitnami/charts/eb5f9a9513d987b519f0ecd732e7031241c50328/bitnami"),
    			},
    			Values: pulumi.Map{
    				"cluster": pulumi.Map{
    					"enabled": pulumi.Bool(true),
    				},
    				"rbac": pulumi.BoolMap{
    					"create": pulumi.Bool(true),
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    
    		// srv will only resolve after the redis chart is installed.
    		srv := pulumi.All(rel.Status.Namespace(), rel.Status.Name()).
    			ApplyT(func(r interface{}) (interface{}, error) {
    				arr := r.([]interface{})
    				namespace := arr[0].(*string)
    				name := arr[1].(*string)
    				svc, err := corev1.GetService(ctx,
    					"redis-master-svc",
    					pulumi.ID(fmt.Sprintf("%s/%s-master", *namespace, *name)),
    					nil,
    				)
    				if err != nil {
    					return "", nil
    				}
    				return svc.Spec.ClusterIP(), nil
    			})
    		ctx.Export("redisMasterClusterIP", srv)
    
    		return nil
    	})
    }
    

    Coming soon!

    from pulumi import Output
    from pulumi_kubernetes.core.v1 import Service
    from pulumi_kubernetes.helm.v3 import Release, ReleaseArgs, RepositoryOptsArgs
    
    redis = Release(
        "redis",
        ReleaseArgs(
            chart="redis",
            repository_opts=RepositoryOptsArgs(
                repo="https://raw.githubusercontent.com/bitnami/charts/eb5f9a9513d987b519f0ecd732e7031241c50328/bitnami",
            ),
            values={
                "cluster": {
                    "enabled": True,
                },
                "rbac": {
                    "create": True,
                }
            },
        ),
    )
    
    # srv will only resolve after the redis chart is installed.
    srv = Service.get("redis-master-svc", Output.concat(redis.status.namespace, "/", redis.status.name, "-master"))
    pulumi.export("redisMasterClusterIP", srv.spec.cluster_ip)
    
    import * as pulumi from "@pulumi/pulumi";
    import * as k8s from "@pulumi/kubernetes";
    import {FileAsset} from "@pulumi/pulumi/asset";
    
    const redis = new k8s.helm.v3.Release("redis", {
        chart: "redis",
        repositoryOpts: {
            repo: "https://raw.githubusercontent.com/bitnami/charts/eb5f9a9513d987b519f0ecd732e7031241c50328/bitnami",
        },
        values: {
            cluster: {
                enabled: true,
            },
            rbac: {
                create: true,
            }
        },
    });
    
    // srv will only resolve after the redis chart is installed.
    const srv = k8s.core.v1.Service.get("redis-master-svc", pulumi.interpolate`${redis.status.namespace}/${redis.status.name}-master`);
    export const redisMasterClusterIP = srv.spec.clusterIP;
    

    Coming soon!

    Create Release Resource

    new Release(name: string, args: ReleaseOpts, opts?: ComponentResourceOptions);
    @overload
    def Release(resource_name: str,
                opts: Optional[ResourceOptions] = None,
                allow_null_values: Optional[bool] = None,
                atomic: Optional[bool] = None,
                chart: Optional[str] = None,
                cleanup_on_fail: Optional[bool] = None,
                create_namespace: Optional[bool] = None,
                dependency_update: Optional[bool] = None,
                description: Optional[str] = None,
                devel: Optional[bool] = None,
                disable_crd_hooks: Optional[bool] = None,
                disable_openapi_validation: Optional[bool] = None,
                disable_webhooks: Optional[bool] = None,
                force_update: Optional[bool] = None,
                keyring: Optional[str] = None,
                lint: Optional[bool] = None,
                manifest: Optional[Mapping[str, Any]] = None,
                max_history: Optional[int] = None,
                name: Optional[str] = None,
                namespace: Optional[str] = None,
                postrender: Optional[str] = None,
                recreate_pods: Optional[bool] = None,
                render_subchart_notes: Optional[bool] = None,
                replace: Optional[bool] = None,
                repository_opts: Optional[_helm_sh.v3.RepositoryOptsArgs] = None,
                reset_values: Optional[bool] = None,
                resource_names: Optional[Mapping[str, Sequence[str]]] = None,
                reuse_values: Optional[bool] = None,
                skip_await: Optional[bool] = None,
                skip_crds: Optional[bool] = None,
                timeout: Optional[int] = None,
                value_yaml_files: Optional[Sequence[Union[pulumi.Asset, pulumi.Archive]]] = None,
                values: Optional[Mapping[str, Any]] = None,
                verify: Optional[bool] = None,
                version: Optional[str] = None,
                wait_for_jobs: Optional[bool] = None)
    @overload
    def Release(resource_name: str,
                args: ReleaseArgs,
                opts: Optional[ResourceOptions] = None)
    func NewRelease(ctx *Context, name string, args ReleaseArgs, opts ...ResourceOption) (*Release, error)
    public Release(string name, ReleaseArgs args, ComponentResourceOptions? opts = null)
    public Release(String name, ReleaseArgs args)
    public Release(String name, ReleaseArgs args, ComponentResourceOptions options)
    
    type: kubernetes:helm.sh/v3:Release
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    
    name string
    The unique name of the resource.
    args ReleaseOpts
    The arguments to resource properties.
    opts ComponentResourceOptions
    Bag of options to control resource's behavior.
    resource_name str
    The unique name of the resource.
    args ReleaseArgs
    The arguments to resource properties.
    opts ResourceOptions
    Bag of options to control resource's behavior.
    ctx Context
    Context object for the current deployment.
    name string
    The unique name of the resource.
    args ReleaseArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args ReleaseArgs
    The arguments to resource properties.
    opts ComponentResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args ReleaseArgs
    The arguments to resource properties.
    options ComponentResourceOptions
    Bag of options to control resource's behavior.

    Release Resource Properties

    To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

    Inputs

    The Release resource accepts the following input properties:

    Chart string

    Chart name to be installed. A path may be used.

    AllowNullValues bool

    Whether to allow Null values in helm chart configs.

    Atomic bool

    If set, installation process purges chart on fail. skipAwait will be disabled automatically if atomic is used.

    CleanupOnFail bool

    Allow deletion of new resources created in this upgrade when upgrade fails.

    CreateNamespace bool

    Create the namespace if it does not exist.

    DependencyUpdate bool

    Run helm dependency update before installing the chart.

    Description string

    Add a custom description

    Devel bool

    Use chart development versions, too. Equivalent to version '>0.0.0-0'. If version is set, this is ignored.

    DisableCRDHooks bool

    Prevent CRD hooks from running, but run other hooks. See helm install --no-crd-hook

    DisableOpenapiValidation bool

    If set, the installation process will not validate rendered templates against the Kubernetes OpenAPI Schema

    DisableWebhooks bool

    Prevent hooks from running.

    ForceUpdate bool

    Force resource update through delete/recreate if needed.

    Keyring string

    Location of public keys used for verification. Used only if verify is true

    Lint bool

    Run helm lint when planning.

    Manifest Dictionary<string, object>

    The rendered manifests as JSON. Not yet supported.

    MaxHistory int

    Limit the maximum number of revisions saved per release. Use 0 for no limit.

    Name string

    Release name.

    Namespace string

    Namespace to install the release into.

    Postrender string

    Postrender command to run.

    RecreatePods bool

    Perform pods restart during upgrade/rollback.

    RenderSubchartNotes bool

    If set, render subchart notes along with the parent.

    Replace bool

    Re-use the given name, even if that name is already used. This is unsafe in production

    RepositoryOpts RepositoryOpts

    Specification defining the Helm chart repository to use.

    ResetValues bool

    When upgrading, reset the values to the ones built into the chart.

    ResourceNames Dictionary<string, ImmutableArray<string>>

    Names of resources created by the release grouped by "kind/version".

    ReuseValues bool

    When upgrading, reuse the last release's values and merge in any overrides. If 'resetValues' is specified, this is ignored

    SkipAwait bool

    By default, the provider waits until all resources are in a ready state before marking the release as successful. Setting this to true will skip such await logic.

    SkipCrds bool

    If set, no CRDs will be installed. By default, CRDs are installed if not already present.

    Timeout int

    Time in seconds to wait for any individual kubernetes operation.

    ValueYamlFiles List<AssetOrArchive>

    List of assets (raw yaml files). Content is read and merged with values.

    Values Dictionary<string, object>

    Custom values set for the release.

    Verify bool

    Verify the package before installing it.

    Version string

    Specify the exact chart version to install. If this is not specified, the latest version is installed.

    WaitForJobs bool

    Will wait until all Jobs have been completed before marking the release as successful. This is ignored if skipAwait is enabled.

    Chart string

    Chart name to be installed. A path may be used.

    AllowNullValues bool

    Whether to allow Null values in helm chart configs.

    Atomic bool

    If set, installation process purges chart on fail. skipAwait will be disabled automatically if atomic is used.

    CleanupOnFail bool

    Allow deletion of new resources created in this upgrade when upgrade fails.

    CreateNamespace bool

    Create the namespace if it does not exist.

    DependencyUpdate bool

    Run helm dependency update before installing the chart.

    Description string

    Add a custom description

    Devel bool

    Use chart development versions, too. Equivalent to version '>0.0.0-0'. If version is set, this is ignored.

    DisableCRDHooks bool

    Prevent CRD hooks from running, but run other hooks. See helm install --no-crd-hook

    DisableOpenapiValidation bool

    If set, the installation process will not validate rendered templates against the Kubernetes OpenAPI Schema

    DisableWebhooks bool

    Prevent hooks from running.

    ForceUpdate bool

    Force resource update through delete/recreate if needed.

    Keyring string

    Location of public keys used for verification. Used only if verify is true

    Lint bool

    Run helm lint when planning.

    Manifest map[string]interface{}

    The rendered manifests as JSON. Not yet supported.

    MaxHistory int

    Limit the maximum number of revisions saved per release. Use 0 for no limit.

    Name string

    Release name.

    Namespace string

    Namespace to install the release into.

    Postrender string

    Postrender command to run.

    RecreatePods bool

    Perform pods restart during upgrade/rollback.

    RenderSubchartNotes bool

    If set, render subchart notes along with the parent.

    Replace bool

    Re-use the given name, even if that name is already used. This is unsafe in production

    RepositoryOpts RepositoryOptsArgs

    Specification defining the Helm chart repository to use.

    ResetValues bool

    When upgrading, reset the values to the ones built into the chart.

    ResourceNames map[string][]string

    Names of resources created by the release grouped by "kind/version".

    ReuseValues bool

    When upgrading, reuse the last release's values and merge in any overrides. If 'resetValues' is specified, this is ignored

    SkipAwait bool

    By default, the provider waits until all resources are in a ready state before marking the release as successful. Setting this to true will skip such await logic.

    SkipCrds bool

    If set, no CRDs will be installed. By default, CRDs are installed if not already present.

    Timeout int

    Time in seconds to wait for any individual kubernetes operation.

    ValueYamlFiles AssetOrArchive

    List of assets (raw yaml files). Content is read and merged with values.

    Values map[string]interface{}

    Custom values set for the release.

    Verify bool

    Verify the package before installing it.

    Version string

    Specify the exact chart version to install. If this is not specified, the latest version is installed.

    WaitForJobs bool

    Will wait until all Jobs have been completed before marking the release as successful. This is ignored if skipAwait is enabled.

    chart String

    Chart name to be installed. A path may be used.

    allowNullValues Boolean

    Whether to allow Null values in helm chart configs.

    atomic Boolean

    If set, installation process purges chart on fail. skipAwait will be disabled automatically if atomic is used.

    cleanupOnFail Boolean

    Allow deletion of new resources created in this upgrade when upgrade fails.

    createNamespace Boolean

    Create the namespace if it does not exist.

    dependencyUpdate Boolean

    Run helm dependency update before installing the chart.

    description String

    Add a custom description

    devel Boolean

    Use chart development versions, too. Equivalent to version '>0.0.0-0'. If version is set, this is ignored.

    disableCRDHooks Boolean

    Prevent CRD hooks from running, but run other hooks. See helm install --no-crd-hook

    disableOpenapiValidation Boolean

    If set, the installation process will not validate rendered templates against the Kubernetes OpenAPI Schema

    disableWebhooks Boolean

    Prevent hooks from running.

    forceUpdate Boolean

    Force resource update through delete/recreate if needed.

    keyring String

    Location of public keys used for verification. Used only if verify is true

    lint Boolean

    Run helm lint when planning.

    manifest Map<String,Object>

    The rendered manifests as JSON. Not yet supported.

    maxHistory Integer

    Limit the maximum number of revisions saved per release. Use 0 for no limit.

    name String

    Release name.

    namespace String

    Namespace to install the release into.

    postrender String

    Postrender command to run.

    recreatePods Boolean

    Perform pods restart during upgrade/rollback.

    renderSubchartNotes Boolean

    If set, render subchart notes along with the parent.

    replace Boolean

    Re-use the given name, even if that name is already used. This is unsafe in production

    repositoryOpts RepositoryOpts

    Specification defining the Helm chart repository to use.

    resetValues Boolean

    When upgrading, reset the values to the ones built into the chart.

    resourceNames Map<String,List<String>>

    Names of resources created by the release grouped by "kind/version".

    reuseValues Boolean

    When upgrading, reuse the last release's values and merge in any overrides. If 'resetValues' is specified, this is ignored

    skipAwait Boolean

    By default, the provider waits until all resources are in a ready state before marking the release as successful. Setting this to true will skip such await logic.

    skipCrds Boolean

    If set, no CRDs will be installed. By default, CRDs are installed if not already present.

    timeout Integer

    Time in seconds to wait for any individual kubernetes operation.

    valueYamlFiles List<AssetOrArchive>

    List of assets (raw yaml files). Content is read and merged with values.

    values Map<String,Object>

    Custom values set for the release.

    verify Boolean

    Verify the package before installing it.

    version String

    Specify the exact chart version to install. If this is not specified, the latest version is installed.

    waitForJobs Boolean

    Will wait until all Jobs have been completed before marking the release as successful. This is ignored if skipAwait is enabled.

    chart string

    Chart name to be installed. A path may be used.

    allowNullValues boolean

    Whether to allow Null values in helm chart configs.

    atomic boolean

    If set, installation process purges chart on fail. skipAwait will be disabled automatically if atomic is used.

    cleanupOnFail boolean

    Allow deletion of new resources created in this upgrade when upgrade fails.

    createNamespace boolean

    Create the namespace if it does not exist.

    dependencyUpdate boolean

    Run helm dependency update before installing the chart.

    description string

    Add a custom description

    devel boolean

    Use chart development versions, too. Equivalent to version '>0.0.0-0'. If version is set, this is ignored.

    disableCRDHooks boolean

    Prevent CRD hooks from running, but run other hooks. See helm install --no-crd-hook

    disableOpenapiValidation boolean

    If set, the installation process will not validate rendered templates against the Kubernetes OpenAPI Schema

    disableWebhooks boolean

    Prevent hooks from running.

    forceUpdate boolean

    Force resource update through delete/recreate if needed.

    keyring string

    Location of public keys used for verification. Used only if verify is true

    lint boolean

    Run helm lint when planning.

    manifest {[key: string]: any}

    The rendered manifests as JSON. Not yet supported.

    maxHistory number

    Limit the maximum number of revisions saved per release. Use 0 for no limit.

    name string

    Release name.

    namespace string

    Namespace to install the release into.

    postrender string

    Postrender command to run.

    recreatePods boolean

    Perform pods restart during upgrade/rollback.

    renderSubchartNotes boolean

    If set, render subchart notes along with the parent.

    replace boolean

    Re-use the given name, even if that name is already used. This is unsafe in production

    repositoryOpts helm.sh.v3.RepositoryOpts

    Specification defining the Helm chart repository to use.

    resetValues boolean

    When upgrading, reset the values to the ones built into the chart.

    resourceNames {[key: string]: string[]}

    Names of resources created by the release grouped by "kind/version".

    reuseValues boolean

    When upgrading, reuse the last release's values and merge in any overrides. If 'resetValues' is specified, this is ignored

    skipAwait boolean

    By default, the provider waits until all resources are in a ready state before marking the release as successful. Setting this to true will skip such await logic.

    skipCrds boolean

    If set, no CRDs will be installed. By default, CRDs are installed if not already present.

    timeout number

    Time in seconds to wait for any individual kubernetes operation.

    valueYamlFiles (pulumi.asset.Asset | pulumi.asset.Archive)[]

    List of assets (raw yaml files). Content is read and merged with values.

    values {[key: string]: any}

    Custom values set for the release.

    verify boolean

    Verify the package before installing it.

    version string

    Specify the exact chart version to install. If this is not specified, the latest version is installed.

    waitForJobs boolean

    Will wait until all Jobs have been completed before marking the release as successful. This is ignored if skipAwait is enabled.

    chart str

    Chart name to be installed. A path may be used.

    allow_null_values bool

    Whether to allow Null values in helm chart configs.

    atomic bool

    If set, installation process purges chart on fail. skipAwait will be disabled automatically if atomic is used.

    cleanup_on_fail bool

    Allow deletion of new resources created in this upgrade when upgrade fails.

    create_namespace bool

    Create the namespace if it does not exist.

    dependency_update bool

    Run helm dependency update before installing the chart.

    description str

    Add a custom description

    devel bool

    Use chart development versions, too. Equivalent to version '>0.0.0-0'. If version is set, this is ignored.

    disable_crd_hooks bool

    Prevent CRD hooks from running, but run other hooks. See helm install --no-crd-hook

    disable_openapi_validation bool

    If set, the installation process will not validate rendered templates against the Kubernetes OpenAPI Schema

    disable_webhooks bool

    Prevent hooks from running.

    force_update bool

    Force resource update through delete/recreate if needed.

    keyring str

    Location of public keys used for verification. Used only if verify is true

    lint bool

    Run helm lint when planning.

    manifest Mapping[str, Any]

    The rendered manifests as JSON. Not yet supported.

    max_history int

    Limit the maximum number of revisions saved per release. Use 0 for no limit.

    name str

    Release name.

    namespace str

    Namespace to install the release into.

    postrender str

    Postrender command to run.

    recreate_pods bool

    Perform pods restart during upgrade/rollback.

    render_subchart_notes bool

    If set, render subchart notes along with the parent.

    replace bool

    Re-use the given name, even if that name is already used. This is unsafe in production

    repository_opts RepositoryOptsArgs

    Specification defining the Helm chart repository to use.

    reset_values bool

    When upgrading, reset the values to the ones built into the chart.

    resource_names Mapping[str, Sequence[str]]

    Names of resources created by the release grouped by "kind/version".

    reuse_values bool

    When upgrading, reuse the last release's values and merge in any overrides. If 'resetValues' is specified, this is ignored

    skip_await bool

    By default, the provider waits until all resources are in a ready state before marking the release as successful. Setting this to true will skip such await logic.

    skip_crds bool

    If set, no CRDs will be installed. By default, CRDs are installed if not already present.

    timeout int

    Time in seconds to wait for any individual kubernetes operation.

    value_yaml_files Archive]]

    List of assets (raw yaml files). Content is read and merged with values.

    values Mapping[str, Any]

    Custom values set for the release.

    verify bool

    Verify the package before installing it.

    version str

    Specify the exact chart version to install. If this is not specified, the latest version is installed.

    wait_for_jobs bool

    Will wait until all Jobs have been completed before marking the release as successful. This is ignored if skipAwait is enabled.

    chart String

    Chart name to be installed. A path may be used.

    allowNullValues Boolean

    Whether to allow Null values in helm chart configs.

    atomic Boolean

    If set, installation process purges chart on fail. skipAwait will be disabled automatically if atomic is used.

    cleanupOnFail Boolean

    Allow deletion of new resources created in this upgrade when upgrade fails.

    createNamespace Boolean

    Create the namespace if it does not exist.

    dependencyUpdate Boolean

    Run helm dependency update before installing the chart.

    description String

    Add a custom description

    devel Boolean

    Use chart development versions, too. Equivalent to version '>0.0.0-0'. If version is set, this is ignored.

    disableCRDHooks Boolean

    Prevent CRD hooks from running, but run other hooks. See helm install --no-crd-hook

    disableOpenapiValidation Boolean

    If set, the installation process will not validate rendered templates against the Kubernetes OpenAPI Schema

    disableWebhooks Boolean

    Prevent hooks from running.

    forceUpdate Boolean

    Force resource update through delete/recreate if needed.

    keyring String

    Location of public keys used for verification. Used only if verify is true

    lint Boolean

    Run helm lint when planning.

    manifest Map<Any>

    The rendered manifests as JSON. Not yet supported.

    maxHistory Number

    Limit the maximum number of revisions saved per release. Use 0 for no limit.

    name String

    Release name.

    namespace String

    Namespace to install the release into.

    postrender String

    Postrender command to run.

    recreatePods Boolean

    Perform pods restart during upgrade/rollback.

    renderSubchartNotes Boolean

    If set, render subchart notes along with the parent.

    replace Boolean

    Re-use the given name, even if that name is already used. This is unsafe in production

    repositoryOpts Property Map

    Specification defining the Helm chart repository to use.

    resetValues Boolean

    When upgrading, reset the values to the ones built into the chart.

    resourceNames Map<List<String>>

    Names of resources created by the release grouped by "kind/version".

    reuseValues Boolean

    When upgrading, reuse the last release's values and merge in any overrides. If 'resetValues' is specified, this is ignored

    skipAwait Boolean

    By default, the provider waits until all resources are in a ready state before marking the release as successful. Setting this to true will skip such await logic.

    skipCrds Boolean

    If set, no CRDs will be installed. By default, CRDs are installed if not already present.

    timeout Number

    Time in seconds to wait for any individual kubernetes operation.

    valueYamlFiles List<Asset>

    List of assets (raw yaml files). Content is read and merged with values.

    values Map<Any>

    Custom values set for the release.

    verify Boolean

    Verify the package before installing it.

    version String

    Specify the exact chart version to install. If this is not specified, the latest version is installed.

    waitForJobs Boolean

    Will wait until all Jobs have been completed before marking the release as successful. This is ignored if skipAwait is enabled.

    Outputs

    All input properties are implicitly available as output properties. Additionally, the Release resource produces the following output properties:

    Id string

    The provider-assigned unique ID for this managed resource.

    Status ReleaseStatus

    Status of the deployed release.

    Id string

    The provider-assigned unique ID for this managed resource.

    Status ReleaseStatus

    Status of the deployed release.

    id String

    The provider-assigned unique ID for this managed resource.

    status ReleaseStatus

    Status of the deployed release.

    id string

    The provider-assigned unique ID for this managed resource.

    status helm.sh.v3.ReleaseStatus

    Status of the deployed release.

    id str

    The provider-assigned unique ID for this managed resource.

    status ReleaseStatus

    Status of the deployed release.

    id String

    The provider-assigned unique ID for this managed resource.

    status Property Map

    Status of the deployed release.

    Supporting Types

    ReleaseStatus, ReleaseStatusArgs

    Status string

    Status of the release.

    AppVersion string

    The version number of the application being deployed.

    Chart string

    The name of the chart.

    Name string

    Name is the name of the release.

    Namespace string

    Namespace is the kubernetes namespace of the release.

    Revision int

    Version is an int32 which represents the version of the release.

    Version string

    A SemVer 2 conformant version string of the chart.

    Status string

    Status of the release.

    AppVersion string

    The version number of the application being deployed.

    Chart string

    The name of the chart.

    Name string

    Name is the name of the release.

    Namespace string

    Namespace is the kubernetes namespace of the release.

    Revision int

    Version is an int32 which represents the version of the release.

    Version string

    A SemVer 2 conformant version string of the chart.

    status String

    Status of the release.

    appVersion String

    The version number of the application being deployed.

    chart String

    The name of the chart.

    name String

    Name is the name of the release.

    namespace String

    Namespace is the kubernetes namespace of the release.

    revision Integer

    Version is an int32 which represents the version of the release.

    version String

    A SemVer 2 conformant version string of the chart.

    status string

    Status of the release.

    appVersion string

    The version number of the application being deployed.

    chart string

    The name of the chart.

    name string

    Name is the name of the release.

    namespace string

    Namespace is the kubernetes namespace of the release.

    revision number

    Version is an int32 which represents the version of the release.

    version string

    A SemVer 2 conformant version string of the chart.

    status str

    Status of the release.

    app_version str

    The version number of the application being deployed.

    chart str

    The name of the chart.

    name str

    Name is the name of the release.

    namespace str

    Namespace is the kubernetes namespace of the release.

    revision int

    Version is an int32 which represents the version of the release.

    version str

    A SemVer 2 conformant version string of the chart.

    status String

    Status of the release.

    appVersion String

    The version number of the application being deployed.

    chart String

    The name of the chart.

    name String

    Name is the name of the release.

    namespace String

    Namespace is the kubernetes namespace of the release.

    revision Number

    Version is an int32 which represents the version of the release.

    version String

    A SemVer 2 conformant version string of the chart.

    RepositoryOpts, RepositoryOptsArgs

    CaFile string

    The Repository's CA File

    CertFile string

    The repository's cert file

    KeyFile string

    The repository's cert key file

    Password string

    Password for HTTP basic authentication

    Repo string

    Repository where to locate the requested chart. If is a URL the chart is installed without installing the repository.

    Username string

    Username for HTTP basic authentication

    CaFile string

    The Repository's CA File

    CertFile string

    The repository's cert file

    KeyFile string

    The repository's cert key file

    Password string

    Password for HTTP basic authentication

    Repo string

    Repository where to locate the requested chart. If is a URL the chart is installed without installing the repository.

    Username string

    Username for HTTP basic authentication

    caFile String

    The Repository's CA File

    certFile String

    The repository's cert file

    keyFile String

    The repository's cert key file

    password String

    Password for HTTP basic authentication

    repo String

    Repository where to locate the requested chart. If is a URL the chart is installed without installing the repository.

    username String

    Username for HTTP basic authentication

    caFile string

    The Repository's CA File

    certFile string

    The repository's cert file

    keyFile string

    The repository's cert key file

    password string

    Password for HTTP basic authentication

    repo string

    Repository where to locate the requested chart. If is a URL the chart is installed without installing the repository.

    username string

    Username for HTTP basic authentication

    ca_file str

    The Repository's CA File

    cert_file str

    The repository's cert file

    key_file str

    The repository's cert key file

    password str

    Password for HTTP basic authentication

    repo str

    Repository where to locate the requested chart. If is a URL the chart is installed without installing the repository.

    username str

    Username for HTTP basic authentication

    caFile String

    The Repository's CA File

    certFile String

    The repository's cert file

    keyFile String

    The repository's cert key file

    password String

    Password for HTTP basic authentication

    repo String

    Repository where to locate the requested chart. If is a URL the chart is installed without installing the repository.

    username String

    Username for HTTP basic authentication

    Import

    An existing Helm Release resource can be imported using its type token, name and identifier, e.g.

    $ pulumi import kubernetes:helm.sh/v3:Release myRelease <namespace>/<releaseName>
    

    Package Details

    Repository
    Kubernetes pulumi/pulumi-kubernetes
    License
    Apache-2.0
    kubernetes logo
    Kubernetes v4.3.0 published on Monday, Sep 25, 2023 by Pulumi