mirror_zfs/.github/workflows/scripts
Tony Hutter b55256e5bb
runners: Add option to install custom kernel on Fedora
Allow installing a custom kernel version from the Fedora experimental
kernel repos onto the github runners.  This is useful for testing if
ZFS works against a newer kernel.

Fedora has a number of repos with experimental kernel packages. This
PR allows installs from kernels in these repos:

@kernel-vanilla/stable
@kernel-vanilla/mainline
(https://fedoraproject.org/wiki/Kernel_Vanilla_Repositories)

You will need to manually kick of a github runner to test with a custom
kernel version.  To do that, go to the github actions tab under
'zfs-qemu' and click the drop-down for 'run workflow'.  In there you
will see a text box to specify the version (like '6.14').  The scripts
will do their best to match the version to the newest matching version
that the repos support (since they're may be multiple nightly versions
of, say, '6.14').  A full list of kernel versions can be seen in the
dependency stage output if you kick off a manual run.

Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Reviewed-by: Tino Reichardt <milky-zfs@mcmilk.de>
Signed-off-by: Tony Hutter <hutter2@llnl.gov>
Closes #17156
2025-05-13 14:43:35 -07:00
..
generate-ci-type.py ZTS: Optimize KSM on Linux and remove it for FreeBSD 2025-04-29 15:27:47 -04:00
merge_summary.awk ZTS: Use QEMU for tests on Linux and FreeBSD 2024-09-17 12:03:27 -07:00
qemu-1-setup.sh ZTS: Optimize KSM on Linux and remove it for FreeBSD 2025-04-29 15:27:47 -04:00
qemu-2-start.sh ZTS: Optimize KSM on Linux and remove it for FreeBSD 2025-04-29 15:27:47 -04:00
qemu-3-deps-vm.sh runners: Add option to install custom kernel on Fedora 2025-05-13 14:43:35 -07:00
qemu-3-deps.sh runners: Add option to install custom kernel on Fedora 2025-05-13 14:43:35 -07:00
qemu-4-build-vm.sh runners: Fix tarball build for zfs-qemu-packages workflow (#17158) 2025-03-26 13:13:33 -07:00
qemu-4-build.sh Add 'zfs-qemu-packages' workflow for RPM building 2025-03-05 09:19:56 -08:00
qemu-5-setup.sh ZTS: Optimize KSM on Linux and remove it for FreeBSD 2025-04-29 15:27:47 -04:00
qemu-6-tests.sh ZTS: Optimize KSM on Linux and remove it for FreeBSD 2025-04-29 15:27:47 -04:00
qemu-7-prepare.sh ZTS: Optimize KSM on Linux and remove it for FreeBSD 2025-04-29 15:27:47 -04:00
qemu-8-summary.sh ZTS: Optimize KSM on Linux and remove it for FreeBSD 2025-04-29 15:27:47 -04:00
qemu-9-summary-page.sh ZTS: Fix summary page creation again - second try 2024-10-06 14:32:08 -07:00
qemu-prepare-for-build.sh Add 'zfs-qemu-packages' workflow for RPM building 2025-03-05 09:19:56 -08:00
qemu-test-repo-vm.sh Add 'zfs-qemu-packages' workflow for RPM building 2025-03-05 09:19:56 -08:00
qemu-wait-for-vm.sh Add 'zfs-qemu-packages' workflow for RPM building 2025-03-05 09:19:56 -08:00
README.md ZTS: Use QEMU for tests on Linux and FreeBSD 2024-09-17 12:03:27 -07:00
replace-dupes-with-symlinks.sh Add 'zfs-qemu-packages' workflow for RPM building 2025-03-05 09:19:56 -08:00

Workflow for each operating system:

  • install qemu on the github runner
  • download current cloud image of operating system
  • start and init that image via cloud-init
  • install dependencies and poweroff system
  • start system and build openzfs and then poweroff again
  • clone build system and start 2 instances of it
  • run functional testings and complete in around 3h
  • when tests are done, do some logfile preparing
  • show detailed results for each system
  • in the end, generate the job summary

/TR 14.09.2024