211cd36318
Done in order to enable specifying build pipelines at the project level. Pipelines are built using the 'pipeline' plugin or the 'trigger-builds' plugin. The downstream job to be executed is specified at the project level, and substituted into the template. Ignoring definitions where the downstream job is blank allows the pipeline to be easily terminated. Also adding a samples/ directory, which currently contains an example of pipeline creation, together with a new tools/run-compare-xml-samples.sh to run the before/after test on the samples. Change-Id: Icc324d1485e22db7824ad784890db48eb3e48f8f Reviewed-on: https://review.openstack.org/13706 Reviewed-by: James E. Blair <corvus@inaugust.com> Reviewed-by: Clark Boylan <clark.boylan@gmail.com> Reviewed-by: Jeremy Stanley <fungi@yuggoth.org> Approved: James E. Blair <corvus@inaugust.com> Tested-by: Jenkins
63 lines
1.8 KiB
Bash
Executable File
63 lines
1.8 KiB
Bash
Executable File
#!/bin/bash -e
|
|
|
|
# Copied and modified from tools/run-compare-xml.sh
|
|
|
|
# Copyright (c) 2012, AT&T Labs, Yun Mao <yunmao@gmail.com>
|
|
# All Rights Reserved.
|
|
# Copyright 2012 Hewlett-Packard Development Company, L.P.
|
|
#
|
|
# Licensed under the Apache License, Version 2.0 (the "License"); you may
|
|
# not use this file except in compliance with the License. You may obtain
|
|
# a copy of the License at
|
|
#
|
|
# http://www.apache.org/licenses/LICENSE-2.0
|
|
#
|
|
# Unless required by applicable law or agreed to in writing, software
|
|
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
|
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
|
# License for the specific language governing permissions and limitations
|
|
# under the License.
|
|
|
|
# Assuming that all samples can be sensibly run at the same time.
|
|
|
|
rm -fr .test
|
|
mkdir -p .test/old/config
|
|
mkdir -p .test/old/out
|
|
mkdir -p .test/new/config
|
|
mkdir -p .test/new/out
|
|
cp samples/*.yaml .test/old/config
|
|
cp .test/old/config/* .test/new/config
|
|
|
|
GITHEAD=`git rev-parse HEAD`
|
|
|
|
# First generate output from HEAD~1
|
|
git checkout HEAD~1
|
|
tox -e compare-xml-old
|
|
|
|
# Then use that as a reference to compare against HEAD
|
|
git checkout $GITHEAD
|
|
tox -e compare-xml-new
|
|
|
|
CHANGED=0
|
|
for x in `(cd .test/old/out && find -type f)`
|
|
do
|
|
if ! diff -u .test/old/out/$x .test/new/out/$x >/dev/null 2>&1
|
|
then
|
|
CHANGED=1
|
|
echo "============================================================"
|
|
echo $x
|
|
echo "------------------------------------------------------------"
|
|
fi
|
|
diff -u .test/old/out/$x .test/new/out/$x || /bin/true
|
|
done
|
|
|
|
echo
|
|
echo "You are in detached HEAD mode. If you are a developer"
|
|
echo "and not very familiar with git, you might want to do"
|
|
echo "'git checkout branch-name' to go back to your branch."
|
|
|
|
if [ "$CHANGED" -eq "1" ]; then
|
|
exit 1
|
|
fi
|
|
exit 0
|