<div dir="ltr">Jay, <div><br></div><div>Just an FYI. We have modified the Gerrit plugin it accept/match regex to generate notifications of for "receck no bug/bug ###". It turned out to be very simple fix and we (Arista Testing) is now triggering on recheck comments as well.</div>
<div><br></div><div>regards..</div><div>-Sukhdev</div><div><br></div></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Thu, Feb 6, 2014 at 4:16 PM, Sukhdev Kapur <span dir="ltr"><<a href="mailto:sukhdev@aristanetworks.com" target="_blank">sukhdev@aristanetworks.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Hi Jay, <div><br></div><div>Thanks for bringing this up. I have been trying to make the recheck work and have not had much success. Therefore, I agree that we should go with option a) for the short term until b) or c) becomes available. </div>

<div>I would prefer b) because we have already invested a lot in our solution and it is fully operational. </div><div><br></div><div>Thanks</div><span class="HOEnZb"><font color="#888888"><div>-Sukhdev</div><div><br></div>
<div><br></div></font></span></div><div class="HOEnZb"><div class="h5"><div class="gmail_extra">
<br><br><div class="gmail_quote">On Tue, Feb 4, 2014 at 3:55 PM, Jay Pipes <span dir="ltr"><<a href="mailto:jaypipes@gmail.com" target="_blank">jaypipes@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

Sorry for cross-posting to both mailing lists, but there's lots of folks<br>
working on setting up third-party testing platforms that are not members<br>
of the openstack-infra ML...<br>
<br>
tl;dr<br>
-----<br>
<br>
The third party testing documentation [1] has requirements [2] that<br>
include the ability to trigger a recheck based on a gerrit comment.<br>
<br>
Unfortunately, the Gerrit Jenkins Trigger plugin [3] does not have the<br>
ability to trigger job runs based on a regex-filtered comment (only on<br>
the existence of any new comment to the code review).<br>
<br>
Therefore, we either should:<br>
<br>
a) Relax the requirement that the third party system trigger test<br>
re-runs when a comment including the word "recheck" appears in the<br>
Gerrit event stream<br>
<br>
b) Modify the Jenkins Gerrit plugin to support regex filtering on the<br>
comment text (in the same way that it currently supports regex filtering<br>
on the project name)<br>
<br>
or<br>
<br>
c) Add documentation to the third party testing pages that explains how<br>
to use Zuul as a replacement for the Jenkins Gerrit plugin.<br>
<br>
I propose we do a) for the short term, and I'll work on c) long term.<br>
However, I'm throwing this out there just in case there are some Java<br>
and Jenkins whizzes out there that could get b) done in a jiffy.<br>
<br>
details<br>
-------<br>
<br>
OK, so I've been putting together documentation on how to set up an<br>
external Jenkins platform that is "linked" [4] with the upstream<br>
OpenStack CI system.<br>
<br>
Recently, I wrote an article detailing how the upstream CI system<br>
worked, including a lot of the gory details from the<br>
openstack-infra/config project's files. [5]<br>
<br>
I've been working on a follow-up article that goes through how to set up<br>
a Jenkins system, and in writing that article, I created a source<br>
repository [6] that contains scripts, instructions and Puppet modules<br>
that set up a Jenkins system, the Jenkins Job Builder tool, and<br>
installs/configures the Jenkins Gerrit plugin [7].<br>
<br>
I planned to use the Jenkins Gerrit plugin as the mechanism that<br>
triggers Jenkins jobs on the external system based on gerrit events<br>
published by the OpenStack <a href="http://review.openstack.org" target="_blank">review.openstack.org</a> Gerrit service. In<br>
addition to being mentioned in the third party documentation, Jenkins<br>
Job Builder has the ability to construct Jenkins jobs that are triggered<br>
by the Jenkins Gerrit plugin [8].<br>
<br>
Unforunately, I've run into a bit of a snag.<br>
<br>
The third party testing documentation has requirements that include the<br>
ability to trigger a recheck based on a gerrit comment:<br>
<br>
<quote><br>
Support recheck to request re-running a test.<br>
 * Support the following syntaxes recheck no bug and recheck bug ###.<br>
 * Recheck means recheck everything. A single recheck comment should<br>
re-trigger all testing systems.<br>
</quote><br>
<br>
The documentation has a section on using the Gerrit Jenkins Trigger<br>
plugin [3] to accept notifications from the upstream OpenStack Gerrit<br>
instance.<br>
<br>
But unfortunately, the Jenkins Gerrit plugin does not support the<br>
ability to trigger a re-run of a job given a regex match of the word<br>
"recheck". :(<br>
<br>
So, we either need to a) change the requirements of third party testers,<br>
b) enhance the Jenkins Gerrit plugin with the missing functionality, or<br>
c) add documentation on how to set up Zuul as the triggering system<br>
instead of the Jenkins Gerrit plugin.<br>
<br>
I'm happy to work on c), but I think relaxing the restriction (a) is<br>
probably needed short-term.<br>
<br>
Best,<br>
-jay<br>
<br>
[1] <a href="http://ci.openstack.org/third_party.html" target="_blank">http://ci.openstack.org/third_party.html</a><br>
[2] <a href="http://ci.openstack.org/third_party.html#requirements" target="_blank">http://ci.openstack.org/third_party.html#requirements</a><br>
[3]<br>
<a href="http://ci.openstack.org/third_party.html#the-jenkins-gerrit-trigger-plugin-way" target="_blank">http://ci.openstack.org/third_party.html#the-jenkins-gerrit-trigger-plugin-way</a><br>
[4] By "linked" I mean it both reads from the OpenStack Gerrit system<br>
and writes (adds comments) to it<br>
[5] <a href="http://www.joinfu.com/2014/01/understanding-the-openstack-ci-system/" target="_blank">http://www.joinfu.com/2014/01/understanding-the-openstack-ci-system/</a><br>
[6] <a href="http://github.com/jaypipes/os-ext-testing" target="_blank">http://github.com/jaypipes/os-ext-testing</a><br>
[7] <a href="https://wiki.jenkins-ci.org/display/JENKINS/Gerrit+Trigger" target="_blank">https://wiki.jenkins-ci.org/display/JENKINS/Gerrit+Trigger</a><br>
[8]<br>
<a href="https://github.com/openstack-infra/jenkins-job-builder/blob/master/jenkins_jobs/modules/triggers.py#L121" target="_blank">https://github.com/openstack-infra/jenkins-job-builder/blob/master/jenkins_jobs/modules/triggers.py#L121</a><br>


<br>
<br>
</blockquote></div><br></div>
</div></div></blockquote></div><br></div>