[libvirt] [PATCH jenkins-ci 00/19] Use jenkins-job-builder for CI
Daniel P. Berrange
berrange at redhat.com
Fri Aug 5 11:28:01 UTC 2016
On Fri, Aug 05, 2016 at 01:22:52PM +0200, Pavel Hrdina wrote:
> On Fri, Aug 05, 2016 at 11:54:17AM +0100, Daniel P. Berrange wrote:
> > On Thu, Aug 04, 2016 at 03:52:09PM +0100, Daniel P. Berrange wrote:
> > > We are using the CentOS Jenkins server for running CI tasks.
> > > Currently those tasks are maintained by people manually
> > > updating the Jenkins web UI. This is a horrible interface
> > > that requires 100's of mouse clicks to achieve even the
> > > simplest things. It is also incredibly hard to compare
> > > the config of different jobs to make sure they are working
> > > in a consistent manner.
> > >
> > > Fortunately there are tools which can help - OpenStack
> > > created the jenkins-job-builder tool which uses the Jenkins
> > > REST API to create/update jobs from a simple YAML file
> > > definition.
> > >
> > > This series thus creates a set of YAML files which will
> > > (almost) replicate our current manually create config.
> > >
> > > I've used jenkins-job-builder in offline test mode to
> > > generate Jenkins XML files and then compared them to what
> > > we currently have and they are mostly the same. So there
> > > should not be too many suprises lurking, but I do still
> > > expect some accidental breakage in places. As such I have
> > > not actually uploaded the new auto-generated job configs
> > > to ci.centos.org at this time.
> > >
> > > The intention is that these configs will all live in the
> > > libvirt GIT server in a new 'libvirt-jenkins-ci' repository
> > BTW, following on from this, I would like to create kickstart + puppet
> > files for managing the build slaves & re-create the the slaves. This
> > will give us a known good config that we can replicate elsewhere as
> > needed.
> That's definitely good idea. As you've probably noticed there is a lot of env
> variables configured for all slaves. Is it possible to use the jenkins-jobs
> tool to configure those env variables too? I don't think that's a good idea
> configure those env variables directly inside the slaves since they are used
> only by Jenkins.
Yeah, we can trivially inject the env variables into all the job shell
scripts directly now
|: http://berrange.com -o- http://www.flickr.com/photos/dberrange/ :|
|: http://libvirt.org -o- http://virt-manager.org :|
|: http://autobuild.org -o- http://search.cpan.org/~danberr/ :|
|: http://entangle-photo.org -o- http://live.gnome.org/gtk-vnc :|
More information about the libvir-list