Skip to content

Push Production Demo #121

Push Production Demo

Push Production Demo #121

name: Push Production Demo
on:
push:
branches:
- main
paths:
- 'docker/docker-compose.yml'
workflow_run:
workflows:
[
Publish Docker Image Dash Backend,
Publish Docker Image Dash Frontend,
Publish Docker Image Postback API
]
# NOTE: Does this trigger when ALL workflows completed or just when EITHER?
types: [completed]
branches:
- main
jobs:
deploy:
if: github.repository_owner == 'OpenAttribution'
name: Deploy on main branch push
runs-on: ubuntu-latest
environment: production-demo
steps:
- name: Checkout the files
uses: actions/checkout@v4
- name: Deploy to Demo Server
uses: appleboy/ssh-action@master
env:
TARGETDIR: open-attribution
with:
host: ${{ vars.HOST_DNS }}
username: ${{ vars.USERNAME }}
key: ${{ secrets.SSH_PRIVATE_KEY }}
port: 8807
envs: TARGETDIR
script_stop: true
script: |
cd $TARGETDIR
pwd
git pull origin main
export TEST_HOST=http://demo.openattribution.dev
sudo docker compose -f docker/docker-compose-demo.yml down
sudo docker compose -f docker/docker-compose-demo.yml pull
sudo docker compose -f docker/docker-compose-demo.yml up -d