rewrite jenkins job filler as a callout to a python script
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
OpenStack Core Infrastructure |
Fix Released
|
High
|
Andrew Hutchings |
Bug Description
The pure-puppet jenkins job filler seems a bit fragile. We should re-write this as a standalone python program which is simply invoked by puppet. It would be great if it was driven by a yaml representation of what the jobs should be, so that pointing people at adding/changing job composition is as simple as pointing them to a yaml file.
Additionally, there is a python module that provides a decent interface to jenkins job creation. If we use it, it'll put the xml chunk into the job via the web UI, which will let us see changes via the job history plugin. We could still use puppet to track the underlying file on the filesystem ... subscribe to the xml file with an action which posts the contents into the UI or something.
Changed in openstack-ci: | |
status: | Triaged → In Progress |
Changed in openstack-ci: | |
status: | Fix Committed → Fix Released |
Reviewed: https:/ /review. openstack. org/7271 github. com/openstack/ openstack- ci-puppet/ commit/ c3db5b210abe662 749d080ae7b1d12 1ff99e2042
Committed: http://
Submitter: Jenkins
Branch: master
commit c3db5b210abe662 749d080ae7b1d12 1ff99e2042
Author: Andrew Hutchings <email address hidden>
Date: Wed May 9 14:28:53 2012 +0100
Jenkins Job builder 2.0
This uses a python script with modules for parts of the XML. The parameters for the projects are provided using YAML scripts.
It also includes a Jenkins API module to directly inject jobs into Jenkins without requiring a restart/reload as well as a memory of which jobs have been pushed to Jenkins.
It is currently configured to replace the original Jenkins Jobs in StackForge.
What it won't yet do:
1. Delete jobs (although it isn't far off being able to)
2. check-* jobs (need to modify the trigger_gerrit module to support that)
Documentation to follow
Fixes bug #995599
Change-Id: I2a67ee2d9e8f43 cbced56425ef7f8 0dc6a30a814