updated jenkins_create_run_job.sh

pull/16/head
Hari Sekhon 7 months ago
parent 93a81fa347
commit 88f08500e1

@ -25,6 +25,9 @@ srcdir="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
usage_description="
Creates a Jenkins job from a given xml file and triggers it to run immediately
If the job already exists, skips creation
If the job already exists and the enviroment variable JENKINS_OVERWRITE_JOB is set to any value it updates the job definition
Uses the adjacent script jenkins_cli.sh
Jenkins authentication token and environment variables must be set - see jenkins_cli.sh for more details
@ -43,9 +46,18 @@ job_xml="$2"
shift || :
shift || :
if ! [ -f "$job_xml" ]; then
die "Job config file not found: $job_xml"
fi
timestamp "Checking if job '$job_name' already exists'"
if jenkins_cli.sh list-jobs | grep -q "^$job_name$"; then
timestamp "Job '$job_name' already exists, skipping creation"
if [ -n "${JENKINS_OVERWRITE_JOB:-}" ]; then
timestamp "Job '$job_name' already exists, updating to ensure latest version"
"$srcdir/jenkins_cli.sh" update-job "$job_name" < "$job_xml"
else
timestamp "Job '$job_name' already exists, skipping creation"
fi
else
timestamp "Job '$job_name' does not exist yet, creating..."
"$srcdir/jenkins_cli.sh" create-job "$job_name" < "$job_xml"

Loading…
Cancel
Save