Initial import

This commit is contained in:
Admin
2026-07-11 17:08:37 +00:00
commit 03e5f3452b
303 changed files with 43365 additions and 0 deletions
@@ -0,0 +1,77 @@
#!/bin/bash
set -e
# Configuration from environment variables
VAULT_REPO="${VAULT_REPO:-}"
VAULT_BRANCH="${VAULT_BRANCH:-main}"
SYNC_INTERVAL="${SYNC_INTERVAL:-30}"
CONTENT_DIR="/usr/src/app/content"
# Logging function
log() {
echo "[$(date +'%Y-%m-%d %H:%M:%S')] $1"
}
# Initialize vault content
init_vault() {
log "Initializing vault from $VAULT_REPO (branch: $VAULT_BRANCH)"
if [ -z "$VAULT_REPO" ]; then
log "ERROR: VAULT_REPO not set. Using pre-existing content."
return 0
fi
# Remove existing content if it exists and is a git repo
if [ -d "$CONTENT_DIR/.git" ]; then
log "Content directory is a git repo, pulling latest changes..."
cd "$CONTENT_DIR"
git fetch origin "$VAULT_BRANCH"
git reset --hard "origin/$VAULT_BRANCH"
cd /usr/src/app
else
log "Content directory is not a git repo, cloning..."
rm -rf "$CONTENT_DIR"
git clone --depth 1 --branch "$VAULT_BRANCH" "$VAULT_REPO" "$CONTENT_DIR"
fi
log "Vault synchronized successfully"
}
# Sync vault periodically in background
sync_vault_loop() {
while true; do
sleep "$SYNC_INTERVAL"
log "Checking for vault updates..."
if [ -d "$CONTENT_DIR/.git" ]; then
cd "$CONTENT_DIR"
# Check if there are remote changes
git fetch origin "$VAULT_BRANCH" 2>/dev/null || continue
LOCAL=$(git rev-parse HEAD)
REMOTE=$(git rev-parse "origin/$VAULT_BRANCH")
if [ "$LOCAL" != "$REMOTE" ]; then
log "Vault changes detected, pulling..."
git reset --hard "origin/$VAULT_BRANCH"
log "Vault updated. Note: Quartz build may need restart for changes to appear."
else
log "Vault is up to date"
fi
cd /usr/src/app
fi
done
}
# Initialize once on startup
init_vault
# Start sync loop in background
sync_vault_loop &
SYNC_PID=$!
log "Starting Quartz..."
# Run Quartz with proper signal handling
trap "kill $SYNC_PID 2>/dev/null || true" EXIT TERM INT
exec npx quartz build --serve