From fa7760a996669674ee4952713f723cb342e8d5eb Mon Sep 17 00:00:00 2001 From: Ravi Singal Date: Sat, 24 Oct 2026 19:54:27 +0530 Subject: [PATCH] fix: derive JAVA_FULL_VERSION from the real OpenJDK version, not the Zulu build number The java.version format changed to Azul's CDN filename style (e.g. zulu11.92.109-ca-jdk11.0.33), which broke the cut-based parsing: it produced tags like hypertrace/java:zulu11 and hypertrace/java:zulu11.92.109 instead of updating hypertrace/java:11, and JAVA_FULL_VERSION no longer matched the actual OpenJDK patch version consumers expect (e.g. 11.0.33). Co-Authored-By: Claude Sonnet 5 --- .github/workflows/publish.yml | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index 5a6e611..20af928 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -34,8 +34,14 @@ jobs: run: | ZULU_JDK_VERSION=$(cat java-${{ matrix.java-major-version}}/java.version | tr -d "\n") echo ZULU_JDK_VERSION=${ZULU_JDK_VERSION} >> $GITHUB_OUTPUT - echo JAVA_MAJOR_VERSION=$(echo $ZULU_JDK_VERSION | cut -d'.' -f1) >> $GITHUB_OUTPUT - echo JAVA_FULL_VERSION=$(echo $ZULU_JDK_VERSION | cut -d'-' -f1) >> $GITHUB_OUTPUT + echo JAVA_MAJOR_VERSION=$(echo $ZULU_JDK_VERSION | cut -d'.' -f1 | sed s/zulu//) >> $GITHUB_OUTPUT + if echo "$ZULU_JDK_VERSION" | grep -q 'ca-jdk'; then + # New Azul CDN filename format, e.g. zulu11.92.109-ca-jdk11.0.33: take the real OpenJDK version after "ca-jdk". + JAVA_FULL_VERSION=$(echo "$ZULU_JDK_VERSION" | sed 's/.*ca-jdk//') + else + JAVA_FULL_VERSION=$(echo "$ZULU_JDK_VERSION" | cut -d'-' -f1 | sed s/zulu//) + fi + echo JAVA_FULL_VERSION=${JAVA_FULL_VERSION} >> $GITHUB_OUTPUT BASE_IMAGE=$(cat java-${{ matrix.java-major-version}}/base.image | tr -d "\n") echo BASE_IMAGE=${BASE_IMAGE} >> $GITHUB_OUTPUT @@ -48,4 +54,4 @@ jobs: JAVA_VERSION=${{ steps.versions.outputs.ZULU_JDK_VERSION }} BASE_IMAGE=${{ steps.versions.outputs.BASE_IMAGE }} tags: hypertrace/java:${{ steps.versions.outputs.JAVA_MAJOR_VERSION }},hypertrace/java:${{ steps.versions.outputs.JAVA_FULL_VERSION }} - push: true \ No newline at end of file + push: true