Devops Per Patch Kvmci
Per-patch KVM CI using open source recipes
Used recipes:
snowpatch - Used to listen on upstream patches from given mailing list and trigger the jenkins job.
Jenkins - Used to orchestrate the CI workflow using pipeline.
op-test-framework - Framework used to install upstream kernel and run tests.
Avocado framework - Framework used to run OS, KVM tests.
Hardware used: IBM Power8 box
WorkFlow:
-
snowpatch is configured to listen on a powerpc kernel mailing list and it does create a local branch with the new patch series on the mailing list and triggers the given jenkins job with the repository and branch details.
sample snowpatch output screenshot
-
Jenkins pipeline as shown is configured to run below workflow
-
Clone op-test-framework
-
Build and install upstream kernel on OpenPOWER box - built with
ppc64le_defconfig
-
Build upstream guest kernel - built with
ppc64le_guest_defconfig
-
Build upstream qemu
-
Build upstream libvirt
-
Run KVM Tests with Upstream Host Kernel, guest kernel, qemu and libvirt
-
-
Notify Slack on completion
Results can be viewed in Jenkins
Thanks for reading, Hope this helps you in someways…