mirror of
https://github.com/dredx/prole.git
synced 2026-09-24 19:04:31 +00:00
72 lines
1.6 KiB
Bash
72 lines
1.6 KiB
Bash
#!/usr/bin/env bash
|
|
set -euo pipefail
|
|
|
|
# etc/init_min.sh
|
|
# Purpose: Initialize minimal containerd environment for knoe-db development
|
|
|
|
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
|
PROJECT_ROOT="$(cd "$SCRIPT_DIR/.." && pwd)"
|
|
|
|
# shellcheck disable=SC1090
|
|
source "$SCRIPT_DIR/prole_cfg.sh"
|
|
|
|
log() { echo "==> $*"; }
|
|
|
|
ACTION=${1:-initialize}
|
|
|
|
case "$ACTION" in
|
|
initialize)
|
|
log "Initializing minimal environment..."
|
|
|
|
# Ensure containerd is running (if on macOS via brew)
|
|
if [[ "$OSTYPE" == "darwin"* ]]; then
|
|
if ! pgrep containerd >/dev/null; then
|
|
log "Starting containerd via brew services..."
|
|
brew services start containerd
|
|
sleep 2
|
|
fi
|
|
fi
|
|
|
|
# Create start.sh and stop.sh in PROJECT_ROOT
|
|
log "Generating start.sh and stop.sh..."
|
|
|
|
cat > "$PROJECT_ROOT/start.sh" <<EOF
|
|
#!/usr/bin/env bash
|
|
set -e
|
|
log() { echo "==> \$*"; }
|
|
|
|
log "Starting knoe-db (containerd)..."
|
|
# nerdctl run -d --name knoe-db knoe-db:latest
|
|
|
|
log "Starting knoe-auth (containerd)..."
|
|
# nerdctl run -d --name knoe-auth prole-authority:latest
|
|
|
|
log "Minimal environment started."
|
|
EOF
|
|
chmod +x "$PROJECT_ROOT/start.sh"
|
|
|
|
cat > "$PROJECT_ROOT/stop.sh" <<EOF
|
|
#!/usr/bin/env bash
|
|
log() { echo "==> \$*"; }
|
|
|
|
log "Stopping knoe-auth (containerd)..."
|
|
# nerdctl stop knoe-auth || true
|
|
# nerdctl rm knoe-auth || true
|
|
|
|
log "Stopping knoe-db (containerd)..."
|
|
# nerdctl stop knoe-db || true
|
|
# nerdctl rm knoe-db || true
|
|
|
|
log "Minimal environment stopped."
|
|
EOF
|
|
chmod +x "$PROJECT_ROOT/stop.sh"
|
|
|
|
log "Minimal environment initialized successfully."
|
|
;;
|
|
|
|
*)
|
|
log "Unknown action: $ACTION"
|
|
exit 1
|
|
;;
|
|
esac
|