outputs.tf
Rama main · réplica de lectura del repositorio original.
output "talosconfig" {
description = "Use with talosctl"
value = module.infra.talos_client_configuration.talos_config
sensitive = true
}
output "kubeconfig" {
description = "Use with kubectl"
value = yamlencode({
apiVersion = "v1"
kind = "Config",
clusters = [{
name = local.cluster_name,
cluster = {
certificate-authority-data = module.infra.machine_secrets.certs.k8s.cert,
server = "https://${local.cluster_name}.${var.dns_loadbalancer_domain}:6443",
},
}],
contexts = [{
context = {
cluster = local.cluster_name,
user = var.cluster_oidc_issuer_host,
},
name = local.cluster_name,
}],
current-context = local.cluster_name,
users = [{
name = var.cluster_oidc_issuer_host,
user = {
exec = {
apiVersion = "client.authentication.k8s.io/v1"
command = "kubectl",
args = [
"oidc-login",
"get-token",
"--oidc-issuer-url=https://${var.cluster_oidc_issuer_host}",
"--oidc-client-id=${var.cluster_oidc_client_id}",
"--oidc-client-secret=${var.cluster_oidc_client_secret}",
"--oidc-extra-scope=profile",
"--oidc-extra-scope=groups",
"--oidc-pkce-method=S256",
],
interactiveMode = "Never",
provideClusterInfo = false,
},
},
}],
})
sensitive = true
}
output "machine_secrets" {
description = "Full access to the cluster if the state is lost"
value = yamlencode(module.infra.machine_secrets)
sensitive = true
}
output "flux_ssh_public_key" {
description = "Public SSH key Flux uses to access Git repositories"
value = module.k8s.flux_ssh_public_key
}
output "talos_url" {
description = "URLs to download ISO per node"
value = module.infra.talos_url
sensitive = false
}
output "talos_image" {
description = "URLs to use for upgrade images"
value = module.infra.talos_image
sensitive = false
}
output "talos_image_cache" {
description = "Image path segment to use for upgrade images if running off the local cahe"
value = {
for node, image in module.infra.talos_image : node => provider::corefunc::url_parse("https://${image}").path
}
sensitive = false
}
output "nodes" {
description = "Nodes and their UUIDs"
value = module.infra.nodes
sensitive = false
}
output "image_cache_serve_cert" {
value = module.infra.image_cache_serve_cert
sensitive = true
}