Skip to content

chore: Document the 3.x operator-facing deployment contract#414

Merged
turegjorup merged 3 commits into
release/3.0.0from
feature/5402-upgrade-md-operator-contract
May 28, 2026
Merged

chore: Document the 3.x operator-facing deployment contract#414
turegjorup merged 3 commits into
release/3.0.0from
feature/5402-upgrade-md-operator-contract

Conversation

@turegjorup

Copy link
Copy Markdown
Contributor

Summary

Documentation-only PR. Adds two sections to UPGRADE.md covering the operator-facing changes that come with the 3.x image-based deployment contract.

2.1 — Rename environment variables (extended)

The previous list of four renames is replaced with the full set: every APP_* variable from a 2.x .env.docker.local is renamed to its unprefixed Symfony name, with APP_ENV and APP_SECRET as the only exceptions (Symfony-defined, keep their prefix).

The list is grouped by area for readability — framework / JWT / Redis / HTTP client / OIDC internal / OIDC external / calendar feed / event DB / admin / client. 56 entries total.

The os2display-docker-server repo provides task env:migrate to perform this rename automatically; the section points at it as the recommended path:

task env:migrate
task env:diff      # review against the canonical example

2.2 — Adopt the new operator-facing image-deployment contract

Covers the deployment mechanics independent of the rename:

  • Image source: ghcr.io/os2display/display-api-service and …-nginx.
  • Bootstrap .env.local from the image: docker run --rm <image> cat /var/www/html/.env > .env.local. The image ships an annotated, self-documenting .env (per PR 5402: Document and validate the operator-facing configuration surface #411) that operators use as the starting point.
  • Reference .env.local from compose via env_file: with a yaml example.
  • nginx and PHP-FPM runtime tuning lists the operator-tunable env vars for each surface and points at the respective Dockerfile ENV blocks for defaults.

Out of scope

  • Stream B's docker-server UPGRADE.md — out of scope for this repo. Section 2.2 references it for full operator migration steps.
  • Any code or CI changes — this PR is documentation only.

Test plan

  • Render UPGRADE.md on GitHub and confirm the new sections render cleanly.
  • Verify the rename list matches what task env:migrate produces on a real 2.x .env.docker.local (sanity check by an operator with a 2.x deployment).

🤖 Generated with Claude Code

Add section 2.1 (Rename environment variables) covering the full
APP_* -> unprefixed Symfony name rename list (56 variables across
framework, JWT, Redis, HTTP client, OIDC, calendar feed, eventdb,
admin, client) with task env:migrate referenced as the recommended
automated path.

Add section 2.2 (Adopt the new operator-facing image-deployment
contract) covering the GHCR-published images, the image-bootstrap
flow for .env.local, the env_file: compose pattern, and the
nginx / PHP-FPM runtime-tuning surfaces (with pointers to the
respective Dockerfile ENV blocks).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@turegjorup
turegjorup requested a review from tuj April 29, 2026 09:39
@turegjorup turegjorup self-assigned this Apr 29, 2026
…r-mono-repo' into feature/5402-upgrade-md-operator-contract

# Conflicts:
#	CHANGELOG.md
@tuj tuj added the version 3 Issues related to the release of version 3 label May 1, 2026
Base automatically changed from feature/update-infrastructure-for-mono-repo to release/3.0.0 May 4, 2026 09:43
@tuj tuj added documentation Improvements or additions to documentation labels May 8, 2026
@tuj tuj changed the title 5402: Document the 3.x operator-facing deployment contract chore: Document the 3.x operator-facing deployment contract May 8, 2026
…-upgrade-md-operator-contract

# Conflicts:
#	CHANGELOG.md
@turegjorup
turegjorup merged commit f1d4bd7 into release/3.0.0 May 28, 2026
20 checks passed
@turegjorup
turegjorup deleted the feature/5402-upgrade-md-operator-contract branch May 28, 2026 10:38
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentation Improvements or additions to documentation version 3 Issues related to the release of version 3

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants