Fixed Go compiler errors and Caddy header syntax

This commit is contained in:
Andreas Düren 2025-03-18 19:20:49 +01:00
parent 428b7f0ea3
commit 546fe4fe5d

View File

@ -398,6 +398,11 @@ func forceCorrectDatabase() (*sql.DB, error) {
EOT EOT
echo "==> Created db_override.go in writable location: /app/data/overrides" echo "==> Created db_override.go in writable location: /app/data/overrides"
# Also copy db_override.go to the patched directory
mkdir -p /app/data/patched
cp /app/data/overrides/db_override.go /app/data/patched/
echo "==> Copied db_override.go to patched directory for Go compiler compatibility"
# Patch source code directly for maximum effectiveness # Patch source code directly for maximum effectiveness
if [ -d "$SERVER_DIR/cmd/museum" ]; then if [ -d "$SERVER_DIR/cmd/museum" ]; then
MAIN_GO="$SERVER_DIR/cmd/museum/main.go" MAIN_GO="$SERVER_DIR/cmd/museum/main.go"
@ -472,7 +477,7 @@ CLOUDRON_POSTGRESQL_PORT="${CLOUDRON_POSTGRESQL_PORT}" \
CLOUDRON_POSTGRESQL_USERNAME="${CLOUDRON_POSTGRESQL_USERNAME}" \ CLOUDRON_POSTGRESQL_USERNAME="${CLOUDRON_POSTGRESQL_USERNAME}" \
CLOUDRON_POSTGRESQL_PASSWORD="${CLOUDRON_POSTGRESQL_PASSWORD}" \ CLOUDRON_POSTGRESQL_PASSWORD="${CLOUDRON_POSTGRESQL_PASSWORD}" \
CLOUDRON_POSTGRESQL_DATABASE="${CLOUDRON_POSTGRESQL_DATABASE}" \ CLOUDRON_POSTGRESQL_DATABASE="${CLOUDRON_POSTGRESQL_DATABASE}" \
go run -ldflags "-X 'github.com/lib/pq.defaulthost=${MUSEUM_DB_HOST}'" /app/data/overrides/db_override.go cmd/museum/main.go db force 25 cp $SERVER_DIR/cmd/museum/main.go /app/data/patched/ && cd /app/data/patched && go run -ldflags "-X 'github.com/lib/pq.defaulthost=${MUSEUM_DB_HOST}'" *.go db force 25
EOF EOF
chmod +x /tmp/run_migration.sh chmod +x /tmp/run_migration.sh
@ -534,10 +539,11 @@ EOF
# Check if we have a patched main.go to use # Check if we have a patched main.go to use
if [ -f "/app/data/patched/main.go" ]; then if [ -f "/app/data/patched/main.go" ]; then
echo "Using patched main.go from writable location" echo "Using patched main.go from writable location"
echo "go run -ldflags \"-X 'github.com/lib/pq.defaulthost=${MUSEUM_DB_HOST}'\" /app/data/overrides/db_override.go /app/data/patched/main.go serve" >> /tmp/run_server.sh echo "cd /app/data/patched && go run -ldflags \"-X 'github.com/lib/pq.defaulthost=${MUSEUM_DB_HOST}'\" *.go serve" >> /tmp/run_server.sh
else else
echo "Using original main.go from read-only location" echo "Using original main.go from read-only location"
echo "go run -ldflags \"-X 'github.com/lib/pq.defaulthost=${MUSEUM_DB_HOST}'\" /app/data/overrides/db_override.go cmd/museum/main.go serve" >> /tmp/run_server.sh # We'll need to copy the main.go to our writable directory since all source files must be in the same directory
echo "cp $SERVER_DIR/cmd/museum/main.go /app/data/patched/ && cd /app/data/patched && go run -ldflags \"-X 'github.com/lib/pq.defaulthost=${MUSEUM_DB_HOST}'\" *.go serve" >> /tmp/run_server.sh
fi fi
chmod +x /tmp/run_server.sh chmod +x /tmp/run_server.sh
@ -704,10 +710,11 @@ EOF
# Check if we have a patched main.go to use # Check if we have a patched main.go to use
if [ -f "/app/data/patched/main.go" ]; then if [ -f "/app/data/patched/main.go" ]; then
echo "Using patched main.go from writable location" echo "Using patched main.go from writable location"
echo "go run -ldflags \"-X 'github.com/lib/pq.defaulthost=${MUSEUM_DB_HOST}'\" /app/data/overrides/db_override.go /app/data/patched/main.go serve --port $PUBLIC_ALBUMS_PORT" >> /tmp/run_public_server.sh echo "cd /app/data/patched && go run -ldflags \"-X 'github.com/lib/pq.defaulthost=${MUSEUM_DB_HOST}'\" *.go serve --port $PUBLIC_ALBUMS_PORT" >> /tmp/run_public_server.sh
else else
echo "Using original main.go from read-only location" echo "Using original main.go from read-only location"
echo "go run -ldflags \"-X 'github.com/lib/pq.defaulthost=${MUSEUM_DB_HOST}'\" /app/data/overrides/db_override.go cmd/museum/main.go serve --port $PUBLIC_ALBUMS_PORT" >> /tmp/run_public_server.sh # We'll need to copy the main.go to our writable directory since all source files must be in the same directory
echo "cp $SERVER_DIR/cmd/museum/main.go /app/data/patched/ && cd /app/data/patched && go run -ldflags \"-X 'github.com/lib/pq.defaulthost=${MUSEUM_DB_HOST}'\" *.go serve --port $PUBLIC_ALBUMS_PORT" >> /tmp/run_public_server.sh
fi fi
chmod +x /tmp/run_public_server.sh chmod +x /tmp/run_public_server.sh
@ -899,6 +906,7 @@ cat > /app/data/caddy/Caddyfile <<EOT
# Configuration scripts # Configuration scripts
handle /config.js { handle /config.js {
header Content-Type application/javascript
respond " respond "
// Direct configuration for Ente // Direct configuration for Ente
window.ENTE_CONFIG = { window.ENTE_CONFIG = {
@ -914,9 +922,7 @@ cat > /app/data/caddy/Caddyfile <<EOT
console.log('Ente config loaded - API_URL:', window.ENTE_CONFIG.API_URL); console.log('Ente config loaded - API_URL:', window.ENTE_CONFIG.API_URL);
console.log('Ente config loaded - PUBLIC_ALBUMS_URL:', window.ENTE_CONFIG.PUBLIC_ALBUMS_URL); console.log('Ente config loaded - PUBLIC_ALBUMS_URL:', window.ENTE_CONFIG.PUBLIC_ALBUMS_URL);
" { "
header Content-Type "application/javascript"
}
} }
} }
EOT EOT