53 lines
1.1 KiB
Text
53 lines
1.1 KiB
Text
|
|
#!/usr/bin/env bash
|
||
|
|
set -euo pipefail
|
||
|
|
|
||
|
|
ROOT="$(cd "$(dirname "$(readlink -f "${BASH_SOURCE[0]}")")/.." && pwd)"
|
||
|
|
|
||
|
|
usage() {
|
||
|
|
cat <<'EOF'
|
||
|
|
usage: deployor <command> [args]
|
||
|
|
|
||
|
|
commands:
|
||
|
|
bootstrap <control-plane|workload> [--hostname <name>] [--ts-tag <tag>]
|
||
|
|
OS plumbing on a pristine Debian box: hardening, unattended-upgrades,
|
||
|
|
tailscale join. Prompts for a single-use tailnet pre-auth key
|
||
|
|
(TS_AUTHKEY env overrides the prompt). Run as root.
|
||
|
|
coolify install --version <pin>
|
||
|
|
Pinned Coolify install (AUTOUPDATE=false). Control-plane box only.
|
||
|
|
|
||
|
|
install/upgrade:
|
||
|
|
curl -fsSL https://raw.githubusercontent.com/claude-hdb/deployor/main/install.sh | bash
|
||
|
|
EOF
|
||
|
|
}
|
||
|
|
|
||
|
|
cmd="${1:-}"
|
||
|
|
case "$cmd" in
|
||
|
|
bootstrap)
|
||
|
|
shift
|
||
|
|
exec "$ROOT/commands/bootstrap.sh" "$@"
|
||
|
|
;;
|
||
|
|
coolify)
|
||
|
|
shift
|
||
|
|
sub="${1:-}"
|
||
|
|
if [ "$sub" != "install" ]; then
|
||
|
|
usage >&2
|
||
|
|
exit 2
|
||
|
|
fi
|
||
|
|
shift
|
||
|
|
exec "$ROOT/commands/coolify-install.sh" "$@"
|
||
|
|
;;
|
||
|
|
-h|--help|help)
|
||
|
|
usage
|
||
|
|
exit 0
|
||
|
|
;;
|
||
|
|
"")
|
||
|
|
usage >&2
|
||
|
|
exit 2
|
||
|
|
;;
|
||
|
|
*)
|
||
|
|
printf 'deployor: unknown command: %s\n' "$cmd" >&2
|
||
|
|
usage >&2
|
||
|
|
exit 2
|
||
|
|
;;
|
||
|
|
esac
|