diff --git a/home.md b/home.md index dc1d392..4f7a09d 100644 --- a/home.md +++ b/home.md @@ -21,12 +21,18 @@ This guide assumes you have write access to https://gitlab.com/cki-project/kerne Rebasing the kernel involves the following steps: -### Kernel Patches +### ARK Kernel Patches 1. Rebase the kernel patches: ``git rebase ark-patches``. 2. If a patch fails to apply and the fix is clear, go ahead and fix it. Otherwise, file an [issue](https://gitlab.com/cki-project/kernel-ark/issues) for each patch that does not apply with the commit hash and conflict details so it can be resolved later. -3. Create a branch for this revision of the kernel patches. This is useful when comparing the state of the patches between versions: ``git branch ark/patches/`` -4. Import the latest Fedora Rawhide patches from the Fedora [dist-git](https://src.fedoraproject.org/rpms/kernel): ``grep ^Patch $FEDORA_DISTGIT/kernel.spec | awk -vdistgit="$FEDORA_DISTGIT" '{print distgit $2}' | xargs git am`` +3. If rebasing onto a tag, create a branch for this revision of the kernel patches. This is useful when comparing the state of the patches between versions: ``git branch ark/patches/``. +4. ``git push -f upstream ark-patches`` + +### Fedora Patches +1. ``git checkout fedora-patches`` +2. ``git reset --hard `` +3. Import the latest Fedora Rawhide patches from the Fedora [dist-git](https://src.fedoraproject.org/rpms/kernel): ``grep ^Patch $FEDORA_DISTGIT/kernel.spec | awk -vdistgit="$FEDORA_DISTGIT" '{print distgit $2}' | xargs git am`` +4. ``git push -f upstream fedora-patches`` ### Configuration @@ -46,10 +52,27 @@ Once the kernel patches and configuration have been updated for the new release, 3. ``touch localversion`` 4. ``make rh-release`` 5. ``make rh-release-tag`` -6. ``git push upstream ark/ ark/patches/ kernel--`` +6. ``git push upstream ark/ ark/patches/ kernel--`` 7. ``git checkout master`` 8. ``git reset --hard ark/`` -9. ``git push -f upstream master ark-patches`` +9. ``git push -f upstream master`` + +## Building + +After a release branch has been prepared, it's time to build it. This guide assumes you have Koji and/or Brew installed and properly configured. It also assumes you've authenticated and have permissions to build. + +### ARK + +1. Run ``make rh-dist-git``. This will create a directory in /tmp. The directory name will be printed at the end, it should end with /kernel . It may look like this: /tmp/RHEL8.2018-10-08.HXzpLdpW/kernel. The next time you are building dist-git, you may edit redhat/Makefile.rhpkg and use cache to make the process faster. This is done by setting RHDISTGIT_CACHE:= where path2distgit is the path to previous make rh-dist-git output. + +2. ``cd /tmp/RHEL-8*/kernel`` +3. ``vim ../changelog ../diff``. Confirm the changelog includes the changes for this release and looks reasonable. +4. ``git diff --cached``. Final check to make sure things look correct. +5. ``git commit -a -s -F ../changelog`` +6. ``rhpkg push`` +7. ``rhpkg build --target temp-ark-rhel-8-test --skip-nvr-check`` +8. ``rhpkg tag -F ../changelog`` +9. ``git push origin `` # Repository Layout