Jenkins as a huge collections of independent shell scripts that are waiting to be executed with appropriate parameters.
Right that made me wonder... but then you said:
OpenStack has a spec to get rid of Jenkins entirely and instead have
Zuul create an Ansible play book to run on a machine. But really that is another topic.
Makes sense that we should drop Jenkins if we're not leveraging it's features.
Congrats again on contributing back to the OSS community!
On Thu, Nov 19, 2015 at 2:27 PM, Antoine Musso hashar+wmf@free.fr wrote:
Le 19/11/2015 18:51, Brian Gerstle a écrit :
Nice work!
Is this at all related to upstream/downstream Jenkins jobs?
The Zuul system does not rely at all on Jenkins upstream/downstream. One can think of Jenkins as a huge collections of independent shell scripts that are waiting to be executed with appropriate parameters.
OpenStack has a spec to get rid of Jenkins entirely and instead have Zuul create an Ansible play book to run on a machine. But really that is another topic.
To elaborate a bit more:
Gerrit does support dependencies between changes, but only in the same repository and branch. You can see that in the Gerrit web interface, and Gerrit will refuse to merge a change for which the parent is not merged yet.
Zuul does the same but independently from Gerrit. It is merely filling the gap of Gerrit lacks of cross repositories dependencies.
When a change is voted +2, it is enqueued in 'gate-and-submit'. Zuul immediately verify whether the dependencies are either merged or ahead in the queue, else it will reject the change and report back in Gerrit.
So if you have change A and change B depending on A. You +2 A then B and the queue is:
A <-- B (depend on A)
A is processed (no dependency) For B, Zuul find the dependency A ahead and thus it is processed.
If A fails the tests, B tests are automatically cancelled and the change dequeued. Zuul knows B depends on A.
Assuming all changes are merged by Zuul (via CR+2), Zuul dependency comes on top of Gerrit and nicely enforce dependencies.
-- Antoine "hashar" Musso
Wikitech-l mailing list Wikitech-l@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/wikitech-l