Only the newest Java line is maintained from now on. Publishing the chart once per line out of one directory is what made the lines drift apart (#158): a change reached whichever line happened to lie in the directory. java8 and java17 stay published as frozen artifacts at 4.0.0, java21 at 4.1.0, and none of them gets another chart change. Running an older JVM is now a decision at rollout time instead of a chart version: image.tagOverride replaces the tag that otherwise comes from appVersion. It is not called image.tag because it decouples the running image from the chart version, and it is deliberately outside Renovate's reach - renovate.json5 keeps tracking appVersion only. The pairing of tag and minecraft.version is now checked at render time and fails with both values named, the line each one belongs to, and where the tag came from. Until now nothing checked it: a mismatch installed silently and only the container failed afterwards. The boundaries are Mojang's, swept over all 102 releases of the piston-meta manifest (javaVersion.majorVersion): up to 1.16.5 Java 8, 1.17-1.17.1 Java 16, 1.18-1.20.4 Java 17, 1.20.5-1.21.11 Java 21, 26.1 and later Java 25. The 1.17 line was the one gap the chart's own notes did not cover. Two cases pass unchecked on purpose, documented in values.yaml and NOTES.txt: a tag without a recognizable java<N> part, and a minecraft.version that is not a plain numeric x[.y[.z]]. A guard that rejects what it does not understand gets worked around instead of respected. Major, because an installation that already runs a mismatched pair stops rendering. It does not run today either - it now fails earlier and visibly.
31 lines
1.5 KiB
YAML
31 lines
1.5 KiB
YAML
apiVersion: v2
|
|
name: minecraft-server
|
|
description: A Helm chart for deploying a itzg/minecraft-server
|
|
icon: https://avatars.githubusercontent.com/u/988985
|
|
|
|
type: application
|
|
|
|
# ONLY THE NEWEST JAVA LINE IS MAINTAINED (chart 5.0.0, issue #158).
|
|
# appVersion is the image tag and therefore fixes the JVM. Up to chart 4.1.0 the
|
|
# chart was published once per line (java8 / java17 / java21 / java25) out of
|
|
# this single directory, which is what made the lines drift apart: whatever
|
|
# change landed while a line happened to lie in the directory reached that line
|
|
# only. That is over. This directory carries exactly one line - the newest -
|
|
# and it is the only one that gets chart changes.
|
|
# The older lines stay published as frozen artifacts and are still installable:
|
|
# java8 and java17 at 4.0.0, java21 at 4.1.0. They will not be updated again.
|
|
# To run an older JVM with the CURRENT chart, set image.tagOverride in values
|
|
# instead of installing a frozen chart version; the chart then checks that
|
|
# minecraft.version fits the line of that tag and fails the render if it does
|
|
# not.
|
|
# Since chart 2.0.0 the tag is a DATED upstream release ("<release>-java<N>")
|
|
# instead of the rolling line tag ("java<N>"): the rolling tags are rebuilt
|
|
# continuously, so a pod restart could pull a different image than the last one
|
|
# without anything being recorded anywhere. The dated tags are immutable, so the
|
|
# image is now pinned by the chart version like every other chart in this repo.
|
|
version: 5.0.0+up2026.8.2.java25
|
|
appVersion: "2026.8.2-java25"
|
|
|
|
maintainers:
|
|
- name: jklein
|