github.com/kjdelisle/consul@v1.4.5/build-support/scripts/dev.sh (about) 1 #!/bin/bash 2 SCRIPT_NAME="$(basename ${BASH_SOURCE[0]})" 3 pushd $(dirname ${BASH_SOURCE[0]}) > /dev/null 4 SCRIPT_DIR=$(pwd) 5 pushd ../.. > /dev/null 6 SOURCE_DIR=$(pwd) 7 popd > /dev/null 8 pushd ../functions > /dev/null 9 FN_DIR=$(pwd) 10 popd > /dev/null 11 popd > /dev/null 12 13 source "${SCRIPT_DIR}/functions.sh" 14 15 function usage { 16 cat <<-EOF 17 Usage: ${SCRIPT_NAME} [<options ...>] 18 19 Description: 20 21 This script will put the source back into dev mode after a release. 22 23 Options: 24 25 -s | --source DIR Path to source to build. 26 Defaults to "${SOURCE_DIR}" 27 28 --no-git Do not commit or attempt to push 29 the changes back to the upstream. 30 31 -h | --help Print this help text. 32 EOF 33 } 34 35 function err_usage { 36 err "$1" 37 err "" 38 err "$(usage)" 39 } 40 41 function main { 42 declare sdir="${SOURCE_DIR}" 43 declare build_os="" 44 declare build_arch="" 45 declare -i do_git=1 46 declare -i do_push=1 47 48 49 while test $# -gt 0 50 do 51 case "$1" in 52 -h | --help ) 53 usage 54 return 0 55 ;; 56 -s | --source ) 57 if test -z "$2" 58 then 59 err_usage "ERROR: option -s/--source requires an argument" 60 return 1 61 fi 62 63 if ! test -d "$2" 64 then 65 err_usage "ERROR: '$2' is not a directory and not suitable for the value of -s/--source" 66 return 1 67 fi 68 69 sdir="$2" 70 shift 2 71 ;; 72 --no-git ) 73 do_git=0 74 shift 75 ;; 76 --no-push ) 77 do_push=0 78 shift 79 ;; 80 * ) 81 err_usage "ERROR: Unknown argument: '$1'" 82 return 1 83 ;; 84 esac 85 done 86 87 set_dev_mode "${sdir}" || return 1 88 89 if is_set "${do_git}" 90 then 91 status_stage "==> Commiting Dev Mode Changes" 92 commit_dev_mode "${sdir}" || return 1 93 94 if is_set "${do_push}" 95 then 96 status_stage "==> Confirming Git Changes" 97 confirm_git_push_changes "${sdir}" || return 1 98 99 status_stage "==> Pushing to Git" 100 git_push_ref "${sdir}" || return 1 101 fi 102 fi 103 104 return 0 105 } 106 107 main "$@" 108 exit $?