From 762a3e8731ecdd85d15e6608400566110fd21884 Mon Sep 17 00:00:00 2001
From: Georg Pfuetzenreuter <mail@georg-pfuetzenreuter.net>
Date: Jun 08 2025 14:10:27 +0000
Subject: Reverse proxy for quiz


Signed-off-by: Georg Pfuetzenreuter <mail@georg-pfuetzenreuter.net>

---

diff --git a/pillar/cluster/atlas/backends.sls b/pillar/cluster/atlas/backends.sls
index 5747254..1c5ec8a 100644
--- a/pillar/cluster/atlas/backends.sls
+++ b/pillar/cluster/atlas/backends.sls
@@ -162,6 +162,12 @@ haproxy:
     pinot:
       {{ options() }}
       {{ server('pinot', '2a07:de40:b27e:1203::b15') }}
+    quiz:
+      {{ options('httpchk') }}
+      {{ httpcheck('quiz.infra.opensuse.org', 200, '/check', tls=True) }}
+      {{ server('quiz', '2a07:de40:b27e:1218::a10', 443, extra_extra='ssl verify required ca-file /usr/share/pki/trust/anchors/stepca-opensuse-ca.crt.pem') }}
+      httprequests:
+        - set-header X-Forwarded-Host %[req.hdr(Host)]
     redirect_www_o_o:
       redirects: code 302 location https://www.opensuse.org/
     redmine:
diff --git a/pillar/cluster/atlas/services.sls b/pillar/cluster/atlas/services.sls
index 73b0eef..f4a4048 100644
--- a/pillar/cluster/atlas/services.sls
+++ b/pillar/cluster/atlas/services.sls
@@ -122,6 +122,8 @@ haproxy:
         - host_paste        hdr(host)   -i paste.opensuse.org
         - host_paste        hdr(host)   -i paste-test.opensuse.org
         - host_pmya         hdr(host)   -i pmya.opensuse.org
+        - host_quiz         hdr(host)   -i quiz.opensuse.org
+        - host_quiz         hdr_end(host) -i .quiz.opensuse.org
         - host_redmine      hdr(host)   -i progress.opensuse.org
         - host_rpmlint      hdr(host)   -i rpmlint.opensuse.org
         - host_static_o_o   hdr(host)   -i static.opensuse.org
@@ -236,6 +238,7 @@ haproxy:
         - pinot           if host_contribute
         - pinot           if host_counter
         - pinot           if host_pmya
+        - quiz            if host_quiz
         - redmine         if host_redmine
         - rpmlint         if host_rpmlint
         - staticpages     if host_community path_ebooks
diff --git a/pillar/infra/certificates/letsencrypt.yaml b/pillar/infra/certificates/letsencrypt.yaml
index 5b1ebc9..9c5c9f1 100644
--- a/pillar/infra/certificates/letsencrypt.yaml
+++ b/pillar/infra/certificates/letsencrypt.yaml
@@ -185,6 +185,11 @@ proxy-prg2.opensuse.org:
 proxy-slc1.opensuse.org:
   targets:
     - macro: globus
+quiz.opensuse.org:
+  sans:
+    - '*.quiz.opensuse.org'
+  targets:
+    - macro: atlas
 redirector.opensuse.org:
   sans:
     - redirector-prg2.opensuse.org