name: Build and Deploy Docker on: push: branches: - masterApi jobs: build: runs-on: ubuntu-latest permissions: contents: read packages: write steps: - uses: actions/checkout@v4 - name: Log in to GHCR uses: docker/login-action@v3 with: registry: git.rhost.ovh username: ${{ github.actor }} password: ${{ secrets.TOKEN }} - name: Build and push uses: docker/build-push-action@v6 with: context: . file: ./services/www/Dockerfile push: true tags: git.rhost.ovh/${{ github.repository }}:latest deploy: needs: build runs-on: ubuntu-latest steps: - name: Deploy via SSH uses: appleboy/ssh-action@v1.2.0 with: host: ${{ secrets.SERVER_HOST }} port: ${{ secrets.SERVER_PORT }} username: ${{ secrets.SERVER_USER }} key: ${{ secrets.SERVER_SSH_KEY }} script: | cd /home/ryjek/docker/sprawozdania docker compose pull backend docker compose up -d backend docker compose exec --workdir /var/www/html backend APP_RUNTIME_ENV=prod php bin/console secrets:decrypt-to-local --force docker compose exec --workdir /var/www/html backend php ./bin/console doctrine:migration:migrate --dry-run docker compose exec --workdir /var/www/html backend php ./bin/console lexik:jwt:generate-keypair --skip-if-exists docker compose exec --workdir /var/www/html backend php ./bin/console cache:clear