From 4bbb55a06e078fab15bda0efe3e4ebd1b5493b86 Mon Sep 17 00:00:00 2001 From: Patrick Smith Date: Wed, 31 Oct 2018 16:03:10 -0400 Subject: [PATCH 1/6] Add RQ_QUEUES to default config We can use string interpolation in the file rather than building it when making the config. Adding the value to the config allows us to override it with an environment variable, if we want to (as we do for the UAT environment). --- atst/app.py | 2 +- config/base.ini | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/atst/app.py b/atst/app.py index cad01fea..591e5c65 100644 --- a/atst/app.py +++ b/atst/app.py @@ -102,7 +102,7 @@ def map_config(config): ), "REQUIRE_CRLS": config.getboolean("default", "REQUIRE_CRLS"), "RQ_REDIS_URL": config["default"]["REDIS_URI"], - "RQ_QUEUES": ["atat_{}".format(ENV.lower())], + "RQ_QUEUES": [config["default"]["RQ_QUEUES"]], } diff --git a/config/base.ini b/config/base.ini index 491ab0e4..ab075e1d 100644 --- a/config/base.ini +++ b/config/base.ini @@ -16,6 +16,7 @@ PGUSER = postgres PORT=8000 REDIS_URI = redis://localhost:6379 REQUIRE_CRLS = true +RQ_QUEUES = atat_%(ENVIRONMENT)s SECRET = change_me_into_something_secret SECRET_KEY = change_me_into_something_secret SESSION_COOKIE_NAME=atat From 67b14921d642f533035d074da708944537b623dc Mon Sep 17 00:00:00 2001 From: Patrick Smith Date: Wed, 31 Oct 2018 16:08:54 -0400 Subject: [PATCH 2/6] Update UAT deployment with RQ worker and latest code Specify a different RQ_QUEUE so that the worker does not attempt to run jobs for the staging environment (since they share the same redis connection). --- .../kubernetes/uat/atst-envvars-configmap.yml | 1 + deploy/kubernetes/uat/uat.yml | 47 ++++++++++++++++++- 2 files changed, 47 insertions(+), 1 deletion(-) diff --git a/deploy/kubernetes/uat/atst-envvars-configmap.yml b/deploy/kubernetes/uat/atst-envvars-configmap.yml index 0b0cb30b..0ac4cae5 100644 --- a/deploy/kubernetes/uat/atst-envvars-configmap.yml +++ b/deploy/kubernetes/uat/atst-envvars-configmap.yml @@ -8,3 +8,4 @@ data: FLASK_ENV: dev OVERRIDE_CONFIG_FULLPATH: /opt/atat/atst/atst-overrides.ini UWSGI_CONFIG_FULLPATH: /opt/atat/atst/uwsgi-config.ini + RQ_QUEUES: atat-uat diff --git a/deploy/kubernetes/uat/uat.yml b/deploy/kubernetes/uat/uat.yml index 1b015f04..d0e196ed 100644 --- a/deploy/kubernetes/uat/uat.yml +++ b/deploy/kubernetes/uat/uat.yml @@ -24,7 +24,7 @@ spec: fsGroup: 101 containers: - name: atst - image: registry.atat.codes:443/atst-prod:76854ac + image: registry.atat.codes:443/atst-prod:3a01b36d resources: requests: memory: "2500Mi" @@ -125,6 +125,51 @@ spec: emptyDir: medium: Memory --- +apiVersion: extensions/v1beta1 +kind: Deployment +metadata: + labels: + app: atst + name: atst-worker + namespace: atat-uat +spec: + replicas: 1 + strategy: + type: RollingUpdate + template: + metadata: + labels: + app: atst + spec: + securityContext: + fsGroup: 101 + containers: + - name: atst-worker + image: registry.atat.codes:443/atst-prod:3a01b36d + args: ["/bin/bash", "-c", "/opt/atat/atst/script/rq_worker"] + resources: + requests: + memory: "500Mi" + envFrom: + - configMapRef: + name: atst-envvars + - configMapRef: + name: atst-worker-envvars + volumeMounts: + - name: atst-config + mountPath: "/opt/atat/atst/atst-overrides.ini" + subPath: atst-overrides.ini + imagePullSecrets: + - name: regcred + volumes: + - name: atst-config + secret: + secretName: atst-config-ini + items: + - key: override.ini + path: atst-overrides.ini + mode: 0644 +--- apiVersion: v1 kind: Service metadata: From a9fc2bd2029df29af03b74a5f5f099afc1478f37 Mon Sep 17 00:00:00 2001 From: Patrick Smith Date: Wed, 31 Oct 2018 16:20:26 -0400 Subject: [PATCH 3/6] Force CicleCI to build & push an image for this branch --- .circleci/config.yml | 3 --- 1 file changed, 3 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 0e17a8f4..6eb9fd7a 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -206,9 +206,6 @@ workflows: - build_and_push_image: requires: - test - filters: - branches: - only: master - deploy: requires: - build_and_push_image From eaf9807e660846fb947425de57bc5d651661ed68 Mon Sep 17 00:00:00 2001 From: Patrick Smith Date: Wed, 31 Oct 2018 16:41:26 -0400 Subject: [PATCH 4/6] Revert "Force CicleCI to build & push an image for this branch" This reverts commit a9fc2bd2029df29af03b74a5f5f099afc1478f37. --- .circleci/config.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.circleci/config.yml b/.circleci/config.yml index 6eb9fd7a..0e17a8f4 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -206,6 +206,9 @@ workflows: - build_and_push_image: requires: - test + filters: + branches: + only: master - deploy: requires: - build_and_push_image From 6f10ef4a19112ff0d050a3a20daef9815533543e Mon Sep 17 00:00:00 2001 From: Patrick Smith Date: Wed, 31 Oct 2018 16:41:59 -0400 Subject: [PATCH 5/6] Update UAT image --- deploy/kubernetes/uat/uat.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/deploy/kubernetes/uat/uat.yml b/deploy/kubernetes/uat/uat.yml index d0e196ed..4863edc3 100644 --- a/deploy/kubernetes/uat/uat.yml +++ b/deploy/kubernetes/uat/uat.yml @@ -24,7 +24,7 @@ spec: fsGroup: 101 containers: - name: atst - image: registry.atat.codes:443/atst-prod:3a01b36d + image: registry.atat.codes:443/atst-prod:a9fc2bd2 resources: requests: memory: "2500Mi" @@ -145,7 +145,7 @@ spec: fsGroup: 101 containers: - name: atst-worker - image: registry.atat.codes:443/atst-prod:3a01b36d + image: registry.atat.codes:443/atst-prod:a9fc2bd2 args: ["/bin/bash", "-c", "/opt/atat/atst/script/rq_worker"] resources: requests: From 2a48a7856177c2b4047d239c8f6745334ed40786 Mon Sep 17 00:00:00 2001 From: Patrick Smith Date: Wed, 31 Oct 2018 16:42:10 -0400 Subject: [PATCH 6/6] Add worker envvars for UAT env --- deploy/kubernetes/uat/atst-worker-envvars-configmap.yml | 8 ++++++++ 1 file changed, 8 insertions(+) create mode 100644 deploy/kubernetes/uat/atst-worker-envvars-configmap.yml diff --git a/deploy/kubernetes/uat/atst-worker-envvars-configmap.yml b/deploy/kubernetes/uat/atst-worker-envvars-configmap.yml new file mode 100644 index 00000000..4dc7a986 --- /dev/null +++ b/deploy/kubernetes/uat/atst-worker-envvars-configmap.yml @@ -0,0 +1,8 @@ +--- +apiVersion: v1 +kind: ConfigMap +metadata: + name: atst-worker-envvars + namespace: atat-uat +data: + REQUIRE_CRLS: "False"