Last modified: 2014-01-06 10:30:08 UTC

Wikimedia Bugzilla is closed!

Wikimedia migrated from Bugzilla to Phabricator. Bug reports are handled in Wikimedia Phabricator.
This static website is read-only and for historical purposes. It is not possible to log in and except for displaying bug reports and their history, links might be broken. See T50419, the corresponding Phabricator task for complete and up-to-date bug report information.
Bug 48419 - Zuul: Make gate-and-submit a DependentPipeline
Zuul: Make gate-and-submit a DependentPipeline
Status: RESOLVED FIXED
Product: Wikimedia
Classification: Unclassified
Continuous integration (Other open bugs)
wmf-deployment
All All
: Low enhancement (vote)
: ---
Assigned To: Antoine "hashar" Musso (WMF)
:
Depends on:
Blocks: 47724
  Show dependency treegraph
 
Reported: 2013-05-13 20:36 UTC by Antoine "hashar" Musso (WMF)
Modified: 2014-01-06 10:30 UTC (History)
3 users (show)

See Also:
Web browser: ---
Mobile Platform: ---
Assignee Huggle Beta Tester: ---


Attachments

Description Antoine "hashar" Musso (WMF) 2013-05-13 20:36:07 UTC
Whenever several changes are CR+2 in a short period of time, it does not make sense to test each of the proposed change, we only care about the end result.  Zuul handle that by merging all the changes in order and trigger a job testing all the changes at all, if that works, it merge them all.

Our gate-and-submit pipeline "simply" has to be made a DependentPipeLineManager.

There might be some side effects though.
Comment 1 Krinkle 2013-06-03 20:07:04 UTC
Did you mean post-merge instead of gate-and-submit?

gate-and-submit must be run for individual changes so that test failures can be caught individually. What will gate-and-submit do if it runs for multiple changes and there is an error?

Will git HEAD have the proper modified files for all of the changes? Afaik a git-merge can only be of 2 changes, not of an arbitrary number of changes. Zuul would have to do some kind of squash to simulate them as 1 change. Not sure this is wanted.

What problem will this solve?

If for post-merge instead of gate-and-submit, it makes sense to combine them. Though even then one could argue it is useful to know which change caused a regression.
Comment 2 Antoine "hashar" Musso (WMF) 2013-06-04 14:07:23 UTC
I did mean gate-and-submit.

The DependentPipeline is described in upstream documentation:
  http://ci.openstack.org/zuul/gating.html

The use case is to speed up the gating process when a lot of changes are approved at the same time. We currently tests them one by one when we could have them run in parallel (on different slaves).

I am not entirely sure how it works, hence this bug :D
Comment 3 Gerrit Notification Bot 2013-12-16 13:48:14 UTC
Change 101839 had a related patch set uploaded by Hashar:
make gate-and-submit a dependent pipeline

https://gerrit.wikimedia.org/r/101839
Comment 4 Gerrit Notification Bot 2013-12-16 13:48:42 UTC
Change 101839 merged by jenkins-bot:
make gate-and-submit a dependent pipeline

https://gerrit.wikimedia.org/r/101839
Comment 5 Antoine "hashar" Musso (WMF) 2013-12-16 14:49:36 UTC
I played with it over the week-end on my local machine. Seems to works fine for our use cases though I haven't thoroughly tested the mediawiki wmf branches system.

The Gerrit change #101839 made gate-and-submit a DependentPipeline. Did land a few changes today and they merged properly AND in the proper order.
Comment 6 Antoine "hashar" Musso (WMF) 2014-01-06 10:30:08 UTC
Deployed in production back in december and working fine.  We still need more gating jobs but that is an over story.

Note You need to log in before you can comment on or make changes to this bug.


Navigation
Links