name: Deploy to Production on: release: types: - published permissions: contents: read jobs: deploy: environment: production # Do not deploy in the main repository, only in user projects if: github.repository_owner != 'fastapi' runs-on: - self-hosted - production env: DOMAIN: ${{ secrets.DOMAIN }} SECRET_KEY: ${{ secrets.SECRET_KEY }} FIRST_SUPERUSER: ${{ secrets.FIRST_SUPERUSER }} FIRST_SUPERUSER_PASSWORD: ${{ secrets.FIRST_SUPERUSER_PASSWORD }} SMTP_HOST: ${{ secrets.SMTP_HOST }} SMTP_USER: ${{ secrets.SMTP_USER }} SMTP_PASSWORD: ${{ secrets.SMTP_PASSWORD }} EMAILS_FROM_EMAIL: ${{ secrets.EMAILS_FROM_EMAIL }} POSTGRES_PASSWORD: ${{ secrets.POSTGRES_PASSWORD }} SENTRY_DSN: ${{ secrets.SENTRY_DSN }} steps: - name: Checkout uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 with: persist-credentials: false - run: docker compose -f compose.yml -f compose.deploy.yml build - run: docker compose -f compose.yml -f compose.deploy.yml up -d