testing 101

Signed-off-by: Kenneth Obsequio <k80308392@gmail.com>
This commit is contained in:
2026-06-30 19:31:45 +08:00
parent 89acdfc239
commit 1372f4e975
62 changed files with 6696 additions and 281 deletions
+31
View File
@@ -0,0 +1,31 @@
#!/bin/sh
# Wraps the Garage daemon: starts it in the background, runs one-time cluster
# initialization using the local RPC connection, then hands control back to
# the daemon process. Safe to re-run — all operations are idempotent.
set -e
garage server &
DAEMON_PID=$!
echo "Waiting for Garage to be ready..."
until garage status > /dev/null 2>&1; do
sleep 2
done
echo "Garage is up. Running cluster initialization..."
NODE_ID=$(garage node id 2>/dev/null | head -1 | awk '{print $1}')
garage layout assign "$NODE_ID" -z dc1 -c 100G 2>/dev/null || true
garage layout apply --version 1 2>/dev/null || true
garage bucket create "$S3_BUCKET" 2>/dev/null || true
# --yes skips the interactive confirmation prompt.
garage key import "$S3_ACCESS_KEY" "$S3_SECRET_KEY" -n starr-app --yes 2>/dev/null || true
garage bucket allow "$S3_BUCKET" --read --write --owner --key "$S3_ACCESS_KEY" 2>/dev/null || true
# Flag file read by the healthcheck — ensures the backend waits for full init.
touch /var/lib/garage/meta/.ready
echo "Garage init complete."
wait $DAEMON_PID