Consul is a distributed, highly available, and data center aware solution to connect and configure applications across dynamic, distributed infrastructure.
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
#!/usr/bin/env bash
readonly SCRIPT_NAME = " $( basename ${ BASH_SOURCE [0] } ) "
readonly SCRIPT_DIR = " $( dirname " ${ BASH_SOURCE [0] } " ) "
readonly SOURCE_DIR = " $( dirname " $( dirname " ${ SCRIPT_DIR } " ) " ) "
readonly FN_DIR = " $( dirname " ${ SCRIPT_DIR } " ) /functions "
source " ${ SCRIPT_DIR } /functions.sh "
function usage {
cat <<-EOF
Usage: ${ SCRIPT_NAME } [ <options ...>]
Description:
This script is just a convenience around discover what the Consul
version would be if you were to build it.
Options:
-s | --source DIR Path to source to build.
Defaults to " ${ SOURCE_DIR } "
-r | --release Include the release in the version
-g | --git Take git variables into account
-h | --help Print this help text.
EOF
}
function err_usage {
err " $1 "
err ""
err " $( usage) "
}
function main {
declare sdir = " ${ SOURCE_DIR } "
declare -i release = 0
declare -i git_info = 0
while test $# -gt 0
do
case " $1 " in
-h | --help )
usage
return 0
; ;
-s | --source )
if test -z " $2 "
then
err_usage "ERROR: option -s/--source requires an argument"
return 1
fi
if ! test -d " $2 "
then
err_usage " ERROR: ' $2 ' is not a directory and not suitable for the value of -s/--source "
return 1
fi
sdir = " $2 "
shift 2
; ;
-r | --release )
release = 1
shift
; ;
-g | --git )
git_info = 1
shift
; ;
*)
err_usage " ERROR: Unknown argument: ' $1 ' "
return 1
; ;
esac
done
parse_version " ${ sdir } " " ${ release } " " ${ git_info } " || return 1
return 0
}
main " $@ "
exit $?