Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Clarify versioning/update policy in the README #2262

Open
joshtrichards opened this issue Jul 17, 2024 · 1 comment
Open

Clarify versioning/update policy in the README #2262

joshtrichards opened this issue Jul 17, 2024 · 1 comment

Comments

@joshtrichards
Copy link
Member

joshtrichards commented Jul 17, 2024

Breadcrumbs for down the road... (Mostly for myself).

  • Context
    • Docker Official images and what that means
    • Base image updates (eco-system rebuilds)
  • Nextcloud Server releases (upstream bumps)
  • Image releases
    • bugs fixes
    • enhancements
    • upgrades of underlying bits (e.g. a new major PHP or underlying distribution version)

Production Docker tags:

  • Upstream supported stables (proposed)
    • latest
    • previous
    • last
  • Generic
    • stable / production

Tracking this in: #2265


Immutable:

  • No such thing technically since what a tag points to can always be changed
  • We attempt to make specific tags semi-immutable at the Dockerfile level, but the images themselves referenced by these tags will technically always change automatically whenever the underlying base images (debian, alpine, php) are updated (generally for security). This is a byproduct of how Docker base images and Docker Official images work.
  • The only truly immutable option - if you require that - is to reference your images by their digest. The caveat being you're 100% responsible for security updates.

General recommendations:

  • Pin your image references to something. Rule of thumb: a major release or one of { latest, previous, last }

  • Tagging policy
    • latest/previous/last match upstream
    • stable/production generally matches ?

  • Breaking changes
    • ?

  • Image versions
  • Nextcloud Server versions
  • Base image versioning/rebuilding
  • Image tags

  • Mutable tags
  • Rolling tags
  • Semo-immutable
    • e.g. "29.0.5"
  • Digests (immutable/BOM use)

Changelog:

  • Release notes (high-level / quick summary)
  • Commit log (detailed /
@tzerber
Copy link
Contributor

tzerber commented Oct 17, 2024

Here's an idea : Move all the examples from the main README.md to the ./examples/README.md one, and just put a link to them there.

I'm eyeballing that examples ./examples/README.md for a while, and I've recently noticed this : Image.

Not super important, but I believe it makes things look a bit more neat.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants