2015-07-20 00:09:47 -07:00
|
|
|
#!/bin/bash
|
|
|
|
|
|
2016-12-29 15:34:30 -08:00
|
|
|
source_dir="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
|
|
|
|
json="${source_dir}/../node_modules/.bin/json"
|
2015-07-20 00:09:47 -07:00
|
|
|
|
2015-07-28 16:02:54 -07:00
|
|
|
# IMPORTANT: Fix cloudron.js:doUpdate if you add/remove any arg. keep these sorted for readability
|
|
|
|
|
arg_api_server_origin=""
|
|
|
|
|
arg_fqdn=""
|
|
|
|
|
arg_is_custom_domain="false"
|
|
|
|
|
arg_restore_key=""
|
|
|
|
|
arg_restore_url=""
|
2016-07-05 22:04:24 -05:00
|
|
|
arg_retire_reason=""
|
|
|
|
|
arg_retire_info=""
|
2015-12-11 22:14:53 -08:00
|
|
|
arg_tls_config=""
|
2015-07-20 00:09:47 -07:00
|
|
|
arg_tls_cert=""
|
|
|
|
|
arg_tls_key=""
|
|
|
|
|
arg_token=""
|
|
|
|
|
arg_version=""
|
2015-07-28 16:02:54 -07:00
|
|
|
arg_web_server_origin=""
|
2015-11-07 21:45:38 -08:00
|
|
|
arg_backup_config=""
|
2015-11-04 08:45:12 -08:00
|
|
|
arg_dns_config=""
|
2016-01-23 10:15:09 -08:00
|
|
|
arg_update_config=""
|
2016-01-05 15:58:16 +01:00
|
|
|
arg_provider=""
|
2016-04-04 22:19:15 -07:00
|
|
|
arg_app_bundle=""
|
2016-08-31 21:17:22 -07:00
|
|
|
arg_is_demo="false"
|
2015-07-20 00:09:47 -07:00
|
|
|
|
2016-07-05 22:34:51 -05:00
|
|
|
args=$(getopt -o "" -l "data:,retire-reason:,retire-info:" -n "$0" -- "$@")
|
2015-07-20 00:09:47 -07:00
|
|
|
eval set -- "${args}"
|
|
|
|
|
|
|
|
|
|
while true; do
|
|
|
|
|
case "$1" in
|
2016-07-05 22:04:24 -05:00
|
|
|
--retire-reason)
|
|
|
|
|
arg_retire_reason="$2"
|
|
|
|
|
shift 2
|
|
|
|
|
;;
|
|
|
|
|
--retire-info)
|
|
|
|
|
arg_retire_info="$2"
|
2016-06-29 23:24:00 -05:00
|
|
|
shift 2
|
2015-07-20 00:09:47 -07:00
|
|
|
;;
|
|
|
|
|
--data)
|
2016-07-01 15:27:19 -05:00
|
|
|
# these params must be valid in all cases
|
|
|
|
|
arg_fqdn=$(echo "$2" | $json fqdn)
|
2016-10-21 10:50:06 +02:00
|
|
|
|
2016-07-01 15:27:19 -05:00
|
|
|
arg_is_custom_domain=$(echo "$2" | $json isCustomDomain)
|
2016-10-21 10:50:06 +02:00
|
|
|
[[ "${arg_is_custom_domain}" == "" ]] && arg_is_custom_domain="true"
|
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)
|
2016-10-21 11:19:27 +02:00
|
|
|
[[ "${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)
|
2016-10-21 11:19:27 +02:00
|
|
|
[[ "${arg_web_server_origin}" == "" ]] && arg_web_server_origin="https://cloudron.io"
|
|
|
|
|
|
|
|
|
|
# TODO check if an where this is used
|
2016-07-01 15:27:19 -05:00
|
|
|
arg_version=$(echo "$2" | $json version)
|
|
|
|
|
|
2015-07-20 00:09:47 -07:00
|
|
|
# read possibly empty parameters here
|
2016-04-04 22:19:15 -07:00
|
|
|
arg_app_bundle=$(echo "$2" | $json appBundle)
|
2016-04-05 12:06:15 -07:00
|
|
|
[[ "${arg_app_bundle}" == "" ]] && arg_app_bundle="[]"
|
2016-04-05 12:00:33 -07:00
|
|
|
|
2016-08-31 21:17:22 -07:00
|
|
|
arg_is_demo=$(echo "$2" | $json isDemo)
|
|
|
|
|
[[ "${arg_is_demo}" == "" ]] && arg_is_demo="false"
|
|
|
|
|
|
2015-07-20 00:09:47 -07:00
|
|
|
arg_tls_cert=$(echo "$2" | $json tlsCert)
|
2017-04-25 17:26:54 -07:00
|
|
|
[[ "${arg_tls_cert}" == "null" ]] && arg_tls_cert=""
|
2015-07-20 00:09:47 -07:00
|
|
|
arg_tls_key=$(echo "$2" | $json tlsKey)
|
2017-04-25 17:26:54 -07:00
|
|
|
[[ "${arg_tls_key}" == "null" ]] && arg_tls_key=""
|
2015-12-29 19:47:13 +01:00
|
|
|
arg_token=$(echo "$2" | $json token)
|
2016-10-21 12:48:39 +02:00
|
|
|
|
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"
|
2015-07-20 00:09:47 -07:00
|
|
|
|
2015-12-11 22:14:53 -08:00
|
|
|
arg_tls_config=$(echo "$2" | $json tlsConfig)
|
|
|
|
|
[[ "${arg_tls_config}" == "null" ]] && arg_tls_config=""
|
|
|
|
|
|
2015-11-07 17:53:54 -08:00
|
|
|
arg_restore_url=$(echo "$2" | $json restore.url)
|
2015-07-20 00:09:47 -07:00
|
|
|
[[ "${arg_restore_url}" == "null" ]] && arg_restore_url=""
|
|
|
|
|
|
2015-11-07 17:53:54 -08:00
|
|
|
arg_restore_key=$(echo "$2" | $json restore.key)
|
2015-07-20 00:09:47 -07:00
|
|
|
[[ "${arg_restore_key}" == "null" ]] && arg_restore_key=""
|
|
|
|
|
|
2015-11-07 21:45:38 -08:00
|
|
|
arg_backup_config=$(echo "$2" | $json backupConfig)
|
|
|
|
|
[[ "${arg_backup_config}" == "null" ]] && arg_backup_config=""
|
|
|
|
|
|
2015-11-04 08:45:12 -08:00
|
|
|
arg_dns_config=$(echo "$2" | $json dnsConfig)
|
|
|
|
|
[[ "${arg_dns_config}" == "null" ]] && arg_dns_config=""
|
|
|
|
|
|
2016-01-23 10:15:09 -08:00
|
|
|
arg_update_config=$(echo "$2" | $json updateConfig)
|
|
|
|
|
[[ "${arg_update_config}" == "null" ]] && arg_update_config=""
|
|
|
|
|
|
2015-07-20 00:09:47 -07:00
|
|
|
shift 2
|
|
|
|
|
;;
|
|
|
|
|
--) break;;
|
|
|
|
|
*) echo "Unknown option $1"; exit 1;;
|
|
|
|
|
esac
|
|
|
|
|
done
|
|
|
|
|
|
|
|
|
|
echo "Parsed arguments:"
|
|
|
|
|
echo "api server: ${arg_api_server_origin}"
|
|
|
|
|
echo "fqdn: ${arg_fqdn}"
|
|
|
|
|
echo "custom domain: ${arg_is_custom_domain}"
|
2015-07-28 16:02:54 -07:00
|
|
|
echo "restore url: ${arg_restore_url}"
|
2015-07-20 00:09:47 -07:00
|
|
|
echo "tls cert: ${arg_tls_cert}"
|
2017-04-22 11:56:45 -07:00
|
|
|
# do not dump these as they might become available via logs API
|
|
|
|
|
#echo "restore key: ${arg_restore_key}"
|
|
|
|
|
#echo "tls key: ${arg_tls_key}"
|
|
|
|
|
#echo "token: ${arg_token}"
|
2015-12-11 23:29:07 -08:00
|
|
|
echo "tlsConfig: ${arg_tls_config}"
|
2015-07-28 16:02:54 -07:00
|
|
|
echo "version: ${arg_version}"
|
|
|
|
|
echo "web server: ${arg_web_server_origin}"
|
2015-12-29 11:29:08 +01:00
|
|
|
echo "provider: ${arg_provider}"
|