Skip to content

Commit 05fe950

Browse files
committed
ci: Enable GitHub Merge Queue support
Part of open-telemetry/community#3436 For merge queues, we need to trigger github actions on merge_group events as mentioned in the docs. This updates workflows so they will trigger. Consistent with core PR: open-telemetry/opentelemetry-python#5209
1 parent 668bee9 commit 05fe950

6 files changed

Lines changed: 22 additions & 5 deletions

File tree

.github/workflows/changelog.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ on:
99
types: [opened, synchronize, reopened, labeled, unlabeled]
1010
branches:
1111
- main
12+
merge_group:
1213

1314
permissions:
1415
contents: read
@@ -17,6 +18,7 @@ jobs:
1718
changelog:
1819
runs-on: ubuntu-latest
1920
if: |
21+
github.event_name != 'merge_group' &&
2022
!contains(github.event.pull_request.labels.*.name, 'Skip Changelog')
2123
&& github.actor != 'otelbot[bot]'
2224

.github/workflows/check-links.yml

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,12 @@ on:
1313
- '**/*.rst'
1414
- '.github/workflows/check-links.yml'
1515
- '.github/workflows/check_links_config.json'
16+
merge_group:
17+
paths:
18+
- '**/*.md'
19+
- '**/*.rst'
20+
- '.github/workflows/check-links.yml'
21+
- '.github/workflows/check_links_config.json'
1622

1723
permissions:
1824
contents: read
@@ -21,6 +27,9 @@ concurrency:
2127
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.run_id }}
2228
cancel-in-progress: true
2329

30+
env:
31+
DIFF_RANGE: ${{ github.event_name == 'merge_group' && format('{0}...{1}', github.event.merge_group.base_sha, github.event.merge_group.head_sha) || format('origin/{0}...HEAD', github.base_ref) }}
32+
2433
jobs:
2534
check-links:
2635
runs-on: ubuntu-latest
@@ -53,14 +62,14 @@ jobs:
5362
${{ steps.changed-files.outputs.all_changed_files }} \
5463
|| { echo "Check that anchor links are lowercase"; exit 1; }
5564
56-
- name: Check new links only on pull requests
57-
if: steps.changed-files.outputs.any_changed == 'true' && github.event_name == 'pull_request'
65+
- name: Check new links
66+
if: steps.changed-files.outputs.any_changed == 'true' && (github.event_name == 'pull_request' || github.event_name == 'merge_group')
5867
run: |
5968
# Extract URLs only from added lines in the diff to avoid
6069
# rate limiting when checking all links in large files like
6170
# CHANGELOG.md. Only new/changed links are checked on PRs;
6271
# pushes to main still check all links in changed files.
63-
git diff "origin/${{ github.base_ref }}...HEAD" -- \
72+
git diff "$DIFF_RANGE" -- \
6473
${{ steps.changed-files.outputs.all_changed_files }} \
6574
| grep '^+' | grep -v '^+++' \
6675
| grep -oP 'https?://[^\s\)\]\"'"'"'`>]+' \

.github/workflows/ci.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ on:
88
branches:
99
- 'main'
1010
pull_request:
11+
merge_group:
1112

1213
permissions:
1314
contents: read

.github/workflows/generate_workflows_lib/src/generate_workflows_lib/ci.yml.j2

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ on:
88
branches:
99
- 'main'
1010
pull_request:
11+
merge_group:
1112

1213
permissions:
1314
contents: read

.github/workflows/generate_workflows_lib/src/generate_workflows_lib/misc.yml.j2

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,9 @@ jobs:
4141
{%- endif %}
4242
{%- if job_data == "docs" %}
4343
if: |
44-
github.event.pull_request.user.login != 'otelbot[bot]' && github.event_name == 'pull_request'
44+
github.event_name == 'merge_group' ||
45+
(github.event_name == 'pull_request' &&
46+
github.event.pull_request.user.login != 'otelbot[bot]')
4547
{%- endif %}
4648
steps:
4749
- name: Checkout repo @ SHA - ${% raw %}{{ github.sha }}{% endraw %}

.github/workflows/misc.yml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -70,7 +70,9 @@ jobs:
7070
runs-on: ubuntu-latest
7171
timeout-minutes: 30
7272
if: |
73-
github.event.pull_request.user.login != 'otelbot[bot]' && github.event_name == 'pull_request'
73+
github.event_name == 'merge_group' ||
74+
(github.event_name == 'pull_request' &&
75+
github.event.pull_request.user.login != 'otelbot[bot]')
7476
steps:
7577
- name: Checkout repo @ SHA - ${{ github.sha }}
7678
uses: actions/checkout@v4

0 commit comments

Comments
 (0)