Files
provision/bootstrap
2025-11-24 00:39:21 -08:00

41 lines
1009 B
Bash

#!/usr/bin/env bash
set -euo pipefail
# Bootstrap script for provisioning
# Usage: curl -fsSL https://git.sdf.org/jchenry/provision/raw/branch/main/bootstrap | bash
REPO_URL="https://git.sdf.org/jchenry/provision.git"
CLONE_DIR="$HOME/.workspace/src/git.sdf.org/jchenry/provision"
echo "=== Provision Bootstrap ==="
echo ""
# Ensure workspace directory exists
if [ ! -d "$HOME/.workspace" ]; then
echo "Creating workspace directory..."
mkdir -p "$HOME/.workspace/src/git.sdf.org/jchenry"
fi
# Clone or update repository
if [ -d "$CLONE_DIR" ]; then
echo "Updating existing provision repository..."
cd "$CLONE_DIR"
git pull
else
echo "Cloning provision repository..."
git clone "$REPO_URL" "$CLONE_DIR"
cd "$CLONE_DIR"
fi
echo ""
echo "Repository ready at $CLONE_DIR"
echo ""
# Make provision script executable
chmod +x "$CLONE_DIR/provision"
# Run provision with any arguments passed to this script
echo "Starting provision..."
echo ""
exec "$CLONE_DIR/provision" "$@"