workflows/periodic-merge: update haskell-updates PR's base branch (#523160)

This commit is contained in:
Wolfgang Walther
2026-05-25 08:01:19 +00:00
committed by GitHub
2 changed files with 33 additions and 2 deletions
+32 -1
View File
@@ -22,7 +22,7 @@ defaults:
jobs:
periodic-merge:
if: github.repository_owner == 'NixOS'
if: github.repository_owner == 'NixOS' || github.event_name == 'workflow_dispatch'
strategy:
# don't fail fast, so that all pairs are tried
fail-fast: false
@@ -49,3 +49,34 @@ jobs:
name: ${{ matrix.pairs.name || format('{0} → {1}', matrix.pairs.from, matrix.pairs.into) }}
secrets:
NIXPKGS_CI_APP_PRIVATE_KEY: ${{ secrets.NIXPKGS_CI_APP_PRIVATE_KEY }}
# Resets the target branch of the current haskell-updates PR.
# This makes GitHub hide all the commits that are already part of staging and gives us a much clearer PR view.
haskell-updates:
needs: periodic-merge
runs-on: ubuntu-slim
permissions:
pull-requests: write
steps:
- name: Find PR and update target branch
uses: actions/github-script@3a2844b7e9c422d3c10d287c895573f7108da1b3 # v9.0.0
with:
script: |
// There will at most be a single haskell-updates PR anyway, so no need to paginate.
await Promise.all(
(
await github.rest.pulls.list({
...context.repo,
state: 'open',
head: `${context.repo.owner}:haskell-updates`,
})
).data.map((pr) =>
github.rest.pulls.update({
...context.repo,
pull_number: pr.number,
// Just updating to the same branch to trigger a UI update.
// This is staging most of the time, but could be staging-next in rare cases.
base: pr.base.ref,
}),
),
)
+1 -1
View File
@@ -22,7 +22,7 @@ defaults:
jobs:
periodic-merge:
if: github.repository_owner == 'NixOS'
if: github.repository_owner == 'NixOS' || github.event_name == 'workflow_dispatch'
strategy:
# don't fail fast, so that all pairs are tried
fail-fast: false