name: Do Not Merge

on:
  pull_request:
    types: [synchronize, opened, reopened, labeled, unlabeled]

jobs:
  do-not-merge:
    if: ${{ contains(github.event.*.labels.*.name, 'DNM') ||
            contains(github.event.*.labels.*.name, 'TSC') ||
            contains(github.event.*.labels.*.name, 'Architecture Review') ||
            contains(github.event.*.labels.*.name, 'dev-review') }}
    name: Prevent Merging
    runs-on: ubuntu-22.04
    steps:
      - name: Check for label
        run: |
          echo "Pull request is labeled as 'DNM', 'TSC', 'Architecture Review' or 'dev-review'."
          echo "This workflow fails so that the pull request cannot be merged."
          exit 1
