Aman Poonia created HBASE-30458:
-----------------------------------

             Summary: Allow selecting the JDK version in 
dev-support/hbase_docker build (--jdk 8|17|21)
                 Key: HBASE-30458
                 URL: https://issues.apache.org/jira/browse/HBASE-30458
             Project: HBase
          Issue Type: Improvement
          Components: build
            Reporter: Aman Poonia


The {{dev-support/hbase_docker/build-hbase.sh}} script builds HBase images that 
are hardcoded to Temurin JDK 8. That is no longer appropriate for master, which 
needs JDK 17 or later, and branch-2 should stay on JDK 8.

h3. Changes
* Add a {{--jdk <8|17|21>}} option to {{build-hbase.sh}} (also accepts 
{{--jdk=<v>}}, usable with --tag, --tarball and --source). Unsupported values 
fail fast with a clear error.
* When {{--jdk}} is not given, use a per-branch default ({{DEFAULT_JDK}} in the 
script): 17 on master, 8 on branch-2.
* {{Dockerfile}} and {{m1/Dockerfile}} take a {{JDK_VERSION}} build arg and 
select the matching Temurin tarball and SHA256. {{JAVA_HOME}} is set to 
{{/usr/lib/jvm/java-$\{JDK_VERSION\}}}. The JDK pins match 
{{dev-support/docker/Dockerfile}}.
* Update {{dev-support/hbase_docker/README.md}}.

h3. Testing
* {{build-hbase.sh --source .}} on master (default JDK 17): build succeeds, 
image reports Temurin 17.0.11.
* {{build-hbase.sh --source . --jdk 21}}: build succeeds, image reports Temurin 
21.0.12.1.
* JDK download and checksum stages verified for 8, 17 and 21; {{--jdk 11}} is 
rejected.




--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to