Zuul is nice open source CI/CD system from openstack-infra tenant, and it helps openstack community to run CI/CD jobs when code changing.Zuul contains Zuul and Nodepool projects which support to run jobs on VM, however, starting a VM will cost too much resouces and may be slowly.
Besides, offical Zuul is running on host as daemon, it can not rolling update itself or failover and do not support HA /LB by default.
Upstream Nodepool has supported Kubernetes driver, a wonderful change to helps jobs running on Kubernetes pods, bad news is that Zuul itself can not support using Kubernetes for build resources very well.
And We will share a best practice to run zuul on Kubernetes, and you will see:
- How to running zuul and nodepool on kubernetes by helm charts to support zuul/nodepool upgrading and failover.
- How to running zuul jobs using nodepool kubernetes driver.
- Demo Show
- More and more applications running on kubernetes as micro service today including openstack, we hope to run CI/CD in kubernetes rather than single container or virtual machine(VM) to improve efficiency.
- CI/CD system itself should support HA/LB, failover and upgrading.
- Zuul committed to be a generic CI/CD system, and we need to support more and more drivers.
- We meet some troubles that CI testing environment and product environmnet are different, one is running on VM and another is running on container\K8S, it may causes some unexpected problems. We should unify them.