James E. Blair 1ea656b6a4 Changes to builders/publishers.
Make the following changes to builders and publishers in service
of being able to handle this job:

  http://paste.openstack.org/show/18541/

* Allow builders to have attributes
* Add a generic shell script builder
* Make the 'project' job attribute optional
  (no link to github will be made in that case)
* Combine all separate publishers into one publisher module
  so that jobs may have more than one publisher
* Name the section that lists publishers "post_build_actions"
  to be consistent with the web UI
* Allow publishers to have attributes
* Add an archive artifacts publisher
* Add a parameterized build trigger publisher
* Add a parameterized build_trigger builder
* Add wrappers
* Add a build timeout wrapper
* Add a timstamp wrapper

Also, make the following small improvements:

* The 'disabled' attribute of a job is optional, defaults to false.
* Add a script to verify XML output is the same before and after
  a change to the job filler (test.sh)

Change-Id: Icf2228494e431f5bf0a5f051f63842f12f6f92f1
2012-06-14 18:09:26 -07:00

27 lines
730 B
Bash
Executable File

#!/bin/bash
# A simple script to verify that the XML output is unaltered after a change.
# Before you start work, run "./test.sh save".
# As you test your change, run "./test.sh" to see differences in XML output.
mkdir -p /tmp/jenkins_jobs_test/saved
mkdir -p /tmp/jenkins_jobs_test/test
if [ "$1" == "save" ]
then
for x in `find projects/ -name *.yml`
do
echo $x
BASENAME=`basename $x`
python jenkins_jobs.py test $x > /tmp/jenkins_jobs_test/saved/$BASENAME.xml
done
else
for x in `find projects/ -name *.yml`
do
echo $x
BASENAME=`basename $x`
python jenkins_jobs.py test $x > /tmp/jenkins_jobs_test/test/$BASENAME.xml
done
diff -r /tmp/jenkins_jobs_test/saved /tmp/jenkins_jobs_test/test
fi