Publish DevRunbook source
Managed validation / full (push) Successful in 3m18s

This commit is contained in:
DevRunbook release export
2026-09-03 04:09:17 +02:00
commit cfd2804e27
928 changed files with 161642 additions and 0 deletions
+64
View File
@@ -0,0 +1,64 @@
#!/bin/sh
set -eu
postgres_pid=''
web_pid=''
worker_pid=''
stop_services() {
[ -z "$web_pid" ] || kill -TERM "$web_pid" 2>/dev/null || true
[ -z "$worker_pid" ] || kill -TERM "$worker_pid" 2>/dev/null || true
[ -z "$postgres_pid" ] || kill -TERM "$postgres_pid" 2>/dev/null || true
wait || true
}
trap stop_services INT TERM EXIT
: "${POSTGRES_PASSWORD:?POSTGRES_PASSWORD is required}"
: "${SESSION_SECRET:?SESSION_SECRET is required}"
: "${INTEGRATION_ENCRYPTION_KEY:?INTEGRATION_ENCRYPTION_KEY is required}"
: "${BOOTSTRAP_TOKEN:?BOOTSTRAP_TOKEN is required}"
export POSTGRES_DB="${POSTGRES_DB:-devrunbook}"
export POSTGRES_USER="${POSTGRES_USER:-devrunbook}"
export DATABASE_URL="postgresql://${POSTGRES_USER}:${POSTGRES_PASSWORD}@127.0.0.1:5432/${POSTGRES_DB}"
export CONTENT_ROOT="${CONTENT_ROOT:-/content}"
export ARTIFACT_ROOT="${ARTIFACT_ROOT:-/config/artifacts}"
export INTEGRATION_ENCRYPTION_KEY_VERSION="${INTEGRATION_ENCRYPTION_KEY_VERSION:-v1}"
if [ -z "${INTEGRATION_ENCRYPTION_OLD_KEYS:-}" ]; then
export INTEGRATION_ENCRYPTION_OLD_KEYS='{}'
fi
mkdir -p "$PGDATA" "$ARTIFACT_ROOT" /config/operator-content
chown -R postgres:postgres "$PGDATA"
chown -R node:node "$ARTIFACT_ROOT" /config/operator-content
chmod 0700 "$PGDATA"
docker-entrypoint.sh postgres &
postgres_pid=$!
attempt=0
until pg_isready -h 127.0.0.1 -U "$POSTGRES_USER" -d "$POSTGRES_DB" >/dev/null 2>&1; do
attempt=$((attempt + 1))
if [ "$attempt" -ge 60 ]; then
echo "PostgreSQL did not become ready" >&2
exit 1
fi
sleep 1
done
gosu node ./packages/db/node_modules/.bin/tsx packages/db/src/migrate.ts
gosu node node apps/web/.next/standalone/apps/web/server.js &
web_pid=$!
gosu node node apps/worker/dist/index.js &
worker_pid=$!
while kill -0 "$postgres_pid" 2>/dev/null \
&& kill -0 "$web_pid" 2>/dev/null \
&& kill -0 "$worker_pid" 2>/dev/null; do
sleep 2
done
echo "A required DevRunbook process stopped unexpectedly" >&2
exit 1