name: Deploy service message-delivery-method-web-push run-name: ${{ github.actor }} deployed to build branch on: push: branches: - main paths: - 'services/message-delivery-method-web-push/**' - 'packages/couchdb-changes-stream/**' - '.gitea/workflows/deploy-service-message-delivery-method-web-push.yaml' - 'docker-compose.yml' jobs: service message-delivery-method-web-push: runs-on: ubuntu-latest env: COUCHDB_USER: ${{secrets.COUCHDB_USER}} COUCHDB_PASSWORD: ${{secrets.COUCHDB_PASSWORD}} steps: - uses: actions/checkout@v4 - uses: actions/setup-node@v4 with: node-version: '22' - name: install dependencies run: | corepack enable pnpm && corepack use pnpm@8.15.9 pnpm install --filter ./services/message-delivery-method-web-push - name: build service run: | pnpm build -w services/message-delivery-method-web-push pnpm --filter ./services/message-delivery-method-web-push deploy --prod build/service-message-delivery-method-web-push - name: build docker image run: MESSAGE_DELIVERY_METHOD_WEB_PUSH_TAG=${{env.GITHUB_SHA}} docker compose -p hereconnect build message-delivery-method-web-push - name: start container run: MESSAGE_DELIVERY_METHOD_WEB_PUSH_TAG=${{env.GITHUB_SHA}} docker compose -p hereconnect up -d --pull never message-delivery-method-web-push - name: rename to latest run: docker tag hereconnect/message-delivery-method-web-push:${{env.GITHUB_SHA}} hereconnect/message-delivery-method-web-push:latest - name: rollback on failure if: failure() env: COUCHDB_TAG: latest run: docker compose -p hereconnect up -d --pull never couchdb - name: cleanup docker image if: always() run: docker rmi hereconnect/service-couchdb:${{env.GITHUB_SHA}}