Take the next step of wiring up pipelinelib by configuring zuul to fire a build job for our demo container when a patchset is merged to the repo.
Description
Details
Status | Subtype | Assigned | Task | ||
---|---|---|---|---|---|
Open | None | T288685 Establish active/active multi-dc support for Toolhub | |||
Resolved | bd808 | T115650 Create an authoritative and well promoted catalog of Wikimedia tools | |||
Resolved | bd808 | T271483 Complete and announce initial production deployment of Toolhub | |||
Duplicate | BUG REPORT | None | T287516 Generation of "demo" Dockerfile from Toolhub's blubber.yaml broken after refactoring | ||
Resolved | bd808 | T278503 Build and push Docker containers on merge |
Event Timeline
I had a short call with @jeena and @dduvall today to get some help getting oriented on this. That discussion led to the edit changing from talking about tags to patchset merge as the trigger event. They also shared a number of links to existing docs which should be useful in preparing my patches:
- https://wikitech.wikimedia.org/wiki/Deployment_pipeline/Migration/Tutorial
- https://wikitech.wikimedia.org/wiki/PipelineLib/Guides/How_to_configure_CI_for_your_project
- https://wikitech.wikimedia.org/wiki/PipelineLib/Reference
The kask project is using tag pushes as a trigger as well, but the general workflow today is to allow a new image to be pushed into the repo with each gerrit merge and then control which particular image is used in a given cluster by pinning the container tag in the project's helm3 configuration.
After our call, I wrote up a new section in the PipelineLib user guide for Zuul integration of pipelines that publish/promote images. Hopefully that helps as well.
Change 707878 had a related patch set uploaded (by BryanDavis; author: Bryan Davis):
[wikimedia/toolhub@main] build: Add publish pipeline
Change 707879 had a related patch set uploaded (by BryanDavis; author: Bryan Davis):
[integration/config@master] toolhub: Add publish pipeline config
Change 707878 merged by jenkins-bot:
[wikimedia/toolhub@main] build: Add publish pipeline
Change 707879 merged by jenkins-bot:
[integration/config@master] toolhub: Add publish pipeline config
Change 708387 had a related patch set uploaded (by BryanDavis; author: Bryan Davis):
[wikimedia/toolhub@main] build: Tag CI built production images as \"latest\"
Change 708387 merged by jenkins-bot:
[wikimedia/toolhub@main] build: Tag CI built production images as \"latest\"
Not only are we pushing on merge, but the demo server is now running images pulled from the internal docker repository!