Skip to content

reconnection fix

reconnection fix #1

Workflow file for this run

name: Server Deploy
on:
push:
paths:
- 'server/**'
jobs:
docker-build-and-push:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v2
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v2
- name: Log in to Docker Hub
uses: docker/login-action@v2
with:
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}
- name: Set up environment variables
run: |
echo "FLASK_KEY=${{ secrets.FLASK_KEY }}" >> .env
echo "MAIL_PASSWORD=${{ secrets.MAIL_PASSWORD }}" >> .env
echo "MONGO_INITDB_ROOT_USERNAME=${{ secrets.MONGO_INITDB_ROOT_USERNAME }}" >> .env
echo "MONGO_INITDB_ROOT_PASSWORD=${{ secrets.MONGO_INITDB_ROOT_PASSWORD }}" >> .env
- name: Set up requirements
run: |
echo "flasgger==0.9.7.1" >> server/api/requirements.txt
echo "Flask==2.3.3" >> server/api/requirements.txt
echo "Flask-Cors==4.0.0" >> server/api/requirements.txt
echo "Flask-Login==0.6.2" >> server/api/requirements.txt
echo "Flask-Mail==0.9.1" >> server/api/requirements.txt
echo "flask-restx==1.2.0" >> server/api/requirements.txt
echo "flask-swagger-generator==0.4" >> server/api/requirements.txt
echo "flask-swagger-ui==4.11.1" >> server/api/requirements.txt
echo "pymongo==4.5.0" >> server/api/requirements.txt
echo "python-dotenv==1.0.0" >> server/api/requirements.txt
echo "waitress==3.0.0" >> server/api/requirements.txt
echo "celery==5.3.5" >> server/api/requirements.txt
echo "redis==5.0.1" >> server/api/requirements.txt
echo "pymongo==4.5.0" >> server/scheduler/requirements.txt
echo "python-dotenv==1.0.0" >> server/scheduler/requirements.txt
echo "waitress==3.0.0" >> server/scheduler/requirements.txt
echo "celery==5.3.5" >> server/scheduler/requirements.txt
echo "redis==5.0.1" >> server/scheduler/requirements.txt
- name: Build Docker Images
run: docker-compose build server scheduler
- name: Push Docker Images
run: docker-compose push server scheduler
deploy:
needs: docker-build-and-push
runs-on: ubuntu-latest
steps:
- name: SSH connection
uses: appleboy/ssh-action@v1.0.3
with:
host: ${{ secrets.HOST }}
username: ${{ secrets.SERVER_USER }}
password: ${{ secrets.SERVER_PASSWORD }}
port: 22
script: |
cd app/WebManager
docker-compose stop wm-server wm-scheduler
docker rm -f wm-server wm-scheduler || true
docker rmi -f alwaysmeow/webmanager-scheduler alwaysmeow/webmanager-server || true
git pull origin prod
docker pull alwaysmeow/webmanager-server:latest
docker pull alwaysmeow/webmanager-scheduler:latest