[openstack-dev] [OpenStack-Infra] [cinder][neutron][nova][3rd party testing] Gerrit Jenkins plugin will not fulfill requirements of 3rd party testing

Sergey Lukjanov slukjanov at mirantis.com
Wed Feb 5 11:50:23 UTC 2014


Hi Jay,

it's really very easy to setup Zuul for it (we're using one for Savanna CI).

There are some useful links:

* check pipeline as an example of zuul layout configuration -
https://github.com/openstack-infra/config/blob/master/modules/openstack_project/files/zuul/layout.yaml#L5
* zuul docs - http://ci.openstack.org/zuul/
* zuul config sample -
https://github.com/openstack-infra/zuul/blob/master/etc/zuul.conf-sample

So, I think that it could be easy enough to setup Zuul for 3rd party
testing, but it'll be better to have some doc about it.

Thanks.


On Wed, Feb 5, 2014 at 3:55 AM, Jay Pipes <jaypipes at gmail.com> wrote:

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



-- 
Sincerely yours,
Sergey Lukjanov
Savanna Technical Lead
Mirantis Inc.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstack.org/pipermail/openstack-dev/attachments/20140205/f1ab3991/attachment.html>


More information about the OpenStack-dev mailing list