# odoosky-odoo — pinned Odoo platform images. # # Source of truth: which upstream Odoo nightly each major is pinned to. # Customer instances pull from registry.odoosky.cloud/odoosky/docker-mirror/odoo: # where matches the entries below. # # Bumping policy: # 1. Pull a candidate upstream nightly to lab1. # 2. Smoke it: deploy a fresh test tenant, login, install one demo # addon, check pod logs for SQL/runtime errors. # 3. If clean, push it to our mirror under the same date tag. # 4. Update this file. Commit. ArgoCD picks up the new chart values # and customer instances pull the new image on next pod restart. # 5. If broken, do nothing. Customers stay on the previous pinned # tag until a clean candidate appears. # # Never use rolling tags (18.0, 17.0, 16.0). They auto-pull the latest # nightly and have shipped regressions to every new instance — see the # 2026-05-04 incident with res_users_log query (now() - INTERVAL '15 # minutes' string-quoted, broke every login). majors: - major: "18.0" pinnedTag: "18.0-20260421" upstreamSource: "docker.io/library/odoo:18.0-20260421" blessedAt: "2026-05-06" blessedBy: "m@havari.me" notes: "Apr 21 nightly. Predates the 2026-05-04 SQL regression." # Add 17.0 / 16.0 / 19.0 entries here as we bring them into the # platform. Each entry MUST be tested before commit. # Smoke checklist (paste into your bump PR description): # [ ] nerdctl pull # [ ] nerdctl tag + push to our mirror # [ ] kubectl apply temp tenant on a sandbox cluster # [ ] login as admin → 200 # [ ] /web/dataset/call_kw on a basic model → 200, no SQL errors # [ ] install one demo addon → 'Installed' state # [ ] tear down temp tenant