- providers.tf: use host + token + ca_crt from mounted service account secrets - workflow: remove kubeconfig generation step (no longer needed) - variables.tf: remove unused kubeconfig_path variable This is the standard pattern for running terraform inside k8s pods.
51 lines
1.2 KiB
Terraform
51 lines
1.2 KiB
Terraform
terraform {
|
|
required_version = ">= 1.5"
|
|
required_providers {
|
|
kubernetes = {
|
|
source = "hashicorp/kubernetes"
|
|
version = "~> 2.27"
|
|
}
|
|
helm = {
|
|
source = "hashicorp/helm"
|
|
version = "~> 2.14"
|
|
}
|
|
vault = {
|
|
source = "hashicorp/vault"
|
|
version = "~> 4.0"
|
|
}
|
|
null = {
|
|
source = "hashicorp/null"
|
|
version = "~> 3.2"
|
|
}
|
|
authentik = {
|
|
source = "goauthentik/authentik"
|
|
version = "2024.12.1"
|
|
}
|
|
aws = {
|
|
source = "hashicorp/aws"
|
|
version = "~> 5.0"
|
|
}
|
|
}
|
|
}
|
|
|
|
provider "kubernetes" {
|
|
host = "https://kubernetes.default"
|
|
token = file("/var/run/secrets/kubernetes.io/serviceaccount/token")
|
|
cluster_ca_certificate = file("/var/run/secrets/kubernetes.io/serviceaccount/ca.crt")
|
|
insecure = false
|
|
}
|
|
|
|
provider "helm" {
|
|
kubernetes {
|
|
host = "https://kubernetes.default"
|
|
token = file("/var/run/secrets/kubernetes.io/serviceaccount/token")
|
|
cluster_ca_certificate = file("/var/run/secrets/kubernetes.io/serviceaccount/ca.crt")
|
|
insecure = false
|
|
}
|
|
}
|
|
|
|
provider "vault" {
|
|
address = "https://vault.riotpiao.homelab.com"
|
|
skip_tls_verify = true
|
|
}
|