diff --git a/.github/workflows/cd-staging.yml b/.github/workflows/cd-staging.yml index ed59b70..c0ad3ea 100644 --- a/.github/workflows/cd-staging.yml +++ b/.github/workflows/cd-staging.yml @@ -252,6 +252,15 @@ jobs: echo "SENTRY_RELEASE=${{ github.event.pull_request.head.sha }}" echo "SENTRY_DSN_JOURNAL=$SENTRY_DSN_JOURNAL" echo "SENTRY_DSN_PLANNER=$SENTRY_DSN_PLANNER" + # Federation on previews too (social-federation rollout 12.4): + # makes any PR preview a second live trails instance that + # persistent staging can follow across — the trails-to-trails + # soak surface. FEDERATION_KEY_ENCRYPTION_KEY comes from the + # SOPS env decrypted above. Preview teardown orphans remote + # follower rows on the other side; remotes handle dead + # instances via ordinary delivery-failure expiry. + echo "FEDERATION_ENABLED=true" + echo "FEDERATION_LOG_LEVEL=debug" } >> infrastructure/staging-pr-${{ steps.ports.outputs.pr }}.env - name: Generate per-PR Caddyfile snippet diff --git a/infrastructure/docker-compose.staging.yml b/infrastructure/docker-compose.staging.yml index 0d4da27..1a09695 100644 --- a/infrastructure/docker-compose.staging.yml +++ b/infrastructure/docker-compose.staging.yml @@ -61,9 +61,9 @@ services: WAHOO_CLIENT_SECRET: "" WAHOO_WEBHOOK_TOKEN: "" DEMO_BOT_ENABLED: "" - # Federation soak (social-federation rollout step 12.2). Enabled by - # cd-staging.yml for persistent staging only; PR previews leave both - # empty (flag off) so preview journals never emit federation traffic. + # Federation (social-federation rollout). Enabled by cd-staging.yml + # for persistent staging (12.2) and for PR previews (12.4 — every + # preview is a second live instance staging can follow across). FEDERATION_ENABLED: ${FEDERATION_ENABLED:-} FEDERATION_KEY_ENCRYPTION_KEY: ${FEDERATION_KEY_ENCRYPTION_KEY:-} FEDERATION_LOG_LEVEL: ${FEDERATION_LOG_LEVEL:-}