Infer record pickers for record-typed logic function workflow inputs #253
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: App Prod-Parity E2E Dispatch | |
| on: | |
| push: | |
| branches: [main] | |
| pull_request: | |
| types: [labeled, synchronize, opened, reopened] | |
| workflow_dispatch: | |
| permissions: {} | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.ref }} | |
| cancel-in-progress: false | |
| jobs: | |
| dispatch: | |
| # main push + manual always run; PR events only when the label is present | |
| # and the PR comes from a branch in this repo (forks are excluded, since they | |
| # have no access to secrets or a writable token for the dispatch). | |
| if: >- | |
| github.event_name == 'push' || | |
| github.event_name == 'workflow_dispatch' || | |
| (github.event_name == 'pull_request' && | |
| github.event.pull_request.head.repo.full_name == github.repository && | |
| contains(github.event.pull_request.labels.*.name, 'run-e2e-apps-prod-parity-tests')) | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 5 | |
| permissions: | |
| statuses: write | |
| steps: | |
| - name: Resolve target SHA | |
| id: sha | |
| env: | |
| PR_HEAD_SHA: ${{ github.event.pull_request.head.sha }} | |
| EVENT_SHA: ${{ github.sha }} | |
| run: | | |
| if [ -n "$PR_HEAD_SHA" ]; then | |
| echo "head_sha=$PR_HEAD_SHA" >> "$GITHUB_OUTPUT" | |
| else | |
| echo "head_sha=$EVENT_SHA" >> "$GITHUB_OUTPUT" | |
| fi | |
| - name: Post pending status | |
| env: | |
| GH_TOKEN: ${{ github.token }} | |
| REPO: ${{ github.repository }} | |
| HEAD_SHA: ${{ steps.sha.outputs.head_sha }} | |
| run: | | |
| gh api "repos/$REPO/statuses/$HEAD_SHA" \ | |
| -f state=pending \ | |
| -f context=app-prod-parity-e2e \ | |
| -f description="Dispatching prod-parity e2e to ci-privileged" | |
| - 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 to ci-privileged | |
| env: | |
| GH_TOKEN: ${{ steps.app-token.outputs.token }} | |
| HEAD_SHA: ${{ steps.sha.outputs.head_sha }} | |
| run: | | |
| gh workflow run app-prod-parity-e2e.yaml \ | |
| --repo twentyhq/ci-privileged \ | |
| --ref main \ | |
| -f head_sha="$HEAD_SHA" | |
| - name: Post dispatch-failed status | |
| if: failure() | |
| env: | |
| GH_TOKEN: ${{ github.token }} | |
| REPO: ${{ github.repository }} | |
| HEAD_SHA: ${{ steps.sha.outputs.head_sha }} | |
| run: | | |
| gh api "repos/$REPO/statuses/$HEAD_SHA" \ | |
| -f state=failure \ | |
| -f context=app-prod-parity-e2e \ | |
| -f description="Failed to dispatch prod-parity e2e to ci-privileged" |