mirror of https://github.com/hashicorp/consul
Daniel Nephin
3 years ago
committed by
Jared Kirschner
5 changed files with 56 additions and 262 deletions
@ -1,107 +0,0 @@
|
||||
#!/bin/bash |
||||
SCRIPT_NAME="$(basename ${BASH_SOURCE[0]})" |
||||
pushd $(dirname ${BASH_SOURCE[0]}) > /dev/null |
||||
SCRIPT_DIR=$(pwd) |
||||
pushd ../.. > /dev/null |
||||
SOURCE_DIR=$(pwd) |
||||
popd > /dev/null |
||||
pushd ../functions > /dev/null |
||||
FN_DIR=$(pwd) |
||||
popd > /dev/null |
||||
popd > /dev/null |
||||
|
||||
source "${SCRIPT_DIR}/functions.sh" |
||||
|
||||
function usage { |
||||
cat <<-EOF |
||||
Usage: ${SCRIPT_NAME} [<options ...>] |
||||
|
||||
Description: |
||||
This script will build the Consul binary on the local system. |
||||
All the requisite tooling must be installed for this to be |
||||
successful. |
||||
|
||||
Options: |
||||
|
||||
-s | --source DIR Path to source to build. |
||||
Defaults to "${SOURCE_DIR}" |
||||
|
||||
-o | --os OSES Space separated string of OS |
||||
platforms to build. |
||||
|
||||
-a | --arch ARCH Space separated string of |
||||
architectures to build. |
||||
|
||||
-h | --help Print this help text. |
||||
EOF |
||||
} |
||||
|
||||
function err_usage { |
||||
err "$1" |
||||
err "" |
||||
err "$(usage)" |
||||
} |
||||
|
||||
function main { |
||||
declare sdir="${SOURCE_DIR}" |
||||
declare build_os="" |
||||
declare build_arch="" |
||||
|
||||
|
||||
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 |
||||
;; |
||||
-o | --os ) |
||||
if test -z "$2" |
||||
then |
||||
err_usage "ERROR: option -o/--os requires an argument" |
||||
return 1 |
||||
fi |
||||
|
||||
build_os="$2" |
||||
shift 2 |
||||
;; |
||||
-a | --arch ) |
||||
if test -z "$2" |
||||
then |
||||
err_usage "ERROR: option -a/--arch requires an argument" |
||||
return 1 |
||||
fi |
||||
|
||||
build_arch="$2" |
||||
shift 2 |
||||
;; |
||||
* ) |
||||
err_usage "ERROR: Unknown argument: '$1'" |
||||
return 1 |
||||
;; |
||||
esac |
||||
done |
||||
|
||||
build_consul_local "${sdir}" "${build_os}" "${build_arch}" || return 1 |
||||
|
||||
return 0 |
||||
} |
||||
|
||||
main "$@" |
||||
exit $? |
Loading…
Reference in new issue