CreativeBots/.gitea/workflows/deploy_via_docker_compose.yml
Tobias Weise 410cd7d972
Some checks failed
Gitea Docker Redeploy / Redploy-App-on-self-via-SSH (push) Failing after 9s
workflow fixed
2024-08-15 23:26:10 +02:00

93 lines
2.7 KiB
YAML

name: Gitea Docker Redeploy
run-name: ${{ gitea.actor }} is deploying new version
on: [push]
jobs:
ssh_to_self_and_redeploy:
name: Redploy-App-on-self-via-SSH
runs-on: ubuntu-latest
steps:
- name: Down app, git pull and build image
uses: appleboy/ssh-action@v1.0.3
with:
host: ${{ secrets.HOST }}
username: ${{ secrets.USERNAME }}
password: ${{ secrets.PASSWORD }}
port: ${{ secrets.PORT }}
script_stop: true
#requires stored git password: git config credential.helper store
script: |
cd Ollama-Bot/deployment
docker-compose down
git pull
echo "============ Git pull finished! ========="
echo '${{ vars.ENV }}' > .env
echo "============ Env creation finished! ========="
- name: Build image
uses: appleboy/ssh-action@v1.0.3
with:
host: ${{ secrets.HOST }}
username: ${{ secrets.USERNAME }}
password: ${{ secrets.PASSWORD }}
port: ${{ secrets.PORT }}
script_stop: true
#requires stored git password: git config credential.helper store
script: |
cd Ollama-Bot/deployment
docker-compose build
echo "============= Image build finishes! =============="
- name: Push image
uses: appleboy/ssh-action@v1.0.3
with:
host: ${{ secrets.HOST }}
username: ${{ secrets.USERNAME }}
password: ${{ secrets.PASSWORD }}
port: ${{ secrets.PORT }}
script_stop: true
#requires stored git password: git config credential.helper store
script: |
cd Ollama-Bot/deployment
docker-compose push
echo "============== Image push finishes! ==============="
- name: Deploy app
uses: appleboy/ssh-action@v1.0.3
with:
host: ${{ secrets.HOST }}
username: ${{ secrets.USERNAME }}
password: ${{ secrets.PASSWORD }}
port: ${{ secrets.PORT }}
#script_stop: true
#requires stored git password: git config credential.helper store
script: |
cd Ollama-Bot/deployment
docker-compose up -d
echo "========== Docker compose deployment finished! =============="
- name: Clean up
uses: appleboy/ssh-action@v1.0.3
with:
host: ${{ secrets.HOST }}
username: ${{ secrets.USERNAME }}
password: ${{ secrets.PASSWORD }}
port: ${{ secrets.PORT }}
#script_stop: true
#requires stored git password: git config credential.helper store
script: |
docker rmi $(docker images -f "dangling=true" -q)
echo "========== Docker dangling images cleanup finished! =============="