Newer
Older
cluster_argocd_url = "${var.rancher_url}/k8s/clusters/${var.cluster_kube_id}"
argocd_cluster = templatefile("${path.module}/templates/cluster.yaml.tmpl", {
cluster_name = var.cluster_name
cluster_url = local.cluster_argocd_url
rancher_token = var.rancher_token
})
argocd_cluster_project = templatefile("${path.module}/templates/project.yaml.tmpl", {
cluster_name = var.cluster_name
cluster_url = local.cluster_argocd_url
admin_groups = var.admin_groups
admin_users = var.admin_users
member_groups = var.member_groups
member_users = var.member_users
})
argocd_cluster_app = templatefile("${path.module}/templates/argocd.yaml.tmpl", {
cluster_name = var.cluster_name
cluster_url = local.cluster_argocd_url
cluster_kube_id = var.cluster_kube_id
rancher_token = var.rancher_token
argocd_url = local.cluster_argocd_url
argocd_annotations = var.argocd_annotations
argocd_sync = var.argocd_sync
argocd_repo_url = var.argocd_repo_url
openstack_url = var.openstack_url
openstack_credential_id = var.openstack_credential_id
openstack_credential_secret = var.openstack_credential_secret
openstack_project = var.openstack_project
longhorn_enabled = var.longhorn_enabled
longhorn_replicas = var.longhorn_replicas
nfs_enabled = var.nfs_enabled
cinder_enabled = var.cinder_enabled
metallb_enabled = var.metallb_enabled
floating_ip = var.floating_ip
ingress_controller_enabled = var.ingress_controller_enabled
ingress_controller = var.ingress_controller
traefik_storageclass = var.traefik_storageclass
traefik_ports = indent(14, yamlencode(var.traefik_ports))
acme_staging = var.acme_staging
acme_email = var.acme_email
healthmonitor_enabled = var.healthmonitor_enabled
healthmonitor_nfs = var.healthmonitor_nfs
healthmonitor_secrets = var.healthmonitor_secrets
})
}
# ----------------------------------------------------------------------
# upload to central argocd server
# ----------------------------------------------------------------------
resource "kubectl_manifest" "argocd_cluster" {
yaml_body = local.argocd_cluster
}
resource "kubectl_manifest" "argocd_cluster_project" {
count = var.argocd_kube_id != "" ? 1 : 0
yaml_body = local.argocd_cluster_project
}
resource "kubectl_manifest" "argocd_cluster_app" {
count = var.argocd_kube_id != "" ? 1 : 0
yaml_body = local.argocd_cluster_app
}