Loading register.sh +57 −20 Original line number Diff line number Diff line Loading @@ -15,7 +15,9 @@ test -e ${CONFIG_FILE} && usage() { cat <<-END Usage: $0 [-h] [-d DESCRIPTION] [-u COORDINATOR] TOKEN [NAME] Usage: $0 [-h] [register] [-d DESCRIPTION] [-u COORDINATOR] TOKEN [NAME] $0 [-h] unregister RUNNER_NAME Options: -h --help Print this message and exit Loading @@ -25,9 +27,11 @@ usage() { Arguments: TOKEN A registration token provided by the co-ordinator (GitLab) instance NAME An instance name to identify this runner. NAME An instance name to identify a new runner. Defaults to "${FQDN}/%02i" where "%i" is an auto-generated index. RUNNER_NAME The name of an existing runner to unregister END } Loading Loading @@ -59,6 +63,23 @@ config_help() { END } case $1 in unregister) shift COMMAND=unregister ARGUMENTS=( RUNNER_NAME ) # Disable flags not allowed for unregister declare -r DESCRIPTION COORDINATOR_URL ;; register) shift ;& *) COMMAND=register ARGUMENTS=( TOKEN NAME ) ;; esac offset=0 while [[ $# -gt 0 ]]; do case "$1" in Loading @@ -79,7 +100,7 @@ done set -- "${ARGS[@]}" declare -n arg_var for arg_var in TOKEN NAME; do for arg_var in "${ARGUMENTS[@]}"; do [[ $# -gt 0 ]] || break arg_var=$1 shift Loading Loading @@ -122,13 +143,15 @@ find_name() { exit 1 } case $COMMAND in register) find_name docker run --rm -t -i -v ${RUNNER_CONFIG}:/etc/gitlab-runner \ ${IMAGE} register \ --non-interactive \ --url ${COORDINATOR_URL? Need COORDINATOR_URL in configs or environment, or --url} \ --registration-token ${TOKEN? A registration token is required} \ --url ${COORDINATOR_URL:? Need COORDINATOR_URL in configs or environment, or --url} \ --registration-token ${TOKEN:? A registration token is required} \ --description ${DESCRIPTION-$DEFAULT_DESCRIPTION} \ --executor docker \ --docker-image docker:stable \ Loading @@ -139,3 +162,17 @@ docker run --rm -t -i -v ${RUNNER_CONFIG}:/etc/gitlab-runner \ systemctl enable ${SYSTEMD_UNIT} systemctl start ${SYSTEMD_UNIT} ;; unregister) NAME=${RUNNER_NAME:?} set_name systemctl stop ${SYSTEMD_UNIT} systemctl disable ${SYSTEMD_UNIT} docker run --rm -t -i -v ${RUNNER_CONFIG}:/etc/gitlab-runner \ ${IMAGE} unregister --name ${RUNNER_NAME} rm -r ${RUNNER_CONFIG:?} ;; esac Loading
register.sh +57 −20 Original line number Diff line number Diff line Loading @@ -15,7 +15,9 @@ test -e ${CONFIG_FILE} && usage() { cat <<-END Usage: $0 [-h] [-d DESCRIPTION] [-u COORDINATOR] TOKEN [NAME] Usage: $0 [-h] [register] [-d DESCRIPTION] [-u COORDINATOR] TOKEN [NAME] $0 [-h] unregister RUNNER_NAME Options: -h --help Print this message and exit Loading @@ -25,9 +27,11 @@ usage() { Arguments: TOKEN A registration token provided by the co-ordinator (GitLab) instance NAME An instance name to identify this runner. NAME An instance name to identify a new runner. Defaults to "${FQDN}/%02i" where "%i" is an auto-generated index. RUNNER_NAME The name of an existing runner to unregister END } Loading Loading @@ -59,6 +63,23 @@ config_help() { END } case $1 in unregister) shift COMMAND=unregister ARGUMENTS=( RUNNER_NAME ) # Disable flags not allowed for unregister declare -r DESCRIPTION COORDINATOR_URL ;; register) shift ;& *) COMMAND=register ARGUMENTS=( TOKEN NAME ) ;; esac offset=0 while [[ $# -gt 0 ]]; do case "$1" in Loading @@ -79,7 +100,7 @@ done set -- "${ARGS[@]}" declare -n arg_var for arg_var in TOKEN NAME; do for arg_var in "${ARGUMENTS[@]}"; do [[ $# -gt 0 ]] || break arg_var=$1 shift Loading Loading @@ -122,13 +143,15 @@ find_name() { exit 1 } case $COMMAND in register) find_name docker run --rm -t -i -v ${RUNNER_CONFIG}:/etc/gitlab-runner \ ${IMAGE} register \ --non-interactive \ --url ${COORDINATOR_URL? Need COORDINATOR_URL in configs or environment, or --url} \ --registration-token ${TOKEN? A registration token is required} \ --url ${COORDINATOR_URL:? Need COORDINATOR_URL in configs or environment, or --url} \ --registration-token ${TOKEN:? A registration token is required} \ --description ${DESCRIPTION-$DEFAULT_DESCRIPTION} \ --executor docker \ --docker-image docker:stable \ Loading @@ -139,3 +162,17 @@ docker run --rm -t -i -v ${RUNNER_CONFIG}:/etc/gitlab-runner \ systemctl enable ${SYSTEMD_UNIT} systemctl start ${SYSTEMD_UNIT} ;; unregister) NAME=${RUNNER_NAME:?} set_name systemctl stop ${SYSTEMD_UNIT} systemctl disable ${SYSTEMD_UNIT} docker run --rm -t -i -v ${RUNNER_CONFIG}:/etc/gitlab-runner \ ${IMAGE} unregister --name ${RUNNER_NAME} rm -r ${RUNNER_CONFIG:?} ;; esac