Skip to content

Merge pull request #15 from swecc-uw/interview-read-endpoints #27

Merge pull request #15 from swecc-uw/interview-read-endpoints

Merge pull request #15 from swecc-uw/interview-read-endpoints #27

name: Push-to-EC2
# Trigger deployment only on push to master branch
on:
push:
branches:
- main
jobs:
build:
runs-on: self-hosted
steps:
- name: Checkout Repository
uses: actions/checkout@v2
- name: Log in to Docker Hub
uses: docker/login-action@v1
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- name: Build and push Docker image
uses: docker/build-push-action@v2
with:
context: .
push: true
tags: |
${{ secrets.DOCKERHUB_USERNAME }}/swecc-server:latest
${{ secrets.DOCKERHUB_USERNAME }}/swecc-server:${{ github.sha }}
- name: Deploy application
env:
DOCKERHUB_USERNAME: ${{ secrets.DOCKERHUB_USERNAME }}
DJANGO_DEBUG: ${{secrets.DJANGO_DEBUG}}
DB_HOST: ${{secrets.DB_HOST}}
DB_NAME: ${{secrets.DB_NAME}}
DB_PORT: ${{secrets.DB_PORT}}
DB_USER: ${{secrets.DB_USER}}
DB_PASSWORD: ${{secrets.DB_PASSWORD}}
run: |
cd /home/ubuntu
echo $DJANGO_DEBUG
echo $DOCKERHUB_USERNAME
docker stop swecc-server-be-container || true
docker rm swecc-server-be-container || true
docker pull ${{ secrets.DOCKERHUB_USERNAME }}/swecc-server:latest
docker run --name swecc-server-be-container \
-p 8000:8000 \
-e DJANGO_DEBUG=$DJANGO_DEBUG \
-e DB_HOST=$DB_HOST \
-e DB_NAME=$DB_NAME \
-e DB_PORT=$DB_PORT \
-e DB_USER=$DB_USER \
-e DB_PASSWORD=$DB_PASSWORD \
-d ${{ secrets.DOCKERHUB_USERNAME }}/swecc-server:latest