Skip to content

Merge pull request #117 from swecc-uw/randolph/cache-github-leaderboard #142

Merge pull request #117 from swecc-uw/randolph/cache-github-leaderboard

Merge pull request #117 from swecc-uw/randolph/cache-github-leaderboard #142

name: Push-to-EC2
on:
push:
branches:
- main
jobs:
build:
runs-on:
group: EC2
labels: [self-hosted, deploy]
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
run: |
docker stop swecc-server-be-container || true
docker rm swecc-server-be-container || true
docker pull ${{ secrets.DOCKERHUB_USERNAME }}/swecc-server:latest
docker run -d --name swecc-server-be-container \
--network swag-network \
-p 8000:8000 \
-e DJANGO_DEBUG=${{ secrets.DJANGO_DEBUG }} \
-e DB_HOST=${{ secrets.DB_HOST }} \
-e DB_NAME=${{ secrets.DB_NAME }} \
-e DB_PORT=${{ secrets.DB_PORT }} \
-e DB_USER=${{ secrets.DB_USER }} \
-e DB_PASSWORD=${{ secrets.DB_PASSWORD }} \
-e SENDGRID_API_KEY=${{ secrets.SENDGRID_API_KEY }} \
-e SUPABASE_URL=${{ secrets.SUPABASE_URL }} \
-e SUPABASE_KEY=${{ secrets.SUPABASE_KEY }} \
-e INTERNSHIP_CHANNEL_ID=${{ secrets.INTERNSHIP_CHANNEL_ID}} \
-e NEW_GRAD_CHANNEL_ID=${{secrets.NEW_GRAD_CHANNEL_ID}} \
--restart unless-stopped \
${{ secrets.DOCKERHUB_USERNAME }}/swecc-server:latest