Skip to content

Commit

Permalink
Merge pull request #273 from infosiftr/auto-update-jre
Browse files Browse the repository at this point in the history
Automatically update JRE base images
  • Loading branch information
tianon committed Jan 2, 2024
2 parents 8313dd9 + 3937857 commit b37ddf8
Show file tree
Hide file tree
Showing 4 changed files with 64 additions and 14 deletions.
2 changes: 1 addition & 1 deletion Dockerfile.template
@@ -1,7 +1,7 @@
{{
def major: env.version | split(".")[0] | tonumber
-}}
FROM eclipse-temurin:{{ .java }}-jre-focal
FROM {{ .FROM.version }}

# explicitly set user/group IDs
RUN set -eux; \
Expand Down
5 changes: 5 additions & 0 deletions generate-stackbrew-library.sh
Expand Up @@ -82,6 +82,11 @@ for version; do
fi
versionAliases+=( ${aliases[$version]:-} )

suite="$(jq -r '.[env.version].FROM.base' versions.json)"
suiteAliases=( "${versionAliases[@]/%/-$suite}" )
suiteAliases=( "${suiteAliases[@]//latest-/}" )
versionAliases+=( "${suiteAliases[@]}" )

parent="$(awk 'toupper($1) == "FROM" { print $2 }' "$version/Dockerfile")"
arches="${parentRepoToArches[$parent]}"

Expand Down
50 changes: 40 additions & 10 deletions versions.json
@@ -1,27 +1,57 @@
{
"3.0": {
"java": "8",
"version": "3.0.29",
"sha512": "31515e20fb1356ae8cf277c52954ea711c4e158f852cd8bee096775f1f0a2b6847fe972d4755f061b45578f7ed688237b8ead84b38c77bcccfd6f8c022db520b",
"version": "3.0.29"
"java": {
"version": "8"
},
"FROM": {
"version": "eclipse-temurin:8-jre-focal",
"base": "focal"
}
},
"3.11": {
"java": "8",
"version": "3.11.16",
"sha512": "5bc76508fec8ff9d4fcfa3c53b0c9550ef37ad771e568b2634df2ba5377c378237c968f1d2bfb1078ecc30c034aea63b4c481826bb9ac26536f1f4f336cd8286",
"version": "3.11.16"
"java": {
"version": "8"
},
"FROM": {
"version": "eclipse-temurin:8-jre-focal",
"base": "focal"
}
},
"4.0": {
"java": "11",
"version": "4.0.11",
"sha512": "92bd35819e86927709add1075023af5aed93d42e0115bfa6b675b15e93b31bffa6fd3b9ff95a403bb9650ec417a0567ac776c88b56fe373938451746bbc64a50",
"version": "4.0.11"
"java": {
"version": "11"
},
"FROM": {
"version": "eclipse-temurin:11-jre-focal",
"base": "focal"
}
},
"4.1": {
"java": "11",
"version": "4.1.3",
"sha512": "393443a5b9849645362df2f7536e734e1fc6d513aadf440fab8dda3063553394a138805098796d35f9d4d31e2899ecab630a2ec2a44d00d5e63bed549a2e844c",
"version": "4.1.3"
"java": {
"version": "11"
},
"FROM": {
"version": "eclipse-temurin:11-jre-focal",
"base": "focal"
}
},
"5.0": {
"java": "17",
"version": "5.0-beta1",
"sha512": "d67aa211858f090dca6ea2ac84ed405bd4791aaf493e3c8e5b24fd44e54aa3132eeca3f4e310d6d1aad1ca105515011d6e177d169a6e94af0a257ffc95b4f175",
"version": "5.0-beta1"
"java": {
"version": "17"
},
"FROM": {
"version": "eclipse-temurin:17-jre-focal",
"base": "focal"
}
}
}
21 changes: 18 additions & 3 deletions versions.sh
Expand Up @@ -50,15 +50,30 @@ for version in "${versions[@]}"; do

export javaVersion="${javaVersions[$version]:-$defaultJavaVersion}"

echo "$version: $fullVersion"
# for the given Java version, find the "default" Eclipse Temurin tag with stable specificity ("X-jre-SUITE")
from="$(
bashbrew --arch amd64 list --arch-filter "https://github.com/docker-library/official-images/raw/HEAD/library/eclipse-temurin:$javaVersion-jre" \
| grep -F ":$javaVersion-jre-" \
| tail -1
)"
export from

echo "$version: $fullVersion (FROM $from)"

json="$(jq <<<"$json" -c '
.[env.version] = {
version: env.fullVersion,
sha512: env.sha512,
java: env.javaVersion,
java: {
version: env.javaVersion,
},
FROM: {
# this structure is a little bit awkward, but gives us nice commit messages like "Update 5.0 to FROM eclipse-temurin:17-jre-jammy"
version: env.from,
base: (env.from | split(":\(env.javaVersion)-jre-")[1]),
},
}
')"
done

jq <<<"$json" -S . > versions.json
jq <<<"$json" . > versions.json

0 comments on commit b37ddf8

Please sign in to comment.