feat(2): discourse Q4.6 — upgrade-to-latest 0.7.0 base-repin+grace overlay (compose.ccci.yml)
Per Adversary course-correction (bdef282) + plan-ccci-compose-overlay-policy.md §1: upgrade-to-latest
is MANDATORY. The 0.7.0+3.3.1 from-version pins the Docker-Hub-removed bitnami/discourse:3.3.1 (404)
and ships a too-tight 5m start_period for the 15-25min Rails cold boot. Minimal base overlay
compose.ccci.yml re-pins app+sidekiq to bitnamilegacy/discourse:3.3.1 (namespace-only, identical
image — same re-pin the PR head makes) + widens start_period to 20m (grace-only). install_steps.sh
provides it; CHAOS_BASE_DEPLOY skips the clean-tree gate; UPGRADE_BASE_VERSION=0.7.0+3.3.1 sets the
true predecessor. Neither change weakens a test. Run shape returns to STAGES=install,upgrade,backup,
restore,custom.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
29
tests/discourse/compose.ccci.yml
Normal file
29
tests/discourse/compose.ccci.yml
Normal file
@ -0,0 +1,29 @@
|
||||
---
|
||||
version: "3.8"
|
||||
# cc-ci overlay (Phase 2 Q4.6) — minimal, single-purpose: make the UPGRADE-tier BASE deploy (the
|
||||
# previous published discourse version) deployable so upgrade-to-latest can run.
|
||||
#
|
||||
# WHY THIS OVERLAY EXISTS (plan-ccci-compose-overlay-policy.md §1 "minimal justified fallback" +
|
||||
# the §1 mandate that upgrade-to-latest must ALWAYS run): the harness base-deploys the from-version
|
||||
# (UPGRADE_BASE_VERSION = 0.7.0+3.3.1), then `deploy --chaos` to the recipe-PR head. Two blockers on
|
||||
# that published base, both resolved here, NEITHER weakening any test:
|
||||
# 1. RE-PIN: every published discourse tag pins `bitnami/discourse:3.3.1` (and 0.6.3 → 3.1.2),
|
||||
# but Docker Hub REMOVED the bitnami/discourse namespace (404). The recipe-PR (recipe-maintainers/
|
||||
# discourse#1) re-pins app+sidekiq to `bitnamilegacy/discourse:3.3.1` (the legit upstream
|
||||
# relocation of the identical image). This overlay applies the SAME namespace-only re-pin to the
|
||||
# BASE 0.7.0 (identical version 3.3.1, identical image content) so the from-version pulls — exactly
|
||||
# the policy-blessed "minimal bitnami→bitnamilegacy re-pin overlay on the 0.7.0 from-version".
|
||||
# 2. GRACE: discourse's Rails cold first boot (DB migrate + asset precompile) is 15-25min on cc-ci,
|
||||
# exceeding the published 5m start_period → swarm kills the still-booting app. start_period CANNOT
|
||||
# be an env var (abra validates the literal 'duration' BEFORE substitution → FATA; Adversary-
|
||||
# reproduced, REVIEW-2 4b862f6), so we widen it to a literal 20m on the BASE. The PR head already
|
||||
# ships 20m, so this overlay is idempotent on the head (it persists untracked across the checkout).
|
||||
# Both changes are namespace/grace-only: identical image content, a healthy check still marks healthy
|
||||
# immediately → NO assertion is weakened and no defect is masked.
|
||||
services:
|
||||
app:
|
||||
image: bitnamilegacy/discourse:3.3.1
|
||||
healthcheck:
|
||||
start_period: 20m
|
||||
sidekiq:
|
||||
image: bitnamilegacy/discourse:3.3.1
|
||||
Reference in New Issue
Block a user