Skip to content

feature: create new game-server-watcher (#118) #98

feature: create new game-server-watcher (#118)

feature: create new game-server-watcher (#118) #98

Workflow file for this run

on:
push:
branches:
- main
paths:
- ".github/workflows/strapi.yml"
- ".github/scripts/auth.sh"
- ".github/scripts/deploy.sh"
- "backend/**/*"
name: Cloud Game Backend Strapi
jobs:
build-backend:
name: Build Strapi API
runs-on: ubuntu-latest
env:
IMAGE: cloudgame/backend-api
steps:
- uses: actions/checkout@master
- name: Login to Docker Hub
uses: docker/login-action@v3
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- name: Build Docker Container
run: |
docker build -t $IMAGE:$GITHUB_RUN_ID -f backend/Dockerfile-prod-be --build-arg DD_GIT_REPOSITORY_URL=$(git config --get remote.origin.url) --build-arg DD_GIT_COMMIT_SHA=${{ github.sha }} .
- name: Push Container
run: |
docker tag $IMAGE:$GITHUB_RUN_ID $IMAGE:latest
docker push $IMAGE:$GITHUB_RUN_ID
docker push $IMAGE:latest
build-frontend:
name: Build Strapi Frontend
runs-on: ubuntu-latest
env:
IMAGE: cloudgame/backend-admin
steps:
- uses: actions/checkout@master
- name: Login to Docker Hub
uses: docker/login-action@v3
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- name: Build Docker Container
run: |
cd backend
docker build -t $IMAGE:$GITHUB_RUN_ID -f Dockerfile-prod-fe --build-arg ADMIN_URL=${ADMIN_URL} --build-arg SERVER_URL=${SERVER_URL} --build-arg DD_GIT_REPOSITORY_URL=$(git config --get remote.origin.url) --build-arg DD_GIT_COMMIT_SHA=${{ github.sha }} .
env:
ADMIN_URL: /
SERVER_URL: https://api.cloud-game.app/
- name: Push Container
run: |
docker tag $IMAGE:$GITHUB_RUN_ID $IMAGE:latest
docker push $IMAGE:$GITHUB_RUN_ID
docker push $IMAGE:latest
deploy:
name: Deploy
runs-on: ubuntu-latest
needs:
- build-backend
- build-frontend
steps:
- uses: actions/checkout@master
- name: Deploy to Server
env:
DEPLOY_SSH_PRIV_KEY: ${{ secrets.DEPLOY_SSH_PRIV_KEY }}
run: ./.github/scripts/deploy.sh