From 61a391a1d245908bf3aead7b8d40cd60510d1e21 Mon Sep 17 00:00:00 2001
From: Rob Kooper <kooper@illinois.edu>
Date: Thu, 9 Dec 2021 17:48:31 -0600
Subject: [PATCH] ability to specify entrypoints

---
 terraform/modules/argocd/argocd.tf                  | 1 +
 terraform/modules/argocd/templates/argocd.yaml.tmpl | 7 ++++++-
 terraform/modules/argocd/variables.tf               | 6 ++++++
 3 files changed, 13 insertions(+), 1 deletion(-)

diff --git a/terraform/modules/argocd/argocd.tf b/terraform/modules/argocd/argocd.tf
index 7893b14..b1f1836 100644
--- a/terraform/modules/argocd/argocd.tf
+++ b/terraform/modules/argocd/argocd.tf
@@ -42,6 +42,7 @@ locals {
     ingress_controller          = var.ingress_controller
     ingress_storageclass        = var.ingress_storageclass
     traefik_dashboard           = var.traefik_dashboard
+    traefik2_ports              = indent(14, yamlencode(var.traefik2_ports))
     acme_staging                = var.acme_staging
     acme_email                  = var.acme_email
     sealedsecrets_enabled       = var.sealedsecrets_enabled
diff --git a/terraform/modules/argocd/templates/argocd.yaml.tmpl b/terraform/modules/argocd/templates/argocd.yaml.tmpl
index 4e973b8..c57a1aa 100644
--- a/terraform/modules/argocd/templates/argocd.yaml.tmpl
+++ b/terraform/modules/argocd/templates/argocd.yaml.tmpl
@@ -66,7 +66,12 @@ spec:
           class: ${ingress_controller}
           publicIP: ${floating_ip[0].public_ip}
           privateIP: ${floating_ip[0].private_ip}
-          storageClass: ${ingress_storageclass}
+          storageClass: "${ingress_storageclass}"
+          %{~ if ingress_controller == "traefik2" ~}
+          traefik2:
+            ports:
+              ${traefik2_ports}
+          %{~ endif ~}
           acme:
             staging: ${acme_staging} 
             %{~ if (acme_staging) ~}
diff --git a/terraform/modules/argocd/variables.tf b/terraform/modules/argocd/variables.tf
index 6cb420d..fc0ef20 100644
--- a/terraform/modules/argocd/variables.tf
+++ b/terraform/modules/argocd/variables.tf
@@ -260,6 +260,12 @@ variable "traefik_use_certmanager" {
   default     = false
 }
 
+variable "traefik2_ports" {
+  type        = map
+  description = "Additional ports to add to traefik"
+  default     = {}
+}
+
 # ----------------------------------------------------------------------
 # LETS ENCRYPT
 # ----------------------------------------------------------------------
-- 
GitLab