
Apparently since we are callling a reusable workflow here, we need to explicitly pass the secrets. :(
41 lines
1.2 KiB
YAML
41 lines
1.2 KiB
YAML
# This action periodically merges base branches into staging branches.
|
||
# This is done to
|
||
# * prevent conflicts or rather resolve them early
|
||
# * make all potential breakage happen on the staging branch
|
||
# * and make sure that all major rebuilds happen before the staging
|
||
# branch get’s merged back into its base branch.
|
||
|
||
name: "Periodic Merges (24h)"
|
||
|
||
on:
|
||
schedule:
|
||
# * is a special character in YAML so you have to quote this string
|
||
# Merge every 24 hours
|
||
- cron: '0 0 * * *'
|
||
workflow_dispatch:
|
||
|
||
permissions: {}
|
||
|
||
jobs:
|
||
periodic-merge:
|
||
if: github.repository_owner == 'NixOS'
|
||
strategy:
|
||
# don't fail fast, so that all pairs are tried
|
||
fail-fast: false
|
||
# certain branches need to be merged in order, like master->staging-next->staging
|
||
# and disabling parallelism ensures the order of the pairs below.
|
||
max-parallel: 1
|
||
matrix:
|
||
pairs:
|
||
- from: release-24.11
|
||
into: staging-next-24.11
|
||
- from: staging-next-24.11
|
||
into: staging-24.11
|
||
- from: master staging
|
||
into: haskell-updates
|
||
uses: ./.github/workflows/periodic-merge.yml
|
||
with:
|
||
from: ${{ matrix.pairs.from }}
|
||
into: ${{ matrix.pairs.into }}
|
||
secrets: inherit
|