From c738f311dabdbe77770bb3c33959ac121d60019e Mon Sep 17 00:00:00 2001 From: Amruth Pillai Date: Mon, 7 Mar 2022 15:06:16 +0100 Subject: [PATCH] fix(databasemodule): make ssl optional, pass ca cert as base64 env --- .DS_Store | Bin 6148 -> 6148 bytes .github/workflows/docker-build-push.yml | 16 +++++++++++----- client/Dockerfile | 2 +- server/Dockerfile | 2 +- server/src/database/database.module.ts | 3 +++ 5 files changed, 16 insertions(+), 7 deletions(-) diff --git a/.DS_Store b/.DS_Store index ee4758ac9a8c0ddcfc8b6dee4a1c18691175f9da..2c5ff862e36250ec264e868a55b9274bb3bc3285 100644 GIT binary patch delta 94 zcmZoMXfc=|#>B`mF;Q%yo}wrV0|Nsi1A_nqLjgkxLvc>JVQ_N(#Kh%{ER#!ECvO(z o5MtR_5XQ8bor9kPsB5zz$9Lw*{34b>4PcE-P?}|Pgvc6Z0MWG)#{d8T literal 6148 zcmeHKJxc>Y5S`UigMtLKuo2E$n_yvkhG;DWtYZ>TA>o3FV5L`Ch^2*KC0K|c_O^B+ z=zkDIY%OhkvpXhx`LI-xnPc}|W_I??KDga15t;mMHAj>sq6`{iFpjQ|ahzL^4T)zO zXn2m=X0BL?>y4g~>QDt#fxoB#f4c!~Pyj*-gdmh+b{0(t{y&NYOJ>g z-g4J^Y3|04`Ml5f#mVaz;g#Ha+~MsP_j$>Ln3~40)(Y)_yFsmP_Svc45q=G&tEHT1 z-ZhV3$>33`dT5R789@~>o?3S;^pTGGb(}7&e`(?6`!)0*k><}bzuNCAfHRvdGvQEs zRX`O`1=7-my&V{`0~iS=4&i|rmkM;LMy?pfrNbY} zxJWQ@=+enpX3QhZMs6rZP8Ji|;bbC*+N%PpKw5!e_cP1q|H|O|e>zEjsRF9Nzf!;i zg<>I(CCS;^vp7C$L$nea8;?sI+7xth9NQN@if7QQAr|rrFcM50!UNMk0#*j?RDmB= F;1e;%s3-sc diff --git a/.github/workflows/docker-build-push.yml b/.github/workflows/docker-build-push.yml index 7fdd340b..05a94131 100644 --- a/.github/workflows/docker-build-push.yml +++ b/.github/workflows/docker-build-push.yml @@ -13,11 +13,17 @@ jobs: - name: Checkout the repository uses: actions/checkout@v3.0.0 - - name: Login to Docker Hub + - name: Login to DigitalOcean Container Registry uses: docker/login-action@v1.14.1 with: - username: ${{ secrets.DOCKER_USERNAME }} - password: ${{ secrets.DOCKER_PASSWORD }} + registry: registry.digitalocean.com + username: ${{ secrets.DIGITALOCEAN_TOKEN }} + password: ${{ secrets.DIGITALOCEAN_TOKEN }} + + - name: Copy Environment Variable Configuration + run: echo $ENV_FILE | base64 --decode > .env + env: + ENV_FILE: ${{ secrets.ENV_FILE }} - name: Build and Push Server Docker Image uses: docker/build-push-action@v2.9.0 @@ -25,7 +31,7 @@ jobs: context: . push: true file: server/Dockerfile - tags: amruthpillai/reactive-resume:server-latest + tags: registry.digitalocean.com/reactive-resume/server:latest - name: Build and Push Client Docker Image uses: docker/build-push-action@v2.9.0 @@ -33,4 +39,4 @@ jobs: context: . push: true file: client/Dockerfile - tags: amruthpillai/reactive-resume:client-latest + tags: registry.digitalocean.com/reactive-resume/client:latest diff --git a/client/Dockerfile b/client/Dockerfile index 78f17722..11162a8e 100644 --- a/client/Dockerfile +++ b/client/Dockerfile @@ -24,7 +24,7 @@ COPY --from=dependencies /app/node_modules ./node_modules COPY --from=dependencies /app/schema/node_modules ./schema/node_modules COPY --from=dependencies /app/client/node_modules ./client/node_modules -RUN cp .env ./client/.env +RUN [[ -e .env ]] && cp .env ./client/.env RUN pnpm run build:schema RUN pnpm run build:client diff --git a/server/Dockerfile b/server/Dockerfile index b2454144..61903e38 100644 --- a/server/Dockerfile +++ b/server/Dockerfile @@ -24,7 +24,7 @@ COPY --from=dependencies /app/node_modules ./node_modules COPY --from=dependencies /app/schema/node_modules ./schema/node_modules COPY --from=dependencies /app/server/node_modules ./server/node_modules -RUN cp .env ./server/.env +RUN [[ -e .env ]] && cp .env ./server/.env RUN pnpm run build:schema RUN pnpm run build:server diff --git a/server/src/database/database.module.ts b/server/src/database/database.module.ts index c46d8d72..89d22e2b 100644 --- a/server/src/database/database.module.ts +++ b/server/src/database/database.module.ts @@ -19,6 +19,9 @@ import { User } from '@/users/entities/user.entity'; database: configService.get('postgres.database'), synchronize: true, entities: [User, Resume], + ssl: configService.get('postgres.certificate') && { + ca: Buffer.from(configService.get('postgres.certificate'), 'base64').toString('ascii'), + }, }), }), ],