Skip to content

Commit

Permalink
feat(backend): test brevo on kubernetes cluster
Browse files Browse the repository at this point in the history
Motivation
----------
We used to have brevo mocked out on our kubernetes cluster. I guess it would be best to be able to test it there as well.

This PR makes use of `envFrom.secretRef` which I found easier to maintain than enumerating all env vars.

How to test
-----------
1. Deploy to kubernetes
2. `k9s` check if env vars are set correctly
  • Loading branch information
roschaefer committed Oct 15, 2024
1 parent f22d5cd commit 189df19
Show file tree
Hide file tree
Showing 3 changed files with 31 additions and 26 deletions.
37 changes: 13 additions & 24 deletions infrastructure/helmfile/dreammall/templates/backend-deployment.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,11 @@ spec:
spec:
restartPolicy: Always
initContainers:
- env:
- image: "{{ .Values.backend.image.repository }}:{{ default .Values.global.image.tag .Values.backend.image.tag "latest" }}"
imagePullPolicy: {{ quote .Values.global.image.pullPolicy }}
name: backend-migrations
command: [ 'npm', 'run', 'db:migrate:deploy' ]
env:
- name: DATABASE_URL
valueFrom:
secretKeyRef:
Expand All @@ -27,12 +31,16 @@ spec:
key: frontend_url
- name: NODE_ENV
value: production
containers:
- name: backend
image: "{{ .Values.backend.image.repository }}:{{ default .Values.global.image.tag .Values.backend.image.tag "latest" }}"
imagePullPolicy: {{ quote .Values.global.image.pullPolicy }}
name: backend-migrations
command: [ 'npm', 'run', 'db:migrate:deploy' ]
containers:
- env:
ports:
- containerPort: 4000
envFrom:
- secretRef:
name: {{ .Release.Name }}-backend-env
env:
- name: DATABASE_URL
valueFrom:
secretKeyRef:
Expand Down Expand Up @@ -80,22 +88,3 @@ spec:
key: webhook_secret
- name: NODE_ENV
value: production
- name: BREVO_KEY
value: ""
- name: BREVO_ADMIN_NAME
value: ""
- name: BREVO_ADMIN_EMAIL
value: ""
- name: BREVO_CONTACT_TEMPLATE_ADMIN
value: "1"
- name: BREVO_CONTACT_TEMPLATE_USER
value: "2"
- name: BREVO_NEWSLETTER_TEMPLATE_OPTIN
value: "3"
- name: BREVO_NEWSLETTER_LIST
value: "3"
image: "{{ .Values.backend.image.repository }}:{{ default .Values.global.image.tag .Values.backend.image.tag "latest" }}"
imagePullPolicy: {{ quote .Values.global.image.pullPolicy }}
name: backend
ports:
- containerPort: 4000
7 changes: 7 additions & 0 deletions infrastructure/helmfile/dreammall/templates/secret-env.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
apiVersion: v1
kind: Secret
metadata:
name: {{ .Release.Name }}-backend-env
type: Opaque
stringData:
{{ .Values.secrets.backend.env | toYaml | indent 2 }}
13 changes: 11 additions & 2 deletions infrastructure/helmfile/secrets/dreammall.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,15 @@ secrets:
mariadb_replication_password: ENC[AES256_GCM,data:vn8lOoQY1v+tlfu2fR0VbRq8ZUo/C32CU/Zq38XSBoA=,iv:CpXs2mEq8fDqAUnHEBSy59BgdimrxwXISbA7LFcJN+U=,tag:ewIPm0PFsyXEPm9ajAeDVw==,type:str]
mariadb_password: ENC[AES256_GCM,data:NI/FT1zebTVI8opgdLpYL6wvRoKG6DqK/E4PGKaUBto=,iv:qsYGh61oJymDbq/wC6PAYfaFfXfzNVZkah2nVB2LBBs=,tag:erWVtBZycrq4QB2/k9tf0w==,type:str]
webhook_secret: ENC[AES256_GCM,data:Z4CuAh/kY8oK4HZmTM1Zk04UL0tmvMVDiQNxnoYy3mPrh8Bru6gQim1nVZ+ZdmDWL6ltirbUnwWibglf8TkbrA==,iv:Iaa0AFurOiHviTUzOQXzLAlnoTPX3VfxLYDcO9IFKAc=,tag:xLdwWI5qtxQlOR37mgaZXA==,type:str]
backend:
env:
BREVO_KEY: ENC[AES256_GCM,data:VXmXBia9eYhd2MUc5VmtnbWdJ7k2mCDJxpTBpGl47xqBCzteXXzNdpDlq5wCDpzYxJFxBKLjehqMLNmXSjghW5fnzmfN8ho3KK3RR6Jhrk5AplaCay0gwNc=,iv:EZ/Qiju9jZUcE9xRmD+3s1lG+DEoqXeajQ6VawN4xoI=,tag:DUkyqHNUGcMmLpH1jZUouA==,type:str]
BREVO_ADMIN_NAME: ENC[AES256_GCM,data:5Eodz4E1hlSPsu/YsyDq7Nc=,iv:dxwacji9In7As3eFtDNbVhiMtvIzRCJZJjObjDpZqAw=,tag:AV3CRO2NPXxGYnEm7ABWXw==,type:str]
BREVO_ADMIN_EMAIL: ENC[AES256_GCM,data:AQJcj0dB7JCN9BuK9UOI12N73BACjXo=,iv:zhyWgNxnoZZAmWzIRDum4gPCPMurvTJpaD5ONQ8oRPU=,tag:sMBYvMsywdGErGhGt3KZtA==,type:str]
BREVO_CONTACT_TEMPLATE_ADMIN: ENC[AES256_GCM,data:QpE=,iv:6xNYTHn4V+aI4cCvWQg6iAg6DpIBeXo0e0EkR0vuj74=,tag:1F3Br6nqAK4Oieyp447H0w==,type:int]
BREVO_CONTACT_TEMPLATE_USER: ENC[AES256_GCM,data:EA==,iv:M/q3UDXCcODPyLfdbSthHM/qs58NGGMOgEBNG2zvIzA=,tag:Co408rtDwkD/MfCqpiOxdw==,type:int]
BREVO_NEWSLETTER_TEMPLATE_OPTIN: ENC[AES256_GCM,data:YhI=,iv:Wcr3dTnxKLBC2bJEC+rj73iH3MMh0fBGAxknDr3G5N4=,tag:g5Rx62WPCl4DtSXqeLZ0Qg==,type:int]
BREVO_NEWSLETTER_LIST: ENC[AES256_GCM,data:JQ==,iv:OBxf7boz31EwU2BRzwBBBGQzeKeAX4Over2FgUX4RII=,tag:NUr+ijg3Xhe588uhyzMNtw==,type:int]
sops:
kms: []
gcp_kms: []
Expand Down Expand Up @@ -78,8 +87,8 @@ sops:
NDM4dE1JeFpqSUI0blB3WlcvbTd2cGsKscgnS2kbnztvBu2moNQKFSwjB35mGDZP
OrUjDCPSz1iehO4hX1yNgiJcix4ZSYFRcUAmeyXQfnNGhDxab5UB0w==
-----END AGE ENCRYPTED FILE-----
lastmodified: "2024-10-02T18:48:12Z"
mac: ENC[AES256_GCM,data:OshXjUN6XACUXs9y1DElZXJLIR6UplysEtxxHIKAgRi5W7g2oudcL9iO8eeEPzUPg+0TvLTOCg3xS2OQnusFMnvkJECMFxW/fKlAZnTCgRs68dp2nP5LNU6S/JCNZFjKCitXKzlV7+VZ6A1t6l8aTQCdbyiyb2yevQx2wdbKpYY=,iv:/RNexzBaY6MskJhfYjP6Rkos22N0NfPMzfthe+ojjPU=,tag:iGxw4V44MdzbRmKn8/hnTA==,type:str]
lastmodified: "2024-10-15T17:33:06Z"
mac: ENC[AES256_GCM,data:3Gkd7zNi1G5LDPwz9IACTDqaNZOtZSPz8b6yvd6uGRQsL5EFgfAGq3qjz80quI+4DxZtPgqVToGekLATqn6wQk6wF+MYLTWxZ5BumJx/C4Nc8a/DWIs23ebr8Z+fInGNMsAuCU9CsCobd8rsUte8gnNrX3KeFe69Ju8Jk/X34ag=,iv:U+v2b5eVo25UyvlsxV8JGbY2gUUax1G/YUksLRgEkWg=,tag:KG7fvpAgyc+SQfLcSQ+PeQ==,type:str]
pgp: []
unencrypted_suffix: _unencrypted
version: 3.9.0

0 comments on commit 189df19

Please sign in to comment.