#!/usr/bin/env bash set -euo pipefail # Bootstrap script — downloads the Cameleer installer and runs it. # Usage: # bash -c "$(curl -fsSL https://get.cameleer.io/install)" # bash -c "$(curl -fsSL https://get.cameleer.io/install)" -- --version v1.2.0 REPO="https://registry.cameleer.io/cameleer/cameleer-saas-installer/raw" REF="branch/main" DIR="./installer" # Parse --version / --ref (consume them; remaining args are forwarded to install.sh) PASS_ARGS=() for arg in "$@"; do case "$arg" in --version=*) REF="tag/${arg#*=}" ;; --ref=*) REF="branch/${arg#*=}" ;; *) PASS_ARGS+=("$arg") ;; esac done BASE="$REPO/$REF" FILES=( "install.sh" "templates/docker-compose.yml" "templates/docker-compose.saas.yml" "templates/docker-compose.server.yml" "templates/docker-compose.tls.yml" "templates/docker-compose.monitoring.yml" "templates/traefik-dynamic.yml" "templates/.env.example" ) echo "Downloading Cameleer installer..." mkdir -p "$DIR/templates" for file in "${FILES[@]}"; do echo " $file" curl -fsSL "$BASE/$file" -o "$DIR/$file" done chmod +x "$DIR/install.sh" echo "" echo "Installer downloaded to $DIR/ — launching..." echo "" cd "$DIR" exec ./install.sh "${PASS_ARGS[@]}"