branch: '{branch}'
refspec: 'refs/heads/{branch}'
artifacts: '{archive-artifacts} **/dependency_tree.txt **/*.hprof **/target/surefire-reports/*-output.txt'
-
+ - integration-bundleurl:
+ bundleurl: 'last'
scm:
- gerrit-trigger-scm:
refspec: ''
prebuilders:
- wipe-org-opendaylight-repo
- jacoco-nojava-workaround
+ - integration-get-bundle-vars
+ - inject:
+ properties-file: 'bundle_vars.txt'
- provide-maven-settings:
global-settings-file: 'odl-global-settings'
settings-file: 'integration-settings'
settings-type: cfp
global-settings: 'odl-global-settings'
global-settings-type: cfp
+ - integration-compare-distributions
+ # TODO: the output of the above command is not *friendly* for the reader because the most important info
+ # is listed last. This is fine/best for command line output, but for keeping in a file it would be better
+ # to put the summary at the beginning of the file. Some bash magic can be done here to make that happen.
reporters:
- findbugs
--- /dev/null
+#!/bin/bash
+
+# Depends on variables created and published from the get-bundle-vars script
+
+# Do not fail the build if there is trouble trying to collect distribution patch diffs
+set +e
+
+wget --progress=dot:mega $ACTUALBUNDLEURL
+echo "Extracting the last distribution found on nexus..."
+unzip -q $BUNDLE
+mv $BUNDLEFOLDER /tmp/distro_old
+
+echo "Extracting the distribution just created by this job..."
+NEW_DISTRO=$(find $WORKSPACE -name distribution-karaf*.zip)
+NEW_DISTRO_BASENAME=$(basename $NEW_DISTRO)
+cp $NEW_DISTRO /tmp/
+cd /tmp/
+# the following extracts the .zip and learns the name of the folder extracted to
+EXTRACTED_FOLDER=$(unzip $NEW_DISTRO_BASENAME | grep -m1 'creating:' | cut -d' ' -f5-)
+mv $EXTRACTED_FOLDER distro_new
+
+git clone https://git.opendaylight.org/gerrit/p/integration/test.git
+cd test/tools/distchanges
+mkdir -p $WORKSPACE/archives
+
+python distcompare.py -r ssh://jenkins-$SILO@git.opendaylight.org:29418 | tee $WORKSPACE/archives/dist_diff.txt
+# TODO: the output of the above command is not *friendly* for the reader because the most important info
+# is listed last. This is fine/best for command line output, but for keeping in a file it would be better
+# to put the summary at the beginning of the file. Some bash magic can be done here to make that happen.
NEXUSURL_PREFIX=${ODLNEXUSPROXY:-https://nexus.opendaylight.org}
ODL_NEXUS_REPO=${ODL_NEXUS_REPO:-content/repositories/opendaylight.snapshot}
GERRIT_PATH=${GERRIT_PATH:-git.opendaylight.org/gerrit}
+BRANCH=${GERRIT_BRANCH:-BRANCH}
if [ ${BUNDLEURL} == 'last' ]; then
# Obtain current pom.xml of integration/distribution, correct branch.
!include-raw:
- include-raw-integration-replace-block-text.sh
+# Macro: integration-compare-distributions
+# Operation: will compare an already created distribtion (probably last
+# published to nexus) to the current distribution being created.
+# The comparison is done to find the list of patches that are new to the
+# current distribtion.
+# Used by: builder-merge job template
+#
+# This script requires the bundle vars that are created by the
+# get-bundle-vars macro script
+
+
+- builder:
+ name: integration-compare-distributions
+ builders:
+ - shell:
+ !include-raw:
+ - include-raw-integration-compare-distributions.sh
+
##############
# Publishers #
##############