Helpers to quickly deploy helm charts on GKE cluster
module "helm_release" {
source = "blackbird-cloud/gke-helm-deployment/google"
version = "~> 1"
project = "my-google-project"
region = "europe-west4-c"
cluster_name = "my-gke-cluster-name"
name = "my-app"
namespace = "my-app"
create_namespace = true
repository = "https://prometheus-community.github.io/helm-charts"
chart = "prometheus"
chart_version = "23.1.0"
values = [
yamlencode({
alertmanager : {
enabled : false
},
prometheus-pushgateway : {
enabled : false
}
})
]
cleanup_on_fail = true
wait = true
}
Name | Version |
---|---|
terraform | >= 1.1 |
4.34.0 | |
helm | 2.6.0 |
Name | Version |
---|---|
4.34.0 |
Name | Type |
---|---|
google_client_config.provider | data source |
google_container_cluster.my_cluster | data source |
Name | Description | Type | Default | Required |
---|---|---|---|---|
atomic | If set, installation process purges chart on fail. The wait flag will be set automatically if atomic is used. Defaults to false. | bool |
false |
no |
chart | Chart name to be installed. The chart name can be local path, a URL to a chart, or the name of the chart if repository is specified. It is also possible to use the / format here if you are running Terraform on a system that the repository has been added to with helm repo add but this is not recommended. | string |
"" |
no |
chart_version | Specify the exact chart version to install. If this is not specified, the latest version is installed. helm_release will not automatically grab the latest release, version must explicitly upgraded when upgrading an installed chart. | string |
null |
no |
cleanup_on_fail | Allow deletion of new resources created in this upgrade when upgrade fails. Defaults to true. | bool |
false |
no |
cluster_name | Cluster name | string |
n/a | yes |
create_namespace | Create the namespace if it does not yet exist. Defaults to false. | bool |
false |
no |
description | Set release description attribute (visible in the history). | string |
null |
no |
disable_webhooks | Prevent hooks from running. Defaults to false. | bool |
false |
no |
force_update | Force resource update through delete/recreate if needed. Defaults to false. | bool |
false |
no |
name | Release name. | string |
n/a | yes |
namespace | The namespace to install the release into. Defaults to default. | string |
"default" |
no |
project | Google Project ID | string |
n/a | yes |
recreate_pods | Perform pods restart during upgrade/rollback. Defaults to false. | bool |
false |
no |
region | Google Region | string |
n/a | yes |
repository | Repository URL where to locate the requested chart. | string |
null |
no |
repository_password | Password for HTTP basic authentication against the repository. | string |
null |
no |
repository_username | Username for HTTP basic authentication against the repository. | string |
null |
no |
sensitive_values | Which sensitive values to install for the helm chart. | list(string) |
[] |
no |
timeout | Time in seconds to wait for any individual kubernetes operation (like Jobs for hooks). Defaults to 300 seconds. | number |
300 |
no |
values | Which values to install for the helm chart. | list(string) |
[] |
no |
wait | Will wait until all resources are in a ready state before marking the release as successful. It will wait for as long as timeout. Defaults to true. | bool |
true |
no |
wait_for_jobs | If wait is enabled, will wait until all Jobs have been completed before marking the release as successful. It will wait for as long as timeout. Defaults to false. | bool |
true |
no |
Name | Description |
---|---|
deployment | The helm release |
We are Blackbird Cloud, Amsterdam based cloud consultancy, and cloud management service provider. We help companies build secure, cost efficient, and scale-able solutions.
Checkout our other 👉 terraform modules
Copyright © 2017-2024 Blackbird Cloud