1
0
Fork 0

pkgs/nixfiles: nixfiles-updated-inputs use intermediate branch for updating flake inputs

This commit is contained in:
clerie 2024-02-18 18:07:38 +01:00
parent a84ae9372e
commit 9050a99666
1 changed files with 27 additions and 10 deletions

View File

@ -2,17 +2,34 @@
set -euo pipefail
NOW="$(date --utc --iso-8601=minutes)"
xgit() {
git -c "user.name=Flake Update Bot" -c "user.email=flake-update-bot@clerie.de" "$@"
}
NOW="$(date --utc +%Y-%m-%d-%H-%M)"
xgit status || xgit clone gitea@git.clerie.de:clerie/nixfiles.git .
git status || git clone gitea@git.clerie.de:clerie/nixfiles.git .
echo "[!] Download changes"
git fetch --all
git checkout updated-inputs
git -c "user.name=Flake Update Bot" -c "user.email=flake-update-bot@clerie.de" merge -s ort -X theirs origin/master -m "Update from master ${NOW}"
echo "[!] Update inputs"
nix flake update
xgit fetch --all
echo "[!] Chechout remote master"
xgit checkout origin/master
UPDATE_BRANCH="update-inputs-${NOW}"
echo "[!] Create branch ${UPDATE_BRANCH}"
xgit checkout -b "${UPDATE_BRANCH}"
echo "[!] Update nixpkgs"
nix flake lock --update-input nixpkgs
echo "[!] Commit changes"
git add flake.lock
git -c "user.name=Flake Update Bot" -c "user.email=flake-update-bot@clerie.de" commit -m "Flake update ${NOW}" || true
echo "[!] Publish"
git push origin updated-inputs
xgit commit -m "Update nixpkgs ${NOW}" || true
echo "[!] Merge ${UPDATE_BRANCH} into updated-inputs"
xgit checkout updated-inputs
xgit merge -s ort -X theirs "${UPDATE_BRANCH}" -m "Update from ${UPDATE_BRANCH}"
echo "[!] Publish updated-inputs"
xgit push origin updated-inputs