Add separate production, testserver, and demo deployments
CI / test (push) Failing after 10s

This commit is contained in:
2026-09-14 19:58:31 +02:00
parent b87aa0aa17
commit d06ff4a94a
37 changed files with 1293 additions and 121 deletions
+11 -4
View File
@@ -1,7 +1,7 @@
# Copy this file to .env next to provision-server.sh and restrict it to the
# administrator. The file is sourced as Bash configuration and must be trusted.
# cp .env.example .env
# chmod 600 .env
# Copy this template to .env, .env.testserver, and .env.demo as needed. Keep
# separate database credentials and URLs in every file. The files are sourced
# as Bash configuration and must be trusted and restricted to the administrator.
# `make config/init` creates all three with mode 0600.
# Server provisioning ---------------------------------------------------------
@@ -70,6 +70,13 @@ GARDOMATIC_RATE_LIMIT_BURST='40'
# https://garden.example.com,https://admin.example.com
GARDOMATIC_CORS_TRUSTED_ORIGINS=''
# Destructive demo reset. Leave false on every non-demo database. When true,
# deployments require /etc/gardomatic/demo-password and enable the nightly timer.
GARDOMATIC_DEMO_RESET_ENABLED='false'
# Required when the demo reset is enabled. The API protects this shared account's
# profile, email address, password and sessions from changes by visitors.
GARDOMATIC_DEMO_ACCOUNT_EMAIL=''
# Delivery mode. Allowed exactly: file or smtp. Production normally uses smtp.
GARDOMATIC_SMTP_MODE='smtp'
# Required in smtp mode: resolvable SMTP hostname and TCP port.
+8
View File
@@ -74,6 +74,12 @@ require_variable GARDOMATIC_WEB_BASE_URL
require_identifier GARDOMATIC_DB_NAME
require_identifier GARDOMATIC_DB_USER
GARDOMATIC_DEMO_RESET_ENABLED=${GARDOMATIC_DEMO_RESET_ENABLED:-false}
[[ "$GARDOMATIC_DEMO_RESET_ENABLED" == true || "$GARDOMATIC_DEMO_RESET_ENABLED" == false ]] || die "GARDOMATIC_DEMO_RESET_ENABLED must be true or false"
if [[ "$GARDOMATIC_DEMO_RESET_ENABLED" == true ]]; then
require_variable GARDOMATIC_DEMO_ACCOUNT_EMAIL
fi
case "${GARDOMATIC_SMTP_MODE:-file}" in
smtp)
require_variable GARDOMATIC_SMTP_HOST
@@ -218,6 +224,8 @@ runtime_variables=(
GARDOMATIC_RATE_LIMIT_RPS
GARDOMATIC_RATE_LIMIT_BURST
GARDOMATIC_CORS_TRUSTED_ORIGINS
GARDOMATIC_DEMO_RESET_ENABLED
GARDOMATIC_DEMO_ACCOUNT_EMAIL
GARDOMATIC_SMTP_MODE
GARDOMATIC_SMTP_HOST
GARDOMATIC_SMTP_PORT