Files
cloudron-box/setup/argparser.sh

77 lines
2.3 KiB
Bash
Raw Normal View History

#!/bin/bash
source_dir="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
json="${source_dir}/../node_modules/.bin/json"
arg_api_server_origin=""
2018-01-30 21:10:04 -08:00
arg_fqdn="" # remove after 1.10
2018-01-28 14:19:28 -08:00
arg_admin_domain=""
arg_admin_location=""
arg_admin_fqdn=""
arg_retire_reason=""
arg_retire_info=""
arg_version=""
arg_web_server_origin=""
2016-01-05 15:58:16 +01:00
arg_provider=""
arg_is_demo="false"
2018-08-22 21:26:05 +02:00
arg_edition=""
2016-07-05 22:34:51 -05:00
args=$(getopt -o "" -l "data:,retire-reason:,retire-info:" -n "$0" -- "$@")
eval set -- "${args}"
while true; do
case "$1" in
--retire-reason)
arg_retire_reason="$2"
shift 2
;;
--retire-info)
arg_retire_info="$2"
2016-06-29 23:24:00 -05:00
shift 2
;;
--data)
2016-07-01 15:27:19 -05:00
# these params must be valid in all cases
arg_fqdn=$(echo "$2" | $json fqdn)
arg_admin_fqdn=$(echo "$2" | $json adminFqdn)
arg_admin_location=$(echo "$2" | $json adminLocation)
[[ "${arg_admin_location}" == "" ]] && arg_admin_location="my"
2018-01-28 14:19:28 -08:00
arg_admin_domain=$(echo "$2" | $json adminDomain)
[[ "${arg_admin_domain}" == "" ]] && arg_admin_domain="${arg_fqdn}"
2016-07-01 15:27:19 -05:00
# only update/restore have this valid (but not migrate)
arg_api_server_origin=$(echo "$2" | $json apiServerOrigin)
[[ "${arg_api_server_origin}" == "" ]] && arg_api_server_origin="https://api.cloudron.io"
2016-07-01 15:27:19 -05:00
arg_web_server_origin=$(echo "$2" | $json webServerOrigin)
[[ "${arg_web_server_origin}" == "" ]] && arg_web_server_origin="https://cloudron.io"
# TODO check if and where this is used
2016-07-01 15:27:19 -05:00
arg_version=$(echo "$2" | $json version)
# read possibly empty parameters here
arg_is_demo=$(echo "$2" | $json isDemo)
[[ "${arg_is_demo}" == "" ]] && arg_is_demo="false"
2015-12-29 11:29:08 +01:00
arg_provider=$(echo "$2" | $json provider)
2016-10-21 12:48:39 +02:00
[[ "${arg_provider}" == "" ]] && arg_provider="generic"
2018-08-22 21:26:05 +02:00
arg_edition=$(echo "$2" | $json edition)
[[ "${arg_edition}" == "" ]] && arg_edition=""
shift 2
;;
--) break;;
*) echo "Unknown option $1"; exit 1;;
esac
done
echo "Parsed arguments:"
echo "api server: ${arg_api_server_origin}"
echo "admin fqdn: ${arg_admin_fqdn}"
echo "fqdn: ${arg_fqdn}"
echo "version: ${arg_version}"
echo "web server: ${arg_web_server_origin}"
2015-12-29 11:29:08 +01:00
echo "provider: ${arg_provider}"
2018-08-22 21:26:05 +02:00
echo "edition: ${arg_edition}"