terraform-provider-helm

Terraform Helm provider

Github stars Tracking Chart

Terraform Provider for Helm
Build Status
GitHub tag (latest SemVer)
license

This is a Helm provider for Terraform.

The provider manages the installed Charts in your Kubernetes cluster, in the same way Helm does, through Terraform.

⚠️ Project Update: Helm 3

The latest release 1.0.0 for this provider brings support for Helm 3. This is a breaking change that removes support for Helm 2 and tiller. If you are still using Helm 2 see the section below.

Helm 2 support

If you are still using Helm 2 and tiller you will have to pin your provider version to the latest 0.10.x release.

We will continue to accept bugfixes for the 0.10.x version of the provider, please open your pull request against the latest release-0.10.x branch.

Contents

Developing the Provider

Installation from sources

If you wish to compile the provider from source code, you'll first need Go installed on your machine (version >=1.9 is required). You'll also need to correctly setup a GOPATH, as well as adding $GOPATH/bin to your $PATH.

Clone repository to: $GOPATH/src/github.com/terraform-providers/terraform-provider-helm

> mkdir -p $GOPATH/src/github.com/terraform-providers
> git clone https://github.com/terraform-providers/terraform-provider-helm.git $GOPATH/src/github.com/terraform-providers/terraform-provider-helm

Enter the provider directory and build the provider

> cd $GOPATH/src/github.com/terraform-providers/terraform-provider-helm
> make build

Now copy the compiled binary to the Terraform's plugins folder, if is your first plugin maybe isn't present.

> mkdir -p ~/.terraform.d/plugins/
> mv terraform-provider-helm ~/.terraform.d/plugins/

Example

This is a small example of how to install the mariadb chart on your default
kubernetes cluster, since the provider was initialized, all the configuration
is retrieved from the environment. Please read the documentation for more
information.

You should have a local configured copy of kubectl.

resource "helm_release" "my_database" {
    name      = "my-database"
    chart     = "stable/mariadb"

    set {
        name  = "mariadbUser"
        value = "foo"
    }

    set {
        name = "mariadbPassword"
        value = "qux"
    }

    set_string {
        name = "image.tags"
        value = "registry\\.io/terraform-provider-helm\\,example\\.io/terraform-provider-helm"
    }
}

License

Mozilla Public License 2.0, see LICENSE

Main metrics

Overview
Name With Ownerhashicorp/terraform-provider-helm
Primary LanguageGo
Program languageGo (Language Count: 4)
Platform
License:Mozilla Public License 2.0
所有者活动
Created At2017-06-25 15:30:14
Pushed At2025-06-17 15:24:05
Last Commit At
Release Count67
Last Release Namev3.0.0-pre2 (Posted on )
First Release Namev0.1.0 (Posted on )
用户参与
Stargazers Count1k
Watchers Count40
Fork Count390
Commits Count707
Has Issues Enabled
Issues Count819
Issue Open Count86
Pull Requests Count479
Pull Requests Open Count32
Pull Requests Close Count276
项目设置
Has Wiki Enabled
Is Archived
Is Fork
Is Locked
Is Mirror
Is Private