From: Don Zickus <dzickus(a)redhat.com>
Export ark infrastructure files
Allow developers to use the ark infrastructure work on upstream
git trees. This change saves the redhat/ plus supporting files
on top of the 'master' branch.
A developer can then 'git merge ark-infra' to apply this
infrastructure.
"NO_CONFIGCHECKS make dist-configs" to create the configs. And
away they go.
Utilize the daily rawhide_release builds to create this branch. It
fits with the theme and is quick and easy to do in this job. Note
I use the 'ark-latest' as the source of the export. This should
include any environment fixes for the developer.
Tested by copy-n-pasting manual each step in the script to generate
the original ark-infra branch. The gitlab-ci.yml change should be
intuitive enough to skip testing.
diff a/.gitlab-ci.yml b/.gitlab-ci.yml
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -100,6 +100,7 @@ rawhide_release:
script:
- git checkout --track origin/master && git describe
- git checkout --track origin/ark-latest && git describe
+ - git checkout --track origin/ark-infra && git describe
- git checkout --track origin/os-build && git describe
- export PROJECT_ID="$CI_PROJECT_ID"
- redhat/scripts/ci/ark-create-release.sh "master"
"$CI_PROJECT_ID" || exit_code=$?
@@ -117,6 +118,7 @@ rawhide_release:
- git push gitlab "$(git describe)"
- git push gitlab ark/*
- git push -f gitlab ark-latest
+ - git push -f gitlab ark-infra
retry: 2
rules:
- if: '$CI_PIPELINE_SOURCE == "schedule" && $RAWHIDE_RELEASE ==
"true"'
diff a/redhat/scripts/ci/ark-create-release.sh b/redhat/scripts/ci/ark-create-release.sh
--- a/redhat/scripts/ci/ark-create-release.sh
+++ b/redhat/scripts/ci/ark-create-release.sh
@@ -57,6 +57,21 @@ RELEASE=$(git describe)
git checkout ark-latest
git reset --hard "$RELEASE"
+# Create ark-infra branch
+# Save the files needed
+tar -cf tmp.tar makefile Makefile.rhelver redhat/
+
+git checkout ark-infra
+git reset --hard master
+
+tar -xf tmp.tar
+# Manually add hook instead of cherry-pick
+# Add to middle to avoid git merge conflicts
+sed -i '/__all:/ a \\ninclude Makefile.rhelver' Makefile
+
+git add makefile Makefile.rhelver Makefile redhat
+git commit -m 'ARK infrastructure files'
+
printf "All done!
To push all the release artifacts, run:
--
https://gitlab.com/cki-project/kernel-ark/-/merge_requests/968