#!/bin/bash # Usage: check_jenkins_job if [ "$#" -lt 3 ]; then echo "Usage: $0 " exit 3 fi JENKINS_URL=$1 VIEW=$2 JOB=$3 PASS=$5 USER=$4 shift 5 CURL_OUT=$( curl -s --basic -u "$USER:$PASS" "$@" "$JENKINS_URL/view/$VIEW/job/$JOB/lastBuild/api/json" ) RESULT=$( jq -r .result <<< "$CURL_OUT" ) RUNNING=$( jq -r .building <<< "$CURL_OUT" ) ID=$( jq -r .displayName <<< "$CURL_OUT" ) if [ "$RESULT" = "SUCCESS" ]; then echo "JOB OK: $JOB $ID succeeded" exit 0 elif [ "$RUNNING" = "true" ]; then echo "JOB OK: $JOB $ID is running" fi echo "JOB CRITICAL: $JOB $ID failed" exit 2