38.19.1. Release procedure
Ensure that the Automated tests are passing on a clean build:
mv out out.bak ./build-test --size 3 && ./test --size 3
The ./build-test
command builds a superset of what will be downloaded which also tests other things we would like to be working on the release. For the minimal build to generate the files to be uploaded, see: Section 38.19.2, “release-zip”
The clean build is necessary as it generates clean images since it is not possible to remove Buildroot packages
Run all tests in Non-automated tests just QEMU x86_64 and QEMU aarch64.
TODO: not working currently, so skipped: Ensure that the benchmarks look fine:
./bench-all -A
Create a release candidate and upload it:
git tag -a -m '' v3.0-rc1 git push --follow-tags ./release-zip --all-archs # export LKMC_GITHUB_TOKEN=<your-token> ./release-upload
Now let’s do an out-of-box testing for the release candidate:
cd .. git clone https://github.com/cirosantilli/linux-kernel-module-cheat linux-kernel-module-cheat-release cd linux-kernel-module-cheat-release
Test Prebuilt setup.
Clean up, and re-start from scratch:
cd .. rm -rf linux-kernel-module-cheat-release git clone https://github.com/cirosantilli/linux-kernel-module-cheat linux-kernel-module-cheat-release cd linux-kernel-module-cheat-release
Go through all the other Getting started sections in order.
Once everything looks fine, publish the release with:
git tag -a v3.0 # Describe the release int the tag message. git push --follow-tags ./release-zip --all-archs # export LKMC_GITHUB_TOKEN=<your-token> ./release-upload