STREAM=${JOB_NAME#*-*e-}
# get console logs
-wget -O $CONSOLE_LOG ${BUILD_URL}consoleText
+wget -O "$CONSOLE_LOG" "${BUILD_URL}consoleText"
# extract the failing project or artifactid
-REACTOR_INFO=`awk '/Reactor Summary:/ { flag=1 }
+REACTOR_INFO=$(awk '/Reactor Summary:/ { flag=1 }
flag {
if ( sub(/^\[(INFO)\]/,"") && sub(/FAILURE \[.*/,"") ) {
gsub(/[[:space:]]*::[[:space:]]*/,"::")
print
}
}
- /Final Memory:/ { flag=0 }' $CONSOLE_LOG`
+ /Final Memory:/ { flag=0 }' $CONSOLE_LOG)
# check for project format
if [[ ${REACTOR_INFO} =~ .*::*.*::*. ]]; then
# extract project and artifactid from full format
- ODL=`echo ${REACTOR_INFO} | awk -F'::' '{ gsub(/^[ \t]+|[ \t]+$/, "", $1); print $1 }'`
- PROJECT=`echo ${REACTOR_INFO} | awk -F'::' '{ gsub(/^[ \t]+|[ \t]+$/, "", $2); print $2 }'`
- ARTIFACTID=`echo ${REACTOR_INFO} | awk -F'::' '{ gsub(/^[ \t]+|[ \t]+$/, "", $3); print $3 }'`
+ ODL=$(echo "${REACTOR_INFO}" | awk -F'::' '{ gsub(/^[ \t]+|[ \t]+$/, "", $1); print $1 }')
+ PROJECT=$(echo "${REACTOR_INFO}" | awk -F'::' '{ gsub(/^[ \t]+|[ \t]+$/, "", $2); print $2 }')
+ ARTIFACTID=$(echo "${REACTOR_INFO}" | awk -F'::' '{ gsub(/^[ \t]+|[ \t]+$/, "", $3); print $3 }')
else
# set ARTIFACTID to partial format
ODL=""
PROJECT=""
- ARTIFACTID=`echo ${REACTOR_INFO} | awk '{ gsub(/^[ \t]+|[ \t]+$/, ""); print }'`
+ ARTIFACTID=$(echo "${REACTOR_INFO}" | awk '{ gsub(/^[ \t]+|[ \t]+$/, ""); print }')
fi
# Construct email subject & body
"
# check if remote staging is complete successfully
-BUILD_STATUS=`awk '/\[INFO\] Remote staging finished/{flag=1;next} \
- /Total time:/{flag=0}flag' $CONSOLE_LOG \
- | grep '\] BUILD' | awk '{print $3}'`
+BUILD_STATUS=$(awk '/\[INFO\] Remote staging finished/{flag=1;next}/Total time:/{flag=0}flag' $CONSOLE_LOG \
+ | grep '\] BUILD' | awk '{print $3}')
if [ ! -z "${ARTIFACTID}" ] && [[ "${BUILD_STATUS}" != "SUCCESS" ]]; then
# project search pattern should handle both scenarios
+---
- project:
name: yang-push-carbon
jobs:
- - '{project-name}-clm-{stream}'
- - '{project-name}-distribution-check-{stream}'
- - '{project-name}-integration-{stream}'
- - '{project-name}-merge-{stream}'
- - '{project-name}-validate-autorelease-{stream}'
- - '{project-name}-verify-{stream}-{maven}-{jdks}'
+ - '{project-name}-clm-{stream}'
+ - '{project-name}-distribution-check-{stream}'
+ - '{project-name}-integration-{stream}'
+ - '{project-name}-merge-{stream}'
+ - '{project-name}-validate-autorelease-{stream}'
+ - '{project-name}-verify-{stream}-{maven}-{jdks}'
stream: carbon
project: 'yang-push'
branch: 'master'
jdk: openjdk8
jdks:
- - openjdk8
+ - openjdk8
maven:
- - mvn33:
- mvn-version: 'mvn33'
+ - mvn33:
+ mvn-version: 'mvn33'
mvn-settings: 'yang-push-settings'
mvn-goals: 'clean install'
mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
- project:
name: yang-push-boron
jobs:
- - '{project-name}-clm-{stream}'
- - '{project-name}-distribution-check-{stream}'
- - '{project-name}-integration-{stream}'
- - '{project-name}-merge-{stream}'
- - '{project-name}-validate-autorelease-{stream}'
- - '{project-name}-verify-{stream}-{maven}-{jdks}'
+ - '{project-name}-clm-{stream}'
+ - '{project-name}-distribution-check-{stream}'
+ - '{project-name}-integration-{stream}'
+ - '{project-name}-merge-{stream}'
+ - '{project-name}-validate-autorelease-{stream}'
+ - '{project-name}-verify-{stream}-{maven}-{jdks}'
stream: boron
project: 'yang-push'
branch: 'stable/boron'
jdk: openjdk8
jdks:
- - openjdk8
+ - openjdk8
maven:
- - mvn33:
- mvn-version: 'mvn33'
+ - mvn33:
+ mvn-version: 'mvn33'
mvn-settings: 'yang-push-settings'
mvn-goals: 'clean install'
mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
- project:
name: yang-push-beryllium
jobs:
- - '{project-name}-clm-{stream}'
- - '{project-name}-distribution-check-{stream}'
- - '{project-name}-integration-{stream}'
- - '{project-name}-merge-{stream}'
- - '{project-name}-validate-autorelease-{stream}'
- - '{project-name}-verify-{stream}-{maven}-{jdks}'
+ - '{project-name}-clm-{stream}'
+ - '{project-name}-distribution-check-{stream}'
+ - '{project-name}-integration-{stream}'
+ - '{project-name}-merge-{stream}'
+ - '{project-name}-validate-autorelease-{stream}'
+ - '{project-name}-verify-{stream}-{maven}-{jdks}'
stream: beryllium
project: 'yang-push'
- openjdk7
- openjdk8
maven:
- - mvn33:
- mvn-version: 'mvn33'
+ - mvn33:
+ mvn-version: 'mvn33'
mvn-settings: 'yang-push-settings'
mvn-goals: 'clean install'
mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
- project:
name: yang-push-sonar
jobs:
- - '{project-name}-sonar'
+ - '{project-name}-sonar'
project: 'yang-push'
project-name: 'yang-push'
branch: 'master'