Use monolith SMTP credentials for Woo Manager outbound mail.
Deploy Ladill Woo Manager / deploy (push) Successful in 1m23s

Mirror platform mail.php scheme normalization and sync MAIL_* transport vars from ladill.com shared .env on each deploy.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
isaacclad
2026-07-07 03:03:11 +00:00
co-authored by Cursor
parent cfdc8c7c09
commit dabc968fb9
4 changed files with 63 additions and 1 deletions
+30
View File
@@ -34,6 +34,35 @@ bootstrap_shared_env() {
return 1
}
sync_smtp_env_from_platform() {
local platform_env="${LADILL_PLATFORM_ENV:-/var/www/ladill.com/shared/.env}"
local target="$SHARED_DIR/.env"
local key_pattern='^(MAIL_MAILER|MAIL_SCHEME|MAIL_ENCRYPTION|MAIL_HOST|MAIL_PORT|MAIL_USERNAME|MAIL_PASSWORD|MAIL_URL|MAIL_EHLO_DOMAIN|MAIL_FROM_ADDRESS)='
if [ ! -f "$platform_env" ] || [ ! -f "$target" ]; then
log "Skipping SMTP env sync (platform or app .env missing)"
return 0
fi
local tmp merged
tmp="$(mktemp)"
merged="$(mktemp)"
grep -v -E "$key_pattern" "$target" > "$tmp" || true
grep -E "$key_pattern" "$platform_env" > "$merged" || true
if [ ! -s "$merged" ]; then
rm -f "$tmp" "$merged"
log "No MAIL_* transport vars in $platform_env — skipping SMTP sync"
return 0
fi
cat "$tmp" "$merged" > "${target}.new"
mv "${target}.new" "$target"
rm -f "$tmp" "$merged"
log "Synced SMTP settings from $platform_env"
}
ensure_writable_paths() {
local paths=("$@")
@@ -143,6 +172,7 @@ mkdir -p "$SHARED_DIR/bootstrap-cache"
normalize_shared_permissions
if bootstrap_shared_env; then
sync_smtp_env_from_platform
ln -sfn "$SHARED_DIR/.env" "$NEW_RELEASE/.env"
else
echo "Missing deployment environment file. Expected $SHARED_DIR/.env or an existing $CURRENT_LINK/.env / $APP_ROOT/.env to bootstrap from." >&2