diff --git a/scripts/generate-caddyfile.sh b/scripts/generate-caddyfile.sh index 2ccb8e9..31fe3e5 100755 --- a/scripts/generate-caddyfile.sh +++ b/scripts/generate-caddyfile.sh @@ -22,6 +22,20 @@ APPFACTORY_REGISTRY_DOMAIN="${APPFACTORY_REGISTRY_DOMAIN:-}" mkdir -p "$(dirname "$CADDY_FILE")" mkdir -p "$APPFACTORY_DIR/gateway/static" +write_site_header() { + local site="$1" + + if [ "$APPFACTORY_ENABLE_HTTPS" = "true" ]; then + cat >> "$CADDY_FILE" <> "$CADDY_FILE" <> "$target_file" <<'EOF_ROUTES' @@ -75,7 +89,15 @@ write_common_path_routes() { respond "AppFactory OK" 200 } - handle /portal* { + handle / { + redir /portal 302 + } + + handle /portal { + reverse_proxy appfactory-portal:9100 + } + + handle /portal/* { uri strip_prefix /portal reverse_proxy appfactory-portal:9100 } @@ -100,7 +122,7 @@ EOF_ROUTES } handle { - respond "AppFactory gateway is running" 200 + redir /portal 302 } EOF_ROUTES } @@ -110,7 +132,7 @@ write_http_only_caddyfile() { :80 { EOF_CADDY - write_common_path_routes "$CADDY_FILE" + write_portal_routes "$CADDY_FILE" cat >> "$CADDY_FILE" <<'EOF_CADDY' } @@ -121,10 +143,8 @@ write_domain_caddyfile() { : > "$CADDY_FILE" if [ -n "$APPFACTORY_PORTAL_DOMAIN" ]; then - cat >> "$CADDY_FILE" <> "$CADDY_FILE" <<'EOF_CADDY' } @@ -132,8 +152,8 @@ EOF_CADDY fi if [ -n "$APPFACTORY_GITEA_DOMAIN" ]; then - cat >> "$CADDY_FILE" <> "$CADDY_FILE" <<'EOF_CADDY' handle /health { respond "Gitea gateway OK" 200 } @@ -147,16 +167,16 @@ EOF_CADDY fi if [ -n "$APPFACTORY_REGISTRY_DOMAIN" ]; then - cat >> "$CADDY_FILE" <> "$CADDY_FILE" <<'EOF_CADDY' handle /health { respond "Registry gateway OK" 200 } + handle /v2/* { + reverse_proxy appfactory-registry:5000 + } + handle { reverse_proxy appfactory-registry:5000 } @@ -170,9 +190,7 @@ EOF_CADDY fi } -if [ "$APPFACTORY_ENABLE_HTTPS" = "true" ] && { - [ -n "$APPFACTORY_PORTAL_DOMAIN" ] || [ -n "$APPFACTORY_GITEA_DOMAIN" ] || [ -n "$APPFACTORY_REGISTRY_DOMAIN" ]; -}; then +if [ -n "$APPFACTORY_PORTAL_DOMAIN" ] || [ -n "$APPFACTORY_GITEA_DOMAIN" ] || [ -n "$APPFACTORY_REGISTRY_DOMAIN" ]; then write_domain_caddyfile else write_http_only_caddyfile