name: Pull Request on: pull_request_target: types: [opened, edited, labeled, unlabeled, synchronize] merge_group: types: [checks_requested] workflow_call: secrets: ELEMENT_BOT_TOKEN: required: true concurrency: ${{ github.workflow }}-${{ github.event.pull_request.head.ref || github.head_ref || github.ref }} jobs: changelog: name: Preview Changelog runs-on: ubuntu-latest steps: - uses: matrix-org/allchange@main if: github.event_name != 'merge_group' with: ghToken: ${{ secrets.GITHUB_TOKEN }} requireLabel: true prevent-blocked: name: Prevent Blocked runs-on: ubuntu-latest permissions: pull-requests: read steps: - name: Add notice uses: actions/github-script@v7 if: contains(github.event.pull_request.labels.*.name, 'X-Blocked') with: script: | core.setFailed("Preventing merge whilst PR is marked blocked!"); community-prs: name: Label Community PRs runs-on: ubuntu-latest if: github.event.action == 'opened' steps: - name: Check membership uses: tspascoal/get-user-teams-membership@ba78054988f58bea69b7c6136d563236f8ed2fc0 # v3 id: teams with: username: ${{ github.event.pull_request.user.login }} organization: matrix-org team: Core Team GITHUB_TOKEN: ${{ secrets.ELEMENT_BOT_TOKEN }} - name: Add label if: ${{ steps.teams.outputs.isTeamMember == 'false' }} uses: actions/github-script@v7 with: script: | github.rest.issues.addLabels({ issue_number: context.issue.number, owner: context.repo.owner, repo: context.repo.repo, labels: ['Z-Community-PR'] }); close-if-fork-develop: name: Forbid develop branch fork contributions runs-on: ubuntu-latest if: > github.event.action == 'opened' && github.event.pull_request.head.ref == 'develop' && github.event.pull_request.head.repo.full_name != github.repository steps: - name: Close pull request uses: actions/github-script@v7 with: script: | github.rest.issues.createComment({ issue_number: context.issue.number, owner: context.repo.owner, repo: context.repo.repo, body: "Thanks for opening this pull request, unfortunately we do not accept contributions from the main" + " branch of your fork, please re-open once you switch to an alternative branch for everyone's sanity." + " See https://github.com/matrix-org/matrix-js-sdk/blob/develop/CONTRIBUTING.md", }); github.rest.pulls.update({ pull_number: context.issue.number, owner: context.repo.owner, repo: context.repo.repo, state: 'closed' });