Difference between revisions of "Terraform provider: Helm"

From wikieduonline
Jump to navigation Jump to search
 
(27 intermediate revisions by 2 users not shown)
Line 1: Line 1:
 
https://registry.terraform.io/providers/hashicorp/helm/latest/docs
 
https://registry.terraform.io/providers/hashicorp/helm/latest/docs
 +
== Examples ==
 +
provider "helm" {}
 +
 +
provider "helm" {
 +
  kubernetes {
 +
    config_path = "[[~/.kube/config]]"
 +
  }
 +
}
 +
 +
provider "helm" {
 +
  kubernetes {
 +
    config_path = "[[~/.kube/config]]"
 +
    config_context = "my-context-cluster"
 +
  }
 +
}
 +
 +
== Official example in EKS module deployed with Karpenter ==
 +
 +
{{provider helm karpenter example}}
 +
Ref:  https://github.com/terraform-aws-modules/terraform-aws-eks/blob/master/examples/karpenter/main.tf
 +
 +
Resources:
 +
* <code>[[Terraform resource: helm release|helm_release]]</code>
  
provider "helm" {}
+
Data source:
 +
* <code>[[helm template]]</code>
  
 +
== Errors ==
 +
 +
│ Error: Kubernetes cluster unreachable: Get "https://XXXXXXXXX.sk1.us-east-2.eks.amazonaws.com/version": getting credentials: exec: [[executable aws failed with exit code 253]]
 +
 +
│  with helm_release.argocd,
 +
│  on helm.tf line 16, in resource "helm_release" "argocd":
 +
│  16: resource "[[helm_release]]" "argocd" {
 +
 +
 +
 +
Solution: export [[AWS_PROFILE]]="your-profile"
  
 
== Related ==
 
== Related ==
 
* [[Terraform: Kubernetes provider]]
 
* [[Terraform: Kubernetes provider]]
 
+
* [[Terraform: kubectl provider]]
 +
* <code>[[Error: unable to build kubernetes objects]]</code>
  
 
== See also ==
 
== See also ==
* {{Helm}}
+
* {{terraform helm}}
* {{Terraform}}
+
* {{helm install}}
  
 
[[Category:Terraform]]
 
[[Category:Terraform]]

Latest revision as of 09:39, 30 January 2025

https://registry.terraform.io/providers/hashicorp/helm/latest/docs

Examples[edit]

provider "helm" {}
provider "helm" {
  kubernetes {
    config_path = "~/.kube/config"
  }
}
provider "helm" {
  kubernetes {
    config_path = "~/.kube/config"
    config_context = "my-context-cluster"
  }
}

Official example in EKS module deployed with Karpenter[edit]

 provider "helm" {
 kubernetes {
   host                   = module.eks.cluster_endpoint
   cluster_ca_certificate = base64decode(module.eks.cluster_certificate_authority_data)

   exec {
     api_version = "client.authentication.k8s.io/v1beta1"
     command     = "aws"
     # This requires the awscli to be installed locally where Terraform is executed
     args = ["eks", "get-token", "--cluster-name", module.eks.cluster_name]
   }
 }
}

Ref: https://github.com/terraform-aws-modules/terraform-aws-eks/blob/master/examples/karpenter/main.tf

Resources:

Data source:

Errors[edit]

╷
│ Error: Kubernetes cluster unreachable: Get "https://XXXXXXXXX.sk1.us-east-2.eks.amazonaws.com/version": getting credentials: exec: executable aws failed with exit code 253 
│
│   with helm_release.argocd,
│   on helm.tf line 16, in resource "helm_release" "argocd":
│   16: resource "helm_release" "argocd" {
│
╵

Solution: export AWS_PROFILE="your-profile"

Related[edit]

See also[edit]

Advertising: