diff --git a/scripts/cloudron-setup b/scripts/cloudron-setup index 7edbec37b..1abc37689 100755 --- a/scripts/cloudron-setup +++ b/scripts/cloudron-setup @@ -46,30 +46,74 @@ while true; do esac done -if [[ -z "${domain}" ]]; then - echo "--domain is required" - exit 1 -fi +# validate arguments in the absence of data +if [[ -z "${dataJson}" ]]; then + if [[ -z "${domain}" ]]; then + echo "--domain is required" + exit 1 + fi -if [[ -z "${provider}" ]]; then - echo "--provider is required (generic, scaleway, ec2, digitalocean)" - exit 1 -elif [[ \ - "${provider}" != "generic" && \ - "${provider}" != "scaleway" && \ - "${provider}" != "ec2" && \ - "${provider}" != "digitalocean" \ - ]]; then - echo "--provider must be one of: generic, scaleway, ec2, digitalocean" - exit 1 -fi + if [[ -z "${provider}" ]]; then + echo "--provider is required (generic, scaleway, ec2, digitalocean)" + exit 1 + elif [[ \ + "${provider}" != "generic" && \ + "${provider}" != "scaleway" && \ + "${provider}" != "ec2" && \ + "${provider}" != "digitalocean" \ + ]]; then + echo "--provider must be one of: generic, scaleway, ec2, digitalocean" + exit 1 + fi -if [[ -z "${dnsProvider}" ]]; then - echo "--dns-provider is required (noop, manual)" - exit 1 -elif [[ "${dnsProvider}" != "noop" && "${dnsProvider}" != "manual" ]]; then - echo "--dns-provider must be one of : manual, noop" - exit 1 + if [[ -z "${dnsProvider}" ]]; then + echo "--dns-provider is required (noop, manual)" + exit 1 + elif [[ "${dnsProvider}" != "noop" && "${dnsProvider}" != "manual" ]]; then + echo "--dns-provider must be one of : manual, noop" + exit 1 + fi + + if [[ -z "${restoreUrl}" ]]; then + data=$(cat < Downloading and running installer for version ${version} ... (this takes some time)" box_src_tmp_dir=$(mktemp -dt box-src-XXXXXX)