infra - Add more zuul triggers for daily build

Registered by Steve Varnau

While working with partners on proof-of-concept installations, we sometimes need quick turn-around on an extra daily build to post the latest software. Currently, daily pipeline is timer triggered. We could add a gerrit trigger so that a certain string comment on *merged* change triggers the daily pipeline.

Blueprint information

Status:
Not started
Approver:
None
Priority:
Low
Drafter:
Steve Varnau
Direction:
Needs approval
Assignee:
None
Definition:
New
Series goal:
None
Implementation:
Deferred
Milestone target:
None

Related branches

Sprints

Whiteboard

Zuul is not matching MERGED status properly. https://bugs.launchpad.net/zuul/+bug/1356662
I have submitted a fix up-stream for this. Waiting on openstack-infra team to review.
Fix has been merged upstream, and is in our version of Zuul. So this is no longer blocked.

Verified that we can trigger a build based on comment of change already merged.
To do this, we need to define a new pipeline (say "extra") that has same jobs as daily, but has a require statement (status: MERGED) and a gerrit trigger to trigger on a comment.
This is less than ideal, because the comment must be added after the change is merged. The build will not actually build that particular commit, but will build latest master branch.

Cannot trigger on the merge of a change with earlier comment, because the comment filter is only looking at the current event. A possible (but probably confusing for users) way to implement this is
to use a gerrit approval category rather than a comment. See https://review.trafodion.org/Documentation/config-labels.html (NoBlock/NoOp) It could be set-up to allow only Release Managers to change the value and trigger a build, but it would show as an extra approval on every change.

All the solutions have downsides, so we're dropping priority of this for now, and just document how to do build-on-demand manually.

(?)

Work Items

Work items:
Test zuul settings in an experimental pipeline: DONE
Test merged, then comment: DONE
Test comment, then merged: DONE
Add to daily pipeline: TODO

This blueprint contains Public information 
Everyone can see this information.

Subscribers

No subscribers.