670982fb3e
Removes ~30 stale "Phase N" / historical-staging comment references from code and shell scripts now that v1.0 is done; fixes a stale dashboard comment claiming applications/send-log were unimplemented; adds a CSRF ADR to security.md documenting the Origin-check-over-tokens decision; resolves docs/logo in roadmap.md (directory doesn't exist, criterion already met); adds a gofmt -l check to CI so unformatted Go fails the build. The known-limitations write-up for the log-tailer offset gap (the other Phase 1 item) was already present in architecture.md § Log tailer, so no change was needed there. gofmt/go vet/go test clean on both Go modules (main + test/e2e), verified on the dev server. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
34 lines
1.2 KiB
Bash
34 lines
1.2 KiB
Bash
#!/bin/sh
|
|
# Postfix start wrapper (spec 4): solves the cold-start race where Postfix would
|
|
# try to reach the milter sockets before they are listening.
|
|
#
|
|
# It blocks until BOTH milter sockets — OpenDKIM and the panel's journal-milter
|
|
# — are present, then execs `postfix start-fg`. If they are not ready within the
|
|
# timeout it exits non-zero WITHOUT starting Postfix, so supervisord/Docker see
|
|
# an explicit startup failure instead of a relay running blind.
|
|
#
|
|
# This handles cold start only. Runtime milter failures after a successful start
|
|
# are governed by fail-open (milter_default_action).
|
|
set -eu
|
|
|
|
OPENDKIM_SOCK="${OPENDKIM_SOCKET:-/run/opendkim/opendkim.sock}"
|
|
JOURNAL_SOCK="${JOURNAL_MILTER_SOCKET:-/run/selfpost/journal.sock}"
|
|
TIMEOUT="${MILTER_WAIT_TIMEOUT:-30}"
|
|
INTERVAL=1
|
|
|
|
elapsed=0
|
|
for sock in "$OPENDKIM_SOCK" "$JOURNAL_SOCK"; do
|
|
while [ ! -S "$sock" ]; do
|
|
if [ "$elapsed" -ge "$TIMEOUT" ]; then
|
|
echo "postfix-wrapper: timed out after ${TIMEOUT}s waiting for milter socket $sock" >&2
|
|
exit 1
|
|
fi
|
|
sleep "$INTERVAL"
|
|
elapsed=$((elapsed + INTERVAL))
|
|
done
|
|
echo "postfix-wrapper: milter socket ready: $sock"
|
|
done
|
|
|
|
echo "postfix-wrapper: both milter sockets ready, starting postfix"
|
|
exec postfix start-fg
|