From 39ebdac18d6f167eaef97d9126fd48ba55113685 Mon Sep 17 00:00:00 2001 From: Ryan Lerch Date: Thu, 4 Apr 2024 13:33:33 +1000 Subject: [PATCH] badges: add wsgi for web frontend Signed-off-by: Ryan Lerch --- .../badges/files/deploymentconfig.yml | 13 +++++++++++-- roles/openshift-apps/badges/templates/configmap.yml | 12 +++++++++++- roles/openshift-apps/badges/templates/wsgi.py | 5 +++++ 3 files changed, 27 insertions(+), 3 deletions(-) create mode 100644 roles/openshift-apps/badges/templates/wsgi.py diff --git a/roles/openshift-apps/badges/files/deploymentconfig.yml b/roles/openshift-apps/badges/files/deploymentconfig.yml index c6c5b7086e..33f545ea1a 100644 --- a/roles/openshift-apps/badges/files/deploymentconfig.yml +++ b/roles/openshift-apps/badges/files/deploymentconfig.yml @@ -30,11 +30,14 @@ spec: containers: - name: frontend image: tahrir:latest - command: ["poetry"] - args: ["run", "gunicorn", "--paste", "/etc/badges/tahrir.ini", "-b", "0.0.0.0:8080", "-w", "4", "--log-level", "DEBUG", "-k", "gthread", "--threads", "2", "--preload", "--log-file=-"] imagePullPolicy: Always ports: - containerPort: 8080 + env: + - name: GUNICORN_CMD_ARGS + value: "--bind=0.0.0.0:8080" + - name: APP_MODULE + value: "deploy.wsgi" volumeMounts: - name: etc-badges mountPath: "/etc/badges" @@ -42,6 +45,9 @@ spec: - name: rules mountPath: "/var/lib/badges" readOnly: true + - name: wsgi-script-volume + mountPath: "/opt/app-root/src/deploy" + readOnly: true - name: ipa-config-volume mountPath: /etc/ipa readOnly: true @@ -95,6 +101,9 @@ spec: - name: rules persistentVolumeClaim: claimName: rules + - name: wsgi-script-volume + configMap: + name: wsgi-script - name: ipa-config-volume configMap: name: ipa-client-config diff --git a/roles/openshift-apps/badges/templates/configmap.yml b/roles/openshift-apps/badges/templates/configmap.yml index ae04ae279b..f21410507d 100644 --- a/roles/openshift-apps/badges/templates/configmap.yml +++ b/roles/openshift-apps/badges/templates/configmap.yml @@ -18,4 +18,14 @@ items: checkout-rules-repo.sh: |- {{ load_file('checkout-rules-repo.sh') | indent(6) }} tahrir.ini: |- - {{ load_file('tahrir.ini') | indent(6) }} \ No newline at end of file + {{ load_file('tahrir.ini') | indent(6) }} +- apiVersion: v1 + kind: ConfigMap + metadata: + name: wsgi-script + labels: + app: tahrir + data: + wsgi.py: |- + {{ load_file('wsgi.py') | indent(6) }} + __init__.py: "" \ No newline at end of file diff --git a/roles/openshift-apps/badges/templates/wsgi.py b/roles/openshift-apps/badges/templates/wsgi.py new file mode 100644 index 0000000000..6a7e949a61 --- /dev/null +++ b/roles/openshift-apps/badges/templates/wsgi.py @@ -0,0 +1,5 @@ +from pyramid.paster import get_app, setup_logging +ini_path = '/etc/badges/tahrir.ini' +setup_logging(ini_path) + +application = get_app(ini_path, 'main') \ No newline at end of file