It’s time for the community to help determine the winner of the 2020 Open Infrastructure Summit Superuser Awards. The Superuser Editorial Advisory Board will review the nominees and determine the finalists and overall winner after the community has had a chance to review and rate nominees.
Now, it’s your turn.
Leboncoin is one of eight nominees for the Superuser Awards. Review the nomination criteria below, check out the other nominees and rate them before the deadline September 28 at 11:59 p.m. Pacific Daylight Time.
Rate them here!
Who is the nominee?
How did your organization get started with Zuul?
We started using Zuul for open source CI two years ago with Zuulv2 and Jenkins. At the beginning, we only used Gerrit and Jenkins, but as new developers joined Leboncoin each new day, this solution was not enough. After some research and a proof-of-concept, we gave Zuul a try, running between Gerrit and Jenkins. In less than a month (and without an official thick documentation) we’ve setup a complete new stack. We ran it for a year before moving to Zuulv3. Zuulv3 is more complex in terms of setup but brings us more features using up-to-date tools like Ansible or OpenStack.
Describe how you’re using it:
We’re using Zuulv3 with Gerrit. Our workflow is close to the OpenStack one. For each review, Zuul is trigger on three “checks” pipelines: quality, integration and build. Once results are correct, we use the gate system to merge the code into repositories and build artifacts.
We are using two small OpenStack clusters (3 CTRL / 3 STRG / 5 COMPUTE) on each datacenter. Zuul is currently setup on all Gerrit projects and some GitHub projects too. Below, is our Zuulv3 infrastructure in production and in the case of datacenter loss.
Zuulv3 infrastructure in production.
Zuulv3 infrastructure in the case of DC loss.
What is your current scale?
In terms of compute resources, we currently have 480 cores, 1.3To Ram and 80To in our Ceph clusters available. In terms of jobs, we ran around 60,000 jobs per month which means ~around 2,500 jobs per day. Jobs average time is less than five minutes.
What benefits has your organization seen from using Zuul?
As Leboncoin is growing very fast (and microservices too 🙂 ), Zuul allows us to ensure everything can be tested and at scale. Zuul is also able to work with Gerrit and GitHub which permits us to open our CI to more teams and workflows.
What have the challenges been (and how have you solved them)?
Our big challenge was to migrate from Zuulv2 to Zuulv3. Even if everything is using Ansible, it was very tiresome to migrate all our CI jobs (around 500 Jenkins jobs). With the help of Zuul guys on IRC, we used some Ansible roles and playbooks used by OpenStack but migration time was about a year.
What are your future plans with Zuul?
Our next steps are to use Kubernetes backend for small jobs like linters and improve Zuul with GitHub.
How can organizations who are interested in Zuul learn more and get involved?
Coming from OpenStack, I think meeting the community at Summits or on IRC is a good start. But Zuul needs better visibility. It is a powerful tool but the information online is limited.
Are there specific features that drew you to Zuul?
Scalability! And also ensuring than every commit merge into the repository is clean and can’t be broken.
What would you request from the Zuul upstream community?
Work on a better integration to Gerrit 3, new nodepool features and provider, a full HA and more visibility on the Internet.
Are you a Zuul user? Please take a few moments to fill out the Zuul User Survey to provide feedback and information around your deployment. All information is confidential to the OpenStack Foundation unless you designate that it can be public
Cover image courtesy of Guillaume Chenuet.