blob: c8ad80f9c6bc202e8509c9471fdb3405ff276d75 [file] [log] [blame]
Vincent Latombec14af952016-07-18 10:20:12 +02001#! /bin/bash -e
Nicolas De Loofd6064382014-10-04 08:17:28 +02002
Dave Head-Rapson595a4682016-02-29 13:41:53 +00003: ${JENKINS_HOME:="/var/jenkins_home"}
Carlos Sanchezbd2f6c92016-01-14 09:15:47 +01004touch "${COPY_REFERENCE_FILE_LOG}" || (echo "Can not write to ${COPY_REFERENCE_FILE_LOG}. Wrong volume permissions?" && exit 1)
Kanstantsin Shautsou44096322015-12-11 02:21:20 +03005echo "--- Copying files at $(date)" >> "$COPY_REFERENCE_FILE_LOG"
Charles Duffy98683582016-09-20 11:41:41 -05006find /usr/share/jenkins/ref/ -type f -exec bash -c '. /usr/local/bin/jenkins-support; for arg; do copy_reference_file "$arg"; done' _ {} +
Nicolas De Loofacb86492014-10-24 13:43:13 +02007
Nicolas De Loof07c307d2014-10-07 14:02:42 +02008# if `docker run` first argument start with `--` the user is passing jenkins launcher arguments
9if [[ $# -lt 1 ]] || [[ "$1" == "--"* ]]; then
Charles Duffybbbb76d2016-09-20 11:42:02 -050010
11 # read JAVA_OPTS and JENKINS_OPTS into arrays to avoid need for eval (and associated vulnerabilities)
12 java_opts_array=()
13 while IFS= read -r -d '' item; do
14 java_opts_array+=( "$item" )
15 done < <(xargs printf '%s\0' <<<"$JAVA_OPTS")
16
17 jenkins_opts_array=( )
18 while IFS= read -r -d '' item; do
19 jenkins_opts_array+=( "$item" )
20 done < <(xargs printf '%s\0' <<<"$JENKINS_OPTS")
21
22 exec java "${java_opts_array[@]}" -jar /usr/share/jenkins/jenkins.war "${jenkins_opts_array[@]}" "$@"
Nicolas De Loof07c307d2014-10-07 14:02:42 +020023fi
24
25# As argument is not jenkins, assume user want to run his own process, for sample a `bash` shell to explore this image
Nicolas De loofb2b442e2014-10-08 08:05:02 +020026exec "$@"