Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save idefixcert/63606017475a75eeb6ca37c87d502d83 to your computer and use it in GitHub Desktop.
Save idefixcert/63606017475a75eeb6ca37c87d502d83 to your computer and use it in GitHub Desktop.
#!/bin/bash
JENKINS_SERVER=http://build.rtbrick.com:8080
JOB=$1
JOB_QUERY=/job/${JOB}
CURRENT_BUILD_NUMBER_QUERY=/lastBuild/buildNumber
CURRENT_BUILD_JSON=`curl --silent ${JENKINS_SERVER}${JOB_QUERY}${CURRENT_BUILD_NUMBER_QUERY}`
echo $CURRENT_BUILD_JSON
BUILD_STATUS_QUERY=/$CURRENT_BUILD_JSON/api/json
JOB_STATUS_JSON=`curl --silent ${JENKINS_SERVER}${JOB_QUERY}${BUILD_STATUS_QUERY}`
#echo $JOB_STATUS_JSON
RESULT=`echo "${JOB_STATUS_JSON}" | sed -n 's/.*"result":\"\([A-Za-z]*\)\".*/\1/p'`
echo $RESULT
GITSHA1=`echo "${JOB_STATUS_JSON}" | sed -n 's/.*"SHA1":\"\([A-Za-z0-9]*\)\".*/\1/p'`
echo $GITSHA1
VERSION=`echo "${JOB_STATUS_JSON}" | sed -n 's/.*"value":\"\([0-9.]*\)\".*/\1/p'`
echo $VERSION
if [ "${RESULT}" = "SUCCESS" ]
then
echo "${LAST_BUILD_STATUS}${JOB} ${CURRENT_BUILD_NUMBER} completed successfully."
FULLVERSION=${VERSION}_${CURRENT_BUILD_JSON}
echo $FULLVERSION
TAG=`git tag -a $FULLVERSION -m "build tag $FULLVERSION" $GITSHA1`
echo $TAG
PUSH=`git push origin $FULLVERSION`
echo $PUSH
elif [ "${RESULT}" = "FAILURE" ]
then
LAST_BUILD_STATUS=${BAD_BUILD}
echo "${LAST_BUILD_STATUS}${JOB} ${CURRENT_BUILD_NUMBER} failed${CLEAR_COLOURS}"
else
LAST_BUILD_STATUS=${BAD_BUILD}
echo "${LAST_BUILD_STATUS}${JOB} ${CURRENT_BUILD_NUMBER} status unknown - '${RESULT}'"
fi
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment