# Checks for any conflict markers created by git. This check is primarily intended to validate that # any merge conflicts in the v2 -> v1 backport PR are fixed before the PR is merged. name: Check for conflicts on: pull_request: branches: [main, v1, v2] # Run checks on reopened draft PRs to support triggering PR checks on draft PRs that were opened # by other workflows. types: [opened, synchronize, reopened, ready_for_review] jobs: check-for-conflicts: runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 - name: Check for conflicts run: | # Use `|| true` since grep returns exit code 1 if there are no matches, and we don't want # this to fail the workflow. FILES_WITH_CONFLICTS=$(grep --extended-regexp --ignore-case --line-number --recursive \ '^(<<<<<<<|>>>>>>>)' . || true) if [[ "${FILES_WITH_CONFLICTS}" ]]; then echo "Fail: Found merge conflict markers in the following files:" echo "" echo "${FILES_WITH_CONFLICTS}" exit 1 else echo "Success: Found no merge conflict markers." fi