name: 'Preview Environment Dispatch' permissions: {} on: pull_request_target: types: [opened, synchronize, reopened, labeled] paths: - packages/twenty-docker/** - packages/twenty-server/** - packages/twenty-front/** - .github/workflows/preview-env-dispatch.yaml concurrency: group: ${{ github.workflow }}-${{ github.ref }} cancel-in-progress: true jobs: trigger-preview: if: | (github.event.action == 'labeled' && github.event.label.name == 'preview-app') || ( ( github.event.pull_request.author_association == 'MEMBER' || github.event.pull_request.author_association == 'OWNER' || github.event.pull_request.author_association == 'COLLABORATOR' ) && ( github.event.action == 'opened' || github.event.action == 'synchronize' || github.event.action == 'reopened' ) ) timeout-minutes: 5 runs-on: ubuntu-latest steps: - name: Mint ci-privileged dispatch token id: app-token uses: actions/create-github-app-token@bcd2ba49218906704ab6c1aa796996da409d3eb1 # v3.2.0 with: client-id: ${{ vars.TWENTY_WORKFLOW_DISPATCHER_CLIENT_ID }} private-key: ${{ secrets.TWENTY_WORKFLOW_DISPATCHER_PRIVATE_KEY }} owner: twentyhq repositories: ci-privileged permission-actions: write - name: Dispatch preview-env to ci-privileged env: GH_TOKEN: ${{ steps.app-token.outputs.token }} PR_NUMBER: ${{ github.event.pull_request.number }} PR_HEAD_SHA: ${{ github.event.pull_request.head.sha }} REPOSITORY: ${{ github.repository }} run: | gh workflow run preview-env.yaml --repo twentyhq/ci-privileged --ref main \ -f pr_number="$PR_NUMBER" \ -f pr_head_sha="$PR_HEAD_SHA" \ -f repo="$REPOSITORY"