GH Action: merge staging(-next) periodically

Automate the merging of `master` -> `staging-next` -> `staging`.

Our main development branch is `master`. Large rebuilds go to `staging`.
Periodically, `staging` is merged into `staging-next` for stabilization.
When considered sufficiently stable, `staging-next` is merged into
`master`.

As changes arrive on these branches, it is important that they're all
updated regularly with eachothers changes. This commit automates that
part.
gstqt5
Frederik Rietdijk 2020-11-27 15:48:27 +01:00
parent be36f6f0a0
commit 24884e5aac
2 changed files with 31 additions and 0 deletions

1
.github/CODEOWNERS vendored
View File

@ -12,6 +12,7 @@
# GitHub actions
/.github/workflows @Mic92 @zowoq
/.github/workflows/merge-staging @FRidh
# EditorConfig
/.editorconfig @Mic92 @zowoq

30
.github/workflows/merge-staging.yml vendored Normal file
View File

@ -0,0 +1,30 @@
name: "merge staging(-next)"
on:
schedule:
# * is a special character in YAML so you have to quote this string
# Merge every 6 hours
- cron: '* */6 * * *'
jobs:
sync-branch:
if: github.repository == 'NixOS/nixpkgs'
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Merge master into staging-next
uses: devmasx/merge-branch@v1.3.1
with:
type: now
from_branch: master
target_branch: staging-next
github_token: ${{ secrets.GITHUB_TOKEN }}
- name: Merge staging-next into staging
uses: devmasx/merge-branch@v1.3.1
with:
type: now
from_branch: staging-next
target_branch: staging
github_token: ${{ secrets.GITHUB_TOKEN }}