[OpenStack-Infra] [cinder][neutron][nova][3rd party testing] Gerrit Jenkins plugin will not fulfill requirements of 3rd party testing
Jay Pipes
jaypipes at gmail.com
Wed Feb 5 16:39:32 UTC 2014
On Wed, 2014-02-05 at 15:50 +0400, Sergey Lukjanov wrote:
> Hi Jay,
>
> it's really very easy to setup Zuul for it (we're using one for
> Savanna CI).
Yes, I set up Zuul for AT&T's gate system, thx.
> 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.
Yeah, I proposed in my email that I would do the documentation for using
Zuul as the trigger from Gerrit (see below). However, I didn't think I'd
get the docs done in a timely fashion and proposed relaxing the
requirement for "recheck" triggers until that documentation was complete
(since most of the vendors I have spoken with have used the Jenkins
Gerrit plugin and not Zuul as their triggering agent)
Best,
-jay
>
> 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.
More information about the OpenStack-Infra
mailing list