FrankenPress is built from four independent repos that move at their own cadence. Upgrades happen at three levels — runtime, mu-plugin, site image — and one operations-side level: chart.Documentation Index
Fetch the complete documentation index at: https://docs.frankenpress.com/llms.txt
Use this file to discover all available pages before exploring further.
Component upgrade order
| Change | Upgrade path |
|---|---|
| WP plugin / theme bump | site image only — composer update, tag, deploy |
| WP core bump | site image — bump roots/wordpress constraint, tag, deploy |
| FrankenPHP / Souin / Caddy module bump | fp-runtime → site image — bump FRANKENPHP_VERSION etc., tag fp-runtime, rebuild site image, deploy |
| Cache invalidation logic change | fp-mu-plugin → fp-runtime → site image |
| Helm chart change (new value, RBAC, etc.) | fp-charts only — helm upgrade --version <new> |
Site image upgrade
The most common case. In yourfp-site-template fork:
ghcr.io/<your-org>/<your-site>:v1.2.0. Then in
the cluster:
updateStrategy (default rolling update with maxSurge: 1,
maxUnavailable: 0).
Chart upgrade
--reuse-values keeps your existing overrides (image tag, S3 bucket,
etc.). Without it you’d need to repeat every --set from the original
install.
Reading the release notes
Each repo publishes release notes on GitHub:fp-runtimereleasesfp-mu-pluginreleasesfp-chartsreleases- (your
fp-site-templatefork’s releases for site-specific changes)
0.x → 1.0, 1.x → 2.0) as requiring a
read-through before upgrading.
Backups before major upgrades
For production:- Database snapshot — your DB layer (RDS / MariaDB Operator backup CR / etc.) handles this. Verify the latest snapshot is recent before triggering the upgrade.
- No filesystem state to back up — the site image is immutable, uploads live in S3. There’s nothing local on the pod to lose.
- Image artefact is preserved — GHCR retains all image tags by default; a rollback is
helm upgrade --set image.tag=<previous-tag>.