kubernetes.helm.sh/v3.Release
Explore with Pulumi AI
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.
You may also want to consider the Chart
resource as an alternative method for managing helm charts. For more information about the trade-offs between these options see: Choosing the right Helm resource for your use case
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.AssetOrArchiveArray{
pulumi.NewFileAsset("./metrics.yml"),
},
Values: 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
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new Release(name: string, args: ReleaseOpts, opts?: ComponentResourceOptions);
@overload
def Release(resource_name: str,
args: ReleaseArgs,
opts: Optional[ResourceOptions] = None)
@overload
def Release(resource_name: str,
opts: Optional[ResourceOptions] = None,
chart: Optional[str] = None,
max_history: Optional[int] = None,
devel: Optional[bool] = None,
cleanup_on_fail: Optional[bool] = None,
name: Optional[str] = None,
dependency_update: Optional[bool] = None,
description: Optional[str] = None,
namespace: Optional[str] = None,
disable_crd_hooks: Optional[bool] = None,
postrender: Optional[str] = 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,
allow_null_values: Optional[bool] = None,
create_namespace: Optional[bool] = None,
atomic: Optional[bool] = None,
disable_openapi_validation: Optional[bool] = 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)
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.
Parameters
- 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
In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.
The Release resource accepts the following input properties:
- Chart string
- Chart name to be installed. A path may be used.
- Allow
Null boolValues - 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 boolFail - 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 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. - Disable
CRDHooks bool - Prevent CRD hooks from running, but run other hooks. See helm install --no-crd-hook
- Disable
Openapi boolValidation - 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 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.
- Max
History 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.
- Recreate
Pods bool - Perform pods restart during upgrade/rollback.
- Render
Subchart boolNotes - 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 RepositoryOpts - 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 Dictionary<string, ImmutableArray<string>> - 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 List<AssetFiles Or Archive> - 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.
- Wait
For boolJobs - 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.
- Allow
Null boolValues - 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 boolFail - 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 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. - Disable
CRDHooks bool - Prevent CRD hooks from running, but run other hooks. See helm install --no-crd-hook
- Disable
Openapi boolValidation - 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 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.
- Max
History 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.
- Recreate
Pods bool - Perform pods restart during upgrade/rollback.
- Render
Subchart boolNotes - 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 RepositoryOpts Args - 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 map[string][]string - 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 AssetFiles Or Archive - 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.
- Wait
For boolJobs - 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.
- allow
Null BooleanValues - 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. - cleanup
On BooleanFail - Allow deletion of new resources created in this upgrade when upgrade fails.
- create
Namespace Boolean - Create the namespace if it does not exist.
- dependency
Update 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. - disable
CRDHooks Boolean - Prevent CRD hooks from running, but run other hooks. See helm install --no-crd-hook
- disable
Openapi BooleanValidation - If set, the installation process will not validate rendered templates against the Kubernetes OpenAPI Schema
- disable
Webhooks Boolean - Prevent hooks from running.
- force
Update 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.
- max
History 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.
- recreate
Pods Boolean - Perform pods restart during upgrade/rollback.
- render
Subchart BooleanNotes - 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
- repository
Opts RepositoryOpts - Specification defining the Helm chart repository to use.
- reset
Values Boolean - When upgrading, reset the values to the ones built into the chart.
- resource
Names Map<String,List<String>> - Names of resources created by the release grouped by "kind/version".
- reuse
Values Boolean - When upgrading, reuse the last release's values and merge in any overrides. If 'resetValues' is specified, this is ignored
- skip
Await 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.
- skip
Crds 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.
- value
Yaml List<AssetFiles Or Archive> - 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.
- wait
For BooleanJobs - 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.
- allow
Null booleanValues - 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. - cleanup
On booleanFail - Allow deletion of new resources created in this upgrade when upgrade fails.
- create
Namespace boolean - Create the namespace if it does not exist.
- dependency
Update 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. - disable
CRDHooks boolean - Prevent CRD hooks from running, but run other hooks. See helm install --no-crd-hook
- disable
Openapi booleanValidation - If set, the installation process will not validate rendered templates against the Kubernetes OpenAPI Schema
- disable
Webhooks boolean - Prevent hooks from running.
- force
Update 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.
- max
History 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.
- recreate
Pods boolean - Perform pods restart during upgrade/rollback.
- render
Subchart booleanNotes - 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
- repository
Opts helm.sh.v3.Repository Opts - Specification defining the Helm chart repository to use.
- reset
Values boolean - When upgrading, reset the values to the ones built into the chart.
- resource
Names {[key: string]: string[]} - Names of resources created by the release grouped by "kind/version".
- reuse
Values boolean - When upgrading, reuse the last release's values and merge in any overrides. If 'resetValues' is specified, this is ignored
- skip
Await 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.
- skip
Crds 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.
- value
Yaml (pulumi.asset.Files 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.
- wait
For booleanJobs - 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_ boolvalues - 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_ boolfail - 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_ boolhooks - Prevent CRD hooks from running, but run other hooks. See helm install --no-crd-hook
- disable_
openapi_ boolvalidation - 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_ boolnotes - 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 helm_sh.v3. Repository Opts Args - 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_ Sequence[Union[pulumi.files Asset, pulumi. 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_ booljobs - 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.
- allow
Null BooleanValues - 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. - cleanup
On BooleanFail - Allow deletion of new resources created in this upgrade when upgrade fails.
- create
Namespace Boolean - Create the namespace if it does not exist.
- dependency
Update 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. - disable
CRDHooks Boolean - Prevent CRD hooks from running, but run other hooks. See helm install --no-crd-hook
- disable
Openapi BooleanValidation - If set, the installation process will not validate rendered templates against the Kubernetes OpenAPI Schema
- disable
Webhooks Boolean - Prevent hooks from running.
- force
Update 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.
- max
History 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.
- recreate
Pods Boolean - Perform pods restart during upgrade/rollback.
- render
Subchart BooleanNotes - 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
- repository
Opts Property Map - Specification defining the Helm chart repository to use.
- reset
Values Boolean - When upgrading, reset the values to the ones built into the chart.
- resource
Names Map<List<String>> - Names of resources created by the release grouped by "kind/version".
- reuse
Values Boolean - When upgrading, reuse the last release's values and merge in any overrides. If 'resetValues' is specified, this is ignored
- skip
Await 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.
- skip
Crds 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.
- value
Yaml List<Asset>Files - 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.
- wait
For BooleanJobs - 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
Release
Status - Status of the deployed release.
- Id string
- The provider-assigned unique ID for this managed resource.
- Status
Release
Status - Status of the deployed release.
- id String
- The provider-assigned unique ID for this managed resource.
- status
Release
Status - Status of the deployed release.
- id string
- The provider-assigned unique ID for this managed resource.
- status
helm.sh.v3.
Release Status - Status of the deployed release.
- id str
- The provider-assigned unique ID for this managed resource.
- status
helm_
sh.v3. Release Status - 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.
- App
Version 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.
- App
Version 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.
- app
Version 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.
- app
Version 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.
- app
Version 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
- Ca
File string - The Repository's CA File
- Cert
File string - The repository's cert file
- Key
File string - The repository's cert key file
- Password string
- Password for HTTP basic authentication
- Repo string
- Repository where to locate the requested chart. If it's a URL the chart is installed without installing the repository.
- Username string
- Username for HTTP basic authentication
- Ca
File string - The Repository's CA File
- Cert
File string - The repository's cert file
- Key
File string - The repository's cert key file
- Password string
- Password for HTTP basic authentication
- Repo string
- Repository where to locate the requested chart. If it's a URL the chart is installed without installing the repository.
- Username string
- Username for HTTP basic authentication
- ca
File String - The Repository's CA File
- cert
File String - The repository's cert file
- key
File String - The repository's cert key file
- password String
- Password for HTTP basic authentication
- repo String
- Repository where to locate the requested chart. If it's a URL the chart is installed without installing the repository.
- username String
- Username for HTTP basic authentication
- ca
File string - The Repository's CA File
- cert
File string - The repository's cert file
- key
File string - The repository's cert key file
- password string
- Password for HTTP basic authentication
- repo string
- Repository where to locate the requested chart. If it's 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 it's a URL the chart is installed without installing the repository.
- username str
- Username for HTTP basic authentication
- ca
File String - The Repository's CA File
- cert
File String - The repository's cert file
- key
File String - The repository's cert key file
- password String
- Password for HTTP basic authentication
- repo String
- Repository where to locate the requested chart. If it's 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>
To learn more about importing existing cloud resources, see Importing resources.
Package Details
- Repository
- Kubernetes pulumi/pulumi-kubernetes
- License
- Apache-2.0