Skip to content

feat: add .env to gh secrets #366

feat: add .env to gh secrets

feat: add .env to gh secrets #366

Workflow file for this run

name: Docker Image
on:
pull_request:
push:
branches:
- develop
workflow_dispatch:
jobs:
build:
runs-on: ubuntu-latest
env:
MONGO_PROD_DB: ${{ secrets.MONGO_PROD_DB}}
REGISTER_FRONTEND_URL: "https://beta.devpulse.org/register"
REGISTER_ORG_FRONTEND_URL: "https://beta.devpulse.org/signup/org"
FRONTEND_LINK: "https://beta.devpulse.org"
NODE_ENV: "production"
steps:
- uses: actions/checkout@v3
- name: Build and push Docker Image
uses: mr-smithers-excellent/docker-build-push@v6
with:
image: ${{ secrets.DOCKER_HUB_USERNAME }}/atlp-pulse-bn
tags: latest
registry: docker.io
username: ${{ secrets.DOCKER_HUB_USERNAME }}
password: ${{ secrets.DOCKER_HUB_PASSWORD }}
buildArgs: 'NODE_ENV=production, MONGO_PROD_DB="${{ secrets.MONGO_PROD_DB}}"'
- name: Login to DO and spin up a new container
uses: appleboy/ssh-action@master
with:
host: ${{ secrets.DO_HOST }}
username: ${{ secrets.DO_USERNAME }}
key: ${{ secrets.DO_KEY }}
port: ${{ secrets.DO_PORT }}
envs: MONGO_PROD_DB, REGISTER_FRONTEND_URL, REGISTER_ORG_FRONTEND_URL, NODE_ENV, FRONTEND_LINK;
script: |
touch env.list
echo ADMIN_EMAIL=${{ secrets.ADMIN_EMAIL }} >> env.list
echo ADMIN_PASS=${{ secrets.ADMIN_PASS }} >> env.list
echo COORDINATOR_EMAIL=${{ secrets.COORDINATOR_EMAIL }} >> env.list
echo COORDINATOR_PASS=${{ secrets.COORDINATOR_PASS }} >> env.list
echo FRONTEND_LINK=${{ secrets.FRONTEND_LINK }} >> env.list
echo REGISTER_FRONTEND_URL=${{ secrets.REGISTER_FRONTEND_URL }} >> env.list
echo REGISTER_ORG_FRONTEND_URL=${{ secrets.REGISTER_ORG_FRONTEND_URL }} >> env.list
echo GH_TOKEN=${{ secrets.GH_TOKEN }} >> env.list
echo MONGO_PROD_DB=${{ secrets.MONGO_PROD_DB }} >> env.list
echo NODE_ENV=${{ secrets.NODE_ENV }} >> .env
cat env.list
docker pull devpulse/atlp-pulse-bn:latest
existing_container=$(docker ps | grep 4000)
if [ $? -eq 0 ]; then
echo "An existing container will be stopped"
docker ps | grep 4000 | cut -f1 -d' ' | xargs docker stop
else
echo "No existing container found"
fi
docker_ps_out=$(docker run -p 4000:4000 -d --env-file env.list devpulse/atlp-pulse-bn:latest)
if [ $? -eq 0 ]; then
echo "New container spinned up successfully"
else
echo "There was an error creating a new container"
echo "$docker_ps_out"
fi