-
Notifications
You must be signed in to change notification settings - Fork 2.4k
Add AdoptOpenJDK 15_36 support. #8781
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
Add AdoptOpenJDK 15_36 support. #8781
Conversation
See official image PR for more details docker-library/official-images#8781
The |
See dockerhub build [issue](docker-library/official-images#8781) for more details.
See dockerhub build [issue](docker-library/official-images#8781) for more details.
Use windows/nanoserver instead.
That is normal for the
That is fine and we can just ignore them: #8379 (comment). |
Have disabled nanoserver images for now as we need to refactor those Dockerfiles. @yosifkit Thanks for your help ! |
@yosifkit Just wanted to clarify that I'll submit the nanoserver changes as a separate PR. So if you are ok with this, please merge, thanks ! |
Diff:diff --git a/_bashbrew-cat b/_bashbrew-cat
index cdcdf16..ed23417 100644
--- a/_bashbrew-cat
+++ b/_bashbrew-cat
@@ -1,94 +1,94 @@
Maintainers: Dinakar Guniguntala <[email protected]> (@dinogun)
GitRepo: https://github.com/AdoptOpenJDK/openjdk-docker.git
-Tags: 8u262-b10-jdk-hotspot-bionic, 8-jdk-hotspot-bionic, 8-hotspot-bionic
-SharedTags: 8u262-b10-jdk-hotspot, 8-jdk-hotspot, 8-hotspot
+Tags: 8u265-b01-jdk-hotspot-bionic, 8-jdk-hotspot-bionic, 8-hotspot-bionic
+SharedTags: 8u265-b01-jdk-hotspot, 8-jdk-hotspot, 8-hotspot
Architectures: amd64, arm32v7, arm64v8, ppc64le, s390x
-GitCommit: 2ad867c3b57069823d3958515a55d227d3153da2
+GitCommit: 0ebf766de3c14fb7fb989bd93ede9f8b6db64933
Directory: 8/jdk/ubuntu
File: Dockerfile.hotspot.releases.full
-Tags: 8u262-b10-jdk-hotspot-windowsservercore-1809, 8-jdk-hotspot-windowsservercore-1809, 8-hotspot-windowsservercore-1809
-SharedTags: 8u262-b10-jdk-hotspot-windowsservercore, 8-jdk-hotspot-windowsservercore, 8-hotspot-windowsservercore, 8u262-b10-jdk-hotspot, 8-jdk-hotspot, 8-hotspot
+Tags: 8u265-b01-jdk-hotspot-windowsservercore-1809, 8-jdk-hotspot-windowsservercore-1809, 8-hotspot-windowsservercore-1809
+SharedTags: 8u265-b01-jdk-hotspot-windowsservercore, 8-jdk-hotspot-windowsservercore, 8-hotspot-windowsservercore, 8u265-b01-jdk-hotspot, 8-jdk-hotspot, 8-hotspot
Architectures: windows-amd64
-GitCommit: 2ad867c3b57069823d3958515a55d227d3153da2
+GitCommit: 0ebf766de3c14fb7fb989bd93ede9f8b6db64933
Directory: 8/jdk/windows/windowsservercore-1809
File: Dockerfile.hotspot.releases.full
Constraints: windowsservercore-1809
-Tags: 8u262-b10-jdk-hotspot-windowsservercore-ltsc2016, 8-jdk-hotspot-windowsservercore-ltsc2016, 8-hotspot-windowsservercore-ltsc2016
-SharedTags: 8u262-b10-jdk-hotspot-windowsservercore, 8-jdk-hotspot-windowsservercore, 8-hotspot-windowsservercore, 8u262-b10-jdk-hotspot, 8-jdk-hotspot, 8-hotspot
+Tags: 8u265-b01-jdk-hotspot-windowsservercore-ltsc2016, 8-jdk-hotspot-windowsservercore-ltsc2016, 8-hotspot-windowsservercore-ltsc2016
+SharedTags: 8u265-b01-jdk-hotspot-windowsservercore, 8-jdk-hotspot-windowsservercore, 8-hotspot-windowsservercore, 8u265-b01-jdk-hotspot, 8-jdk-hotspot, 8-hotspot
Architectures: windows-amd64
-GitCommit: 2ad867c3b57069823d3958515a55d227d3153da2
+GitCommit: 0ebf766de3c14fb7fb989bd93ede9f8b6db64933
Directory: 8/jdk/windows/windowsservercore-ltsc2016
File: Dockerfile.hotspot.releases.full
Constraints: windowsservercore-ltsc2016
-Tags: 8u262-b10-jdk-openj9-0.21.0-bionic, 8-jdk-openj9-bionic, 8-openj9-bionic
-SharedTags: 8u262-b10-jdk-openj9-0.21.0, 8-jdk-openj9, 8-openj9
+Tags: 8u265-b01-jdk-openj9-0.21.0-bionic, 8-jdk-openj9-bionic, 8-openj9-bionic
+SharedTags: 8u265-b01-jdk-openj9-0.21.0, 8-jdk-openj9, 8-openj9
Architectures: amd64, ppc64le, s390x
-GitCommit: 2ad867c3b57069823d3958515a55d227d3153da2
+GitCommit: 0ebf766de3c14fb7fb989bd93ede9f8b6db64933
Directory: 8/jdk/ubuntu
File: Dockerfile.openj9.releases.full
-Tags: 8u262-b10-jdk-openj9-0.21.0-windowsservercore-1809, 8-jdk-openj9-windowsservercore-1809, 8-openj9-windowsservercore-1809
-SharedTags: 8u262-b10-jdk-openj9-0.21.0-windowsservercore, 8-jdk-openj9-windowsservercore, 8-openj9-windowsservercore, 8u262-b10-jdk-openj9-0.21.0, 8-jdk-openj9, 8-openj9
+Tags: 8u265-b01-jdk-openj9-0.21.0-windowsservercore-1809, 8-jdk-openj9-windowsservercore-1809, 8-openj9-windowsservercore-1809
+SharedTags: 8u265-b01-jdk-openj9-0.21.0-windowsservercore, 8-jdk-openj9-windowsservercore, 8-openj9-windowsservercore, 8u265-b01-jdk-openj9-0.21.0, 8-jdk-openj9, 8-openj9
Architectures: windows-amd64
-GitCommit: 2ad867c3b57069823d3958515a55d227d3153da2
+GitCommit: 0ebf766de3c14fb7fb989bd93ede9f8b6db64933
Directory: 8/jdk/windows/windowsservercore-1809
File: Dockerfile.openj9.releases.full
Constraints: windowsservercore-1809
-Tags: 8u262-b10-jdk-openj9-0.21.0-windowsservercore-ltsc2016, 8-jdk-openj9-windowsservercore-ltsc2016, 8-openj9-windowsservercore-ltsc2016
-SharedTags: 8u262-b10-jdk-openj9-0.21.0-windowsservercore, 8-jdk-openj9-windowsservercore, 8-openj9-windowsservercore, 8u262-b10-jdk-openj9-0.21.0, 8-jdk-openj9, 8-openj9
+Tags: 8u265-b01-jdk-openj9-0.21.0-windowsservercore-ltsc2016, 8-jdk-openj9-windowsservercore-ltsc2016, 8-openj9-windowsservercore-ltsc2016
+SharedTags: 8u265-b01-jdk-openj9-0.21.0-windowsservercore, 8-jdk-openj9-windowsservercore, 8-openj9-windowsservercore, 8u265-b01-jdk-openj9-0.21.0, 8-jdk-openj9, 8-openj9
Architectures: windows-amd64
-GitCommit: 2ad867c3b57069823d3958515a55d227d3153da2
+GitCommit: 0ebf766de3c14fb7fb989bd93ede9f8b6db64933
Directory: 8/jdk/windows/windowsservercore-ltsc2016
File: Dockerfile.openj9.releases.full
Constraints: windowsservercore-ltsc2016
-Tags: 8u262-b10-jre-hotspot-bionic, 8-jre-hotspot-bionic
-SharedTags: 8u262-b10-jre-hotspot, 8-jre-hotspot
+Tags: 8u265-b01-jre-hotspot-bionic, 8-jre-hotspot-bionic
+SharedTags: 8u265-b01-jre-hotspot, 8-jre-hotspot
Architectures: amd64, arm32v7, arm64v8, ppc64le, s390x
-GitCommit: 2ad867c3b57069823d3958515a55d227d3153da2
+GitCommit: 0ebf766de3c14fb7fb989bd93ede9f8b6db64933
Directory: 8/jre/ubuntu
File: Dockerfile.hotspot.releases.full
-Tags: 8u262-b10-jre-hotspot-windowsservercore-1809, 8-jre-hotspot-windowsservercore-1809
-SharedTags: 8u262-b10-jre-hotspot-windowsservercore, 8-jre-hotspot-windowsservercore, 8u262-b10-jre-hotspot, 8-jre-hotspot
+Tags: 8u265-b01-jre-hotspot-windowsservercore-1809, 8-jre-hotspot-windowsservercore-1809
+SharedTags: 8u265-b01-jre-hotspot-windowsservercore, 8-jre-hotspot-windowsservercore, 8u265-b01-jre-hotspot, 8-jre-hotspot
Architectures: windows-amd64
-GitCommit: 2ad867c3b57069823d3958515a55d227d3153da2
+GitCommit: 0ebf766de3c14fb7fb989bd93ede9f8b6db64933
Directory: 8/jre/windows/windowsservercore-1809
File: Dockerfile.hotspot.releases.full
Constraints: windowsservercore-1809
-Tags: 8u262-b10-jre-hotspot-windowsservercore-ltsc2016, 8-jre-hotspot-windowsservercore-ltsc2016
-SharedTags: 8u262-b10-jre-hotspot-windowsservercore, 8-jre-hotspot-windowsservercore, 8u262-b10-jre-hotspot, 8-jre-hotspot
+Tags: 8u265-b01-jre-hotspot-windowsservercore-ltsc2016, 8-jre-hotspot-windowsservercore-ltsc2016
+SharedTags: 8u265-b01-jre-hotspot-windowsservercore, 8-jre-hotspot-windowsservercore, 8u265-b01-jre-hotspot, 8-jre-hotspot
Architectures: windows-amd64
-GitCommit: 2ad867c3b57069823d3958515a55d227d3153da2
+GitCommit: 0ebf766de3c14fb7fb989bd93ede9f8b6db64933
Directory: 8/jre/windows/windowsservercore-ltsc2016
File: Dockerfile.hotspot.releases.full
Constraints: windowsservercore-ltsc2016
-Tags: 8u262-b10-jre-openj9-0.21.0-bionic, 8-jre-openj9-bionic
-SharedTags: 8u262-b10-jre-openj9-0.21.0, 8-jre-openj9
+Tags: 8u265-b01-jre-openj9-0.21.0-bionic, 8-jre-openj9-bionic
+SharedTags: 8u265-b01-jre-openj9-0.21.0, 8-jre-openj9
Architectures: amd64, ppc64le, s390x
-GitCommit: 2ad867c3b57069823d3958515a55d227d3153da2
+GitCommit: 0ebf766de3c14fb7fb989bd93ede9f8b6db64933
Directory: 8/jre/ubuntu
File: Dockerfile.openj9.releases.full
-Tags: 8u262-b10-jre-openj9-0.21.0-windowsservercore-1809, 8-jre-openj9-windowsservercore-1809
-SharedTags: 8u262-b10-jre-openj9-0.21.0-windowsservercore, 8-jre-openj9-windowsservercore, 8u262-b10-jre-openj9-0.21.0, 8-jre-openj9
+Tags: 8u265-b01-jre-openj9-0.21.0-windowsservercore-1809, 8-jre-openj9-windowsservercore-1809
+SharedTags: 8u265-b01-jre-openj9-0.21.0-windowsservercore, 8-jre-openj9-windowsservercore, 8u265-b01-jre-openj9-0.21.0, 8-jre-openj9
Architectures: windows-amd64
-GitCommit: 2ad867c3b57069823d3958515a55d227d3153da2
+GitCommit: 0ebf766de3c14fb7fb989bd93ede9f8b6db64933
Directory: 8/jre/windows/windowsservercore-1809
File: Dockerfile.openj9.releases.full
Constraints: windowsservercore-1809
-Tags: 8u262-b10-jre-openj9-0.21.0-windowsservercore-ltsc2016, 8-jre-openj9-windowsservercore-ltsc2016
-SharedTags: 8u262-b10-jre-openj9-0.21.0-windowsservercore, 8-jre-openj9-windowsservercore, 8u262-b10-jre-openj9-0.21.0, 8-jre-openj9
+Tags: 8u265-b01-jre-openj9-0.21.0-windowsservercore-ltsc2016, 8-jre-openj9-windowsservercore-ltsc2016
+SharedTags: 8u265-b01-jre-openj9-0.21.0-windowsservercore, 8-jre-openj9-windowsservercore, 8u265-b01-jre-openj9-0.21.0, 8-jre-openj9
Architectures: windows-amd64
-GitCommit: 2ad867c3b57069823d3958515a55d227d3153da2
+GitCommit: 0ebf766de3c14fb7fb989bd93ede9f8b6db64933
Directory: 8/jre/windows/windowsservercore-ltsc2016
File: Dockerfile.openj9.releases.full
Constraints: windowsservercore-ltsc2016
@@ -96,14 +96,14 @@ Constraints: windowsservercore-ltsc2016
Tags: 11.0.8_10-jdk-hotspot-bionic, 11-jdk-hotspot-bionic, 11-hotspot-bionic
SharedTags: 11.0.8_10-jdk-hotspot, 11-jdk-hotspot, 11-hotspot
Architectures: amd64, arm32v7, arm64v8, ppc64le, s390x
-GitCommit: 2ad867c3b57069823d3958515a55d227d3153da2
+GitCommit: 0ebf766de3c14fb7fb989bd93ede9f8b6db64933
Directory: 11/jdk/ubuntu
File: Dockerfile.hotspot.releases.full
Tags: 11.0.8_10-jdk-hotspot-windowsservercore-1809, 11-jdk-hotspot-windowsservercore-1809, 11-hotspot-windowsservercore-1809
SharedTags: 11.0.8_10-jdk-hotspot-windowsservercore, 11-jdk-hotspot-windowsservercore, 11-hotspot-windowsservercore, 11.0.8_10-jdk-hotspot, 11-jdk-hotspot, 11-hotspot
Architectures: windows-amd64
-GitCommit: 2ad867c3b57069823d3958515a55d227d3153da2
+GitCommit: 0ebf766de3c14fb7fb989bd93ede9f8b6db64933
Directory: 11/jdk/windows/windowsservercore-1809
File: Dockerfile.hotspot.releases.full
Constraints: windowsservercore-1809
@@ -111,22 +111,22 @@ Constraints: windowsservercore-1809
Tags: 11.0.8_10-jdk-hotspot-windowsservercore-ltsc2016, 11-jdk-hotspot-windowsservercore-ltsc2016, 11-hotspot-windowsservercore-ltsc2016
SharedTags: 11.0.8_10-jdk-hotspot-windowsservercore, 11-jdk-hotspot-windowsservercore, 11-hotspot-windowsservercore, 11.0.8_10-jdk-hotspot, 11-jdk-hotspot, 11-hotspot
Architectures: windows-amd64
-GitCommit: 2ad867c3b57069823d3958515a55d227d3153da2
+GitCommit: 0ebf766de3c14fb7fb989bd93ede9f8b6db64933
Directory: 11/jdk/windows/windowsservercore-ltsc2016
File: Dockerfile.hotspot.releases.full
Constraints: windowsservercore-ltsc2016
Tags: 11.0.8_10-jdk-openj9-0.21.0-bionic, 11-jdk-openj9-bionic, 11-openj9-bionic
SharedTags: 11.0.8_10-jdk-openj9-0.21.0, 11-jdk-openj9, 11-openj9
-Architectures: amd64, ppc64le, s390x
-GitCommit: 2ad867c3b57069823d3958515a55d227d3153da2
+Architectures: amd64, arm64v8, ppc64le, s390x
+GitCommit: 0ebf766de3c14fb7fb989bd93ede9f8b6db64933
Directory: 11/jdk/ubuntu
File: Dockerfile.openj9.releases.full
Tags: 11.0.8_10-jdk-openj9-0.21.0-windowsservercore-1809, 11-jdk-openj9-windowsservercore-1809, 11-openj9-windowsservercore-1809
SharedTags: 11.0.8_10-jdk-openj9-0.21.0-windowsservercore, 11-jdk-openj9-windowsservercore, 11-openj9-windowsservercore, 11.0.8_10-jdk-openj9-0.21.0, 11-jdk-openj9, 11-openj9
Architectures: windows-amd64
-GitCommit: 2ad867c3b57069823d3958515a55d227d3153da2
+GitCommit: 0ebf766de3c14fb7fb989bd93ede9f8b6db64933
Directory: 11/jdk/windows/windowsservercore-1809
File: Dockerfile.openj9.releases.full
Constraints: windowsservercore-1809
@@ -134,7 +134,7 @@ Constraints: windowsservercore-1809
Tags: 11.0.8_10-jdk-openj9-0.21.0-windowsservercore-ltsc2016, 11-jdk-openj9-windowsservercore-ltsc2016, 11-openj9-windowsservercore-ltsc2016
SharedTags: 11.0.8_10-jdk-openj9-0.21.0-windowsservercore, 11-jdk-openj9-windowsservercore, 11-openj9-windowsservercore, 11.0.8_10-jdk-openj9-0.21.0, 11-jdk-openj9, 11-openj9
Architectures: windows-amd64
-GitCommit: 2ad867c3b57069823d3958515a55d227d3153da2
+GitCommit: 0ebf766de3c14fb7fb989bd93ede9f8b6db64933
Directory: 11/jdk/windows/windowsservercore-ltsc2016
File: Dockerfile.openj9.releases.full
Constraints: windowsservercore-ltsc2016
@@ -142,14 +142,14 @@ Constraints: windowsservercore-ltsc2016
Tags: 11.0.8_10-jre-hotspot-bionic, 11-jre-hotspot-bionic
SharedTags: 11.0.8_10-jre-hotspot, 11-jre-hotspot
Architectures: amd64, arm32v7, arm64v8, ppc64le, s390x
-GitCommit: 2ad867c3b57069823d3958515a55d227d3153da2
+GitCommit: 0ebf766de3c14fb7fb989bd93ede9f8b6db64933
Directory: 11/jre/ubuntu
File: Dockerfile.hotspot.releases.full
Tags: 11.0.8_10-jre-hotspot-windowsservercore-1809, 11-jre-hotspot-windowsservercore-1809
SharedTags: 11.0.8_10-jre-hotspot-windowsservercore, 11-jre-hotspot-windowsservercore, 11.0.8_10-jre-hotspot, 11-jre-hotspot
Architectures: windows-amd64
-GitCommit: 2ad867c3b57069823d3958515a55d227d3153da2
+GitCommit: 0ebf766de3c14fb7fb989bd93ede9f8b6db64933
Directory: 11/jre/windows/windowsservercore-1809
File: Dockerfile.hotspot.releases.full
Constraints: windowsservercore-1809
@@ -157,30 +157,30 @@ Constraints: windowsservercore-1809
Tags: 11.0.8_10-jre-hotspot-windowsservercore-ltsc2016, 11-jre-hotspot-windowsservercore-ltsc2016
SharedTags: 11.0.8_10-jre-hotspot-windowsservercore, 11-jre-hotspot-windowsservercore, 11.0.8_10-jre-hotspot, 11-jre-hotspot
Architectures: windows-amd64
-GitCommit: 2ad867c3b57069823d3958515a55d227d3153da2
+GitCommit: 0ebf766de3c14fb7fb989bd93ede9f8b6db64933
Directory: 11/jre/windows/windowsservercore-ltsc2016
File: Dockerfile.hotspot.releases.full
Constraints: windowsservercore-ltsc2016
Tags: 11.0.8_10-jre-openj9-0.21.0-bionic, 11-jre-openj9-bionic
SharedTags: 11.0.8_10-jre-openj9-0.21.0, 11-jre-openj9
-Architectures: amd64, ppc64le, s390x
-GitCommit: 2ad867c3b57069823d3958515a55d227d3153da2
+Architectures: amd64, arm64v8, ppc64le, s390x
+GitCommit: 0ebf766de3c14fb7fb989bd93ede9f8b6db64933
Directory: 11/jre/ubuntu
File: Dockerfile.openj9.releases.full
Tags: 11.0.8_10-jre-openj9-0.21.0-windowsservercore-1809, 11-jre-openj9-windowsservercore-1809
SharedTags: 11.0.8_10-jre-openj9-0.21.0-windowsservercore, 11-jre-openj9-windowsservercore, 11.0.8_10-jre-openj9-0.21.0, 11-jre-openj9
Architectures: windows-amd64
-GitCommit: 2ad867c3b57069823d3958515a55d227d3153da2
+GitCommit: 0ebf766de3c14fb7fb989bd93ede9f8b6db64933
Directory: 11/jre/windows/windowsservercore-1809
File: Dockerfile.openj9.releases.full
Constraints: windowsservercore-1809
Tags: 11.0.8_10-jre-openj9-0.21.0-windowsservercore-ltsc2016, 11-jre-openj9-windowsservercore-ltsc2016
-SharedTags: 11.0.8_10-jre-openj9-0.21.0-windowsservercore, 11-jre-openj9-windowsservercore, 11-openj9-windowsservercore, 11.0.8_10-jre-openj9-0.21.0, 11-jre-openj9
+SharedTags: 11.0.8_10-jre-openj9-0.21.0-windowsservercore, 11-jre-openj9-windowsservercore, 11.0.8_10-jre-openj9-0.21.0, 11-jre-openj9
Architectures: windows-amd64
-GitCommit: 2ad867c3b57069823d3958515a55d227d3153da2
+GitCommit: 0ebf766de3c14fb7fb989bd93ede9f8b6db64933
Directory: 11/jre/windows/windowsservercore-ltsc2016
File: Dockerfile.openj9.releases.full
Constraints: windowsservercore-ltsc2016
@@ -188,22 +188,22 @@ Constraints: windowsservercore-ltsc2016
Tags: 13.0.2_8-jdk-hotspot-bionic, 13-jdk-hotspot-bionic, 13-hotspot-bionic
SharedTags: 13.0.2_8-jdk-hotspot, 13-jdk-hotspot, 13-hotspot
Architectures: amd64, arm32v7, arm64v8, ppc64le, s390x
-GitCommit: 3b28dd3fb7230f208ed49da507432a01741b1259
+GitCommit: 0ebf766de3c14fb7fb989bd93ede9f8b6db64933
Directory: 13/jdk/ubuntu
File: Dockerfile.hotspot.releases.full
Tags: 13.0.2_8-jdk-hotspot-windowsservercore-1809, 13-jdk-hotspot-windowsservercore-1809, 13-hotspot-windowsservercore-1809
-SharedTags: 13.0.2_8-jdk-hotspot-windowsservercore, 13-jdk-hotspot-windowsservercore, 13-hotspot-windowsservercore, hotspot-windowsservercore, 13.0.2_8-jdk-hotspot, 13-jdk-hotspot, 13-hotspot
+SharedTags: 13.0.2_8-jdk-hotspot-windowsservercore, 13-jdk-hotspot-windowsservercore, 13-hotspot-windowsservercore, 13.0.2_8-jdk-hotspot, 13-jdk-hotspot, 13-hotspot
Architectures: windows-amd64
-GitCommit: 3b28dd3fb7230f208ed49da507432a01741b1259
+GitCommit: 0ebf766de3c14fb7fb989bd93ede9f8b6db64933
Directory: 13/jdk/windows/windowsservercore-1809
File: Dockerfile.hotspot.releases.full
Constraints: windowsservercore-1809
Tags: 13.0.2_8-jdk-hotspot-windowsservercore-ltsc2016, 13-jdk-hotspot-windowsservercore-ltsc2016, 13-hotspot-windowsservercore-ltsc2016
-SharedTags: 13.0.2_8-jdk-hotspot-windowsservercore, 13-jdk-hotspot-windowsservercore, 13-hotspot-windowsservercore, hotspot-windowsservercore, 13.0.2_8-jdk-hotspot, 13-jdk-hotspot, 13-hotspot
+SharedTags: 13.0.2_8-jdk-hotspot-windowsservercore, 13-jdk-hotspot-windowsservercore, 13-hotspot-windowsservercore, 13.0.2_8-jdk-hotspot, 13-jdk-hotspot, 13-hotspot
Architectures: windows-amd64
-GitCommit: 3b28dd3fb7230f208ed49da507432a01741b1259
+GitCommit: 0ebf766de3c14fb7fb989bd93ede9f8b6db64933
Directory: 13/jdk/windows/windowsservercore-ltsc2016
File: Dockerfile.hotspot.releases.full
Constraints: windowsservercore-ltsc2016
@@ -211,22 +211,22 @@ Constraints: windowsservercore-ltsc2016
Tags: 13.0.2_8-jdk-openj9-0.18.0-bionic, 13-jdk-openj9-bionic, 13-openj9-bionic
SharedTags: 13.0.2_8-jdk-openj9-0.18.0, 13-jdk-openj9, 13-openj9
Architectures: amd64, ppc64le, s390x
-GitCommit: 3b28dd3fb7230f208ed49da507432a01741b1259
+GitCommit: 0ebf766de3c14fb7fb989bd93ede9f8b6db64933
Directory: 13/jdk/ubuntu
File: Dockerfile.openj9.releases.full
Tags: 13.0.2_8-jdk-openj9-0.18.0-windowsservercore-1809, 13-jdk-openj9-windowsservercore-1809, 13-openj9-windowsservercore-1809
-SharedTags: 13.0.2_8-jdk-openj9-0.18.0-windowsservercore, 13-jdk-openj9-windowsservercore, 13-openj9-windowsservercore, openj9-windowsservercore, 13.0.2_8-jdk-openj9-0.18.0, 13-jdk-openj9, 13-openj9
+SharedTags: 13.0.2_8-jdk-openj9-0.18.0-windowsservercore, 13-jdk-openj9-windowsservercore, 13-openj9-windowsservercore, 13.0.2_8-jdk-openj9-0.18.0, 13-jdk-openj9, 13-openj9
Architectures: windows-amd64
-GitCommit: 3b28dd3fb7230f208ed49da507432a01741b1259
+GitCommit: 0ebf766de3c14fb7fb989bd93ede9f8b6db64933
Directory: 13/jdk/windows/windowsservercore-1809
File: Dockerfile.openj9.releases.full
Constraints: windowsservercore-1809
Tags: 13.0.2_8-jdk-openj9-0.18.0-windowsservercore-ltsc2016, 13-jdk-openj9-windowsservercore-ltsc2016, 13-openj9-windowsservercore-ltsc2016
-SharedTags: 13.0.2_8-jdk-openj9-0.18.0-windowsservercore, 13-jdk-openj9-windowsservercore, 13-openj9-windowsservercore, openj9-windowsservercore, 13.0.2_8-jdk-openj9-0.18.0, 13-jdk-openj9, 13-openj9
+SharedTags: 13.0.2_8-jdk-openj9-0.18.0-windowsservercore, 13-jdk-openj9-windowsservercore, 13-openj9-windowsservercore, 13.0.2_8-jdk-openj9-0.18.0, 13-jdk-openj9, 13-openj9
Architectures: windows-amd64
-GitCommit: 3b28dd3fb7230f208ed49da507432a01741b1259
+GitCommit: 0ebf766de3c14fb7fb989bd93ede9f8b6db64933
Directory: 13/jdk/windows/windowsservercore-ltsc2016
File: Dockerfile.openj9.releases.full
Constraints: windowsservercore-ltsc2016
@@ -234,14 +234,14 @@ Constraints: windowsservercore-ltsc2016
Tags: 13.0.2_8-jre-hotspot-bionic, 13-jre-hotspot-bionic
SharedTags: 13.0.2_8-jre-hotspot, 13-jre-hotspot
Architectures: amd64, arm64v8, ppc64le, s390x
-GitCommit: 3b28dd3fb7230f208ed49da507432a01741b1259
+GitCommit: 0ebf766de3c14fb7fb989bd93ede9f8b6db64933
Directory: 13/jre/ubuntu
File: Dockerfile.hotspot.releases.full
Tags: 13.0.2_8-jre-hotspot-windowsservercore-1809, 13-jre-hotspot-windowsservercore-1809
SharedTags: 13.0.2_8-jre-hotspot-windowsservercore, 13-jre-hotspot-windowsservercore, 13.0.2_8-jre-hotspot, 13-jre-hotspot
Architectures: windows-amd64
-GitCommit: 3b28dd3fb7230f208ed49da507432a01741b1259
+GitCommit: 0ebf766de3c14fb7fb989bd93ede9f8b6db64933
Directory: 13/jre/windows/windowsservercore-1809
File: Dockerfile.hotspot.releases.full
Constraints: windowsservercore-1809
@@ -249,7 +249,7 @@ Constraints: windowsservercore-1809
Tags: 13.0.2_8-jre-hotspot-windowsservercore-ltsc2016, 13-jre-hotspot-windowsservercore-ltsc2016
SharedTags: 13.0.2_8-jre-hotspot-windowsservercore, 13-jre-hotspot-windowsservercore, 13.0.2_8-jre-hotspot, 13-jre-hotspot
Architectures: windows-amd64
-GitCommit: 3b28dd3fb7230f208ed49da507432a01741b1259
+GitCommit: 0ebf766de3c14fb7fb989bd93ede9f8b6db64933
Directory: 13/jre/windows/windowsservercore-ltsc2016
File: Dockerfile.hotspot.releases.full
Constraints: windowsservercore-ltsc2016
@@ -257,14 +257,14 @@ Constraints: windowsservercore-ltsc2016
Tags: 13.0.2_8-jre-openj9-0.18.0-bionic, 13-jre-openj9-bionic
SharedTags: 13.0.2_8-jre-openj9-0.18.0, 13-jre-openj9
Architectures: amd64, ppc64le, s390x
-GitCommit: 3b28dd3fb7230f208ed49da507432a01741b1259
+GitCommit: 0ebf766de3c14fb7fb989bd93ede9f8b6db64933
Directory: 13/jre/ubuntu
File: Dockerfile.openj9.releases.full
Tags: 13.0.2_8-jre-openj9-0.18.0-windowsservercore-1809, 13-jre-openj9-windowsservercore-1809
SharedTags: 13.0.2_8-jre-openj9-0.18.0-windowsservercore, 13-jre-openj9-windowsservercore, 13.0.2_8-jre-openj9-0.18.0, 13-jre-openj9
Architectures: windows-amd64
-GitCommit: 3b28dd3fb7230f208ed49da507432a01741b1259
+GitCommit: 0ebf766de3c14fb7fb989bd93ede9f8b6db64933
Directory: 13/jre/windows/windowsservercore-1809
File: Dockerfile.openj9.releases.full
Constraints: windowsservercore-1809
@@ -272,99 +272,191 @@ Constraints: windowsservercore-1809
Tags: 13.0.2_8-jre-openj9-0.18.0-windowsservercore-ltsc2016, 13-jre-openj9-windowsservercore-ltsc2016
SharedTags: 13.0.2_8-jre-openj9-0.18.0-windowsservercore, 13-jre-openj9-windowsservercore, 13.0.2_8-jre-openj9-0.18.0, 13-jre-openj9
Architectures: windows-amd64
-GitCommit: 3b28dd3fb7230f208ed49da507432a01741b1259
+GitCommit: 0ebf766de3c14fb7fb989bd93ede9f8b6db64933
Directory: 13/jre/windows/windowsservercore-ltsc2016
File: Dockerfile.openj9.releases.full
Constraints: windowsservercore-ltsc2016
-Tags: 14.0.2_8-jdk-hotspot-bionic, 14-jdk-hotspot-bionic, 14-hotspot-bionic, hotspot-bionic
-SharedTags: 14.0.2_8-jdk-hotspot, 14-jdk-hotspot, 14-hotspot, hotspot, latest
+Tags: 14.0.2_12-jdk-hotspot-bionic, 14-jdk-hotspot-bionic, 14-hotspot-bionic
+SharedTags: 14.0.2_12-jdk-hotspot, 14-jdk-hotspot, 14-hotspot
Architectures: amd64, arm32v7, arm64v8, ppc64le, s390x
-GitCommit: 2ad867c3b57069823d3958515a55d227d3153da2
+GitCommit: 0ebf766de3c14fb7fb989bd93ede9f8b6db64933
Directory: 14/jdk/ubuntu
File: Dockerfile.hotspot.releases.full
-Tags: 14.0.2_8-jdk-hotspot-windowsservercore-1809, 14-jdk-hotspot-windowsservercore-1809, 14-hotspot-windowsservercore-1809, hotspot-windowsservercore-1809
-SharedTags: 14.0.2_8-jdk-hotspot-windowsservercore, 14-jdk-hotspot-windowsservercore, 14-hotspot-windowsservercore, hotspot-windowsservercore, 14.0.2_8-jdk-hotspot, 14-jdk-hotspot, 14-hotspot, hotspot, latest
+Tags: 14.0.2_12-jdk-hotspot-windowsservercore-1809, 14-jdk-hotspot-windowsservercore-1809, 14-hotspot-windowsservercore-1809
+SharedTags: 14.0.2_12-jdk-hotspot-windowsservercore, 14-jdk-hotspot-windowsservercore, 14-hotspot-windowsservercore, 14.0.2_12-jdk-hotspot, 14-jdk-hotspot, 14-hotspot
Architectures: windows-amd64
-GitCommit: 2ad867c3b57069823d3958515a55d227d3153da2
+GitCommit: 0ebf766de3c14fb7fb989bd93ede9f8b6db64933
Directory: 14/jdk/windows/windowsservercore-1809
File: Dockerfile.hotspot.releases.full
Constraints: windowsservercore-1809
-Tags: 14.0.2_8-jdk-hotspot-windowsservercore-ltsc2016, 14-jdk-hotspot-windowsservercore-ltsc2016, 14-hotspot-windowsservercore-ltsc2016, hotspot-windowsservercore-ltsc2016
-SharedTags: 14.0.2_8-jdk-hotspot-windowsservercore, 14-jdk-hotspot-windowsservercore, 14-hotspot-windowsservercore, hotspot-windowsservercore, 14.0.2_8-jdk-hotspot, 14-jdk-hotspot, 14-hotspot, hotspot, latest
+Tags: 14.0.2_12-jdk-hotspot-windowsservercore-ltsc2016, 14-jdk-hotspot-windowsservercore-ltsc2016, 14-hotspot-windowsservercore-ltsc2016
+SharedTags: 14.0.2_12-jdk-hotspot-windowsservercore, 14-jdk-hotspot-windowsservercore, 14-hotspot-windowsservercore, 14.0.2_12-jdk-hotspot, 14-jdk-hotspot, 14-hotspot
Architectures: windows-amd64
-GitCommit: 2ad867c3b57069823d3958515a55d227d3153da2
+GitCommit: 0ebf766de3c14fb7fb989bd93ede9f8b6db64933
Directory: 14/jdk/windows/windowsservercore-ltsc2016
File: Dockerfile.hotspot.releases.full
Constraints: windowsservercore-ltsc2016
-Tags: 14.0.2_8-jdk-openj9-0.21.0-bionic, 14-jdk-openj9-bionic, 14-openj9-bionic, openj9-bionic
-SharedTags: 14.0.2_8-jdk-openj9-0.21.0, 14-jdk-openj9, 14-openj9, openj9
+Tags: 14.0.2_12-jdk-openj9-0.21.0-bionic, 14-jdk-openj9-bionic, 14-openj9-bionic
+SharedTags: 14.0.2_12-jdk-openj9-0.21.0, 14-jdk-openj9, 14-openj9
Architectures: amd64, ppc64le, s390x
-GitCommit: 2ad867c3b57069823d3958515a55d227d3153da2
+GitCommit: 0ebf766de3c14fb7fb989bd93ede9f8b6db64933
Directory: 14/jdk/ubuntu
File: Dockerfile.openj9.releases.full
-Tags: 14.0.2_8-jdk-openj9-0.21.0-windowsservercore-1809, 14-jdk-openj9-windowsservercore-1809, 14-openj9-windowsservercore-1809, openj9-windowsservercore-1809
-SharedTags: 14.0.2_8-jdk-openj9-0.21.0-windowsservercore, 14-jdk-openj9-windowsservercore, 14-openj9-windowsservercore, openj9-windowsservercore, 14.0.2_8-jdk-openj9-0.21.0, 14-jdk-openj9, 14-openj9, openj9
+Tags: 14.0.2_12-jdk-openj9-0.21.0-windowsservercore-1809, 14-jdk-openj9-windowsservercore-1809, 14-openj9-windowsservercore-1809
+SharedTags: 14.0.2_12-jdk-openj9-0.21.0-windowsservercore, 14-jdk-openj9-windowsservercore, 14-openj9-windowsservercore, 14.0.2_12-jdk-openj9-0.21.0, 14-jdk-openj9, 14-openj9
Architectures: windows-amd64
-GitCommit: 2ad867c3b57069823d3958515a55d227d3153da2
+GitCommit: 0ebf766de3c14fb7fb989bd93ede9f8b6db64933
Directory: 14/jdk/windows/windowsservercore-1809
File: Dockerfile.openj9.releases.full
Constraints: windowsservercore-1809
-Tags: 14.0.2_8-jdk-openj9-0.21.0-windowsservercore-ltsc2016, 14-jdk-openj9-windowsservercore-ltsc2016, 14-openj9-windowsservercore-ltsc2016, openj9-windowsservercore-ltsc2016
-SharedTags: 14.0.2_8-jdk-openj9-0.21.0-windowsservercore, 14-jdk-openj9-windowsservercore, 14-openj9-windowsservercore, openj9-windowsservercore, 14.0.2_8-jdk-openj9-0.21.0, 14-jdk-openj9, 14-openj9, openj9
+Tags: 14.0.2_12-jdk-openj9-0.21.0-windowsservercore-ltsc2016, 14-jdk-openj9-windowsservercore-ltsc2016, 14-openj9-windowsservercore-ltsc2016
+SharedTags: 14.0.2_12-jdk-openj9-0.21.0-windowsservercore, 14-jdk-openj9-windowsservercore, 14-openj9-windowsservercore, 14.0.2_12-jdk-openj9-0.21.0, 14-jdk-openj9, 14-openj9
Architectures: windows-amd64
-GitCommit: 2ad867c3b57069823d3958515a55d227d3153da2
+GitCommit: 0ebf766de3c14fb7fb989bd93ede9f8b6db64933
Directory: 14/jdk/windows/windowsservercore-ltsc2016
File: Dockerfile.openj9.releases.full
Constraints: windowsservercore-ltsc2016
-Tags: 14.0.2_8-jre-hotspot-bionic, 14-jre-hotspot-bionic
-SharedTags: 14.0.2_8-jre-hotspot, 14-jre-hotspot
+Tags: 14.0.2_12-jre-hotspot-bionic, 14-jre-hotspot-bionic
+SharedTags: 14.0.2_12-jre-hotspot, 14-jre-hotspot
Architectures: amd64, arm32v7, arm64v8, ppc64le, s390x
-GitCommit: 2ad867c3b57069823d3958515a55d227d3153da2
+GitCommit: 0ebf766de3c14fb7fb989bd93ede9f8b6db64933
Directory: 14/jre/ubuntu
File: Dockerfile.hotspot.releases.full
-Tags: 14.0.2_8-jre-hotspot-windowsservercore-1809, 14-jre-hotspot-windowsservercore-1809
-SharedTags: 14.0.2_8-jre-hotspot-windowsservercore, 14-jre-hotspot-windowsservercore, 14.0.2_8-jre-hotspot, 14-jre-hotspot
+Tags: 14.0.2_12-jre-hotspot-windowsservercore-1809, 14-jre-hotspot-windowsservercore-1809
+SharedTags: 14.0.2_12-jre-hotspot-windowsservercore, 14-jre-hotspot-windowsservercore, 14.0.2_12-jre-hotspot, 14-jre-hotspot
Architectures: windows-amd64
-GitCommit: 2ad867c3b57069823d3958515a55d227d3153da2
+GitCommit: 0ebf766de3c14fb7fb989bd93ede9f8b6db64933
Directory: 14/jre/windows/windowsservercore-1809
File: Dockerfile.hotspot.releases.full
Constraints: windowsservercore-1809
-Tags: 14.0.2_8-jre-hotspot-windowsservercore-ltsc2016, 14-jre-hotspot-windowsservercore-ltsc2016
-SharedTags: 14.0.2_8-jre-hotspot-windowsservercore, 14-jre-hotspot-windowsservercore, 14.0.2_8-jre-hotspot, 14-jre-hotspot
+Tags: 14.0.2_12-jre-hotspot-windowsservercore-ltsc2016, 14-jre-hotspot-windowsservercore-ltsc2016
+SharedTags: 14.0.2_12-jre-hotspot-windowsservercore, 14-jre-hotspot-windowsservercore, 14.0.2_12-jre-hotspot, 14-jre-hotspot
Architectures: windows-amd64
-GitCommit: 2ad867c3b57069823d3958515a55d227d3153da2
+GitCommit: 0ebf766de3c14fb7fb989bd93ede9f8b6db64933
Directory: 14/jre/windows/windowsservercore-ltsc2016
File: Dockerfile.hotspot.releases.full
Constraints: windowsservercore-ltsc2016
-Tags: 14.0.2_8-jre-openj9-0.21.0-bionic, 14-jre-openj9-bionic
-SharedTags: 14.0.2_8-jre-openj9-0.21.0, 14-jre-openj9
+Tags: 14.0.2_12-jre-openj9-0.21.0-bionic, 14-jre-openj9-bionic
+SharedTags: 14.0.2_12-jre-openj9-0.21.0, 14-jre-openj9
Architectures: amd64, ppc64le, s390x
-GitCommit: 2ad867c3b57069823d3958515a55d227d3153da2
+GitCommit: 0ebf766de3c14fb7fb989bd93ede9f8b6db64933
Directory: 14/jre/ubuntu
File: Dockerfile.openj9.releases.full
-Tags: 14.0.2_8-jre-openj9-0.21.0-windowsservercore-1809, 14-jre-openj9-windowsservercore-1809
-SharedTags: 14.0.2_8-jre-openj9-0.21.0-windowsservercore, 14-jre-openj9-windowsservercore, 14.0.2_8-jre-openj9-0.21.0, 14-jre-openj9
+Tags: 14.0.2_12-jre-openj9-0.21.0-windowsservercore-1809, 14-jre-openj9-windowsservercore-1809
+SharedTags: 14.0.2_12-jre-openj9-0.21.0-windowsservercore, 14-jre-openj9-windowsservercore, 14.0.2_12-jre-openj9-0.21.0, 14-jre-openj9
Architectures: windows-amd64
-GitCommit: 2ad867c3b57069823d3958515a55d227d3153da2
+GitCommit: 0ebf766de3c14fb7fb989bd93ede9f8b6db64933
Directory: 14/jre/windows/windowsservercore-1809
File: Dockerfile.openj9.releases.full
Constraints: windowsservercore-1809
-Tags: 14.0.2_8-jre-openj9-0.21.0-windowsservercore-ltsc2016, 14-jre-openj9-windowsservercore-ltsc2016
-SharedTags: 14.0.2_8-jre-openj9-0.21.0-windowsservercore, 14-jre-openj9-windowsservercore, 14.0.2_8-jre-openj9-0.21.0, 14-jre-openj9
+Tags: 14.0.2_12-jre-openj9-0.21.0-windowsservercore-ltsc2016, 14-jre-openj9-windowsservercore-ltsc2016
+SharedTags: 14.0.2_12-jre-openj9-0.21.0-windowsservercore, 14-jre-openj9-windowsservercore, 14.0.2_12-jre-openj9-0.21.0, 14-jre-openj9
Architectures: windows-amd64
-GitCommit: 2ad867c3b57069823d3958515a55d227d3153da2
+GitCommit: 0ebf766de3c14fb7fb989bd93ede9f8b6db64933
Directory: 14/jre/windows/windowsservercore-ltsc2016
File: Dockerfile.openj9.releases.full
Constraints: windowsservercore-ltsc2016
+
+Tags: 15_36-jdk-hotspot-bionic, 15-jdk-hotspot-bionic, 15-hotspot-bionic, hotspot-bionic
+SharedTags: 15_36-jdk-hotspot, 15-jdk-hotspot, 15-hotspot, hotspot, latest
+Architectures: amd64, arm32v7, arm64v8, ppc64le, s390x
+GitCommit: 0ebf766de3c14fb7fb989bd93ede9f8b6db64933
+Directory: 15/jdk/ubuntu
+File: Dockerfile.hotspot.releases.full
+
+Tags: 15_36-jdk-hotspot-windowsservercore-1809, 15-jdk-hotspot-windowsservercore-1809, 15-hotspot-windowsservercore-1809, hotspot-windowsservercore-1809
+SharedTags: 15_36-jdk-hotspot-windowsservercore, 15-jdk-hotspot-windowsservercore, 15-hotspot-windowsservercore, hotspot-windowsservercore, 15_36-jdk-hotspot, 15-jdk-hotspot, 15-hotspot, hotspot, latest
+Architectures: windows-amd64
+GitCommit: 0ebf766de3c14fb7fb989bd93ede9f8b6db64933
+Directory: 15/jdk/windows/windowsservercore-1809
+File: Dockerfile.hotspot.releases.full
+Constraints: windowsservercore-1809
+
+Tags: 15_36-jdk-hotspot-windowsservercore-ltsc2016, 15-jdk-hotspot-windowsservercore-ltsc2016, 15-hotspot-windowsservercore-ltsc2016, hotspot-windowsservercore-ltsc2016
+SharedTags: 15_36-jdk-hotspot-windowsservercore, 15-jdk-hotspot-windowsservercore, 15-hotspot-windowsservercore, hotspot-windowsservercore, 15_36-jdk-hotspot, 15-jdk-hotspot, 15-hotspot, hotspot, latest
+Architectures: windows-amd64
+GitCommit: 0ebf766de3c14fb7fb989bd93ede9f8b6db64933
+Directory: 15/jdk/windows/windowsservercore-ltsc2016
+File: Dockerfile.hotspot.releases.full
+Constraints: windowsservercore-ltsc2016
+
+Tags: 15_36-jdk-openj9-0.22.0-bionic, 15-jdk-openj9-bionic, 15-openj9-bionic, openj9-bionic
+SharedTags: 15_36-jdk-openj9-0.22.0, 15-jdk-openj9, 15-openj9, openj9
+Architectures: amd64, ppc64le, s390x
+GitCommit: 0ebf766de3c14fb7fb989bd93ede9f8b6db64933
+Directory: 15/jdk/ubuntu
+File: Dockerfile.openj9.releases.full
+
+Tags: 15_36-jdk-openj9-0.22.0-windowsservercore-1809, 15-jdk-openj9-windowsservercore-1809, 15-openj9-windowsservercore-1809, openj9-windowsservercore-1809
+SharedTags: 15_36-jdk-openj9-0.22.0-windowsservercore, 15-jdk-openj9-windowsservercore, 15-openj9-windowsservercore, openj9-windowsservercore, 15_36-jdk-openj9-0.22.0, 15-jdk-openj9, 15-openj9, openj9
+Architectures: windows-amd64
+GitCommit: 0ebf766de3c14fb7fb989bd93ede9f8b6db64933
+Directory: 15/jdk/windows/windowsservercore-1809
+File: Dockerfile.openj9.releases.full
+Constraints: windowsservercore-1809
+
+Tags: 15_36-jdk-openj9-0.22.0-windowsservercore-ltsc2016, 15-jdk-openj9-windowsservercore-ltsc2016, 15-openj9-windowsservercore-ltsc2016, openj9-windowsservercore-ltsc2016
+SharedTags: 15_36-jdk-openj9-0.22.0-windowsservercore, 15-jdk-openj9-windowsservercore, 15-openj9-windowsservercore, openj9-windowsservercore, 15_36-jdk-openj9-0.22.0, 15-jdk-openj9, 15-openj9, openj9
+Architectures: windows-amd64
+GitCommit: 0ebf766de3c14fb7fb989bd93ede9f8b6db64933
+Directory: 15/jdk/windows/windowsservercore-ltsc2016
+File: Dockerfile.openj9.releases.full
+Constraints: windowsservercore-ltsc2016
+
+Tags: 15_36-jre-hotspot-bionic, 15-jre-hotspot-bionic
+SharedTags: 15_36-jre-hotspot, 15-jre-hotspot, latest
+Architectures: amd64, arm32v7, arm64v8, ppc64le, s390x
+GitCommit: 0ebf766de3c14fb7fb989bd93ede9f8b6db64933
+Directory: 15/jre/ubuntu
+File: Dockerfile.hotspot.releases.full
+
+Tags: 15_36-jre-hotspot-windowsservercore-1809, 15-jre-hotspot-windowsservercore-1809
+SharedTags: 15_36-jre-hotspot-windowsservercore, 15-jre-hotspot-windowsservercore, 15_36-jre-hotspot, 15-jre-hotspot, latest
+Architectures: windows-amd64
+GitCommit: 0ebf766de3c14fb7fb989bd93ede9f8b6db64933
+Directory: 15/jre/windows/windowsservercore-1809
+File: Dockerfile.hotspot.releases.full
+Constraints: windowsservercore-1809
+
+Tags: 15_36-jre-hotspot-windowsservercore-ltsc2016, 15-jre-hotspot-windowsservercore-ltsc2016
+SharedTags: 15_36-jre-hotspot-windowsservercore, 15-jre-hotspot-windowsservercore, 15_36-jre-hotspot, 15-jre-hotspot, latest
+Architectures: windows-amd64
+GitCommit: 0ebf766de3c14fb7fb989bd93ede9f8b6db64933
+Directory: 15/jre/windows/windowsservercore-ltsc2016
+File: Dockerfile.hotspot.releases.full
+Constraints: windowsservercore-ltsc2016
+
+Tags: 15_36-jre-openj9-0.22.0-bionic, 15-jre-openj9-bionic
+SharedTags: 15_36-jre-openj9-0.22.0, 15-jre-openj9
+Architectures: amd64, ppc64le, s390x
+GitCommit: 0ebf766de3c14fb7fb989bd93ede9f8b6db64933
+Directory: 15/jre/ubuntu
+File: Dockerfile.openj9.releases.full
+
+Tags: 15_36-jre-openj9-0.22.0-windowsservercore-1809, 15-jre-openj9-windowsservercore-1809
+SharedTags: 15_36-jre-openj9-0.22.0-windowsservercore, 15-jre-openj9-windowsservercore, 15_36-jre-openj9-0.22.0, 15-jre-openj9
+Architectures: windows-amd64
+GitCommit: 0ebf766de3c14fb7fb989bd93ede9f8b6db64933
+Directory: 15/jre/windows/windowsservercore-1809
+File: Dockerfile.openj9.releases.full
+Constraints: windowsservercore-1809
+
+Tags: 15_36-jre-openj9-0.22.0-windowsservercore-ltsc2016, 15-jre-openj9-windowsservercore-ltsc2016
+SharedTags: 15_36-jre-openj9-0.22.0-windowsservercore, 15-jre-openj9-windowsservercore, 15_36-jre-openj9-0.22.0, 15-jre-openj9
+Architectures: windows-amd64
+GitCommit: 0ebf766de3c14fb7fb989bd93ede9f8b6db64933
+Directory: 15/jre/windows/windowsservercore-ltsc2016
+File: Dockerfile.openj9.releases.full
+Constraints: windowsservercore-ltsc2016
diff --git a/_bashbrew-list b/_bashbrew-list
index e623e63..20af45a 100644
--- a/_bashbrew-list
+++ b/_bashbrew-list
@@ -1,23 +1,23 @@
-adoptopenjdk:8u262-b10-jdk-hotspot
-adoptopenjdk:8u262-b10-jdk-hotspot-bionic
-adoptopenjdk:8u262-b10-jdk-hotspot-windowsservercore
-adoptopenjdk:8u262-b10-jdk-hotspot-windowsservercore-1809
-adoptopenjdk:8u262-b10-jdk-hotspot-windowsservercore-ltsc2016
-adoptopenjdk:8u262-b10-jdk-openj9-0.21.0
-adoptopenjdk:8u262-b10-jdk-openj9-0.21.0-bionic
-adoptopenjdk:8u262-b10-jdk-openj9-0.21.0-windowsservercore
-adoptopenjdk:8u262-b10-jdk-openj9-0.21.0-windowsservercore-1809
-adoptopenjdk:8u262-b10-jdk-openj9-0.21.0-windowsservercore-ltsc2016
-adoptopenjdk:8u262-b10-jre-hotspot
-adoptopenjdk:8u262-b10-jre-hotspot-bionic
-adoptopenjdk:8u262-b10-jre-hotspot-windowsservercore
-adoptopenjdk:8u262-b10-jre-hotspot-windowsservercore-1809
-adoptopenjdk:8u262-b10-jre-hotspot-windowsservercore-ltsc2016
-adoptopenjdk:8u262-b10-jre-openj9-0.21.0
-adoptopenjdk:8u262-b10-jre-openj9-0.21.0-bionic
-adoptopenjdk:8u262-b10-jre-openj9-0.21.0-windowsservercore
-adoptopenjdk:8u262-b10-jre-openj9-0.21.0-windowsservercore-1809
-adoptopenjdk:8u262-b10-jre-openj9-0.21.0-windowsservercore-ltsc2016
+adoptopenjdk:8u265-b01-jdk-hotspot
+adoptopenjdk:8u265-b01-jdk-hotspot-bionic
+adoptopenjdk:8u265-b01-jdk-hotspot-windowsservercore
+adoptopenjdk:8u265-b01-jdk-hotspot-windowsservercore-1809
+adoptopenjdk:8u265-b01-jdk-hotspot-windowsservercore-ltsc2016
+adoptopenjdk:8u265-b01-jdk-openj9-0.21.0
+adoptopenjdk:8u265-b01-jdk-openj9-0.21.0-bionic
+adoptopenjdk:8u265-b01-jdk-openj9-0.21.0-windowsservercore
+adoptopenjdk:8u265-b01-jdk-openj9-0.21.0-windowsservercore-1809
+adoptopenjdk:8u265-b01-jdk-openj9-0.21.0-windowsservercore-ltsc2016
+adoptopenjdk:8u265-b01-jre-hotspot
+adoptopenjdk:8u265-b01-jre-hotspot-bionic
+adoptopenjdk:8u265-b01-jre-hotspot-windowsservercore
+adoptopenjdk:8u265-b01-jre-hotspot-windowsservercore-1809
+adoptopenjdk:8u265-b01-jre-hotspot-windowsservercore-ltsc2016
+adoptopenjdk:8u265-b01-jre-openj9-0.21.0
+adoptopenjdk:8u265-b01-jre-openj9-0.21.0-bionic
+adoptopenjdk:8u265-b01-jre-openj9-0.21.0-windowsservercore
+adoptopenjdk:8u265-b01-jre-openj9-0.21.0-windowsservercore-1809
+adoptopenjdk:8u265-b01-jre-openj9-0.21.0-windowsservercore-ltsc2016
adoptopenjdk:8-hotspot
adoptopenjdk:8-hotspot-bionic
adoptopenjdk:8-hotspot-windowsservercore
@@ -178,26 +178,76 @@ adoptopenjdk:14-openj9-bionic
adoptopenjdk:14-openj9-windowsservercore
adoptopenjdk:14-openj9-windowsservercore-1809
adoptopenjdk:14-openj9-windowsservercore-ltsc2016
-adoptopenjdk:14.0.2_8-jdk-hotspot
-adoptopenjdk:14.0.2_8-jdk-hotspot-bionic
-adoptopenjdk:14.0.2_8-jdk-hotspot-windowsservercore
-adoptopenjdk:14.0.2_8-jdk-hotspot-windowsservercore-1809
-adoptopenjdk:14.0.2_8-jdk-hotspot-windowsservercore-ltsc2016
-adoptopenjdk:14.0.2_8-jdk-openj9-0.21.0
-adoptopenjdk:14.0.2_8-jdk-openj9-0.21.0-bionic
-adoptopenjdk:14.0.2_8-jdk-openj9-0.21.0-windowsservercore
-adoptopenjdk:14.0.2_8-jdk-openj9-0.21.0-windowsservercore-1809
-adoptopenjdk:14.0.2_8-jdk-openj9-0.21.0-windowsservercore-ltsc2016
-adoptopenjdk:14.0.2_8-jre-hotspot
-adoptopenjdk:14.0.2_8-jre-hotspot-bionic
-adoptopenjdk:14.0.2_8-jre-hotspot-windowsservercore
-adoptopenjdk:14.0.2_8-jre-hotspot-windowsservercore-1809
-adoptopenjdk:14.0.2_8-jre-hotspot-windowsservercore-ltsc2016
-adoptopenjdk:14.0.2_8-jre-openj9-0.21.0
-adoptopenjdk:14.0.2_8-jre-openj9-0.21.0-bionic
-adoptopenjdk:14.0.2_8-jre-openj9-0.21.0-windowsservercore
-adoptopenjdk:14.0.2_8-jre-openj9-0.21.0-windowsservercore-1809
-adoptopenjdk:14.0.2_8-jre-openj9-0.21.0-windowsservercore-ltsc2016
+adoptopenjdk:14.0.2_12-jdk-hotspot
+adoptopenjdk:14.0.2_12-jdk-hotspot-bionic
+adoptopenjdk:14.0.2_12-jdk-hotspot-windowsservercore
+adoptopenjdk:14.0.2_12-jdk-hotspot-windowsservercore-1809
+adoptopenjdk:14.0.2_12-jdk-hotspot-windowsservercore-ltsc2016
+adoptopenjdk:14.0.2_12-jdk-openj9-0.21.0
+adoptopenjdk:14.0.2_12-jdk-openj9-0.21.0-bionic
+adoptopenjdk:14.0.2_12-jdk-openj9-0.21.0-windowsservercore
+adoptopenjdk:14.0.2_12-jdk-openj9-0.21.0-windowsservercore-1809
+adoptopenjdk:14.0.2_12-jdk-openj9-0.21.0-windowsservercore-ltsc2016
+adoptopenjdk:14.0.2_12-jre-hotspot
+adoptopenjdk:14.0.2_12-jre-hotspot-bionic
+adoptopenjdk:14.0.2_12-jre-hotspot-windowsservercore
+adoptopenjdk:14.0.2_12-jre-hotspot-windowsservercore-1809
+adoptopenjdk:14.0.2_12-jre-hotspot-windowsservercore-ltsc2016
+adoptopenjdk:14.0.2_12-jre-openj9-0.21.0
+adoptopenjdk:14.0.2_12-jre-openj9-0.21.0-bionic
+adoptopenjdk:14.0.2_12-jre-openj9-0.21.0-windowsservercore
+adoptopenjdk:14.0.2_12-jre-openj9-0.21.0-windowsservercore-1809
+adoptopenjdk:14.0.2_12-jre-openj9-0.21.0-windowsservercore-ltsc2016
+adoptopenjdk:15-hotspot
+adoptopenjdk:15-hotspot-bionic
+adoptopenjdk:15-hotspot-windowsservercore
+adoptopenjdk:15-hotspot-windowsservercore-1809
+adoptopenjdk:15-hotspot-windowsservercore-ltsc2016
+adoptopenjdk:15-jdk-hotspot
+adoptopenjdk:15-jdk-hotspot-bionic
+adoptopenjdk:15-jdk-hotspot-windowsservercore
+adoptopenjdk:15-jdk-hotspot-windowsservercore-1809
+adoptopenjdk:15-jdk-hotspot-windowsservercore-ltsc2016
+adoptopenjdk:15-jdk-openj9
+adoptopenjdk:15-jdk-openj9-bionic
+adoptopenjdk:15-jdk-openj9-windowsservercore
+adoptopenjdk:15-jdk-openj9-windowsservercore-1809
+adoptopenjdk:15-jdk-openj9-windowsservercore-ltsc2016
+adoptopenjdk:15-jre-hotspot
+adoptopenjdk:15-jre-hotspot-bionic
+adoptopenjdk:15-jre-hotspot-windowsservercore
+adoptopenjdk:15-jre-hotspot-windowsservercore-1809
+adoptopenjdk:15-jre-hotspot-windowsservercore-ltsc2016
+adoptopenjdk:15-jre-openj9
+adoptopenjdk:15-jre-openj9-bionic
+adoptopenjdk:15-jre-openj9-windowsservercore
+adoptopenjdk:15-jre-openj9-windowsservercore-1809
+adoptopenjdk:15-jre-openj9-windowsservercore-ltsc2016
+adoptopenjdk:15-openj9
+adoptopenjdk:15-openj9-bionic
+adoptopenjdk:15-openj9-windowsservercore
+adoptopenjdk:15-openj9-windowsservercore-1809
+adoptopenjdk:15-openj9-windowsservercore-ltsc2016
+adoptopenjdk:15_36-jdk-hotspot
+adoptopenjdk:15_36-jdk-hotspot-bionic
+adoptopenjdk:15_36-jdk-hotspot-windowsservercore
+adoptopenjdk:15_36-jdk-hotspot-windowsservercore-1809
+adoptopenjdk:15_36-jdk-hotspot-windowsservercore-ltsc2016
+adoptopenjdk:15_36-jdk-openj9-0.22.0
+adoptopenjdk:15_36-jdk-openj9-0.22.0-bionic
+adoptopenjdk:15_36-jdk-openj9-0.22.0-windowsservercore
+adoptopenjdk:15_36-jdk-openj9-0.22.0-windowsservercore-1809
+adoptopenjdk:15_36-jdk-openj9-0.22.0-windowsservercore-ltsc2016
+adoptopenjdk:15_36-jre-hotspot
+adoptopenjdk:15_36-jre-hotspot-bionic
+adoptopenjdk:15_36-jre-hotspot-windowsservercore
+adoptopenjdk:15_36-jre-hotspot-windowsservercore-1809
+adoptopenjdk:15_36-jre-hotspot-windowsservercore-ltsc2016
+adoptopenjdk:15_36-jre-openj9-0.22.0
+adoptopenjdk:15_36-jre-openj9-0.22.0-bionic
+adoptopenjdk:15_36-jre-openj9-0.22.0-windowsservercore
+adoptopenjdk:15_36-jre-openj9-0.22.0-windowsservercore-1809
+adoptopenjdk:15_36-jre-openj9-0.22.0-windowsservercore-ltsc2016
adoptopenjdk:hotspot
adoptopenjdk:hotspot-bionic
adoptopenjdk:hotspot-windowsservercore
diff --git a/adoptopenjdk_11-jre-openj9-bionic/Dockerfile.openj9.releases.full b/adoptopenjdk_11-jre-openj9-bionic/Dockerfile.openj9.releases.full
index c5d00fb..15185ec 100644
--- a/adoptopenjdk_11-jre-openj9-bionic/Dockerfile.openj9.releases.full
+++ b/adoptopenjdk_11-jre-openj9-bionic/Dockerfile.openj9.releases.full
@@ -63,3 +63,6 @@ RUN set -eux; \
ENV JAVA_HOME=/opt/java/openjdk \
PATH="/opt/java/openjdk/bin:$PATH"
ENV JAVA_TOOL_OPTIONS="-XX:+IgnoreUnrecognizedVMOptions -XX:+UseContainerSupport -XX:+IdleTuningCompactOnIdle -XX:+IdleTuningGcOnIdle"
+COPY generate_openj9_scc.sh /scripts/
+ RUN /scripts/generate_openj9_scc.sh
+ ENV OPENJ9_JAVA_OPTIONS="-Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,readonly,nonFatal"
diff --git a/adoptopenjdk_11-jre-openj9-bionic/generate_openj9_scc.sh b/adoptopenjdk_11-jre-openj9-bionic/generate_openj9_scc.sh
new file mode 100755
index 0000000..a5113ba
--- /dev/null
+++ b/adoptopenjdk_11-jre-openj9-bionic/generate_openj9_scc.sh
@@ -0,0 +1,318 @@
+#!/bin/bash
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# https://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+unset OPENJ9_JAVA_OPTIONS
+
+# Default size for SCC
+SCC_SIZE="50m"
+
+# Runs for generating SCC
+SCC_GEN_RUNS_COUNT=3
+
+# is running on ubuntu or debian - package manager apt
+IS_APT_ENV=false
+# Intitialise default / allowed sample app status
+RUN_ECLIPSE=false
+RUN_TOMCAT=true
+
+# Intitialise default / required packages status
+INSTALL_GTK=false
+INSTALL_XVFB=false
+
+# App download locations
+DOWNLOAD_PATH_ECLIPSE=/tmp/eclipse
+DOWNLOAD_PATH_TOMCAT=/tmp/tomcat
+
+# App installation locations
+INSTALL_PATH_ECLIPSE="${HOME}"/eclipse-home
+INSTALL_PATH_TOMCAT="${HOME}"/tomcat-home
+
+# URL's for the artifacts
+ECLIPSE_DWNLD_URL="http://www.mirrorservice.org/sites/download.eclipse.org/eclipseMirror/technology/epp/downloads/release/2020-06/M3/eclipse-java-2020-06-M3-linux-gtk-x86_64.tar.gz"
+TOMCAT_DWNLD_URL="https://archive.apache.org/dist/tomcat/tomcat-9/v9.0.35/bin/apache-tomcat-9.0.35.tar.gz"
+
+# Check and downlaod eclipse
+function check_to_download_eclipse() {
+ if [ "${RUN_ECLIPSE}" == true ]; then
+ # Creating a temporary directory for eclipse download
+ mkdir -p "${DOWNLOAD_PATH_ECLIPSE}" "${INSTALL_PATH_ECLIPSE}"
+
+ # Downloading eclipse
+ if curl --fail -o "${DOWNLOAD_PATH_ECLIPSE}"/eclipse.tar.gz "${ECLIPSE_DWNLD_URL}"; then
+ # Extracting eclipse
+ tar -xvzf "${DOWNLOAD_PATH_ECLIPSE}"/eclipse.tar.gz -C "$INSTALL_PATH_ECLIPSE" --strip-components=1
+ else
+ RUN_ECLIPSE=false
+ fi
+
+ # Removing the tar file
+ rm -rf "${DOWNLOAD_PATH_ECLIPSE}"
+ fi
+}
+
+# Check and download tomcat
+function check_to_download_tomcat() {
+ if [ "${RUN_TOMCAT}" == true ]; then
+ # Creating a temporary directory for tomcat download
+ mkdir -p "${DOWNLOAD_PATH_TOMCAT}" "${INSTALL_PATH_TOMCAT}"
+
+ # Downloading tomcat
+ if curl --fail -o "${DOWNLOAD_PATH_TOMCAT}"/tomcat.tar.gz "${TOMCAT_DWNLD_URL}"; then
+ # Extracting tomcat
+ tar -xvzf "${DOWNLOAD_PATH_TOMCAT}"/tomcat.tar.gz -C "${INSTALL_PATH_TOMCAT}" --strip-components=1
+ else
+ RUN_TOMCAT=false
+ fi
+
+ # Removing the tar file
+ rm -rf "${DOWNLOAD_PATH_TOMCAT}"
+ fi
+}
+
+# ubuntu/debian install packages required for eclipse
+function apt_install_packages() {
+ # update the repositories
+ apt update
+
+ # Set non-interactive frontend (to avoid `tzdata` config options selection)
+ APT_INSTALL_CMD="DEBIAN_FRONTEND=noninteractive"
+ APT_INSTALL_CMD="${APT_INSTALL_CMD} apt install -y"
+
+ if [ "${INSTALL_GTK}" == true ]; then
+ # install gtk+3.0
+ APT_INSTALL_CMD="${APT_INSTALL_CMD} gtk+3.0"
+ fi
+
+ if [ "${INSTALL_XVFB}" == true ]; then
+ # install xvfb
+ APT_INSTALL_CMD="${APT_INSTALL_CMD} xvfb"
+ fi
+
+ eval "${APT_INSTALL_CMD}"
+}
+
+# Check if any application needs virtual screen and launch it
+function check_and_start_xvfb() {
+ # check if `xvfb` installed
+ if [ "${INSTALL_XVFB}" == true ]; then
+ # Spawning a virtual screen for GUI apps
+ Xvfb :1 -ac -screen 0 1024x768x8 &
+ # Saving the PID
+ XVFB_PID=$!
+ # Saving older display value
+ OLD_DISPLAY=$DISPLAY
+ # Setting DISPLAY to created screen
+ export DISPLAY=:1
+ fi
+}
+
+# Kill the created virtual screen
+function check_and_stop_xvfb() {
+ # check if `xvfb` installed
+ if [ "${INSTALL_XVFB}" == true ]; then
+ # Killing `xvfb` process to remove screen
+ kill -9 $XVFB_PID
+ # Setting back the DISPLAY to older value
+ export DISPLAY=$OLD_DISPLAY
+ fi
+}
+
+# Run the applications for specified iterations
+function run_apps() {
+ for ((i=0; i<SCC_GEN_RUNS_COUNT; i++))
+ do
+ if [ "${RUN_ECLIPSE}" == true ]; then
+ run_eclipse_and_stop
+ fi
+ if [ "${RUN_TOMCAT}" == true ]; then
+ run_tomcat_and_stop
+ fi
+ done
+}
+
+# function to install packages
+function install_packages() {
+ if [ "${IS_APT_ENV}" == true ]; then
+ apt_install_packages
+ fi
+}
+
+# function to download the applications
+function download_and_install_artifacts() {
+
+ # check for eclipse
+ check_to_download_eclipse
+
+ # check for tomcat
+ check_to_download_tomcat
+
+}
+
+# dry run to right size the cache
+function dry_run() {
+ # Creating base layer first instead of running sample programs to generate SCC directly
+ java -Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal,createLayer -Xscmx$SCC_SIZE -version
+
+ # Pointing cache for sample program runs
+ export OPENJ9_JAVA_OPTIONS="-Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal"
+
+ # check if we need xvfb for running application and start a virtual screen if required
+ check_and_start_xvfb
+
+ # Run the applications to generate SCC
+ run_apps
+
+ # check if started a virtual screen and kill the process
+ check_and_stop_xvfb
+
+ FULL=$( (java -Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,printallStats || true) 2>&1 | awk '/^Cache is [0-9.]*% .*full/ {print substr($3, 1, length($3)-1)}')
+
+ java -Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,destroy || true
+
+ SCC_SIZE="${SCC_SIZE:0:-1}"
+
+ SCC_SIZE=$(awk "BEGIN {print int($SCC_SIZE * $FULL / 100.0)}")
+
+ [ "${SCC_SIZE}" -eq 0 ] && SCC_SIZE=1
+
+ SCC_SIZE="${SCC_SIZE}m"
+
+ # Re-generating cache with new size
+ java -Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal,createLayer -Xscmx$SCC_SIZE -version
+
+ unset OPENJ9_JAVA_OPTIONS
+}
+
+# Generate SCC by running apps
+function generate_scc() {
+ # Pointing cache for sample app runs
+ export OPENJ9_JAVA_OPTIONS="-Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal"
+
+ # check if we need xvfb for running application and start a virtual screen if required
+ check_and_start_xvfb
+
+ # Run the applications to generate SCC
+ run_apps
+
+ # check if started a virtual screen and kill the process
+ check_and_stop_xvfb
+
+ # Checking the cache level
+ FULL=$( (java -Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,printallStats || true) 2>&1 | awk '/^Cache is [0-9.]*% .*full/ {print substr($3, 1, length($3)-1)}')
+
+ echo "SCC layer is $FULL% full."
+}
+
+# Remove the downloaded sample apps
+function remove_artifacts() {
+ # Command to remove apps
+ REMOVE_APPS="rm -rf"
+
+ # check for eclipse
+ if [ "${RUN_ECLIPSE}" == true ]; then
+ REMOVE_APPS="${REMOVE_APPS} ${INSTALL_PATH_ECLIPSE}"
+ fi
+
+ # check for tomcat
+ if [ "${RUN_TOMCAT}" == true ]; then
+ REMOVE_APPS="${REMOVE_APPS} ${INSTALL_PATH_TOMCAT}"
+ fi
+
+ eval "$REMOVE_APPS"
+}
+
+# Run eclipse and stop it after the startup
+function run_eclipse_and_stop() {
+ # Starting eclipse in background
+ "${INSTALL_PATH_ECLIPSE}"/eclipse/eclipse &
+ # Saving eclipse PID
+ ECLIPSE_PID=$!
+ # Waiting for eclipse to start - Sleeping for 1 minute
+ sleep 1m
+ # Killing eclipse process
+ kill -9 $ECLIPSE_PID
+ # Waiting for process to be killed - Sleeping for 10 seconds
+ sleep 10s
+}
+
+# Run tomcat and stop it after the startup
+function run_tomcat_and_stop() {
+ # Start tomcat wait till it comes up shut it down
+ "${INSTALL_PATH_TOMCAT}"/bin/startup.sh
+ # wait till tomcat starts - wait for 5 seconds
+ sleep 5
+ # Stop tomcat
+ "${INSTALL_PATH_TOMCAT}"/bin/shutdown.sh
+ # wait till tomcat stops - wait for 5 seconds
+ sleep 5
+}
+
+# Remove the installed packages
+function remove_packages() {
+ if [ "${IS_APT_ENV}" == true ]; then
+ APT_REMOVE_CMD="apt --purge -y autoremove"
+
+ if [ "${INSTALL_GTK}" == true ]; then
+ # remove gtk+3.0
+ APT_REMOVE_CMD="${APT_REMOVE_CMD} gtk+3.0"
+ fi
+
+ if [ "${INSTALL_XVFB}" == true ]; then
+ # remove xvfb
+ APT_REMOVE_CMD="${APT_REMOVE_CMD} xvfb"
+ fi
+
+ eval "${APT_REMOVE_CMD}"
+ fi
+}
+
+# check for OS release file
+if [ -f /etc/os-release ]; then
+ # load file to get the ID (OS name)
+ # shellcheck disable=SC1091
+ source /etc/os-release
+ OS=$ID
+fi
+
+# Check if OS is ubuntu/debian (we can run eclipse as packages required for it are available)
+if [ "${OS}" == "ubuntu" ] || [ "${OS}" = "debian" ]; then
+ # set IS_APT_ENV true
+ IS_APT_ENV=true
+
+ # Set eclipse run to `true`
+ RUN_ECLIPSE=true
+
+ # Set the required packages for eclipse to `true`
+ INSTALL_GTK=true
+ INSTALL_XVFB=true
+
+ # Call function `install_pkgs_via_apt` to install packages
+ install_packages
+fi
+
+# Download the sample apps and install
+download_and_install_artifacts
+
+# Dry run for SCC generation (To get exact size)
+dry_run
+
+# Generate SCC
+generate_scc
+
+# Remove installed artifacts
+remove_artifacts
+
+# Remove packages
+remove_packages
diff --git a/adoptopenjdk_11-openj9-bionic/Dockerfile.openj9.releases.full b/adoptopenjdk_11-openj9-bionic/Dockerfile.openj9.releases.full
index 6ff8d3a..b8083f3 100644
--- a/adoptopenjdk_11-openj9-bionic/Dockerfile.openj9.releases.full
+++ b/adoptopenjdk_11-openj9-bionic/Dockerfile.openj9.releases.full
@@ -63,4 +63,7 @@ RUN set -eux; \
ENV JAVA_HOME=/opt/java/openjdk \
PATH="/opt/java/openjdk/bin:$PATH"
ENV JAVA_TOOL_OPTIONS="-XX:+IgnoreUnrecognizedVMOptions -XX:+UseContainerSupport -XX:+IdleTuningCompactOnIdle -XX:+IdleTuningGcOnIdle"
+COPY generate_openj9_scc.sh /scripts/
+ RUN /scripts/generate_openj9_scc.sh
+ ENV OPENJ9_JAVA_OPTIONS="-Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,readonly,nonFatal"
CMD ["jshell"]
diff --git a/adoptopenjdk_11-openj9-bionic/generate_openj9_scc.sh b/adoptopenjdk_11-openj9-bionic/generate_openj9_scc.sh
new file mode 100755
index 0000000..a5113ba
--- /dev/null
+++ b/adoptopenjdk_11-openj9-bionic/generate_openj9_scc.sh
@@ -0,0 +1,318 @@
+#!/bin/bash
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# https://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+unset OPENJ9_JAVA_OPTIONS
+
+# Default size for SCC
+SCC_SIZE="50m"
+
+# Runs for generating SCC
+SCC_GEN_RUNS_COUNT=3
+
+# is running on ubuntu or debian - package manager apt
+IS_APT_ENV=false
+# Intitialise default / allowed sample app status
+RUN_ECLIPSE=false
+RUN_TOMCAT=true
+
+# Intitialise default / required packages status
+INSTALL_GTK=false
+INSTALL_XVFB=false
+
+# App download locations
+DOWNLOAD_PATH_ECLIPSE=/tmp/eclipse
+DOWNLOAD_PATH_TOMCAT=/tmp/tomcat
+
+# App installation locations
+INSTALL_PATH_ECLIPSE="${HOME}"/eclipse-home
+INSTALL_PATH_TOMCAT="${HOME}"/tomcat-home
+
+# URL's for the artifacts
+ECLIPSE_DWNLD_URL="http://www.mirrorservice.org/sites/download.eclipse.org/eclipseMirror/technology/epp/downloads/release/2020-06/M3/eclipse-java-2020-06-M3-linux-gtk-x86_64.tar.gz"
+TOMCAT_DWNLD_URL="https://archive.apache.org/dist/tomcat/tomcat-9/v9.0.35/bin/apache-tomcat-9.0.35.tar.gz"
+
+# Check and downlaod eclipse
+function check_to_download_eclipse() {
+ if [ "${RUN_ECLIPSE}" == true ]; then
+ # Creating a temporary directory for eclipse download
+ mkdir -p "${DOWNLOAD_PATH_ECLIPSE}" "${INSTALL_PATH_ECLIPSE}"
+
+ # Downloading eclipse
+ if curl --fail -o "${DOWNLOAD_PATH_ECLIPSE}"/eclipse.tar.gz "${ECLIPSE_DWNLD_URL}"; then
+ # Extracting eclipse
+ tar -xvzf "${DOWNLOAD_PATH_ECLIPSE}"/eclipse.tar.gz -C "$INSTALL_PATH_ECLIPSE" --strip-components=1
+ else
+ RUN_ECLIPSE=false
+ fi
+
+ # Removing the tar file
+ rm -rf "${DOWNLOAD_PATH_ECLIPSE}"
+ fi
+}
+
+# Check and download tomcat
+function check_to_download_tomcat() {
+ if [ "${RUN_TOMCAT}" == true ]; then
+ # Creating a temporary directory for tomcat download
+ mkdir -p "${DOWNLOAD_PATH_TOMCAT}" "${INSTALL_PATH_TOMCAT}"
+
+ # Downloading tomcat
+ if curl --fail -o "${DOWNLOAD_PATH_TOMCAT}"/tomcat.tar.gz "${TOMCAT_DWNLD_URL}"; then
+ # Extracting tomcat
+ tar -xvzf "${DOWNLOAD_PATH_TOMCAT}"/tomcat.tar.gz -C "${INSTALL_PATH_TOMCAT}" --strip-components=1
+ else
+ RUN_TOMCAT=false
+ fi
+
+ # Removing the tar file
+ rm -rf "${DOWNLOAD_PATH_TOMCAT}"
+ fi
+}
+
+# ubuntu/debian install packages required for eclipse
+function apt_install_packages() {
+ # update the repositories
+ apt update
+
+ # Set non-interactive frontend (to avoid `tzdata` config options selection)
+ APT_INSTALL_CMD="DEBIAN_FRONTEND=noninteractive"
+ APT_INSTALL_CMD="${APT_INSTALL_CMD} apt install -y"
+
+ if [ "${INSTALL_GTK}" == true ]; then
+ # install gtk+3.0
+ APT_INSTALL_CMD="${APT_INSTALL_CMD} gtk+3.0"
+ fi
+
+ if [ "${INSTALL_XVFB}" == true ]; then
+ # install xvfb
+ APT_INSTALL_CMD="${APT_INSTALL_CMD} xvfb"
+ fi
+
+ eval "${APT_INSTALL_CMD}"
+}
+
+# Check if any application needs virtual screen and launch it
+function check_and_start_xvfb() {
+ # check if `xvfb` installed
+ if [ "${INSTALL_XVFB}" == true ]; then
+ # Spawning a virtual screen for GUI apps
+ Xvfb :1 -ac -screen 0 1024x768x8 &
+ # Saving the PID
+ XVFB_PID=$!
+ # Saving older display value
+ OLD_DISPLAY=$DISPLAY
+ # Setting DISPLAY to created screen
+ export DISPLAY=:1
+ fi
+}
+
+# Kill the created virtual screen
+function check_and_stop_xvfb() {
+ # check if `xvfb` installed
+ if [ "${INSTALL_XVFB}" == true ]; then
+ # Killing `xvfb` process to remove screen
+ kill -9 $XVFB_PID
+ # Setting back the DISPLAY to older value
+ export DISPLAY=$OLD_DISPLAY
+ fi
+}
+
+# Run the applications for specified iterations
+function run_apps() {
+ for ((i=0; i<SCC_GEN_RUNS_COUNT; i++))
+ do
+ if [ "${RUN_ECLIPSE}" == true ]; then
+ run_eclipse_and_stop
+ fi
+ if [ "${RUN_TOMCAT}" == true ]; then
+ run_tomcat_and_stop
+ fi
+ done
+}
+
+# function to install packages
+function install_packages() {
+ if [ "${IS_APT_ENV}" == true ]; then
+ apt_install_packages
+ fi
+}
+
+# function to download the applications
+function download_and_install_artifacts() {
+
+ # check for eclipse
+ check_to_download_eclipse
+
+ # check for tomcat
+ check_to_download_tomcat
+
+}
+
+# dry run to right size the cache
+function dry_run() {
+ # Creating base layer first instead of running sample programs to generate SCC directly
+ java -Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal,createLayer -Xscmx$SCC_SIZE -version
+
+ # Pointing cache for sample program runs
+ export OPENJ9_JAVA_OPTIONS="-Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal"
+
+ # check if we need xvfb for running application and start a virtual screen if required
+ check_and_start_xvfb
+
+ # Run the applications to generate SCC
+ run_apps
+
+ # check if started a virtual screen and kill the process
+ check_and_stop_xvfb
+
+ FULL=$( (java -Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,printallStats || true) 2>&1 | awk '/^Cache is [0-9.]*% .*full/ {print substr($3, 1, length($3)-1)}')
+
+ java -Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,destroy || true
+
+ SCC_SIZE="${SCC_SIZE:0:-1}"
+
+ SCC_SIZE=$(awk "BEGIN {print int($SCC_SIZE * $FULL / 100.0)}")
+
+ [ "${SCC_SIZE}" -eq 0 ] && SCC_SIZE=1
+
+ SCC_SIZE="${SCC_SIZE}m"
+
+ # Re-generating cache with new size
+ java -Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal,createLayer -Xscmx$SCC_SIZE -version
+
+ unset OPENJ9_JAVA_OPTIONS
+}
+
+# Generate SCC by running apps
+function generate_scc() {
+ # Pointing cache for sample app runs
+ export OPENJ9_JAVA_OPTIONS="-Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal"
+
+ # check if we need xvfb for running application and start a virtual screen if required
+ check_and_start_xvfb
+
+ # Run the applications to generate SCC
+ run_apps
+
+ # check if started a virtual screen and kill the process
+ check_and_stop_xvfb
+
+ # Checking the cache level
+ FULL=$( (java -Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,printallStats || true) 2>&1 | awk '/^Cache is [0-9.]*% .*full/ {print substr($3, 1, length($3)-1)}')
+
+ echo "SCC layer is $FULL% full."
+}
+
+# Remove the downloaded sample apps
+function remove_artifacts() {
+ # Command to remove apps
+ REMOVE_APPS="rm -rf"
+
+ # check for eclipse
+ if [ "${RUN_ECLIPSE}" == true ]; then
+ REMOVE_APPS="${REMOVE_APPS} ${INSTALL_PATH_ECLIPSE}"
+ fi
+
+ # check for tomcat
+ if [ "${RUN_TOMCAT}" == true ]; then
+ REMOVE_APPS="${REMOVE_APPS} ${INSTALL_PATH_TOMCAT}"
+ fi
+
+ eval "$REMOVE_APPS"
+}
+
+# Run eclipse and stop it after the startup
+function run_eclipse_and_stop() {
+ # Starting eclipse in background
+ "${INSTALL_PATH_ECLIPSE}"/eclipse/eclipse &
+ # Saving eclipse PID
+ ECLIPSE_PID=$!
+ # Waiting for eclipse to start - Sleeping for 1 minute
+ sleep 1m
+ # Killing eclipse process
+ kill -9 $ECLIPSE_PID
+ # Waiting for process to be killed - Sleeping for 10 seconds
+ sleep 10s
+}
+
+# Run tomcat and stop it after the startup
+function run_tomcat_and_stop() {
+ # Start tomcat wait till it comes up shut it down
+ "${INSTALL_PATH_TOMCAT}"/bin/startup.sh
+ # wait till tomcat starts - wait for 5 seconds
+ sleep 5
+ # Stop tomcat
+ "${INSTALL_PATH_TOMCAT}"/bin/shutdown.sh
+ # wait till tomcat stops - wait for 5 seconds
+ sleep 5
+}
+
+# Remove the installed packages
+function remove_packages() {
+ if [ "${IS_APT_ENV}" == true ]; then
+ APT_REMOVE_CMD="apt --purge -y autoremove"
+
+ if [ "${INSTALL_GTK}" == true ]; then
+ # remove gtk+3.0
+ APT_REMOVE_CMD="${APT_REMOVE_CMD} gtk+3.0"
+ fi
+
+ if [ "${INSTALL_XVFB}" == true ]; then
+ # remove xvfb
+ APT_REMOVE_CMD="${APT_REMOVE_CMD} xvfb"
+ fi
+
+ eval "${APT_REMOVE_CMD}"
+ fi
+}
+
+# check for OS release file
+if [ -f /etc/os-release ]; then
+ # load file to get the ID (OS name)
+ # shellcheck disable=SC1091
+ source /etc/os-release
+ OS=$ID
+fi
+
+# Check if OS is ubuntu/debian (we can run eclipse as packages required for it are available)
+if [ "${OS}" == "ubuntu" ] || [ "${OS}" = "debian" ]; then
+ # set IS_APT_ENV true
+ IS_APT_ENV=true
+
+ # Set eclipse run to `true`
+ RUN_ECLIPSE=true
+
+ # Set the required packages for eclipse to `true`
+ INSTALL_GTK=true
+ INSTALL_XVFB=true
+
+ # Call function `install_pkgs_via_apt` to install packages
+ install_packages
+fi
+
+# Download the sample apps and install
+download_and_install_artifacts
+
+# Dry run for SCC generation (To get exact size)
+dry_run
+
+# Generate SCC
+generate_scc
+
+# Remove installed artifacts
+remove_artifacts
+
+# Remove packages
+remove_packages
diff --git a/adoptopenjdk_13-hotspot-bionic/Dockerfile.hotspot.releases.full b/adoptopenjdk_13-hotspot-bionic/Dockerfile.hotspot.releases.full
index eae6c73..b17482d 100644
--- a/adoptopenjdk_13-hotspot-bionic/Dockerfile.hotspot.releases.full
+++ b/adoptopenjdk_13-hotspot-bionic/Dockerfile.hotspot.releases.full
@@ -22,7 +22,7 @@ FROM ubuntu:18.04
ENV LANG='en_US.UTF-8' LANGUAGE='en_US:en' LC_ALL='en_US.UTF-8'
RUN apt-get update \
- && apt-get install -y --no-install-recommends curl ca-certificates fontconfig locales \
+ && apt-get install -y --no-install-recommends tzdata curl ca-certificates fontconfig locales \
&& echo "en_US.UTF-8 UTF-8" >> /etc/locale.gen \
&& locale-gen en_US.UTF-8 \
&& rm -rf /var/lib/apt/lists/*
diff --git a/adoptopenjdk_13-hotspot-windowsservercore-1809/Dockerfile.hotspot.releases.full b/adoptopenjdk_13-hotspot-windowsservercore-1809/Dockerfile.hotspot.releases.full
index b1cad0a..a438c2a 100644
--- a/adoptopenjdk_13-hotspot-windowsservercore-1809/Dockerfile.hotspot.releases.full
+++ b/adoptopenjdk_13-hotspot-windowsservercore-1809/Dockerfile.hotspot.releases.full
@@ -38,7 +38,7 @@ RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk13-binaries/
Write-Host 'Installing using MSI ...'; \
Start-Process -FilePath "msiexec.exe" -ArgumentList '/i', 'openjdk.msi', '/L*V', 'C:\temp\OpenJDK.log', \
'/quiet', 'ADDLOCAL=FeatureEnvironment,FeatureJarFileRunWith,FeatureJavaHome' -Wait -Passthru; \
+ Remove-Item -Path C:\temp -Recurse | Out-Null; \
Write-Host 'Removing openjdk.msi ...'; \
- Remove-Item openjdk.msi -Force; \
- Remove-Item -Path C:\temp -Recurse | Out-Null;
+ Remove-Item openjdk.msi -Force
CMD ["jshell"]
diff --git a/adoptopenjdk_13-hotspot-windowsservercore-ltsc2016/Dockerfile.hotspot.releases.full b/adoptopenjdk_13-hotspot-windowsservercore-ltsc2016/Dockerfile.hotspot.releases.full
index 61ed0b3..ceeab95 100644
--- a/adoptopenjdk_13-hotspot-windowsservercore-ltsc2016/Dockerfile.hotspot.releases.full
+++ b/adoptopenjdk_13-hotspot-windowsservercore-ltsc2016/Dockerfile.hotspot.releases.full
@@ -38,7 +38,7 @@ RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk13-binaries/
Write-Host 'Installing using MSI ...'; \
Start-Process -FilePath "msiexec.exe" -ArgumentList '/i', 'openjdk.msi', '/L*V', 'C:\temp\OpenJDK.log', \
'/quiet', 'ADDLOCAL=FeatureEnvironment,FeatureJarFileRunWith,FeatureJavaHome' -Wait -Passthru; \
+ Remove-Item -Path C:\temp -Recurse | Out-Null; \
Write-Host 'Removing openjdk.msi ...'; \
- Remove-Item openjdk.msi -Force; \
- Remove-Item -Path C:\temp -Recurse | Out-Null;
+ Remove-Item openjdk.msi -Force
CMD ["jshell"]
diff --git a/adoptopenjdk_13-jre-hotspot-bionic/Dockerfile.hotspot.releases.full b/adoptopenjdk_13-jre-hotspot-bionic/Dockerfile.hotspot.releases.full
index 6103c9d..b1f58d2 100644
--- a/adoptopenjdk_13-jre-hotspot-bionic/Dockerfile.hotspot.releases.full
+++ b/adoptopenjdk_13-jre-hotspot-bionic/Dockerfile.hotspot.releases.full
@@ -22,7 +22,7 @@ FROM ubuntu:18.04
ENV LANG='en_US.UTF-8' LANGUAGE='en_US:en' LC_ALL='en_US.UTF-8'
RUN apt-get update \
- && apt-get install -y --no-install-recommends curl ca-certificates fontconfig locales \
+ && apt-get install -y --no-install-recommends tzdata curl ca-certificates fontconfig locales \
&& echo "en_US.UTF-8 UTF-8" >> /etc/locale.gen \
&& locale-gen en_US.UTF-8 \
&& rm -rf /var/lib/apt/lists/*
diff --git a/adoptopenjdk_13-jre-hotspot-windowsservercore-1809/Dockerfile.hotspot.releases.full b/adoptopenjdk_13-jre-hotspot-windowsservercore-1809/Dockerfile.hotspot.releases.full
index d474e60..0e1691f 100644
--- a/adoptopenjdk_13-jre-hotspot-windowsservercore-1809/Dockerfile.hotspot.releases.full
+++ b/adoptopenjdk_13-jre-hotspot-windowsservercore-1809/Dockerfile.hotspot.releases.full
@@ -38,6 +38,6 @@ RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk13-binaries/
Write-Host 'Installing using MSI ...'; \
Start-Process -FilePath "msiexec.exe" -ArgumentList '/i', 'openjdk.msi', '/L*V', 'C:\temp\OpenJDK.log', \
'/quiet', 'ADDLOCAL=FeatureEnvironment,FeatureJarFileRunWith,FeatureJavaHome' -Wait -Passthru; \
+ Remove-Item -Path C:\temp -Recurse | Out-Null; \
Write-Host 'Removing openjdk.msi ...'; \
- Remove-Item openjdk.msi -Force; \
- Remove-Item -Path C:\temp -Recurse | Out-Null;
+ Remove-Item openjdk.msi -Force
diff --git a/adoptopenjdk_13-jre-hotspot-windowsservercore-ltsc2016/Dockerfile.hotspot.releases.full b/adoptopenjdk_13-jre-hotspot-windowsservercore-ltsc2016/Dockerfile.hotspot.releases.full
index 77b8e00..a6ba70a 100644
--- a/adoptopenjdk_13-jre-hotspot-windowsservercore-ltsc2016/Dockerfile.hotspot.releases.full
+++ b/adoptopenjdk_13-jre-hotspot-windowsservercore-ltsc2016/Dockerfile.hotspot.releases.full
@@ -38,6 +38,6 @@ RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk13-binaries/
Write-Host 'Installing using MSI ...'; \
Start-Process -FilePath "msiexec.exe" -ArgumentList '/i', 'openjdk.msi', '/L*V', 'C:\temp\OpenJDK.log', \
'/quiet', 'ADDLOCAL=FeatureEnvironment,FeatureJarFileRunWith,FeatureJavaHome' -Wait -Passthru; \
+ Remove-Item -Path C:\temp -Recurse | Out-Null; \
Write-Host 'Removing openjdk.msi ...'; \
- Remove-Item openjdk.msi -Force; \
- Remove-Item -Path C:\temp -Recurse | Out-Null;
+ Remove-Item openjdk.msi -Force
diff --git a/adoptopenjdk_13-jre-openj9-bionic/Dockerfile.openj9.releases.full b/adoptopenjdk_13-jre-openj9-bionic/Dockerfile.openj9.releases.full
index eaea9c2..b8415da 100644
--- a/adoptopenjdk_13-jre-openj9-bionic/Dockerfile.openj9.releases.full
+++ b/adoptopenjdk_13-jre-openj9-bionic/Dockerfile.openj9.releases.full
@@ -22,7 +22,7 @@ FROM ubuntu:18.04
ENV LANG='en_US.UTF-8' LANGUAGE='en_US:en' LC_ALL='en_US.UTF-8'
RUN apt-get update \
- && apt-get install -y --no-install-recommends curl ca-certificates fontconfig locales \
+ && apt-get install -y --no-install-recommends tzdata curl ca-certificates fontconfig locales \
&& echo "en_US.UTF-8 UTF-8" >> /etc/locale.gen \
&& locale-gen en_US.UTF-8 \
&& rm -rf /var/lib/apt/lists/*
diff --git a/adoptopenjdk_13-jre-openj9-windowsservercore-1809/Dockerfile.openj9.releases.full b/adoptopenjdk_13-jre-openj9-windowsservercore-1809/Dockerfile.openj9.releases.full
index 05b9f31..8769114 100644
--- a/adoptopenjdk_13-jre-openj9-windowsservercore-1809/Dockerfile.openj9.releases.full
+++ b/adoptopenjdk_13-jre-openj9-windowsservercore-1809/Dockerfile.openj9.releases.full
@@ -38,7 +38,7 @@ RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk13-binaries/
Write-Host 'Installing using MSI ...'; \
Start-Process -FilePath "msiexec.exe" -ArgumentList '/i', 'openjdk.msi', '/L*V', 'C:\temp\OpenJDK.log', \
'/quiet', 'ADDLOCAL=FeatureEnvironment,FeatureJarFileRunWith,FeatureJavaHome' -Wait -Passthru; \
+ Remove-Item -Path C:\temp -Recurse | Out-Null; \
Write-Host 'Removing openjdk.msi ...'; \
- Remove-Item openjdk.msi -Force; \
- Remove-Item -Path C:\temp -Recurse | Out-Null;
+ Remove-Item openjdk.msi -Force
ENV JAVA_TOOL_OPTIONS="-XX:+IgnoreUnrecognizedVMOptions -XX:+UseContainerSupport -XX:+IdleTuningCompactOnIdle -XX:+IdleTuningGcOnIdle"
diff --git a/adoptopenjdk_13-jre-openj9-windowsservercore-ltsc2016/Dockerfile.openj9.releases.full b/adoptopenjdk_13-jre-openj9-windowsservercore-ltsc2016/Dockerfile.openj9.releases.full
index 3e104f5..5769db2 100644
--- a/adoptopenjdk_13-jre-openj9-windowsservercore-ltsc2016/Dockerfile.openj9.releases.full
+++ b/adoptopenjdk_13-jre-openj9-windowsservercore-ltsc2016/Dockerfile.openj9.releases.full
@@ -38,7 +38,7 @@ RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk13-binaries/
Write-Host 'Installing using MSI ...'; \
Start-Process -FilePath "msiexec.exe" -ArgumentList '/i', 'openjdk.msi', '/L*V', 'C:\temp\OpenJDK.log', \
'/quiet', 'ADDLOCAL=FeatureEnvironment,FeatureJarFileRunWith,FeatureJavaHome' -Wait -Passthru; \
+ Remove-Item -Path C:\temp -Recurse | Out-Null; \
Write-Host 'Removing openjdk.msi ...'; \
- Remove-Item openjdk.msi -Force; \
- Remove-Item -Path C:\temp -Recurse | Out-Null;
+ Remove-Item openjdk.msi -Force
ENV JAVA_TOOL_OPTIONS="-XX:+IgnoreUnrecognizedVMOptions -XX:+UseContainerSupport -XX:+IdleTuningCompactOnIdle -XX:+IdleTuningGcOnIdle"
diff --git a/adoptopenjdk_13-openj9-bionic/Dockerfile.openj9.releases.full b/adoptopenjdk_13-openj9-bionic/Dockerfile.openj9.releases.full
index a5df670..59cc004 100644
--- a/adoptopenjdk_13-openj9-bionic/Dockerfile.openj9.releases.full
+++ b/adoptopenjdk_13-openj9-bionic/Dockerfile.openj9.releases.full
@@ -22,7 +22,7 @@ FROM ubuntu:18.04
ENV LANG='en_US.UTF-8' LANGUAGE='en_US:en' LC_ALL='en_US.UTF-8'
RUN apt-get update \
- && apt-get install -y --no-install-recommends curl ca-certificates fontconfig locales \
+ && apt-get install -y --no-install-recommends tzdata curl ca-certificates fontconfig locales \
&& echo "en_US.UTF-8 UTF-8" >> /etc/locale.gen \
&& locale-gen en_US.UTF-8 \
&& rm -rf /var/lib/apt/lists/*
diff --git a/adoptopenjdk_13-openj9-windowsservercore-1809/Dockerfile.openj9.releases.full b/adoptopenjdk_13-openj9-windowsservercore-1809/Dockerfile.openj9.releases.full
index 268fb19..96e3b6b 100644
--- a/adoptopenjdk_13-openj9-windowsservercore-1809/Dockerfile.openj9.releases.full
+++ b/adoptopenjdk_13-openj9-windowsservercore-1809/Dockerfile.openj9.releases.full
@@ -38,8 +38,8 @@ RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk13-binaries/
Write-Host 'Installing using MSI ...'; \
Start-Process -FilePath "msiexec.exe" -ArgumentList '/i', 'openjdk.msi', '/L*V', 'C:\temp\OpenJDK.log', \
'/quiet', 'ADDLOCAL=FeatureEnvironment,FeatureJarFileRunWith,FeatureJavaHome' -Wait -Passthru; \
+ Remove-Item -Path C:\temp -Recurse | Out-Null; \
Write-Host 'Removing openjdk.msi ...'; \
- Remove-Item openjdk.msi -Force; \
- Remove-Item -Path C:\temp -Recurse | Out-Null;
+ Remove-Item openjdk.msi -Force
ENV JAVA_TOOL_OPTIONS="-XX:+IgnoreUnrecognizedVMOptions -XX:+UseContainerSupport -XX:+IdleTuningCompactOnIdle -XX:+IdleTuningGcOnIdle"
CMD ["jshell"]
diff --git a/adoptopenjdk_13-openj9-windowsservercore-ltsc2016/Dockerfile.openj9.releases.full b/adoptopenjdk_13-openj9-windowsservercore-ltsc2016/Dockerfile.openj9.releases.full
index 6aa5ddb..89b2f07 100644
--- a/adoptopenjdk_13-openj9-windowsservercore-ltsc2016/Dockerfile.openj9.releases.full
+++ b/adoptopenjdk_13-openj9-windowsservercore-ltsc2016/Dockerfile.openj9.releases.full
@@ -38,8 +38,8 @@ RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk13-binaries/
Write-Host 'Installing using MSI ...'; \
Start-Process -FilePath "msiexec.exe" -ArgumentList '/i', 'openjdk.msi', '/L*V', 'C:\temp\OpenJDK.log', \
'/quiet', 'ADDLOCAL=FeatureEnvironment,FeatureJarFileRunWith,FeatureJavaHome' -Wait -Passthru; \
+ Remove-Item -Path C:\temp -Recurse | Out-Null; \
Write-Host 'Removing openjdk.msi ...'; \
- Remove-Item openjdk.msi -Force; \
- Remove-Item -Path C:\temp -Recurse | Out-Null;
+ Remove-Item openjdk.msi -Force
ENV JAVA_TOOL_OPTIONS="-XX:+IgnoreUnrecognizedVMOptions -XX:+UseContainerSupport -XX:+IdleTuningCompactOnIdle -XX:+IdleTuningGcOnIdle"
CMD ["jshell"]
diff --git a/adoptopenjdk_hotspot-bionic/Dockerfile.hotspot.releases.full b/adoptopenjdk_14-hotspot-bionic/Dockerfile.hotspot.releases.full
similarity index 100%
copy from adoptopenjdk_hotspot-bionic/Dockerfile.hotspot.releases.full
copy to adoptopenjdk_14-hotspot-bionic/Dockerfile.hotspot.releases.full
diff --git a/adoptopenjdk_hotspot-windowsservercore-1809/Dockerfile.hotspot.releases.full b/adoptopenjdk_14-hotspot-windowsservercore-1809/Dockerfile.hotspot.releases.full
similarity index 100%
copy from adoptopenjdk_hotspot-windowsservercore-1809/Dockerfile.hotspot.releases.full
copy to adoptopenjdk_14-hotspot-windowsservercore-1809/Dockerfile.hotspot.releases.full
diff --git a/adoptopenjdk_hotspot-windowsservercore-ltsc2016/Dockerfile.hotspot.releases.full b/adoptopenjdk_14-hotspot-windowsservercore-ltsc2016/Dockerfile.hotspot.releases.full
similarity index 100%
copy from adoptopenjdk_hotspot-windowsservercore-ltsc2016/Dockerfile.hotspot.releases.full
copy to adoptopenjdk_14-hotspot-windowsservercore-ltsc2016/Dockerfile.hotspot.releases.full
diff --git a/adoptopenjdk_14-jre-openj9-bionic/Dockerfile.openj9.releases.full b/adoptopenjdk_14-jre-openj9-bionic/Dockerfile.openj9.releases.full
index 30c3618..4f102ad 100644
--- a/adoptopenjdk_14-jre-openj9-bionic/Dockerfile.openj9.releases.full
+++ b/adoptopenjdk_14-jre-openj9-bionic/Dockerfile.openj9.releases.full
@@ -59,3 +59,6 @@ RUN set -eux; \
ENV JAVA_HOME=/opt/java/openjdk \
PATH="/opt/java/openjdk/bin:$PATH"
ENV JAVA_TOOL_OPTIONS="-XX:+IgnoreUnrecognizedVMOptions -XX:+UseContainerSupport -XX:+IdleTuningCompactOnIdle -XX:+IdleTuningGcOnIdle"
+COPY generate_openj9_scc.sh /scripts/
+ RUN /scripts/generate_openj9_scc.sh
+ ENV OPENJ9_JAVA_OPTIONS="-Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,readonly,nonFatal"
diff --git a/adoptopenjdk_14-jre-openj9-bionic/generate_openj9_scc.sh b/adoptopenjdk_14-jre-openj9-bionic/generate_openj9_scc.sh
new file mode 100755
index 0000000..a5113ba
--- /dev/null
+++ b/adoptopenjdk_14-jre-openj9-bionic/generate_openj9_scc.sh
@@ -0,0 +1,318 @@
+#!/bin/bash
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# https://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+unset OPENJ9_JAVA_OPTIONS
+
+# Default size for SCC
+SCC_SIZE="50m"
+
+# Runs for generating SCC
+SCC_GEN_RUNS_COUNT=3
+
+# is running on ubuntu or debian - package manager apt
+IS_APT_ENV=false
+# Intitialise default / allowed sample app status
+RUN_ECLIPSE=false
+RUN_TOMCAT=true
+
+# Intitialise default / required packages status
+INSTALL_GTK=false
+INSTALL_XVFB=false
+
+# App download locations
+DOWNLOAD_PATH_ECLIPSE=/tmp/eclipse
+DOWNLOAD_PATH_TOMCAT=/tmp/tomcat
+
+# App installation locations
+INSTALL_PATH_ECLIPSE="${HOME}"/eclipse-home
+INSTALL_PATH_TOMCAT="${HOME}"/tomcat-home
+
+# URL's for the artifacts
+ECLIPSE_DWNLD_URL="http://www.mirrorservice.org/sites/download.eclipse.org/eclipseMirror/technology/epp/downloads/release/2020-06/M3/eclipse-java-2020-06-M3-linux-gtk-x86_64.tar.gz"
+TOMCAT_DWNLD_URL="https://archive.apache.org/dist/tomcat/tomcat-9/v9.0.35/bin/apache-tomcat-9.0.35.tar.gz"
+
+# Check and downlaod eclipse
+function check_to_download_eclipse() {
+ if [ "${RUN_ECLIPSE}" == true ]; then
+ # Creating a temporary directory for eclipse download
+ mkdir -p "${DOWNLOAD_PATH_ECLIPSE}" "${INSTALL_PATH_ECLIPSE}"
+
+ # Downloading eclipse
+ if curl --fail -o "${DOWNLOAD_PATH_ECLIPSE}"/eclipse.tar.gz "${ECLIPSE_DWNLD_URL}"; then
+ # Extracting eclipse
+ tar -xvzf "${DOWNLOAD_PATH_ECLIPSE}"/eclipse.tar.gz -C "$INSTALL_PATH_ECLIPSE" --strip-components=1
+ else
+ RUN_ECLIPSE=false
+ fi
+
+ # Removing the tar file
+ rm -rf "${DOWNLOAD_PATH_ECLIPSE}"
+ fi
+}
+
+# Check and download tomcat
+function check_to_download_tomcat() {
+ if [ "${RUN_TOMCAT}" == true ]; then
+ # Creating a temporary directory for tomcat download
+ mkdir -p "${DOWNLOAD_PATH_TOMCAT}" "${INSTALL_PATH_TOMCAT}"
+
+ # Downloading tomcat
+ if curl --fail -o "${DOWNLOAD_PATH_TOMCAT}"/tomcat.tar.gz "${TOMCAT_DWNLD_URL}"; then
+ # Extracting tomcat
+ tar -xvzf "${DOWNLOAD_PATH_TOMCAT}"/tomcat.tar.gz -C "${INSTALL_PATH_TOMCAT}" --strip-components=1
+ else
+ RUN_TOMCAT=false
+ fi
+
+ # Removing the tar file
+ rm -rf "${DOWNLOAD_PATH_TOMCAT}"
+ fi
+}
+
+# ubuntu/debian install packages required for eclipse
+function apt_install_packages() {
+ # update the repositories
+ apt update
+
+ # Set non-interactive frontend (to avoid `tzdata` config options selection)
+ APT_INSTALL_CMD="DEBIAN_FRONTEND=noninteractive"
+ APT_INSTALL_CMD="${APT_INSTALL_CMD} apt install -y"
+
+ if [ "${INSTALL_GTK}" == true ]; then
+ # install gtk+3.0
+ APT_INSTALL_CMD="${APT_INSTALL_CMD} gtk+3.0"
+ fi
+
+ if [ "${INSTALL_XVFB}" == true ]; then
+ # install xvfb
+ APT_INSTALL_CMD="${APT_INSTALL_CMD} xvfb"
+ fi
+
+ eval "${APT_INSTALL_CMD}"
+}
+
+# Check if any application needs virtual screen and launch it
+function check_and_start_xvfb() {
+ # check if `xvfb` installed
+ if [ "${INSTALL_XVFB}" == true ]; then
+ # Spawning a virtual screen for GUI apps
+ Xvfb :1 -ac -screen 0 1024x768x8 &
+ # Saving the PID
+ XVFB_PID=$!
+ # Saving older display value
+ OLD_DISPLAY=$DISPLAY
+ # Setting DISPLAY to created screen
+ export DISPLAY=:1
+ fi
+}
+
+# Kill the created virtual screen
+function check_and_stop_xvfb() {
+ # check if `xvfb` installed
+ if [ "${INSTALL_XVFB}" == true ]; then
+ # Killing `xvfb` process to remove screen
+ kill -9 $XVFB_PID
+ # Setting back the DISPLAY to older value
+ export DISPLAY=$OLD_DISPLAY
+ fi
+}
+
+# Run the applications for specified iterations
+function run_apps() {
+ for ((i=0; i<SCC_GEN_RUNS_COUNT; i++))
+ do
+ if [ "${RUN_ECLIPSE}" == true ]; then
+ run_eclipse_and_stop
+ fi
+ if [ "${RUN_TOMCAT}" == true ]; then
+ run_tomcat_and_stop
+ fi
+ done
+}
+
+# function to install packages
+function install_packages() {
+ if [ "${IS_APT_ENV}" == true ]; then
+ apt_install_packages
+ fi
+}
+
+# function to download the applications
+function download_and_install_artifacts() {
+
+ # check for eclipse
+ check_to_download_eclipse
+
+ # check for tomcat
+ check_to_download_tomcat
+
+}
+
+# dry run to right size the cache
+function dry_run() {
+ # Creating base layer first instead of running sample programs to generate SCC directly
+ java -Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal,createLayer -Xscmx$SCC_SIZE -version
+
+ # Pointing cache for sample program runs
+ export OPENJ9_JAVA_OPTIONS="-Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal"
+
+ # check if we need xvfb for running application and start a virtual screen if required
+ check_and_start_xvfb
+
+ # Run the applications to generate SCC
+ run_apps
+
+ # check if started a virtual screen and kill the process
+ check_and_stop_xvfb
+
+ FULL=$( (java -Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,printallStats || true) 2>&1 | awk '/^Cache is [0-9.]*% .*full/ {print substr($3, 1, length($3)-1)}')
+
+ java -Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,destroy || true
+
+ SCC_SIZE="${SCC_SIZE:0:-1}"
+
+ SCC_SIZE=$(awk "BEGIN {print int($SCC_SIZE * $FULL / 100.0)}")
+
+ [ "${SCC_SIZE}" -eq 0 ] && SCC_SIZE=1
+
+ SCC_SIZE="${SCC_SIZE}m"
+
+ # Re-generating cache with new size
+ java -Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal,createLayer -Xscmx$SCC_SIZE -version
+
+ unset OPENJ9_JAVA_OPTIONS
+}
+
+# Generate SCC by running apps
+function generate_scc() {
+ # Pointing cache for sample app runs
+ export OPENJ9_JAVA_OPTIONS="-Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal"
+
+ # check if we need xvfb for running application and start a virtual screen if required
+ check_and_start_xvfb
+
+ # Run the applications to generate SCC
+ run_apps
+
+ # check if started a virtual screen and kill the process
+ check_and_stop_xvfb
+
+ # Checking the cache level
+ FULL=$( (java -Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,printallStats || true) 2>&1 | awk '/^Cache is [0-9.]*% .*full/ {print substr($3, 1, length($3)-1)}')
+
+ echo "SCC layer is $FULL% full."
+}
+
+# Remove the downloaded sample apps
+function remove_artifacts() {
+ # Command to remove apps
+ REMOVE_APPS="rm -rf"
+
+ # check for eclipse
+ if [ "${RUN_ECLIPSE}" == true ]; then
+ REMOVE_APPS="${REMOVE_APPS} ${INSTALL_PATH_ECLIPSE}"
+ fi
+
+ # check for tomcat
+ if [ "${RUN_TOMCAT}" == true ]; then
+ REMOVE_APPS="${REMOVE_APPS} ${INSTALL_PATH_TOMCAT}"
+ fi
+
+ eval "$REMOVE_APPS"
+}
+
+# Run eclipse and stop it after the startup
+function run_eclipse_and_stop() {
+ # Starting eclipse in background
+ "${INSTALL_PATH_ECLIPSE}"/eclipse/eclipse &
+ # Saving eclipse PID
+ ECLIPSE_PID=$!
+ # Waiting for eclipse to start - Sleeping for 1 minute
+ sleep 1m
+ # Killing eclipse process
+ kill -9 $ECLIPSE_PID
+ # Waiting for process to be killed - Sleeping for 10 seconds
+ sleep 10s
+}
+
+# Run tomcat and stop it after the startup
+function run_tomcat_and_stop() {
+ # Start tomcat wait till it comes up shut it down
+ "${INSTALL_PATH_TOMCAT}"/bin/startup.sh
+ # wait till tomcat starts - wait for 5 seconds
+ sleep 5
+ # Stop tomcat
+ "${INSTALL_PATH_TOMCAT}"/bin/shutdown.sh
+ # wait till tomcat stops - wait for 5 seconds
+ sleep 5
+}
+
+# Remove the installed packages
+function remove_packages() {
+ if [ "${IS_APT_ENV}" == true ]; then
+ APT_REMOVE_CMD="apt --purge -y autoremove"
+
+ if [ "${INSTALL_GTK}" == true ]; then
+ # remove gtk+3.0
+ APT_REMOVE_CMD="${APT_REMOVE_CMD} gtk+3.0"
+ fi
+
+ if [ "${INSTALL_XVFB}" == true ]; then
+ # remove xvfb
+ APT_REMOVE_CMD="${APT_REMOVE_CMD} xvfb"
+ fi
+
+ eval "${APT_REMOVE_CMD}"
+ fi
+}
+
+# check for OS release file
+if [ -f /etc/os-release ]; then
+ # load file to get the ID (OS name)
+ # shellcheck disable=SC1091
+ source /etc/os-release
+ OS=$ID
+fi
+
+# Check if OS is ubuntu/debian (we can run eclipse as packages required for it are available)
+if [ "${OS}" == "ubuntu" ] || [ "${OS}" = "debian" ]; then
+ # set IS_APT_ENV true
+ IS_APT_ENV=true
+
+ # Set eclipse run to `true`
+ RUN_ECLIPSE=true
+
+ # Set the required packages for eclipse to `true`
+ INSTALL_GTK=true
+ INSTALL_XVFB=true
+
+ # Call function `install_pkgs_via_apt` to install packages
+ install_packages
+fi
+
+# Download the sample apps and install
+download_and_install_artifacts
+
+# Dry run for SCC generation (To get exact size)
+dry_run
+
+# Generate SCC
+generate_scc
+
+# Remove installed artifacts
+remove_artifacts
+
+# Remove packages
+remove_packages
diff --git a/adoptopenjdk_openj9-bionic/Dockerfile.openj9.releases.full b/adoptopenjdk_14-openj9-bionic/Dockerfile.openj9.releases.full
similarity index 93%
copy from adoptopenjdk_openj9-bionic/Dockerfile.openj9.releases.full
copy to adoptopenjdk_14-openj9-bionic/Dockerfile.openj9.releases.full
index eff0c96..b34e17d 100644
--- a/adoptopenjdk_openj9-bionic/Dockerfile.openj9.releases.full
+++ b/adoptopenjdk_14-openj9-bionic/Dockerfile.openj9.releases.full
@@ -59,4 +59,7 @@ RUN set -eux; \
ENV JAVA_HOME=/opt/java/openjdk \
PATH="/opt/java/openjdk/bin:$PATH"
ENV JAVA_TOOL_OPTIONS="-XX:+IgnoreUnrecognizedVMOptions -XX:+UseContainerSupport -XX:+IdleTuningCompactOnIdle -XX:+IdleTuningGcOnIdle"
+COPY generate_openj9_scc.sh /scripts/
+ RUN /scripts/generate_openj9_scc.sh
+ ENV OPENJ9_JAVA_OPTIONS="-Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,readonly,nonFatal"
CMD ["jshell"]
diff --git a/adoptopenjdk_14-openj9-bionic/generate_openj9_scc.sh b/adoptopenjdk_14-openj9-bionic/generate_openj9_scc.sh
new file mode 100755
index 0000000..a5113ba
--- /dev/null
+++ b/adoptopenjdk_14-openj9-bionic/generate_openj9_scc.sh
@@ -0,0 +1,318 @@
+#!/bin/bash
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# https://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+unset OPENJ9_JAVA_OPTIONS
+
+# Default size for SCC
+SCC_SIZE="50m"
+
+# Runs for generating SCC
+SCC_GEN_RUNS_COUNT=3
+
+# is running on ubuntu or debian - package manager apt
+IS_APT_ENV=false
+# Intitialise default / allowed sample app status
+RUN_ECLIPSE=false
+RUN_TOMCAT=true
+
+# Intitialise default / required packages status
+INSTALL_GTK=false
+INSTALL_XVFB=false
+
+# App download locations
+DOWNLOAD_PATH_ECLIPSE=/tmp/eclipse
+DOWNLOAD_PATH_TOMCAT=/tmp/tomcat
+
+# App installation locations
+INSTALL_PATH_ECLIPSE="${HOME}"/eclipse-home
+INSTALL_PATH_TOMCAT="${HOME}"/tomcat-home
+
+# URL's for the artifacts
+ECLIPSE_DWNLD_URL="http://www.mirrorservice.org/sites/download.eclipse.org/eclipseMirror/technology/epp/downloads/release/2020-06/M3/eclipse-java-2020-06-M3-linux-gtk-x86_64.tar.gz"
+TOMCAT_DWNLD_URL="https://archive.apache.org/dist/tomcat/tomcat-9/v9.0.35/bin/apache-tomcat-9.0.35.tar.gz"
+
+# Check and downlaod eclipse
+function check_to_download_eclipse() {
+ if [ "${RUN_ECLIPSE}" == true ]; then
+ # Creating a temporary directory for eclipse download
+ mkdir -p "${DOWNLOAD_PATH_ECLIPSE}" "${INSTALL_PATH_ECLIPSE}"
+
+ # Downloading eclipse
+ if curl --fail -o "${DOWNLOAD_PATH_ECLIPSE}"/eclipse.tar.gz "${ECLIPSE_DWNLD_URL}"; then
+ # Extracting eclipse
+ tar -xvzf "${DOWNLOAD_PATH_ECLIPSE}"/eclipse.tar.gz -C "$INSTALL_PATH_ECLIPSE" --strip-components=1
+ else
+ RUN_ECLIPSE=false
+ fi
+
+ # Removing the tar file
+ rm -rf "${DOWNLOAD_PATH_ECLIPSE}"
+ fi
+}
+
+# Check and download tomcat
+function check_to_download_tomcat() {
+ if [ "${RUN_TOMCAT}" == true ]; then
+ # Creating a temporary directory for tomcat download
+ mkdir -p "${DOWNLOAD_PATH_TOMCAT}" "${INSTALL_PATH_TOMCAT}"
+
+ # Downloading tomcat
+ if curl --fail -o "${DOWNLOAD_PATH_TOMCAT}"/tomcat.tar.gz "${TOMCAT_DWNLD_URL}"; then
+ # Extracting tomcat
+ tar -xvzf "${DOWNLOAD_PATH_TOMCAT}"/tomcat.tar.gz -C "${INSTALL_PATH_TOMCAT}" --strip-components=1
+ else
+ RUN_TOMCAT=false
+ fi
+
+ # Removing the tar file
+ rm -rf "${DOWNLOAD_PATH_TOMCAT}"
+ fi
+}
+
+# ubuntu/debian install packages required for eclipse
+function apt_install_packages() {
+ # update the repositories
+ apt update
+
+ # Set non-interactive frontend (to avoid `tzdata` config options selection)
+ APT_INSTALL_CMD="DEBIAN_FRONTEND=noninteractive"
+ APT_INSTALL_CMD="${APT_INSTALL_CMD} apt install -y"
+
+ if [ "${INSTALL_GTK}" == true ]; then
+ # install gtk+3.0
+ APT_INSTALL_CMD="${APT_INSTALL_CMD} gtk+3.0"
+ fi
+
+ if [ "${INSTALL_XVFB}" == true ]; then
+ # install xvfb
+ APT_INSTALL_CMD="${APT_INSTALL_CMD} xvfb"
+ fi
+
+ eval "${APT_INSTALL_CMD}"
+}
+
+# Check if any application needs virtual screen and launch it
+function check_and_start_xvfb() {
+ # check if `xvfb` installed
+ if [ "${INSTALL_XVFB}" == true ]; then
+ # Spawning a virtual screen for GUI apps
+ Xvfb :1 -ac -screen 0 1024x768x8 &
+ # Saving the PID
+ XVFB_PID=$!
+ # Saving older display value
+ OLD_DISPLAY=$DISPLAY
+ # Setting DISPLAY to created screen
+ export DISPLAY=:1
+ fi
+}
+
+# Kill the created virtual screen
+function check_and_stop_xvfb() {
+ # check if `xvfb` installed
+ if [ "${INSTALL_XVFB}" == true ]; then
+ # Killing `xvfb` process to remove screen
+ kill -9 $XVFB_PID
+ # Setting back the DISPLAY to older value
+ export DISPLAY=$OLD_DISPLAY
+ fi
+}
+
+# Run the applications for specified iterations
+function run_apps() {
+ for ((i=0; i<SCC_GEN_RUNS_COUNT; i++))
+ do
+ if [ "${RUN_ECLIPSE}" == true ]; then
+ run_eclipse_and_stop
+ fi
+ if [ "${RUN_TOMCAT}" == true ]; then
+ run_tomcat_and_stop
+ fi
+ done
+}
+
+# function to install packages
+function install_packages() {
+ if [ "${IS_APT_ENV}" == true ]; then
+ apt_install_packages
+ fi
+}
+
+# function to download the applications
+function download_and_install_artifacts() {
+
+ # check for eclipse
+ check_to_download_eclipse
+
+ # check for tomcat
+ check_to_download_tomcat
+
+}
+
+# dry run to right size the cache
+function dry_run() {
+ # Creating base layer first instead of running sample programs to generate SCC directly
+ java -Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal,createLayer -Xscmx$SCC_SIZE -version
+
+ # Pointing cache for sample program runs
+ export OPENJ9_JAVA_OPTIONS="-Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal"
+
+ # check if we need xvfb for running application and start a virtual screen if required
+ check_and_start_xvfb
+
+ # Run the applications to generate SCC
+ run_apps
+
+ # check if started a virtual screen and kill the process
+ check_and_stop_xvfb
+
+ FULL=$( (java -Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,printallStats || true) 2>&1 | awk '/^Cache is [0-9.]*% .*full/ {print substr($3, 1, length($3)-1)}')
+
+ java -Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,destroy || true
+
+ SCC_SIZE="${SCC_SIZE:0:-1}"
+
+ SCC_SIZE=$(awk "BEGIN {print int($SCC_SIZE * $FULL / 100.0)}")
+
+ [ "${SCC_SIZE}" -eq 0 ] && SCC_SIZE=1
+
+ SCC_SIZE="${SCC_SIZE}m"
+
+ # Re-generating cache with new size
+ java -Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal,createLayer -Xscmx$SCC_SIZE -version
+
+ unset OPENJ9_JAVA_OPTIONS
+}
+
+# Generate SCC by running apps
+function generate_scc() {
+ # Pointing cache for sample app runs
+ export OPENJ9_JAVA_OPTIONS="-Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal"
+
+ # check if we need xvfb for running application and start a virtual screen if required
+ check_and_start_xvfb
+
+ # Run the applications to generate SCC
+ run_apps
+
+ # check if started a virtual screen and kill the process
+ check_and_stop_xvfb
+
+ # Checking the cache level
+ FULL=$( (java -Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,printallStats || true) 2>&1 | awk '/^Cache is [0-9.]*% .*full/ {print substr($3, 1, length($3)-1)}')
+
+ echo "SCC layer is $FULL% full."
+}
+
+# Remove the downloaded sample apps
+function remove_artifacts() {
+ # Command to remove apps
+ REMOVE_APPS="rm -rf"
+
+ # check for eclipse
+ if [ "${RUN_ECLIPSE}" == true ]; then
+ REMOVE_APPS="${REMOVE_APPS} ${INSTALL_PATH_ECLIPSE}"
+ fi
+
+ # check for tomcat
+ if [ "${RUN_TOMCAT}" == true ]; then
+ REMOVE_APPS="${REMOVE_APPS} ${INSTALL_PATH_TOMCAT}"
+ fi
+
+ eval "$REMOVE_APPS"
+}
+
+# Run eclipse and stop it after the startup
+function run_eclipse_and_stop() {
+ # Starting eclipse in background
+ "${INSTALL_PATH_ECLIPSE}"/eclipse/eclipse &
+ # Saving eclipse PID
+ ECLIPSE_PID=$!
+ # Waiting for eclipse to start - Sleeping for 1 minute
+ sleep 1m
+ # Killing eclipse process
+ kill -9 $ECLIPSE_PID
+ # Waiting for process to be killed - Sleeping for 10 seconds
+ sleep 10s
+}
+
+# Run tomcat and stop it after the startup
+function run_tomcat_and_stop() {
+ # Start tomcat wait till it comes up shut it down
+ "${INSTALL_PATH_TOMCAT}"/bin/startup.sh
+ # wait till tomcat starts - wait for 5 seconds
+ sleep 5
+ # Stop tomcat
+ "${INSTALL_PATH_TOMCAT}"/bin/shutdown.sh
+ # wait till tomcat stops - wait for 5 seconds
+ sleep 5
+}
+
+# Remove the installed packages
+function remove_packages() {
+ if [ "${IS_APT_ENV}" == true ]; then
+ APT_REMOVE_CMD="apt --purge -y autoremove"
+
+ if [ "${INSTALL_GTK}" == true ]; then
+ # remove gtk+3.0
+ APT_REMOVE_CMD="${APT_REMOVE_CMD} gtk+3.0"
+ fi
+
+ if [ "${INSTALL_XVFB}" == true ]; then
+ # remove xvfb
+ APT_REMOVE_CMD="${APT_REMOVE_CMD} xvfb"
+ fi
+
+ eval "${APT_REMOVE_CMD}"
+ fi
+}
+
+# check for OS release file
+if [ -f /etc/os-release ]; then
+ # load file to get the ID (OS name)
+ # shellcheck disable=SC1091
+ source /etc/os-release
+ OS=$ID
+fi
+
+# Check if OS is ubuntu/debian (we can run eclipse as packages required for it are available)
+if [ "${OS}" == "ubuntu" ] || [ "${OS}" = "debian" ]; then
+ # set IS_APT_ENV true
+ IS_APT_ENV=true
+
+ # Set eclipse run to `true`
+ RUN_ECLIPSE=true
+
+ # Set the required packages for eclipse to `true`
+ INSTALL_GTK=true
+ INSTALL_XVFB=true
+
+ # Call function `install_pkgs_via_apt` to install packages
+ install_packages
+fi
+
+# Download the sample apps and install
+download_and_install_artifacts
+
+# Dry run for SCC generation (To get exact size)
+dry_run
+
+# Generate SCC
+generate_scc
+
+# Remove installed artifacts
+remove_artifacts
+
+# Remove packages
+remove_packages
diff --git a/adoptopenjdk_openj9-windowsservercore-1809/Dockerfile.openj9.releases.full b/adoptopenjdk_14-openj9-windowsservercore-1809/Dockerfile.openj9.releases.full
similarity index 100%
copy from adoptopenjdk_openj9-windowsservercore-1809/Dockerfile.openj9.releases.full
copy to adoptopenjdk_14-openj9-windowsservercore-1809/Dockerfile.openj9.releases.full
diff --git a/adoptopenjdk_openj9-windowsservercore-ltsc2016/Dockerfile.openj9.releases.full b/adoptopenjdk_14-openj9-windowsservercore-ltsc2016/Dockerfile.openj9.releases.full
similarity index 100%
copy from adoptopenjdk_openj9-windowsservercore-ltsc2016/Dockerfile.openj9.releases.full
copy to adoptopenjdk_14-openj9-windowsservercore-ltsc2016/Dockerfile.openj9.releases.full
diff --git a/adoptopenjdk_8-hotspot-bionic/Dockerfile.hotspot.releases.full b/adoptopenjdk_15-jre-hotspot-bionic/Dockerfile.hotspot.releases.full
similarity index 60%
copy from adoptopenjdk_8-hotspot-bionic/Dockerfile.hotspot.releases.full
copy to adoptopenjdk_15-jre-hotspot-bionic/Dockerfile.hotspot.releases.full
index 5227a8a..f291f7c 100644
--- a/adoptopenjdk_8-hotspot-bionic/Dockerfile.hotspot.releases.full
+++ b/adoptopenjdk_15-jre-hotspot-bionic/Dockerfile.hotspot.releases.full
@@ -27,30 +27,30 @@ RUN apt-get update \
&& locale-gen en_US.UTF-8 \
&& rm -rf /var/lib/apt/lists/*
-ENV JAVA_VERSION jdk8u262-b10
+ENV JAVA_VERSION jdk-15+36
RUN set -eux; \
ARCH="$(dpkg --print-architecture)"; \
case "${ARCH}" in \
aarch64|arm64) \
- ESUM='7be0b2a4c749a277302a54b456624c076b3a5b990ad502e2a72d803ab31aecab'; \
- BINARY_URL='https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u262-b10/OpenJDK8U-jdk_aarch64_linux_hotspot_8u262b10.tar.gz'; \
+ ESUM='318f50bae6652d4468ee262ce0fd6569adbc461bea0d1ecce77ce2843efee8d4'; \
+ BINARY_URL='https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15%2B36/OpenJDK15U-jre_aarch64_linux_hotspot_15_36.tar.gz'; \
;; \
armhf|armv7l) \
- ESUM='dd85ebb9a64916b4b621a23729e3360adb363d430bf1e99e98f25397834d74bd'; \
- BINARY_URL='https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u262-b10/OpenJDK8U-jdk_arm_linux_hotspot_8u262b10.tar.gz'; \
+ ESUM='09c1ba3636e7899d8b43795d7988bcc4b1e1be2919764d94f6d4a1a855ce774f'; \
+ BINARY_URL='https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15%2B36/OpenJDK15U-jre_arm_linux_hotspot_15_36.tar.gz'; \
;; \
ppc64el|ppc64le) \
- ESUM='d2a16915fb85ba851145c91cda5666cb78f06bf4713a2b3bdce813779ff972c2'; \
- BINARY_URL='https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u262-b10/OpenJDK8U-jdk_ppc64le_linux_hotspot_8u262b10.tar.gz'; \
+ ESUM='6ea692c7e43bee201a56313bd9f4ddcdea43bed1dfe203c49316ac4d08a4cdd3'; \
+ BINARY_URL='https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15%2B36/OpenJDK15U-jre_ppc64le_linux_hotspot_15_36.tar.gz'; \
;; \
s390x) \
- ESUM='a504af6924a095cfb6c392653dccd7299925048c91b399d05efa95a094820120'; \
- BINARY_URL='https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u262-b10/OpenJDK8U-jdk_s390x_linux_hotspot_8u262b10.tar.gz'; \
+ ESUM='e1e124a29e2bf892d267eb63d00dd136558b4e276bcb6741ea676c995b2fff51'; \
+ BINARY_URL='https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15%2B36/OpenJDK15U-jre_s390x_linux_hotspot_15_36.tar.gz'; \
;; \
amd64|x86_64) \
- ESUM='733755fd649fad6ae91fc083f7e5a5a0b56410fb6ac1815cff29f744b128b1b1'; \
- BINARY_URL='https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u262-b10/OpenJDK8U-jdk_x64_linux_hotspot_8u262b10.tar.gz'; \
+ ESUM='230d97a6b16a0735f15013a91f7582a22282ec12bdfaec291ab63274cc075efb'; \
+ BINARY_URL='https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15%2B36/OpenJDK15U-jre_x64_linux_hotspot_15_36.tar.gz'; \
;; \
*) \
echo "Unsupported arch: ${ARCH}"; \
diff --git a/adoptopenjdk_8-hotspot-windowsservercore-1809/Dockerfile.hotspot.releases.full b/adoptopenjdk_15-jre-hotspot-windowsservercore-1809/Dockerfile.hotspot.releases.full
similarity index 77%
copy from adoptopenjdk_8-hotspot-windowsservercore-1809/Dockerfile.hotspot.releases.full
copy to adoptopenjdk_15-jre-hotspot-windowsservercore-1809/Dockerfile.hotspot.releases.full
index f3fd09c..b3d622e 100644
--- a/adoptopenjdk_8-hotspot-windowsservercore-1809/Dockerfile.hotspot.releases.full
+++ b/adoptopenjdk_15-jre-hotspot-windowsservercore-1809/Dockerfile.hotspot.releases.full
@@ -22,13 +22,13 @@ FROM mcr.microsoft.com/windows/servercore:1809
# $ProgressPreference: https://github.com/PowerShell/PowerShell/issues/2138#issuecomment-251261324
SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"]
-ENV JAVA_VERSION jdk8u262-b10
+ENV JAVA_VERSION jdk-15+36
-RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u262-b10/OpenJDK8U-jdk_x64_windows_hotspot_8u262b10.msi ...'); \
+RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15%2B36/OpenJDK15U-jre_x64_windows_hotspot_15_36.msi ...'); \
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; \
- wget https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u262-b10/OpenJDK8U-jdk_x64_windows_hotspot_8u262b10.msi -O 'openjdk.msi'; \
- Write-Host ('Verifying sha256 (251429e9c5ea2d2950aceca10c67e4bf5be3f5f299f2fad4c9757b5ac857cc2c) ...'); \
- if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne '251429e9c5ea2d2950aceca10c67e4bf5be3f5f299f2fad4c9757b5ac857cc2c') { \
+ wget https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15%2B36/OpenJDK15U-jre_x64_windows_hotspot_15_36.msi -O 'openjdk.msi'; \
+ Write-Host ('Verifying sha256 (d14250fb3ed06d6421c6b2e04ae266b436138213eea2fe4ddc3640df8064d9bc) ...'); \
+ if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne 'd14250fb3ed06d6421c6b2e04ae266b436138213eea2fe4ddc3640df8064d9bc') { \
Write-Host 'FAILED!'; \
exit 1; \
}; \
diff --git a/adoptopenjdk_8-jre-hotspot-windowsservercore-ltsc2016/Dockerfile.hotspot.releases.full b/adoptopenjdk_15-jre-hotspot-windowsservercore-ltsc2016/Dockerfile.hotspot.releases.full
similarity index 77%
copy from adoptopenjdk_8-jre-hotspot-windowsservercore-ltsc2016/Dockerfile.hotspot.releases.full
copy to adoptopenjdk_15-jre-hotspot-windowsservercore-ltsc2016/Dockerfile.hotspot.releases.full
index 7790fd0..98f4a11 100644
--- a/adoptopenjdk_8-jre-hotspot-windowsservercore-ltsc2016/Dockerfile.hotspot.releases.full
+++ b/adoptopenjdk_15-jre-hotspot-windowsservercore-ltsc2016/Dockerfile.hotspot.releases.full
@@ -22,13 +22,13 @@ FROM mcr.microsoft.com/windows/servercore:ltsc2016
# $ProgressPreference: https://github.com/PowerShell/PowerShell/issues/2138#issuecomment-251261324
SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"]
-ENV JAVA_VERSION jdk8u262-b10
+ENV JAVA_VERSION jdk-15+36
-RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u262-b10/OpenJDK8U-jre_x64_windows_hotspot_8u262b10.msi ...'); \
+RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15%2B36/OpenJDK15U-jre_x64_windows_hotspot_15_36.msi ...'); \
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; \
- wget https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u262-b10/OpenJDK8U-jre_x64_windows_hotspot_8u262b10.msi -O 'openjdk.msi'; \
- Write-Host ('Verifying sha256 (e85f21cddd791f1b362de285338912de60ee12d7fd27847faeee37f294f7a06b) ...'); \
- if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne 'e85f21cddd791f1b362de285338912de60ee12d7fd27847faeee37f294f7a06b') { \
+ wget https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15%2B36/OpenJDK15U-jre_x64_windows_hotspot_15_36.msi -O 'openjdk.msi'; \
+ Write-Host ('Verifying sha256 (d14250fb3ed06d6421c6b2e04ae266b436138213eea2fe4ddc3640df8064d9bc) ...'); \
+ if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne 'd14250fb3ed06d6421c6b2e04ae266b436138213eea2fe4ddc3640df8064d9bc') { \
Write-Host 'FAILED!'; \
exit 1; \
}; \
diff --git a/adoptopenjdk_openj9-bionic/Dockerfile.openj9.releases.full b/adoptopenjdk_15-jre-openj9-bionic/Dockerfile.openj9.releases.full
similarity index 65%
copy from adoptopenjdk_openj9-bionic/Dockerfile.openj9.releases.full
copy to adoptopenjdk_15-jre-openj9-bionic/Dockerfile.openj9.releases.full
index eff0c96..a5d0bba 100644
--- a/adoptopenjdk_openj9-bionic/Dockerfile.openj9.releases.full
+++ b/adoptopenjdk_15-jre-openj9-bionic/Dockerfile.openj9.releases.full
@@ -27,22 +27,22 @@ RUN apt-get update \
&& locale-gen en_US.UTF-8 \
&& rm -rf /var/lib/apt/lists/*
-ENV JAVA_VERSION jdk-14.0.2+12_openj9-0.21.0
+ENV JAVA_VERSION jdk-15+36_openj9-0.22.0
RUN set -eux; \
ARCH="$(dpkg --print-architecture)"; \
case "${ARCH}" in \
ppc64el|ppc64le) \
- ESUM='177fd161ae14df92203d70cd618559daf889ec0c172d6ee615859352f68a2371'; \
- BINARY_URL='https://github.com/AdoptOpenJDK/openjdk14-binaries/releases/download/jdk-14.0.2%2B12_openj9-0.21.0/OpenJDK14U-jdk_ppc64le_linux_openj9_14.0.2_12_openj9-0.21.0.tar.gz'; \
+ ESUM='fef3e6034a861b0bfa14120f064373d866b65f3525b9c791a647010194eb5632'; \
+ BINARY_URL='https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15%2B36_openj9-0.22.0/OpenJDK15U-jre_ppc64le_linux_openj9_15_36_openj9-0.22.0.tar.gz'; \
;; \
s390x) \
- ESUM='4757dc2009a0c31604be4631e02a5a3aac53ebe9b6a2046ae8995ec0e453dc1a'; \
- BINARY_URL='https://github.com/AdoptOpenJDK/openjdk14-binaries/releases/download/jdk-14.0.2%2B12_openj9-0.21.0/OpenJDK14U-jdk_s390x_linux_openj9_14.0.2_12_openj9-0.21.0.tar.gz'; \
+ ESUM='5f5a6a46a432af651d63538997b0850fed9f631ab4a797e29d33347d3052fddc'; \
+ BINARY_URL='https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15%2B36_openj9-0.22.0/OpenJDK15U-jre_s390x_linux_openj9_15_36_openj9-0.22.0.tar.gz'; \
;; \
amd64|x86_64) \
- ESUM='306f7138cdb65daaf2596ec36cafbde72088144c83b2e964f0193662e6caf3be'; \
- BINARY_URL='https://github.com/AdoptOpenJDK/openjdk14-binaries/releases/download/jdk-14.0.2%2B12_openj9-0.21.0/OpenJDK14U-jdk_x64_linux_openj9_14.0.2_12_openj9-0.21.0.tar.gz'; \
+ ESUM='3811aea0eeaccd4aa50bbf6a374e31b19f52a22c1f2c8b378e8ea0ac194b8638'; \
+ BINARY_URL='https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15%2B36_openj9-0.22.0/OpenJDK15U-jre_x64_linux_openj9_15_36_openj9-0.22.0.tar.gz'; \
;; \
*) \
echo "Unsupported arch: ${ARCH}"; \
@@ -59,4 +59,6 @@ RUN set -eux; \
ENV JAVA_HOME=/opt/java/openjdk \
PATH="/opt/java/openjdk/bin:$PATH"
ENV JAVA_TOOL_OPTIONS="-XX:+IgnoreUnrecognizedVMOptions -XX:+UseContainerSupport -XX:+IdleTuningCompactOnIdle -XX:+IdleTuningGcOnIdle"
-CMD ["jshell"]
+COPY generate_openj9_scc.sh /scripts/
+ RUN /scripts/generate_openj9_scc.sh
+ ENV OPENJ9_JAVA_OPTIONS="-Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,readonly,nonFatal"
diff --git a/adoptopenjdk_15-jre-openj9-bionic/generate_openj9_scc.sh b/adoptopenjdk_15-jre-openj9-bionic/generate_openj9_scc.sh
new file mode 100755
index 0000000..a5113ba
--- /dev/null
+++ b/adoptopenjdk_15-jre-openj9-bionic/generate_openj9_scc.sh
@@ -0,0 +1,318 @@
+#!/bin/bash
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# https://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+unset OPENJ9_JAVA_OPTIONS
+
+# Default size for SCC
+SCC_SIZE="50m"
+
+# Runs for generating SCC
+SCC_GEN_RUNS_COUNT=3
+
+# is running on ubuntu or debian - package manager apt
+IS_APT_ENV=false
+# Intitialise default / allowed sample app status
+RUN_ECLIPSE=false
+RUN_TOMCAT=true
+
+# Intitialise default / required packages status
+INSTALL_GTK=false
+INSTALL_XVFB=false
+
+# App download locations
+DOWNLOAD_PATH_ECLIPSE=/tmp/eclipse
+DOWNLOAD_PATH_TOMCAT=/tmp/tomcat
+
+# App installation locations
+INSTALL_PATH_ECLIPSE="${HOME}"/eclipse-home
+INSTALL_PATH_TOMCAT="${HOME}"/tomcat-home
+
+# URL's for the artifacts
+ECLIPSE_DWNLD_URL="http://www.mirrorservice.org/sites/download.eclipse.org/eclipseMirror/technology/epp/downloads/release/2020-06/M3/eclipse-java-2020-06-M3-linux-gtk-x86_64.tar.gz"
+TOMCAT_DWNLD_URL="https://archive.apache.org/dist/tomcat/tomcat-9/v9.0.35/bin/apache-tomcat-9.0.35.tar.gz"
+
+# Check and downlaod eclipse
+function check_to_download_eclipse() {
+ if [ "${RUN_ECLIPSE}" == true ]; then
+ # Creating a temporary directory for eclipse download
+ mkdir -p "${DOWNLOAD_PATH_ECLIPSE}" "${INSTALL_PATH_ECLIPSE}"
+
+ # Downloading eclipse
+ if curl --fail -o "${DOWNLOAD_PATH_ECLIPSE}"/eclipse.tar.gz "${ECLIPSE_DWNLD_URL}"; then
+ # Extracting eclipse
+ tar -xvzf "${DOWNLOAD_PATH_ECLIPSE}"/eclipse.tar.gz -C "$INSTALL_PATH_ECLIPSE" --strip-components=1
+ else
+ RUN_ECLIPSE=false
+ fi
+
+ # Removing the tar file
+ rm -rf "${DOWNLOAD_PATH_ECLIPSE}"
+ fi
+}
+
+# Check and download tomcat
+function check_to_download_tomcat() {
+ if [ "${RUN_TOMCAT}" == true ]; then
+ # Creating a temporary directory for tomcat download
+ mkdir -p "${DOWNLOAD_PATH_TOMCAT}" "${INSTALL_PATH_TOMCAT}"
+
+ # Downloading tomcat
+ if curl --fail -o "${DOWNLOAD_PATH_TOMCAT}"/tomcat.tar.gz "${TOMCAT_DWNLD_URL}"; then
+ # Extracting tomcat
+ tar -xvzf "${DOWNLOAD_PATH_TOMCAT}"/tomcat.tar.gz -C "${INSTALL_PATH_TOMCAT}" --strip-components=1
+ else
+ RUN_TOMCAT=false
+ fi
+
+ # Removing the tar file
+ rm -rf "${DOWNLOAD_PATH_TOMCAT}"
+ fi
+}
+
+# ubuntu/debian install packages required for eclipse
+function apt_install_packages() {
+ # update the repositories
+ apt update
+
+ # Set non-interactive frontend (to avoid `tzdata` config options selection)
+ APT_INSTALL_CMD="DEBIAN_FRONTEND=noninteractive"
+ APT_INSTALL_CMD="${APT_INSTALL_CMD} apt install -y"
+
+ if [ "${INSTALL_GTK}" == true ]; then
+ # install gtk+3.0
+ APT_INSTALL_CMD="${APT_INSTALL_CMD} gtk+3.0"
+ fi
+
+ if [ "${INSTALL_XVFB}" == true ]; then
+ # install xvfb
+ APT_INSTALL_CMD="${APT_INSTALL_CMD} xvfb"
+ fi
+
+ eval "${APT_INSTALL_CMD}"
+}
+
+# Check if any application needs virtual screen and launch it
+function check_and_start_xvfb() {
+ # check if `xvfb` installed
+ if [ "${INSTALL_XVFB}" == true ]; then
+ # Spawning a virtual screen for GUI apps
+ Xvfb :1 -ac -screen 0 1024x768x8 &
+ # Saving the PID
+ XVFB_PID=$!
+ # Saving older display value
+ OLD_DISPLAY=$DISPLAY
+ # Setting DISPLAY to created screen
+ export DISPLAY=:1
+ fi
+}
+
+# Kill the created virtual screen
+function check_and_stop_xvfb() {
+ # check if `xvfb` installed
+ if [ "${INSTALL_XVFB}" == true ]; then
+ # Killing `xvfb` process to remove screen
+ kill -9 $XVFB_PID
+ # Setting back the DISPLAY to older value
+ export DISPLAY=$OLD_DISPLAY
+ fi
+}
+
+# Run the applications for specified iterations
+function run_apps() {
+ for ((i=0; i<SCC_GEN_RUNS_COUNT; i++))
+ do
+ if [ "${RUN_ECLIPSE}" == true ]; then
+ run_eclipse_and_stop
+ fi
+ if [ "${RUN_TOMCAT}" == true ]; then
+ run_tomcat_and_stop
+ fi
+ done
+}
+
+# function to install packages
+function install_packages() {
+ if [ "${IS_APT_ENV}" == true ]; then
+ apt_install_packages
+ fi
+}
+
+# function to download the applications
+function download_and_install_artifacts() {
+
+ # check for eclipse
+ check_to_download_eclipse
+
+ # check for tomcat
+ check_to_download_tomcat
+
+}
+
+# dry run to right size the cache
+function dry_run() {
+ # Creating base layer first instead of running sample programs to generate SCC directly
+ java -Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal,createLayer -Xscmx$SCC_SIZE -version
+
+ # Pointing cache for sample program runs
+ export OPENJ9_JAVA_OPTIONS="-Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal"
+
+ # check if we need xvfb for running application and start a virtual screen if required
+ check_and_start_xvfb
+
+ # Run the applications to generate SCC
+ run_apps
+
+ # check if started a virtual screen and kill the process
+ check_and_stop_xvfb
+
+ FULL=$( (java -Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,printallStats || true) 2>&1 | awk '/^Cache is [0-9.]*% .*full/ {print substr($3, 1, length($3)-1)}')
+
+ java -Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,destroy || true
+
+ SCC_SIZE="${SCC_SIZE:0:-1}"
+
+ SCC_SIZE=$(awk "BEGIN {print int($SCC_SIZE * $FULL / 100.0)}")
+
+ [ "${SCC_SIZE}" -eq 0 ] && SCC_SIZE=1
+
+ SCC_SIZE="${SCC_SIZE}m"
+
+ # Re-generating cache with new size
+ java -Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal,createLayer -Xscmx$SCC_SIZE -version
+
+ unset OPENJ9_JAVA_OPTIONS
+}
+
+# Generate SCC by running apps
+function generate_scc() {
+ # Pointing cache for sample app runs
+ export OPENJ9_JAVA_OPTIONS="-Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal"
+
+ # check if we need xvfb for running application and start a virtual screen if required
+ check_and_start_xvfb
+
+ # Run the applications to generate SCC
+ run_apps
+
+ # check if started a virtual screen and kill the process
+ check_and_stop_xvfb
+
+ # Checking the cache level
+ FULL=$( (java -Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,printallStats || true) 2>&1 | awk '/^Cache is [0-9.]*% .*full/ {print substr($3, 1, length($3)-1)}')
+
+ echo "SCC layer is $FULL% full."
+}
+
+# Remove the downloaded sample apps
+function remove_artifacts() {
+ # Command to remove apps
+ REMOVE_APPS="rm -rf"
+
+ # check for eclipse
+ if [ "${RUN_ECLIPSE}" == true ]; then
+ REMOVE_APPS="${REMOVE_APPS} ${INSTALL_PATH_ECLIPSE}"
+ fi
+
+ # check for tomcat
+ if [ "${RUN_TOMCAT}" == true ]; then
+ REMOVE_APPS="${REMOVE_APPS} ${INSTALL_PATH_TOMCAT}"
+ fi
+
+ eval "$REMOVE_APPS"
+}
+
+# Run eclipse and stop it after the startup
+function run_eclipse_and_stop() {
+ # Starting eclipse in background
+ "${INSTALL_PATH_ECLIPSE}"/eclipse/eclipse &
+ # Saving eclipse PID
+ ECLIPSE_PID=$!
+ # Waiting for eclipse to start - Sleeping for 1 minute
+ sleep 1m
+ # Killing eclipse process
+ kill -9 $ECLIPSE_PID
+ # Waiting for process to be killed - Sleeping for 10 seconds
+ sleep 10s
+}
+
+# Run tomcat and stop it after the startup
+function run_tomcat_and_stop() {
+ # Start tomcat wait till it comes up shut it down
+ "${INSTALL_PATH_TOMCAT}"/bin/startup.sh
+ # wait till tomcat starts - wait for 5 seconds
+ sleep 5
+ # Stop tomcat
+ "${INSTALL_PATH_TOMCAT}"/bin/shutdown.sh
+ # wait till tomcat stops - wait for 5 seconds
+ sleep 5
+}
+
+# Remove the installed packages
+function remove_packages() {
+ if [ "${IS_APT_ENV}" == true ]; then
+ APT_REMOVE_CMD="apt --purge -y autoremove"
+
+ if [ "${INSTALL_GTK}" == true ]; then
+ # remove gtk+3.0
+ APT_REMOVE_CMD="${APT_REMOVE_CMD} gtk+3.0"
+ fi
+
+ if [ "${INSTALL_XVFB}" == true ]; then
+ # remove xvfb
+ APT_REMOVE_CMD="${APT_REMOVE_CMD} xvfb"
+ fi
+
+ eval "${APT_REMOVE_CMD}"
+ fi
+}
+
+# check for OS release file
+if [ -f /etc/os-release ]; then
+ # load file to get the ID (OS name)
+ # shellcheck disable=SC1091
+ source /etc/os-release
+ OS=$ID
+fi
+
+# Check if OS is ubuntu/debian (we can run eclipse as packages required for it are available)
+if [ "${OS}" == "ubuntu" ] || [ "${OS}" = "debian" ]; then
+ # set IS_APT_ENV true
+ IS_APT_ENV=true
+
+ # Set eclipse run to `true`
+ RUN_ECLIPSE=true
+
+ # Set the required packages for eclipse to `true`
+ INSTALL_GTK=true
+ INSTALL_XVFB=true
+
+ # Call function `install_pkgs_via_apt` to install packages
+ install_packages
+fi
+
+# Download the sample apps and install
+download_and_install_artifacts
+
+# Dry run for SCC generation (To get exact size)
+dry_run
+
+# Generate SCC
+generate_scc
+
+# Remove installed artifacts
+remove_artifacts
+
+# Remove packages
+remove_packages
diff --git a/adoptopenjdk_11-openj9-windowsservercore-1809/Dockerfile.openj9.releases.full b/adoptopenjdk_15-jre-openj9-windowsservercore-1809/Dockerfile.openj9.releases.full
similarity index 78%
copy from adoptopenjdk_11-openj9-windowsservercore-1809/Dockerfile.openj9.releases.full
copy to adoptopenjdk_15-jre-openj9-windowsservercore-1809/Dockerfile.openj9.releases.full
index 7e239e2..2b1e6bb 100644
--- a/adoptopenjdk_11-openj9-windowsservercore-1809/Dockerfile.openj9.releases.full
+++ b/adoptopenjdk_15-jre-openj9-windowsservercore-1809/Dockerfile.openj9.releases.full
@@ -22,13 +22,13 @@ FROM mcr.microsoft.com/windows/servercore:1809
# $ProgressPreference: https://github.com/PowerShell/PowerShell/issues/2138#issuecomment-251261324
SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"]
-ENV JAVA_VERSION jdk-11.0.8+10_openj9-0.21.0
+ENV JAVA_VERSION jdk-15+36_openj9-0.22.0
-RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk11-binaries/releases/download/jdk-11.0.8%2B10_openj9-0.21.0/OpenJDK11U-jdk_x64_windows_openj9_11.0.8_10_openj9-0.21.0.msi ...'); \
+RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15%2B36_openj9-0.22.0/OpenJDK15U-jre_x64_windows_openj9_15_36_openj9-0.22.0.msi ...'); \
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; \
- wget https://github.com/AdoptOpenJDK/openjdk11-binaries/releases/download/jdk-11.0.8%2B10_openj9-0.21.0/OpenJDK11U-jdk_x64_windows_openj9_11.0.8_10_openj9-0.21.0.msi -O 'openjdk.msi'; \
- Write-Host ('Verifying sha256 (7250326e5fad877da447bc1e37dfbfcaca18b10f1acc82ffc557a9421dc068bf) ...'); \
- if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne '7250326e5fad877da447bc1e37dfbfcaca18b10f1acc82ffc557a9421dc068bf') { \
+ wget https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15%2B36_openj9-0.22.0/OpenJDK15U-jre_x64_windows_openj9_15_36_openj9-0.22.0.msi -O 'openjdk.msi'; \
+ Write-Host ('Verifying sha256 (78b7f6950c5afafa99164644f8dc85cd05d653964e828b52ea1916a3e27b7e61) ...'); \
+ if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne '78b7f6950c5afafa99164644f8dc85cd05d653964e828b52ea1916a3e27b7e61') { \
Write-Host 'FAILED!'; \
exit 1; \
}; \
@@ -42,4 +42,3 @@ RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk11-binaries/
Write-Host 'Removing openjdk.msi ...'; \
Remove-Item openjdk.msi -Force
ENV JAVA_TOOL_OPTIONS="-XX:+IgnoreUnrecognizedVMOptions -XX:+UseContainerSupport -XX:+IdleTuningCompactOnIdle -XX:+IdleTuningGcOnIdle"
-CMD ["jshell"]
diff --git a/adoptopenjdk_11-openj9-windowsservercore-ltsc2016/Dockerfile.openj9.releases.full b/adoptopenjdk_15-jre-openj9-windowsservercore-ltsc2016/Dockerfile.openj9.releases.full
similarity index 78%
copy from adoptopenjdk_11-openj9-windowsservercore-ltsc2016/Dockerfile.openj9.releases.full
copy to adoptopenjdk_15-jre-openj9-windowsservercore-ltsc2016/Dockerfile.openj9.releases.full
index 8f2ec98..b0e40ac 100644
--- a/adoptopenjdk_11-openj9-windowsservercore-ltsc2016/Dockerfile.openj9.releases.full
+++ b/adoptopenjdk_15-jre-openj9-windowsservercore-ltsc2016/Dockerfile.openj9.releases.full
@@ -22,13 +22,13 @@ FROM mcr.microsoft.com/windows/servercore:ltsc2016
# $ProgressPreference: https://github.com/PowerShell/PowerShell/issues/2138#issuecomment-251261324
SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"]
-ENV JAVA_VERSION jdk-11.0.8+10_openj9-0.21.0
+ENV JAVA_VERSION jdk-15+36_openj9-0.22.0
-RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk11-binaries/releases/download/jdk-11.0.8%2B10_openj9-0.21.0/OpenJDK11U-jdk_x64_windows_openj9_11.0.8_10_openj9-0.21.0.msi ...'); \
+RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15%2B36_openj9-0.22.0/OpenJDK15U-jre_x64_windows_openj9_15_36_openj9-0.22.0.msi ...'); \
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; \
- wget https://github.com/AdoptOpenJDK/openjdk11-binaries/releases/download/jdk-11.0.8%2B10_openj9-0.21.0/OpenJDK11U-jdk_x64_windows_openj9_11.0.8_10_openj9-0.21.0.msi -O 'openjdk.msi'; \
- Write-Host ('Verifying sha256 (7250326e5fad877da447bc1e37dfbfcaca18b10f1acc82ffc557a9421dc068bf) ...'); \
- if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne '7250326e5fad877da447bc1e37dfbfcaca18b10f1acc82ffc557a9421dc068bf') { \
+ wget https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15%2B36_openj9-0.22.0/OpenJDK15U-jre_x64_windows_openj9_15_36_openj9-0.22.0.msi -O 'openjdk.msi'; \
+ Write-Host ('Verifying sha256 (78b7f6950c5afafa99164644f8dc85cd05d653964e828b52ea1916a3e27b7e61) ...'); \
+ if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne '78b7f6950c5afafa99164644f8dc85cd05d653964e828b52ea1916a3e27b7e61') { \
Write-Host 'FAILED!'; \
exit 1; \
}; \
@@ -42,4 +42,3 @@ RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk11-binaries/
Write-Host 'Removing openjdk.msi ...'; \
Remove-Item openjdk.msi -Force
ENV JAVA_TOOL_OPTIONS="-XX:+IgnoreUnrecognizedVMOptions -XX:+UseContainerSupport -XX:+IdleTuningCompactOnIdle -XX:+IdleTuningGcOnIdle"
-CMD ["jshell"]
diff --git a/adoptopenjdk_8-hotspot-bionic/Dockerfile.hotspot.releases.full b/adoptopenjdk_8-hotspot-bionic/Dockerfile.hotspot.releases.full
index 5227a8a..e3c718d 100644
--- a/adoptopenjdk_8-hotspot-bionic/Dockerfile.hotspot.releases.full
+++ b/adoptopenjdk_8-hotspot-bionic/Dockerfile.hotspot.releases.full
@@ -27,30 +27,30 @@ RUN apt-get update \
&& locale-gen en_US.UTF-8 \
&& rm -rf /var/lib/apt/lists/*
-ENV JAVA_VERSION jdk8u262-b10
+ENV JAVA_VERSION jdk8u265-b01
RUN set -eux; \
ARCH="$(dpkg --print-architecture)"; \
case "${ARCH}" in \
aarch64|arm64) \
- ESUM='7be0b2a4c749a277302a54b456624c076b3a5b990ad502e2a72d803ab31aecab'; \
- BINARY_URL='https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u262-b10/OpenJDK8U-jdk_aarch64_linux_hotspot_8u262b10.tar.gz'; \
+ ESUM='87d16dac293d2a9abbb559a277bfaded702f28d1bfdc526f8613bb9cfed84a12'; \
+ BINARY_URL='https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u265-b01/OpenJDK8U-jdk_aarch64_linux_hotspot_8u265b01.tar.gz'; \
;; \
armhf|armv7l) \
- ESUM='dd85ebb9a64916b4b621a23729e3360adb363d430bf1e99e98f25397834d74bd'; \
- BINARY_URL='https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u262-b10/OpenJDK8U-jdk_arm_linux_hotspot_8u262b10.tar.gz'; \
+ ESUM='dc3405aab81f422b7721f665c76371bd7b03c291eea89cd110a82d8bcf07809a'; \
+ BINARY_URL='https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u265-b01/OpenJDK8U-jdk_arm_linux_hotspot_8u265b01.tar.gz'; \
;; \
ppc64el|ppc64le) \
- ESUM='d2a16915fb85ba851145c91cda5666cb78f06bf4713a2b3bdce813779ff972c2'; \
- BINARY_URL='https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u262-b10/OpenJDK8U-jdk_ppc64le_linux_hotspot_8u262b10.tar.gz'; \
+ ESUM='7bbb9d76458ee29bc5e2458b32a91b8c032ecffe6cb8500734ca41d2d8f5c9f3'; \
+ BINARY_URL='https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u265-b01/OpenJDK8U-jdk_ppc64le_linux_hotspot_8u265b01.tar.gz'; \
;; \
s390x) \
- ESUM='a504af6924a095cfb6c392653dccd7299925048c91b399d05efa95a094820120'; \
- BINARY_URL='https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u262-b10/OpenJDK8U-jdk_s390x_linux_hotspot_8u262b10.tar.gz'; \
+ ESUM='aca50f02d59169cb428d54501846b518edc9fff6a6f428459c72b4faa2b4abb0'; \
+ BINARY_URL='https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u265-b01/OpenJDK8U-jdk_s390x_linux_hotspot_8u265b01.tar.gz'; \
;; \
amd64|x86_64) \
- ESUM='733755fd649fad6ae91fc083f7e5a5a0b56410fb6ac1815cff29f744b128b1b1'; \
- BINARY_URL='https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u262-b10/OpenJDK8U-jdk_x64_linux_hotspot_8u262b10.tar.gz'; \
+ ESUM='1285da6278f2d38a790a21148d7e683f20de0799c44b937043830ef6b57f58c4'; \
+ BINARY_URL='https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u265-b01/OpenJDK8U-jdk_x64_linux_hotspot_8u265b01.tar.gz'; \
;; \
*) \
echo "Unsupported arch: ${ARCH}"; \
diff --git a/adoptopenjdk_8-hotspot-windowsservercore-1809/Dockerfile.hotspot.releases.full b/adoptopenjdk_8-hotspot-windowsservercore-1809/Dockerfile.hotspot.releases.full
index f3fd09c..7f626b3 100644
--- a/adoptopenjdk_8-hotspot-windowsservercore-1809/Dockerfile.hotspot.releases.full
+++ b/adoptopenjdk_8-hotspot-windowsservercore-1809/Dockerfile.hotspot.releases.full
@@ -22,13 +22,13 @@ FROM mcr.microsoft.com/windows/servercore:1809
# $ProgressPreference: https://github.com/PowerShell/PowerShell/issues/2138#issuecomment-251261324
SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"]
-ENV JAVA_VERSION jdk8u262-b10
+ENV JAVA_VERSION jdk8u265-b01
-RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u262-b10/OpenJDK8U-jdk_x64_windows_hotspot_8u262b10.msi ...'); \
+RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u265-b01/OpenJDK8U-jdk_x64_windows_hotspot_8u265b01.msi ...'); \
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; \
- wget https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u262-b10/OpenJDK8U-jdk_x64_windows_hotspot_8u262b10.msi -O 'openjdk.msi'; \
- Write-Host ('Verifying sha256 (251429e9c5ea2d2950aceca10c67e4bf5be3f5f299f2fad4c9757b5ac857cc2c) ...'); \
- if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne '251429e9c5ea2d2950aceca10c67e4bf5be3f5f299f2fad4c9757b5ac857cc2c') { \
+ wget https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u265-b01/OpenJDK8U-jdk_x64_windows_hotspot_8u265b01.msi -O 'openjdk.msi'; \
+ Write-Host ('Verifying sha256 (3749bfd8dcc4ce3877a5b593f7df8fe05d7294435b62a919be35a003c559e033) ...'); \
+ if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne '3749bfd8dcc4ce3877a5b593f7df8fe05d7294435b62a919be35a003c559e033') { \
Write-Host 'FAILED!'; \
exit 1; \
}; \
diff --git a/adoptopenjdk_8-hotspot-windowsservercore-ltsc2016/Dockerfile.hotspot.releases.full b/adoptopenjdk_8-hotspot-windowsservercore-ltsc2016/Dockerfile.hotspot.releases.full
index 08180ff..1ce974f 100644
--- a/adoptopenjdk_8-hotspot-windowsservercore-ltsc2016/Dockerfile.hotspot.releases.full
+++ b/adoptopenjdk_8-hotspot-windowsservercore-ltsc2016/Dockerfile.hotspot.releases.full
@@ -22,13 +22,13 @@ FROM mcr.microsoft.com/windows/servercore:ltsc2016
# $ProgressPreference: https://github.com/PowerShell/PowerShell/issues/2138#issuecomment-251261324
SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"]
-ENV JAVA_VERSION jdk8u262-b10
+ENV JAVA_VERSION jdk8u265-b01
-RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u262-b10/OpenJDK8U-jdk_x64_windows_hotspot_8u262b10.msi ...'); \
+RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u265-b01/OpenJDK8U-jdk_x64_windows_hotspot_8u265b01.msi ...'); \
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; \
- wget https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u262-b10/OpenJDK8U-jdk_x64_windows_hotspot_8u262b10.msi -O 'openjdk.msi'; \
- Write-Host ('Verifying sha256 (251429e9c5ea2d2950aceca10c67e4bf5be3f5f299f2fad4c9757b5ac857cc2c) ...'); \
- if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne '251429e9c5ea2d2950aceca10c67e4bf5be3f5f299f2fad4c9757b5ac857cc2c') { \
+ wget https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u265-b01/OpenJDK8U-jdk_x64_windows_hotspot_8u265b01.msi -O 'openjdk.msi'; \
+ Write-Host ('Verifying sha256 (3749bfd8dcc4ce3877a5b593f7df8fe05d7294435b62a919be35a003c559e033) ...'); \
+ if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne '3749bfd8dcc4ce3877a5b593f7df8fe05d7294435b62a919be35a003c559e033') { \
Write-Host 'FAILED!'; \
exit 1; \
}; \
diff --git a/adoptopenjdk_8-jre-hotspot-bionic/Dockerfile.hotspot.releases.full b/adoptopenjdk_8-jre-hotspot-bionic/Dockerfile.hotspot.releases.full
index b6996a0..702b190 100644
--- a/adoptopenjdk_8-jre-hotspot-bionic/Dockerfile.hotspot.releases.full
+++ b/adoptopenjdk_8-jre-hotspot-bionic/Dockerfile.hotspot.releases.full
@@ -27,30 +27,30 @@ RUN apt-get update \
&& locale-gen en_US.UTF-8 \
&& rm -rf /var/lib/apt/lists/*
-ENV JAVA_VERSION jdk8u262-b10
+ENV JAVA_VERSION jdk8u265-b01
RUN set -eux; \
ARCH="$(dpkg --print-architecture)"; \
case "${ARCH}" in \
aarch64|arm64) \
- ESUM='0ad1ff282ad034a613c64313c885edef5dfbc5dd51f2eda705bbeb7fa822f238'; \
- BINARY_URL='https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u262-b10/OpenJDK8U-jre_aarch64_linux_hotspot_8u262b10.tar.gz'; \
+ ESUM='2f9c5be1bf704f1233bcf96b8c02524c14dc4d43dc80c4926856091961b79948'; \
+ BINARY_URL='https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u265-b01/OpenJDK8U-jre_aarch64_linux_hotspot_8u265b01.tar.gz'; \
;; \
armhf|armv7l) \
- ESUM='330ce008c6f49ddd6dcf43c7839896bb7fe14843300358a71b441a3f94036f69'; \
- BINARY_URL='https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u262-b10/OpenJDK8U-jre_arm_linux_hotspot_8u262b10.tar.gz'; \
+ ESUM='4ac2503725b2729ec245dbdb000b2486f9c73ae86860c9525f9ac822ec81f0d6'; \
+ BINARY_URL='https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u265-b01/OpenJDK8U-jre_arm_linux_hotspot_8u265b01.tar.gz'; \
;; \
ppc64el|ppc64le) \
- ESUM='12309354889da2ed9085fda9812c7d2653fa099c36d322af222da11cbb244df7'; \
- BINARY_URL='https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u262-b10/OpenJDK8U-jre_ppc64le_linux_hotspot_8u262b10.tar.gz'; \
+ ESUM='4fb3640fae4b9bd4ebf834c775b547ed930cd1b805f4686223994480411aee72'; \
+ BINARY_URL='https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u265-b01/OpenJDK8U-jre_ppc64le_linux_hotspot_8u265b01.tar.gz'; \
;; \
s390x) \
- ESUM='0225d0a8707c0b6a059c58b77dd7387fb439816100d668ba000c4536cef77fc2'; \
- BINARY_URL='https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u262-b10/OpenJDK8U-jre_s390x_linux_hotspot_8u262b10.tar.gz'; \
+ ESUM='8b76480c809c4fde654ab55d10371c35d70b50069ab1724960509d99ed61065d'; \
+ BINARY_URL='https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u265-b01/OpenJDK8U-jre_s390x_linux_hotspot_8u265b01.tar.gz'; \
;; \
amd64|x86_64) \
- ESUM='3ce1f34b279a4f8fc6374f5644739622886dd4bcac4fcb0eb596955bac5ca5a4'; \
- BINARY_URL='https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u262-b10/OpenJDK8U-jre_x64_linux_hotspot_8u262b10.tar.gz'; \
+ ESUM='9bce39f63d24626da75778f240294fa466a0ed117e32db798164621fe30b0723'; \
+ BINARY_URL='https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u265-b01/OpenJDK8U-jre_x64_linux_hotspot_8u265b01.tar.gz'; \
;; \
*) \
echo "Unsupported arch: ${ARCH}"; \
diff --git a/adoptopenjdk_8-jre-hotspot-windowsservercore-1809/Dockerfile.hotspot.releases.full b/adoptopenjdk_8-jre-hotspot-windowsservercore-1809/Dockerfile.hotspot.releases.full
index 0a3b655..f414d68 100644
--- a/adoptopenjdk_8-jre-hotspot-windowsservercore-1809/Dockerfile.hotspot.releases.full
+++ b/adoptopenjdk_8-jre-hotspot-windowsservercore-1809/Dockerfile.hotspot.releases.full
@@ -22,13 +22,13 @@ FROM mcr.microsoft.com/windows/servercore:1809
# $ProgressPreference: https://github.com/PowerShell/PowerShell/issues/2138#issuecomment-251261324
SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"]
-ENV JAVA_VERSION jdk8u252-b09.1
+ENV JAVA_VERSION jdk8u265-b01
-RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u252-b09.1/OpenJDK8U-jre_x64_windows_hotspot_8u252b09.msi ...'); \
+RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u265-b01/OpenJDK8U-jre_x64_windows_hotspot_8u265b01.msi ...'); \
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; \
- wget https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u252-b09.1/OpenJDK8U-jre_x64_windows_hotspot_8u252b09.msi -O 'openjdk.msi'; \
- Write-Host ('Verifying sha256 (7651a26e53260e48ca2431a8cdb6b910e8f8c92564cb8378b566d77346a63527) ...'); \
- if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne '7651a26e53260e48ca2431a8cdb6b910e8f8c92564cb8378b566d77346a63527') { \
+ wget https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u265-b01/OpenJDK8U-jre_x64_windows_hotspot_8u265b01.msi -O 'openjdk.msi'; \
+ Write-Host ('Verifying sha256 (5a41ec5d781429b7364412fcb7a05bfd4dd633d9b5e67ab2cdf878ee5ed4c722) ...'); \
+ if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne '5a41ec5d781429b7364412fcb7a05bfd4dd633d9b5e67ab2cdf878ee5ed4c722') { \
Write-Host 'FAILED!'; \
exit 1; \
}; \
@@ -38,6 +38,6 @@ RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk8-binaries/r
Write-Host 'Installing using MSI ...'; \
Start-Process -FilePath "msiexec.exe" -ArgumentList '/i', 'openjdk.msi', '/L*V', 'C:\temp\OpenJDK.log', \
'/quiet', 'ADDLOCAL=FeatureEnvironment,FeatureJarFileRunWith,FeatureJavaHome' -Wait -Passthru; \
+ Remove-Item -Path C:\temp -Recurse | Out-Null; \
Write-Host 'Removing openjdk.msi ...'; \
- Remove-Item openjdk.msi -Force; \
- Remove-Item -Path C:\temp -Recurse | Out-Null;
+ Remove-Item openjdk.msi -Force
diff --git a/adoptopenjdk_8-jre-hotspot-windowsservercore-ltsc2016/Dockerfile.hotspot.releases.full b/adoptopenjdk_8-jre-hotspot-windowsservercore-ltsc2016/Dockerfile.hotspot.releases.full
index 7790fd0..660a88c 100644
--- a/adoptopenjdk_8-jre-hotspot-windowsservercore-ltsc2016/Dockerfile.hotspot.releases.full
+++ b/adoptopenjdk_8-jre-hotspot-windowsservercore-ltsc2016/Dockerfile.hotspot.releases.full
@@ -22,13 +22,13 @@ FROM mcr.microsoft.com/windows/servercore:ltsc2016
# $ProgressPreference: https://github.com/PowerShell/PowerShell/issues/2138#issuecomment-251261324
SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"]
-ENV JAVA_VERSION jdk8u262-b10
+ENV JAVA_VERSION jdk8u265-b01
-RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u262-b10/OpenJDK8U-jre_x64_windows_hotspot_8u262b10.msi ...'); \
+RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u265-b01/OpenJDK8U-jre_x64_windows_hotspot_8u265b01.msi ...'); \
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; \
- wget https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u262-b10/OpenJDK8U-jre_x64_windows_hotspot_8u262b10.msi -O 'openjdk.msi'; \
- Write-Host ('Verifying sha256 (e85f21cddd791f1b362de285338912de60ee12d7fd27847faeee37f294f7a06b) ...'); \
- if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne 'e85f21cddd791f1b362de285338912de60ee12d7fd27847faeee37f294f7a06b') { \
+ wget https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u265-b01/OpenJDK8U-jre_x64_windows_hotspot_8u265b01.msi -O 'openjdk.msi'; \
+ Write-Host ('Verifying sha256 (5a41ec5d781429b7364412fcb7a05bfd4dd633d9b5e67ab2cdf878ee5ed4c722) ...'); \
+ if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne '5a41ec5d781429b7364412fcb7a05bfd4dd633d9b5e67ab2cdf878ee5ed4c722') { \
Write-Host 'FAILED!'; \
exit 1; \
}; \
diff --git a/adoptopenjdk_8-jre-openj9-bionic/Dockerfile.openj9.releases.full b/adoptopenjdk_8-jre-openj9-bionic/Dockerfile.openj9.releases.full
index 368a875..8dd8e22 100644
--- a/adoptopenjdk_8-jre-openj9-bionic/Dockerfile.openj9.releases.full
+++ b/adoptopenjdk_8-jre-openj9-bionic/Dockerfile.openj9.releases.full
@@ -27,22 +27,22 @@ RUN apt-get update \
&& locale-gen en_US.UTF-8 \
&& rm -rf /var/lib/apt/lists/*
-ENV JAVA_VERSION jdk8u262-b10_openj9-0.21.0
+ENV JAVA_VERSION jdk8u265-b01_openj9-0.21.0
RUN set -eux; \
ARCH="$(dpkg --print-architecture)"; \
case "${ARCH}" in \
ppc64el|ppc64le) \
- ESUM='722517d9565bd9602580609114eb0de9b40b01050d52ff7bae24c438d363e186'; \
- BINARY_URL='https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u262-b10_openj9-0.21.0/OpenJDK8U-jre_ppc64le_linux_openj9_8u262b10_openj9-0.21.0.tar.gz'; \
+ ESUM='b1c91e757195b87d51027ea97fece00ac1adb9837b055e5f039dd45511fb3c0a'; \
+ BINARY_URL='https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u265-b01_openj9-0.21.0/OpenJDK8U-jre_ppc64le_linux_openj9_8u265b01_openj9-0.21.0.tar.gz'; \
;; \
s390x) \
- ESUM='c14aeedf4e989a6b31e00d6e18b8377957b07b000cac316aee9d973ef6d65b6f'; \
- BINARY_URL='https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u262-b10_openj9-0.21.0/OpenJDK8U-jre_s390x_linux_openj9_8u262b10_openj9-0.21.0.tar.gz'; \
+ ESUM='ec573cb2361b5fee3944387329d7859889d73c6c8a7d5f7ecf0d95503efda726'; \
+ BINARY_URL='https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u265-b01_openj9-0.21.0/OpenJDK8U-jre_s390x_linux_openj9_8u265b01_openj9-0.21.0.tar.gz'; \
;; \
amd64|x86_64) \
- ESUM='aef8750b492ff6371318cf5138e38827d8895815b2ac079dcfcb02007a45c7f6'; \
- BINARY_URL='https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u262-b10_openj9-0.21.0/OpenJDK8U-jre_x64_linux_openj9_8u262b10_openj9-0.21.0.tar.gz'; \
+ ESUM='0da0aad21f02b4f08f717647def8beafcf0116c36b195705416f46a1ab97f4de'; \
+ BINARY_URL='https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u265-b01_openj9-0.21.0/OpenJDK8U-jre_x64_linux_openj9_8u265b01_openj9-0.21.0.tar.gz'; \
;; \
*) \
echo "Unsupported arch: ${ARCH}"; \
@@ -59,3 +59,6 @@ RUN set -eux; \
ENV JAVA_HOME=/opt/java/openjdk \
PATH="/opt/java/openjdk/bin:$PATH"
ENV JAVA_TOOL_OPTIONS="-XX:+IgnoreUnrecognizedVMOptions -XX:+UseContainerSupport -XX:+IdleTuningCompactOnIdle -XX:+IdleTuningGcOnIdle"
+COPY generate_openj9_scc.sh /scripts/
+ RUN /scripts/generate_openj9_scc.sh
+ ENV OPENJ9_JAVA_OPTIONS="-Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,readonly,nonFatal"
diff --git a/adoptopenjdk_8-jre-openj9-bionic/generate_openj9_scc.sh b/adoptopenjdk_8-jre-openj9-bionic/generate_openj9_scc.sh
new file mode 100755
index 0000000..a5113ba
--- /dev/null
+++ b/adoptopenjdk_8-jre-openj9-bionic/generate_openj9_scc.sh
@@ -0,0 +1,318 @@
+#!/bin/bash
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# https://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+unset OPENJ9_JAVA_OPTIONS
+
+# Default size for SCC
+SCC_SIZE="50m"
+
+# Runs for generating SCC
+SCC_GEN_RUNS_COUNT=3
+
+# is running on ubuntu or debian - package manager apt
+IS_APT_ENV=false
+# Intitialise default / allowed sample app status
+RUN_ECLIPSE=false
+RUN_TOMCAT=true
+
+# Intitialise default / required packages status
+INSTALL_GTK=false
+INSTALL_XVFB=false
+
+# App download locations
+DOWNLOAD_PATH_ECLIPSE=/tmp/eclipse
+DOWNLOAD_PATH_TOMCAT=/tmp/tomcat
+
+# App installation locations
+INSTALL_PATH_ECLIPSE="${HOME}"/eclipse-home
+INSTALL_PATH_TOMCAT="${HOME}"/tomcat-home
+
+# URL's for the artifacts
+ECLIPSE_DWNLD_URL="http://www.mirrorservice.org/sites/download.eclipse.org/eclipseMirror/technology/epp/downloads/release/2020-06/M3/eclipse-java-2020-06-M3-linux-gtk-x86_64.tar.gz"
+TOMCAT_DWNLD_URL="https://archive.apache.org/dist/tomcat/tomcat-9/v9.0.35/bin/apache-tomcat-9.0.35.tar.gz"
+
+# Check and downlaod eclipse
+function check_to_download_eclipse() {
+ if [ "${RUN_ECLIPSE}" == true ]; then
+ # Creating a temporary directory for eclipse download
+ mkdir -p "${DOWNLOAD_PATH_ECLIPSE}" "${INSTALL_PATH_ECLIPSE}"
+
+ # Downloading eclipse
+ if curl --fail -o "${DOWNLOAD_PATH_ECLIPSE}"/eclipse.tar.gz "${ECLIPSE_DWNLD_URL}"; then
+ # Extracting eclipse
+ tar -xvzf "${DOWNLOAD_PATH_ECLIPSE}"/eclipse.tar.gz -C "$INSTALL_PATH_ECLIPSE" --strip-components=1
+ else
+ RUN_ECLIPSE=false
+ fi
+
+ # Removing the tar file
+ rm -rf "${DOWNLOAD_PATH_ECLIPSE}"
+ fi
+}
+
+# Check and download tomcat
+function check_to_download_tomcat() {
+ if [ "${RUN_TOMCAT}" == true ]; then
+ # Creating a temporary directory for tomcat download
+ mkdir -p "${DOWNLOAD_PATH_TOMCAT}" "${INSTALL_PATH_TOMCAT}"
+
+ # Downloading tomcat
+ if curl --fail -o "${DOWNLOAD_PATH_TOMCAT}"/tomcat.tar.gz "${TOMCAT_DWNLD_URL}"; then
+ # Extracting tomcat
+ tar -xvzf "${DOWNLOAD_PATH_TOMCAT}"/tomcat.tar.gz -C "${INSTALL_PATH_TOMCAT}" --strip-components=1
+ else
+ RUN_TOMCAT=false
+ fi
+
+ # Removing the tar file
+ rm -rf "${DOWNLOAD_PATH_TOMCAT}"
+ fi
+}
+
+# ubuntu/debian install packages required for eclipse
+function apt_install_packages() {
+ # update the repositories
+ apt update
+
+ # Set non-interactive frontend (to avoid `tzdata` config options selection)
+ APT_INSTALL_CMD="DEBIAN_FRONTEND=noninteractive"
+ APT_INSTALL_CMD="${APT_INSTALL_CMD} apt install -y"
+
+ if [ "${INSTALL_GTK}" == true ]; then
+ # install gtk+3.0
+ APT_INSTALL_CMD="${APT_INSTALL_CMD} gtk+3.0"
+ fi
+
+ if [ "${INSTALL_XVFB}" == true ]; then
+ # install xvfb
+ APT_INSTALL_CMD="${APT_INSTALL_CMD} xvfb"
+ fi
+
+ eval "${APT_INSTALL_CMD}"
+}
+
+# Check if any application needs virtual screen and launch it
+function check_and_start_xvfb() {
+ # check if `xvfb` installed
+ if [ "${INSTALL_XVFB}" == true ]; then
+ # Spawning a virtual screen for GUI apps
+ Xvfb :1 -ac -screen 0 1024x768x8 &
+ # Saving the PID
+ XVFB_PID=$!
+ # Saving older display value
+ OLD_DISPLAY=$DISPLAY
+ # Setting DISPLAY to created screen
+ export DISPLAY=:1
+ fi
+}
+
+# Kill the created virtual screen
+function check_and_stop_xvfb() {
+ # check if `xvfb` installed
+ if [ "${INSTALL_XVFB}" == true ]; then
+ # Killing `xvfb` process to remove screen
+ kill -9 $XVFB_PID
+ # Setting back the DISPLAY to older value
+ export DISPLAY=$OLD_DISPLAY
+ fi
+}
+
+# Run the applications for specified iterations
+function run_apps() {
+ for ((i=0; i<SCC_GEN_RUNS_COUNT; i++))
+ do
+ if [ "${RUN_ECLIPSE}" == true ]; then
+ run_eclipse_and_stop
+ fi
+ if [ "${RUN_TOMCAT}" == true ]; then
+ run_tomcat_and_stop
+ fi
+ done
+}
+
+# function to install packages
+function install_packages() {
+ if [ "${IS_APT_ENV}" == true ]; then
+ apt_install_packages
+ fi
+}
+
+# function to download the applications
+function download_and_install_artifacts() {
+
+ # check for eclipse
+ check_to_download_eclipse
+
+ # check for tomcat
+ check_to_download_tomcat
+
+}
+
+# dry run to right size the cache
+function dry_run() {
+ # Creating base layer first instead of running sample programs to generate SCC directly
+ java -Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal,createLayer -Xscmx$SCC_SIZE -version
+
+ # Pointing cache for sample program runs
+ export OPENJ9_JAVA_OPTIONS="-Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal"
+
+ # check if we need xvfb for running application and start a virtual screen if required
+ check_and_start_xvfb
+
+ # Run the applications to generate SCC
+ run_apps
+
+ # check if started a virtual screen and kill the process
+ check_and_stop_xvfb
+
+ FULL=$( (java -Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,printallStats || true) 2>&1 | awk '/^Cache is [0-9.]*% .*full/ {print substr($3, 1, length($3)-1)}')
+
+ java -Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,destroy || true
+
+ SCC_SIZE="${SCC_SIZE:0:-1}"
+
+ SCC_SIZE=$(awk "BEGIN {print int($SCC_SIZE * $FULL / 100.0)}")
+
+ [ "${SCC_SIZE}" -eq 0 ] && SCC_SIZE=1
+
+ SCC_SIZE="${SCC_SIZE}m"
+
+ # Re-generating cache with new size
+ java -Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal,createLayer -Xscmx$SCC_SIZE -version
+
+ unset OPENJ9_JAVA_OPTIONS
+}
+
+# Generate SCC by running apps
+function generate_scc() {
+ # Pointing cache for sample app runs
+ export OPENJ9_JAVA_OPTIONS="-Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal"
+
+ # check if we need xvfb for running application and start a virtual screen if required
+ check_and_start_xvfb
+
+ # Run the applications to generate SCC
+ run_apps
+
+ # check if started a virtual screen and kill the process
+ check_and_stop_xvfb
+
+ # Checking the cache level
+ FULL=$( (java -Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,printallStats || true) 2>&1 | awk '/^Cache is [0-9.]*% .*full/ {print substr($3, 1, length($3)-1)}')
+
+ echo "SCC layer is $FULL% full."
+}
+
+# Remove the downloaded sample apps
+function remove_artifacts() {
+ # Command to remove apps
+ REMOVE_APPS="rm -rf"
+
+ # check for eclipse
+ if [ "${RUN_ECLIPSE}" == true ]; then
+ REMOVE_APPS="${REMOVE_APPS} ${INSTALL_PATH_ECLIPSE}"
+ fi
+
+ # check for tomcat
+ if [ "${RUN_TOMCAT}" == true ]; then
+ REMOVE_APPS="${REMOVE_APPS} ${INSTALL_PATH_TOMCAT}"
+ fi
+
+ eval "$REMOVE_APPS"
+}
+
+# Run eclipse and stop it after the startup
+function run_eclipse_and_stop() {
+ # Starting eclipse in background
+ "${INSTALL_PATH_ECLIPSE}"/eclipse/eclipse &
+ # Saving eclipse PID
+ ECLIPSE_PID=$!
+ # Waiting for eclipse to start - Sleeping for 1 minute
+ sleep 1m
+ # Killing eclipse process
+ kill -9 $ECLIPSE_PID
+ # Waiting for process to be killed - Sleeping for 10 seconds
+ sleep 10s
+}
+
+# Run tomcat and stop it after the startup
+function run_tomcat_and_stop() {
+ # Start tomcat wait till it comes up shut it down
+ "${INSTALL_PATH_TOMCAT}"/bin/startup.sh
+ # wait till tomcat starts - wait for 5 seconds
+ sleep 5
+ # Stop tomcat
+ "${INSTALL_PATH_TOMCAT}"/bin/shutdown.sh
+ # wait till tomcat stops - wait for 5 seconds
+ sleep 5
+}
+
+# Remove the installed packages
+function remove_packages() {
+ if [ "${IS_APT_ENV}" == true ]; then
+ APT_REMOVE_CMD="apt --purge -y autoremove"
+
+ if [ "${INSTALL_GTK}" == true ]; then
+ # remove gtk+3.0
+ APT_REMOVE_CMD="${APT_REMOVE_CMD} gtk+3.0"
+ fi
+
+ if [ "${INSTALL_XVFB}" == true ]; then
+ # remove xvfb
+ APT_REMOVE_CMD="${APT_REMOVE_CMD} xvfb"
+ fi
+
+ eval "${APT_REMOVE_CMD}"
+ fi
+}
+
+# check for OS release file
+if [ -f /etc/os-release ]; then
+ # load file to get the ID (OS name)
+ # shellcheck disable=SC1091
+ source /etc/os-release
+ OS=$ID
+fi
+
+# Check if OS is ubuntu/debian (we can run eclipse as packages required for it are available)
+if [ "${OS}" == "ubuntu" ] || [ "${OS}" = "debian" ]; then
+ # set IS_APT_ENV true
+ IS_APT_ENV=true
+
+ # Set eclipse run to `true`
+ RUN_ECLIPSE=true
+
+ # Set the required packages for eclipse to `true`
+ INSTALL_GTK=true
+ INSTALL_XVFB=true
+
+ # Call function `install_pkgs_via_apt` to install packages
+ install_packages
+fi
+
+# Download the sample apps and install
+download_and_install_artifacts
+
+# Dry run for SCC generation (To get exact size)
+dry_run
+
+# Generate SCC
+generate_scc
+
+# Remove installed artifacts
+remove_artifacts
+
+# Remove packages
+remove_packages
diff --git a/adoptopenjdk_8-jre-openj9-windowsservercore-1809/Dockerfile.openj9.releases.full b/adoptopenjdk_8-jre-openj9-windowsservercore-1809/Dockerfile.openj9.releases.full
index 11edf8f..0f99d3c 100644
--- a/adoptopenjdk_8-jre-openj9-windowsservercore-1809/Dockerfile.openj9.releases.full
+++ b/adoptopenjdk_8-jre-openj9-windowsservercore-1809/Dockerfile.openj9.releases.full
@@ -22,13 +22,13 @@ FROM mcr.microsoft.com/windows/servercore:1809
# $ProgressPreference: https://github.com/PowerShell/PowerShell/issues/2138#issuecomment-251261324
SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"]
-ENV JAVA_VERSION jdk8u262-b10_openj9-0.21.0
+ENV JAVA_VERSION jdk8u265-b01_openj9-0.21.0
-RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u262-b10_openj9-0.21.0/OpenJDK8U-jre_x64_windows_openj9_8u262b10_openj9-0.21.0.msi ...'); \
+RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u265-b01_openj9-0.21.0/OpenJDK8U-jre_x64_windows_openj9_8u265b01_openj9-0.21.0.msi ...'); \
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; \
- wget https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u262-b10_openj9-0.21.0/OpenJDK8U-jre_x64_windows_openj9_8u262b10_openj9-0.21.0.msi -O 'openjdk.msi'; \
- Write-Host ('Verifying sha256 (cfa3f17ea264303f1bea55391a10ce9fcfceff2653161c00fd96f84f2e7dcf63) ...'); \
- if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne 'cfa3f17ea264303f1bea55391a10ce9fcfceff2653161c00fd96f84f2e7dcf63') { \
+ wget https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u265-b01_openj9-0.21.0/OpenJDK8U-jre_x64_windows_openj9_8u265b01_openj9-0.21.0.msi -O 'openjdk.msi'; \
+ Write-Host ('Verifying sha256 (6685611c930761f77f9499de8c992d67859887183e72aa67f3724dc81d3e2472) ...'); \
+ if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne '6685611c930761f77f9499de8c992d67859887183e72aa67f3724dc81d3e2472') { \
Write-Host 'FAILED!'; \
exit 1; \
}; \
diff --git a/adoptopenjdk_8-jre-openj9-windowsservercore-ltsc2016/Dockerfile.openj9.releases.full b/adoptopenjdk_8-jre-openj9-windowsservercore-ltsc2016/Dockerfile.openj9.releases.full
index 8e2cbf9..1430179 100644
--- a/adoptopenjdk_8-jre-openj9-windowsservercore-ltsc2016/Dockerfile.openj9.releases.full
+++ b/adoptopenjdk_8-jre-openj9-windowsservercore-ltsc2016/Dockerfile.openj9.releases.full
@@ -22,13 +22,13 @@ FROM mcr.microsoft.com/windows/servercore:ltsc2016
# $ProgressPreference: https://github.com/PowerShell/PowerShell/issues/2138#issuecomment-251261324
SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"]
-ENV JAVA_VERSION jdk8u262-b10_openj9-0.21.0
+ENV JAVA_VERSION jdk8u265-b01_openj9-0.21.0
-RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u262-b10_openj9-0.21.0/OpenJDK8U-jre_x64_windows_openj9_8u262b10_openj9-0.21.0.msi ...'); \
+RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u265-b01_openj9-0.21.0/OpenJDK8U-jre_x64_windows_openj9_8u265b01_openj9-0.21.0.msi ...'); \
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; \
- wget https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u262-b10_openj9-0.21.0/OpenJDK8U-jre_x64_windows_openj9_8u262b10_openj9-0.21.0.msi -O 'openjdk.msi'; \
- Write-Host ('Verifying sha256 (cfa3f17ea264303f1bea55391a10ce9fcfceff2653161c00fd96f84f2e7dcf63) ...'); \
- if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne 'cfa3f17ea264303f1bea55391a10ce9fcfceff2653161c00fd96f84f2e7dcf63') { \
+ wget https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u265-b01_openj9-0.21.0/OpenJDK8U-jre_x64_windows_openj9_8u265b01_openj9-0.21.0.msi -O 'openjdk.msi'; \
+ Write-Host ('Verifying sha256 (6685611c930761f77f9499de8c992d67859887183e72aa67f3724dc81d3e2472) ...'); \
+ if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne '6685611c930761f77f9499de8c992d67859887183e72aa67f3724dc81d3e2472') { \
Write-Host 'FAILED!'; \
exit 1; \
}; \
diff --git a/adoptopenjdk_8-openj9-bionic/Dockerfile.openj9.releases.full b/adoptopenjdk_8-openj9-bionic/Dockerfile.openj9.releases.full
index d09a5a0..f9a99bb 100644
--- a/adoptopenjdk_8-openj9-bionic/Dockerfile.openj9.releases.full
+++ b/adoptopenjdk_8-openj9-bionic/Dockerfile.openj9.releases.full
@@ -27,22 +27,22 @@ RUN apt-get update \
&& locale-gen en_US.UTF-8 \
&& rm -rf /var/lib/apt/lists/*
-ENV JAVA_VERSION jdk8u262-b10_openj9-0.21.0
+ENV JAVA_VERSION jdk8u265-b01_openj9-0.21.0
RUN set -eux; \
ARCH="$(dpkg --print-architecture)"; \
case "${ARCH}" in \
ppc64el|ppc64le) \
- ESUM='8659c84c5c5d94ffed4789f06f2be401e59020b83e95fd45e71992f425483a13'; \
- BINARY_URL='https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u262-b10_openj9-0.21.0/OpenJDK8U-jdk_ppc64le_linux_openj9_8u262b10_openj9-0.21.0.tar.gz'; \
+ ESUM='ad78af32749b40f9f1dcc7ba23aa5e0ac0e7b63edd355d56e766a04d7ab3b60c'; \
+ BINARY_URL='https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u265-b01_openj9-0.21.0/OpenJDK8U-jdk_ppc64le_linux_openj9_8u265b01_openj9-0.21.0.tar.gz'; \
;; \
s390x) \
- ESUM='37fe91840b1d8fa98bc6a859ef29b28e0b2187cd926c9d58743f7022640f8d8e'; \
- BINARY_URL='https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u262-b10_openj9-0.21.0/OpenJDK8U-jdk_s390x_linux_openj9_8u262b10_openj9-0.21.0.tar.gz'; \
+ ESUM='54b9dbcf9f221a0c2ed469b3b5828b56b2cf22fbbf61f0b462b4a9db0737f7f7'; \
+ BINARY_URL='https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u265-b01_openj9-0.21.0/OpenJDK8U-jdk_s390x_linux_openj9_8u265b01_openj9-0.21.0.tar.gz'; \
;; \
amd64|x86_64) \
- ESUM='bdeab95a04462ae48df1dc1c53c833f86bfa34bd3a86c65c7adad7c096a1dbce'; \
- BINARY_URL='https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u262-b10_openj9-0.21.0/OpenJDK8U-jdk_x64_linux_openj9_8u262b10_openj9-0.21.0.tar.gz'; \
+ ESUM='88ff739005cbb012f3ee73d426bd75810ce7de551d08e555475a261d57e3ecbf'; \
+ BINARY_URL='https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u265-b01_openj9-0.21.0/OpenJDK8U-jdk_x64_linux_openj9_8u265b01_openj9-0.21.0.tar.gz'; \
;; \
*) \
echo "Unsupported arch: ${ARCH}"; \
@@ -59,3 +59,6 @@ RUN set -eux; \
ENV JAVA_HOME=/opt/java/openjdk \
PATH="/opt/java/openjdk/bin:$PATH"
ENV JAVA_TOOL_OPTIONS="-XX:+IgnoreUnrecognizedVMOptions -XX:+UseContainerSupport -XX:+IdleTuningCompactOnIdle -XX:+IdleTuningGcOnIdle"
+COPY generate_openj9_scc.sh /scripts/
+ RUN /scripts/generate_openj9_scc.sh
+ ENV OPENJ9_JAVA_OPTIONS="-Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,readonly,nonFatal"
diff --git a/adoptopenjdk_8-openj9-bionic/generate_openj9_scc.sh b/adoptopenjdk_8-openj9-bionic/generate_openj9_scc.sh
new file mode 100755
index 0000000..a5113ba
--- /dev/null
+++ b/adoptopenjdk_8-openj9-bionic/generate_openj9_scc.sh
@@ -0,0 +1,318 @@
+#!/bin/bash
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# https://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+unset OPENJ9_JAVA_OPTIONS
+
+# Default size for SCC
+SCC_SIZE="50m"
+
+# Runs for generating SCC
+SCC_GEN_RUNS_COUNT=3
+
+# is running on ubuntu or debian - package manager apt
+IS_APT_ENV=false
+# Intitialise default / allowed sample app status
+RUN_ECLIPSE=false
+RUN_TOMCAT=true
+
+# Intitialise default / required packages status
+INSTALL_GTK=false
+INSTALL_XVFB=false
+
+# App download locations
+DOWNLOAD_PATH_ECLIPSE=/tmp/eclipse
+DOWNLOAD_PATH_TOMCAT=/tmp/tomcat
+
+# App installation locations
+INSTALL_PATH_ECLIPSE="${HOME}"/eclipse-home
+INSTALL_PATH_TOMCAT="${HOME}"/tomcat-home
+
+# URL's for the artifacts
+ECLIPSE_DWNLD_URL="http://www.mirrorservice.org/sites/download.eclipse.org/eclipseMirror/technology/epp/downloads/release/2020-06/M3/eclipse-java-2020-06-M3-linux-gtk-x86_64.tar.gz"
+TOMCAT_DWNLD_URL="https://archive.apache.org/dist/tomcat/tomcat-9/v9.0.35/bin/apache-tomcat-9.0.35.tar.gz"
+
+# Check and downlaod eclipse
+function check_to_download_eclipse() {
+ if [ "${RUN_ECLIPSE}" == true ]; then
+ # Creating a temporary directory for eclipse download
+ mkdir -p "${DOWNLOAD_PATH_ECLIPSE}" "${INSTALL_PATH_ECLIPSE}"
+
+ # Downloading eclipse
+ if curl --fail -o "${DOWNLOAD_PATH_ECLIPSE}"/eclipse.tar.gz "${ECLIPSE_DWNLD_URL}"; then
+ # Extracting eclipse
+ tar -xvzf "${DOWNLOAD_PATH_ECLIPSE}"/eclipse.tar.gz -C "$INSTALL_PATH_ECLIPSE" --strip-components=1
+ else
+ RUN_ECLIPSE=false
+ fi
+
+ # Removing the tar file
+ rm -rf "${DOWNLOAD_PATH_ECLIPSE}"
+ fi
+}
+
+# Check and download tomcat
+function check_to_download_tomcat() {
+ if [ "${RUN_TOMCAT}" == true ]; then
+ # Creating a temporary directory for tomcat download
+ mkdir -p "${DOWNLOAD_PATH_TOMCAT}" "${INSTALL_PATH_TOMCAT}"
+
+ # Downloading tomcat
+ if curl --fail -o "${DOWNLOAD_PATH_TOMCAT}"/tomcat.tar.gz "${TOMCAT_DWNLD_URL}"; then
+ # Extracting tomcat
+ tar -xvzf "${DOWNLOAD_PATH_TOMCAT}"/tomcat.tar.gz -C "${INSTALL_PATH_TOMCAT}" --strip-components=1
+ else
+ RUN_TOMCAT=false
+ fi
+
+ # Removing the tar file
+ rm -rf "${DOWNLOAD_PATH_TOMCAT}"
+ fi
+}
+
+# ubuntu/debian install packages required for eclipse
+function apt_install_packages() {
+ # update the repositories
+ apt update
+
+ # Set non-interactive frontend (to avoid `tzdata` config options selection)
+ APT_INSTALL_CMD="DEBIAN_FRONTEND=noninteractive"
+ APT_INSTALL_CMD="${APT_INSTALL_CMD} apt install -y"
+
+ if [ "${INSTALL_GTK}" == true ]; then
+ # install gtk+3.0
+ APT_INSTALL_CMD="${APT_INSTALL_CMD} gtk+3.0"
+ fi
+
+ if [ "${INSTALL_XVFB}" == true ]; then
+ # install xvfb
+ APT_INSTALL_CMD="${APT_INSTALL_CMD} xvfb"
+ fi
+
+ eval "${APT_INSTALL_CMD}"
+}
+
+# Check if any application needs virtual screen and launch it
+function check_and_start_xvfb() {
+ # check if `xvfb` installed
+ if [ "${INSTALL_XVFB}" == true ]; then
+ # Spawning a virtual screen for GUI apps
+ Xvfb :1 -ac -screen 0 1024x768x8 &
+ # Saving the PID
+ XVFB_PID=$!
+ # Saving older display value
+ OLD_DISPLAY=$DISPLAY
+ # Setting DISPLAY to created screen
+ export DISPLAY=:1
+ fi
+}
+
+# Kill the created virtual screen
+function check_and_stop_xvfb() {
+ # check if `xvfb` installed
+ if [ "${INSTALL_XVFB}" == true ]; then
+ # Killing `xvfb` process to remove screen
+ kill -9 $XVFB_PID
+ # Setting back the DISPLAY to older value
+ export DISPLAY=$OLD_DISPLAY
+ fi
+}
+
+# Run the applications for specified iterations
+function run_apps() {
+ for ((i=0; i<SCC_GEN_RUNS_COUNT; i++))
+ do
+ if [ "${RUN_ECLIPSE}" == true ]; then
+ run_eclipse_and_stop
+ fi
+ if [ "${RUN_TOMCAT}" == true ]; then
+ run_tomcat_and_stop
+ fi
+ done
+}
+
+# function to install packages
+function install_packages() {
+ if [ "${IS_APT_ENV}" == true ]; then
+ apt_install_packages
+ fi
+}
+
+# function to download the applications
+function download_and_install_artifacts() {
+
+ # check for eclipse
+ check_to_download_eclipse
+
+ # check for tomcat
+ check_to_download_tomcat
+
+}
+
+# dry run to right size the cache
+function dry_run() {
+ # Creating base layer first instead of running sample programs to generate SCC directly
+ java -Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal,createLayer -Xscmx$SCC_SIZE -version
+
+ # Pointing cache for sample program runs
+ export OPENJ9_JAVA_OPTIONS="-Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal"
+
+ # check if we need xvfb for running application and start a virtual screen if required
+ check_and_start_xvfb
+
+ # Run the applications to generate SCC
+ run_apps
+
+ # check if started a virtual screen and kill the process
+ check_and_stop_xvfb
+
+ FULL=$( (java -Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,printallStats || true) 2>&1 | awk '/^Cache is [0-9.]*% .*full/ {print substr($3, 1, length($3)-1)}')
+
+ java -Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,destroy || true
+
+ SCC_SIZE="${SCC_SIZE:0:-1}"
+
+ SCC_SIZE=$(awk "BEGIN {print int($SCC_SIZE * $FULL / 100.0)}")
+
+ [ "${SCC_SIZE}" -eq 0 ] && SCC_SIZE=1
+
+ SCC_SIZE="${SCC_SIZE}m"
+
+ # Re-generating cache with new size
+ java -Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal,createLayer -Xscmx$SCC_SIZE -version
+
+ unset OPENJ9_JAVA_OPTIONS
+}
+
+# Generate SCC by running apps
+function generate_scc() {
+ # Pointing cache for sample app runs
+ export OPENJ9_JAVA_OPTIONS="-Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal"
+
+ # check if we need xvfb for running application and start a virtual screen if required
+ check_and_start_xvfb
+
+ # Run the applications to generate SCC
+ run_apps
+
+ # check if started a virtual screen and kill the process
+ check_and_stop_xvfb
+
+ # Checking the cache level
+ FULL=$( (java -Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,printallStats || true) 2>&1 | awk '/^Cache is [0-9.]*% .*full/ {print substr($3, 1, length($3)-1)}')
+
+ echo "SCC layer is $FULL% full."
+}
+
+# Remove the downloaded sample apps
+function remove_artifacts() {
+ # Command to remove apps
+ REMOVE_APPS="rm -rf"
+
+ # check for eclipse
+ if [ "${RUN_ECLIPSE}" == true ]; then
+ REMOVE_APPS="${REMOVE_APPS} ${INSTALL_PATH_ECLIPSE}"
+ fi
+
+ # check for tomcat
+ if [ "${RUN_TOMCAT}" == true ]; then
+ REMOVE_APPS="${REMOVE_APPS} ${INSTALL_PATH_TOMCAT}"
+ fi
+
+ eval "$REMOVE_APPS"
+}
+
+# Run eclipse and stop it after the startup
+function run_eclipse_and_stop() {
+ # Starting eclipse in background
+ "${INSTALL_PATH_ECLIPSE}"/eclipse/eclipse &
+ # Saving eclipse PID
+ ECLIPSE_PID=$!
+ # Waiting for eclipse to start - Sleeping for 1 minute
+ sleep 1m
+ # Killing eclipse process
+ kill -9 $ECLIPSE_PID
+ # Waiting for process to be killed - Sleeping for 10 seconds
+ sleep 10s
+}
+
+# Run tomcat and stop it after the startup
+function run_tomcat_and_stop() {
+ # Start tomcat wait till it comes up shut it down
+ "${INSTALL_PATH_TOMCAT}"/bin/startup.sh
+ # wait till tomcat starts - wait for 5 seconds
+ sleep 5
+ # Stop tomcat
+ "${INSTALL_PATH_TOMCAT}"/bin/shutdown.sh
+ # wait till tomcat stops - wait for 5 seconds
+ sleep 5
+}
+
+# Remove the installed packages
+function remove_packages() {
+ if [ "${IS_APT_ENV}" == true ]; then
+ APT_REMOVE_CMD="apt --purge -y autoremove"
+
+ if [ "${INSTALL_GTK}" == true ]; then
+ # remove gtk+3.0
+ APT_REMOVE_CMD="${APT_REMOVE_CMD} gtk+3.0"
+ fi
+
+ if [ "${INSTALL_XVFB}" == true ]; then
+ # remove xvfb
+ APT_REMOVE_CMD="${APT_REMOVE_CMD} xvfb"
+ fi
+
+ eval "${APT_REMOVE_CMD}"
+ fi
+}
+
+# check for OS release file
+if [ -f /etc/os-release ]; then
+ # load file to get the ID (OS name)
+ # shellcheck disable=SC1091
+ source /etc/os-release
+ OS=$ID
+fi
+
+# Check if OS is ubuntu/debian (we can run eclipse as packages required for it are available)
+if [ "${OS}" == "ubuntu" ] || [ "${OS}" = "debian" ]; then
+ # set IS_APT_ENV true
+ IS_APT_ENV=true
+
+ # Set eclipse run to `true`
+ RUN_ECLIPSE=true
+
+ # Set the required packages for eclipse to `true`
+ INSTALL_GTK=true
+ INSTALL_XVFB=true
+
+ # Call function `install_pkgs_via_apt` to install packages
+ install_packages
+fi
+
+# Download the sample apps and install
+download_and_install_artifacts
+
+# Dry run for SCC generation (To get exact size)
+dry_run
+
+# Generate SCC
+generate_scc
+
+# Remove installed artifacts
+remove_artifacts
+
+# Remove packages
+remove_packages
diff --git a/adoptopenjdk_8-openj9-windowsservercore-1809/Dockerfile.openj9.releases.full b/adoptopenjdk_8-openj9-windowsservercore-1809/Dockerfile.openj9.releases.full
index 640e854..a27b841 100644
--- a/adoptopenjdk_8-openj9-windowsservercore-1809/Dockerfile.openj9.releases.full
+++ b/adoptopenjdk_8-openj9-windowsservercore-1809/Dockerfile.openj9.releases.full
@@ -22,13 +22,13 @@ FROM mcr.microsoft.com/windows/servercore:1809
# $ProgressPreference: https://github.com/PowerShell/PowerShell/issues/2138#issuecomment-251261324
SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"]
-ENV JAVA_VERSION jdk8u262-b10_openj9-0.21.0
+ENV JAVA_VERSION jdk8u265-b01_openj9-0.21.0
-RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u262-b10_openj9-0.21.0/OpenJDK8U-jdk_x64_windows_openj9_8u262b10_openj9-0.21.0.msi ...'); \
+RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u265-b01_openj9-0.21.0/OpenJDK8U-jdk_x64_windows_openj9_8u265b01_openj9-0.21.0.msi ...'); \
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; \
- wget https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u262-b10_openj9-0.21.0/OpenJDK8U-jdk_x64_windows_openj9_8u262b10_openj9-0.21.0.msi -O 'openjdk.msi'; \
- Write-Host ('Verifying sha256 (824f32604bee0469d9dac5208dc8a025a142d95c53d838eab753bda619d46614) ...'); \
- if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne '824f32604bee0469d9dac5208dc8a025a142d95c53d838eab753bda619d46614') { \
+ wget https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u265-b01_openj9-0.21.0/OpenJDK8U-jdk_x64_windows_openj9_8u265b01_openj9-0.21.0.msi -O 'openjdk.msi'; \
+ Write-Host ('Verifying sha256 (7e766cba0e9712be33a6be2412a8f58cc2daa813512f90e58d7ab2ebceed4357) ...'); \
+ if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne '7e766cba0e9712be33a6be2412a8f58cc2daa813512f90e58d7ab2ebceed4357') { \
Write-Host 'FAILED!'; \
exit 1; \
}; \
diff --git a/adoptopenjdk_8-openj9-windowsservercore-ltsc2016/Dockerfile.openj9.releases.full b/adoptopenjdk_8-openj9-windowsservercore-ltsc2016/Dockerfile.openj9.releases.full
index 6d86a27..3e3ec30 100644
--- a/adoptopenjdk_8-openj9-windowsservercore-ltsc2016/Dockerfile.openj9.releases.full
+++ b/adoptopenjdk_8-openj9-windowsservercore-ltsc2016/Dockerfile.openj9.releases.full
@@ -22,13 +22,13 @@ FROM mcr.microsoft.com/windows/servercore:ltsc2016
# $ProgressPreference: https://github.com/PowerShell/PowerShell/issues/2138#issuecomment-251261324
SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"]
-ENV JAVA_VERSION jdk8u262-b10_openj9-0.21.0
+ENV JAVA_VERSION jdk8u265-b01_openj9-0.21.0
-RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u262-b10_openj9-0.21.0/OpenJDK8U-jdk_x64_windows_openj9_8u262b10_openj9-0.21.0.msi ...'); \
+RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u265-b01_openj9-0.21.0/OpenJDK8U-jdk_x64_windows_openj9_8u265b01_openj9-0.21.0.msi ...'); \
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; \
- wget https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u262-b10_openj9-0.21.0/OpenJDK8U-jdk_x64_windows_openj9_8u262b10_openj9-0.21.0.msi -O 'openjdk.msi'; \
- Write-Host ('Verifying sha256 (824f32604bee0469d9dac5208dc8a025a142d95c53d838eab753bda619d46614) ...'); \
- if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne '824f32604bee0469d9dac5208dc8a025a142d95c53d838eab753bda619d46614') { \
+ wget https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u265-b01_openj9-0.21.0/OpenJDK8U-jdk_x64_windows_openj9_8u265b01_openj9-0.21.0.msi -O 'openjdk.msi'; \
+ Write-Host ('Verifying sha256 (7e766cba0e9712be33a6be2412a8f58cc2daa813512f90e58d7ab2ebceed4357) ...'); \
+ if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne '7e766cba0e9712be33a6be2412a8f58cc2daa813512f90e58d7ab2ebceed4357') { \
Write-Host 'FAILED!'; \
exit 1; \
}; \
diff --git a/adoptopenjdk_hotspot-bionic/Dockerfile.hotspot.releases.full b/adoptopenjdk_hotspot-bionic/Dockerfile.hotspot.releases.full
index b9cfc0c..7cd3268 100644
--- a/adoptopenjdk_hotspot-bionic/Dockerfile.hotspot.releases.full
+++ b/adoptopenjdk_hotspot-bionic/Dockerfile.hotspot.releases.full
@@ -27,30 +27,30 @@ RUN apt-get update \
&& locale-gen en_US.UTF-8 \
&& rm -rf /var/lib/apt/lists/*
-ENV JAVA_VERSION jdk-14.0.2+12
+ENV JAVA_VERSION jdk-15+36
RUN set -eux; \
ARCH="$(dpkg --print-architecture)"; \
case "${ARCH}" in \
aarch64|arm64) \
- ESUM='ee87e9f03b1fbe6f328429b78fe1a9f44900026d220c90dfd747fe0bcd62d904'; \
- BINARY_URL='https://github.com/AdoptOpenJDK/openjdk14-binaries/releases/download/jdk-14.0.2%2B12/OpenJDK14U-jdk_aarch64_linux_hotspot_14.0.2_12.tar.gz'; \
+ ESUM='44c8cd580f6e828f8fbb431a59b3c8f694da8c75adb7c311f7b6b9ed81c19c54'; \
+ BINARY_URL='https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15%2B36/OpenJDK15U-jdk_aarch64_linux_hotspot_15_36.tar.gz'; \
;; \
armhf|armv7l) \
- ESUM='65f193496c6977ba7aed1563edc4b5be091b5ff03e3d790074bb4e389a034b36'; \
- BINARY_URL='https://github.com/AdoptOpenJDK/openjdk14-binaries/releases/download/jdk-14.0.2%2B12/OpenJDK14U-jdk_arm_linux_hotspot_14.0.2_12.tar.gz'; \
+ ESUM='d7de37fee91fe098791d48ea2a880cf2789949665d6bc9a232380738f99c16a9'; \
+ BINARY_URL='https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15%2B36/OpenJDK15U-jdk_arm_linux_hotspot_15_36.tar.gz'; \
;; \
ppc64el|ppc64le) \
- ESUM='465a3b8e931896b8d95e452d479615c4bf543535c05b6ea246323ae114e67d7d'; \
- BINARY_URL='https://github.com/AdoptOpenJDK/openjdk14-binaries/releases/download/jdk-14.0.2%2B12/OpenJDK14U-jdk_ppc64le_linux_hotspot_14.0.2_12.tar.gz'; \
+ ESUM='537eb289a0fc56915078ff92616574b00b8ad0119543f5e4a817ede0e52c4030'; \
+ BINARY_URL='https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15%2B36/OpenJDK15U-jdk_ppc64le_linux_hotspot_15_36.tar.gz'; \
;; \
s390x) \
- ESUM='7d27aea30e359cf0bb561f8dcca6f4591dbc3ae831981f8a19aa367d31a9709b'; \
- BINARY_URL='https://github.com/AdoptOpenJDK/openjdk14-binaries/releases/download/jdk-14.0.2%2B12/OpenJDK14U-jdk_s390x_linux_hotspot_14.0.2_12.tar.gz'; \
+ ESUM='3e238ea4924f4dd2a8167c911a99b96ffdfb51e12f3969cffbdc0791a58d0cf2'; \
+ BINARY_URL='https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15%2B36/OpenJDK15U-jdk_s390x_linux_hotspot_15_36.tar.gz'; \
;; \
amd64|x86_64) \
- ESUM='7d5ee7e06909b8a99c0d029f512f67b092597aa5b0e78c109bd59405bbfa74fe'; \
- BINARY_URL='https://github.com/AdoptOpenJDK/openjdk14-binaries/releases/download/jdk-14.0.2%2B12/OpenJDK14U-jdk_x64_linux_hotspot_14.0.2_12.tar.gz'; \
+ ESUM='c198593d1b5188ee3570e2ca33c3bc004aaefbda2c11e68e58ae7296cf5c3982'; \
+ BINARY_URL='https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15%2B36/OpenJDK15U-jdk_x64_linux_hotspot_15_36.tar.gz'; \
;; \
*) \
echo "Unsupported arch: ${ARCH}"; \
diff --git a/adoptopenjdk_hotspot-windowsservercore-1809/Dockerfile.hotspot.releases.full b/adoptopenjdk_hotspot-windowsservercore-1809/Dockerfile.hotspot.releases.full
index 89a3af2..e0c0d34 100644
--- a/adoptopenjdk_hotspot-windowsservercore-1809/Dockerfile.hotspot.releases.full
+++ b/adoptopenjdk_hotspot-windowsservercore-1809/Dockerfile.hotspot.releases.full
@@ -22,13 +22,13 @@ FROM mcr.microsoft.com/windows/servercore:1809
# $ProgressPreference: https://github.com/PowerShell/PowerShell/issues/2138#issuecomment-251261324
SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"]
-ENV JAVA_VERSION jdk-14.0.2+12
+ENV JAVA_VERSION jdk-15+36
-RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk14-binaries/releases/download/jdk-14.0.2%2B12/OpenJDK14U-jdk_x64_windows_hotspot_14.0.2_12.msi ...'); \
+RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15%2B36/OpenJDK15U-jdk_x64_windows_hotspot_15_36.msi ...'); \
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; \
- wget https://github.com/AdoptOpenJDK/openjdk14-binaries/releases/download/jdk-14.0.2%2B12/OpenJDK14U-jdk_x64_windows_hotspot_14.0.2_12.msi -O 'openjdk.msi'; \
- Write-Host ('Verifying sha256 (9cbd03600e58ad8d2383c15e596396fbdfbc9655ba0019f5bc74c910e4082c7c) ...'); \
- if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne '9cbd03600e58ad8d2383c15e596396fbdfbc9655ba0019f5bc74c910e4082c7c') { \
+ wget https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15%2B36/OpenJDK15U-jdk_x64_windows_hotspot_15_36.msi -O 'openjdk.msi'; \
+ Write-Host ('Verifying sha256 (e2ac92e686e52d8c76a831319ad721547d811d2e2e9b3a8fae47420652beb930) ...'); \
+ if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne 'e2ac92e686e52d8c76a831319ad721547d811d2e2e9b3a8fae47420652beb930') { \
Write-Host 'FAILED!'; \
exit 1; \
}; \
diff --git a/adoptopenjdk_hotspot-windowsservercore-ltsc2016/Dockerfile.hotspot.releases.full b/adoptopenjdk_hotspot-windowsservercore-ltsc2016/Dockerfile.hotspot.releases.full
index b71b65c..d288c3c 100644
--- a/adoptopenjdk_hotspot-windowsservercore-ltsc2016/Dockerfile.hotspot.releases.full
+++ b/adoptopenjdk_hotspot-windowsservercore-ltsc2016/Dockerfile.hotspot.releases.full
@@ -22,13 +22,13 @@ FROM mcr.microsoft.com/windows/servercore:ltsc2016
# $ProgressPreference: https://github.com/PowerShell/PowerShell/issues/2138#issuecomment-251261324
SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"]
-ENV JAVA_VERSION jdk-14.0.2+12
+ENV JAVA_VERSION jdk-15+36
-RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk14-binaries/releases/download/jdk-14.0.2%2B12/OpenJDK14U-jdk_x64_windows_hotspot_14.0.2_12.msi ...'); \
+RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15%2B36/OpenJDK15U-jdk_x64_windows_hotspot_15_36.msi ...'); \
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; \
- wget https://github.com/AdoptOpenJDK/openjdk14-binaries/releases/download/jdk-14.0.2%2B12/OpenJDK14U-jdk_x64_windows_hotspot_14.0.2_12.msi -O 'openjdk.msi'; \
- Write-Host ('Verifying sha256 (9cbd03600e58ad8d2383c15e596396fbdfbc9655ba0019f5bc74c910e4082c7c) ...'); \
- if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne '9cbd03600e58ad8d2383c15e596396fbdfbc9655ba0019f5bc74c910e4082c7c') { \
+ wget https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15%2B36/OpenJDK15U-jdk_x64_windows_hotspot_15_36.msi -O 'openjdk.msi'; \
+ Write-Host ('Verifying sha256 (e2ac92e686e52d8c76a831319ad721547d811d2e2e9b3a8fae47420652beb930) ...'); \
+ if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne 'e2ac92e686e52d8c76a831319ad721547d811d2e2e9b3a8fae47420652beb930') { \
Write-Host 'FAILED!'; \
exit 1; \
}; \
diff --git a/adoptopenjdk_openj9-bionic/Dockerfile.openj9.releases.full b/adoptopenjdk_openj9-bionic/Dockerfile.openj9.releases.full
index eff0c96..85db2e5 100644
--- a/adoptopenjdk_openj9-bionic/Dockerfile.openj9.releases.full
+++ b/adoptopenjdk_openj9-bionic/Dockerfile.openj9.releases.full
@@ -27,22 +27,22 @@ RUN apt-get update \
&& locale-gen en_US.UTF-8 \
&& rm -rf /var/lib/apt/lists/*
-ENV JAVA_VERSION jdk-14.0.2+12_openj9-0.21.0
+ENV JAVA_VERSION jdk-15+36_openj9-0.22.0
RUN set -eux; \
ARCH="$(dpkg --print-architecture)"; \
case "${ARCH}" in \
ppc64el|ppc64le) \
- ESUM='177fd161ae14df92203d70cd618559daf889ec0c172d6ee615859352f68a2371'; \
- BINARY_URL='https://github.com/AdoptOpenJDK/openjdk14-binaries/releases/download/jdk-14.0.2%2B12_openj9-0.21.0/OpenJDK14U-jdk_ppc64le_linux_openj9_14.0.2_12_openj9-0.21.0.tar.gz'; \
+ ESUM='88058a977c63382b59b7aaaec08d656490494b2c9575ae787c873de1b2baeaca'; \
+ BINARY_URL='https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15%2B36_openj9-0.22.0/OpenJDK15U-jdk_ppc64le_linux_openj9_15_36_openj9-0.22.0.tar.gz'; \
;; \
s390x) \
- ESUM='4757dc2009a0c31604be4631e02a5a3aac53ebe9b6a2046ae8995ec0e453dc1a'; \
- BINARY_URL='https://github.com/AdoptOpenJDK/openjdk14-binaries/releases/download/jdk-14.0.2%2B12_openj9-0.21.0/OpenJDK14U-jdk_s390x_linux_openj9_14.0.2_12_openj9-0.21.0.tar.gz'; \
+ ESUM='1cb8366199635c82a58b2619483f84318e9ead5b542b52ffc355fb561adb0f14'; \
+ BINARY_URL='https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15%2B36_openj9-0.22.0/OpenJDK15U-jdk_s390x_linux_openj9_15_36_openj9-0.22.0.tar.gz'; \
;; \
amd64|x86_64) \
- ESUM='306f7138cdb65daaf2596ec36cafbde72088144c83b2e964f0193662e6caf3be'; \
- BINARY_URL='https://github.com/AdoptOpenJDK/openjdk14-binaries/releases/download/jdk-14.0.2%2B12_openj9-0.21.0/OpenJDK14U-jdk_x64_linux_openj9_14.0.2_12_openj9-0.21.0.tar.gz'; \
+ ESUM='3f016e23a1fba0b1d29f03415c36d54a8a33480ce1d238fbef09d38c5a69eff7'; \
+ BINARY_URL='https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15%2B36_openj9-0.22.0/OpenJDK15U-jdk_x64_linux_openj9_15_36_openj9-0.22.0.tar.gz'; \
;; \
*) \
echo "Unsupported arch: ${ARCH}"; \
@@ -59,4 +59,7 @@ RUN set -eux; \
ENV JAVA_HOME=/opt/java/openjdk \
PATH="/opt/java/openjdk/bin:$PATH"
ENV JAVA_TOOL_OPTIONS="-XX:+IgnoreUnrecognizedVMOptions -XX:+UseContainerSupport -XX:+IdleTuningCompactOnIdle -XX:+IdleTuningGcOnIdle"
+COPY generate_openj9_scc.sh /scripts/
+ RUN /scripts/generate_openj9_scc.sh
+ ENV OPENJ9_JAVA_OPTIONS="-Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,readonly,nonFatal"
CMD ["jshell"]
diff --git a/adoptopenjdk_openj9-bionic/generate_openj9_scc.sh b/adoptopenjdk_openj9-bionic/generate_openj9_scc.sh
new file mode 100755
index 0000000..a5113ba
--- /dev/null
+++ b/adoptopenjdk_openj9-bionic/generate_openj9_scc.sh
@@ -0,0 +1,318 @@
+#!/bin/bash
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# https://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+unset OPENJ9_JAVA_OPTIONS
+
+# Default size for SCC
+SCC_SIZE="50m"
+
+# Runs for generating SCC
+SCC_GEN_RUNS_COUNT=3
+
+# is running on ubuntu or debian - package manager apt
+IS_APT_ENV=false
+# Intitialise default / allowed sample app status
+RUN_ECLIPSE=false
+RUN_TOMCAT=true
+
+# Intitialise default / required packages status
+INSTALL_GTK=false
+INSTALL_XVFB=false
+
+# App download locations
+DOWNLOAD_PATH_ECLIPSE=/tmp/eclipse
+DOWNLOAD_PATH_TOMCAT=/tmp/tomcat
+
+# App installation locations
+INSTALL_PATH_ECLIPSE="${HOME}"/eclipse-home
+INSTALL_PATH_TOMCAT="${HOME}"/tomcat-home
+
+# URL's for the artifacts
+ECLIPSE_DWNLD_URL="http://www.mirrorservice.org/sites/download.eclipse.org/eclipseMirror/technology/epp/downloads/release/2020-06/M3/eclipse-java-2020-06-M3-linux-gtk-x86_64.tar.gz"
+TOMCAT_DWNLD_URL="https://archive.apache.org/dist/tomcat/tomcat-9/v9.0.35/bin/apache-tomcat-9.0.35.tar.gz"
+
+# Check and downlaod eclipse
+function check_to_download_eclipse() {
+ if [ "${RUN_ECLIPSE}" == true ]; then
+ # Creating a temporary directory for eclipse download
+ mkdir -p "${DOWNLOAD_PATH_ECLIPSE}" "${INSTALL_PATH_ECLIPSE}"
+
+ # Downloading eclipse
+ if curl --fail -o "${DOWNLOAD_PATH_ECLIPSE}"/eclipse.tar.gz "${ECLIPSE_DWNLD_URL}"; then
+ # Extracting eclipse
+ tar -xvzf "${DOWNLOAD_PATH_ECLIPSE}"/eclipse.tar.gz -C "$INSTALL_PATH_ECLIPSE" --strip-components=1
+ else
+ RUN_ECLIPSE=false
+ fi
+
+ # Removing the tar file
+ rm -rf "${DOWNLOAD_PATH_ECLIPSE}"
+ fi
+}
+
+# Check and download tomcat
+function check_to_download_tomcat() {
+ if [ "${RUN_TOMCAT}" == true ]; then
+ # Creating a temporary directory for tomcat download
+ mkdir -p "${DOWNLOAD_PATH_TOMCAT}" "${INSTALL_PATH_TOMCAT}"
+
+ # Downloading tomcat
+ if curl --fail -o "${DOWNLOAD_PATH_TOMCAT}"/tomcat.tar.gz "${TOMCAT_DWNLD_URL}"; then
+ # Extracting tomcat
+ tar -xvzf "${DOWNLOAD_PATH_TOMCAT}"/tomcat.tar.gz -C "${INSTALL_PATH_TOMCAT}" --strip-components=1
+ else
+ RUN_TOMCAT=false
+ fi
+
+ # Removing the tar file
+ rm -rf "${DOWNLOAD_PATH_TOMCAT}"
+ fi
+}
+
+# ubuntu/debian install packages required for eclipse
+function apt_install_packages() {
+ # update the repositories
+ apt update
+
+ # Set non-interactive frontend (to avoid `tzdata` config options selection)
+ APT_INSTALL_CMD="DEBIAN_FRONTEND=noninteractive"
+ APT_INSTALL_CMD="${APT_INSTALL_CMD} apt install -y"
+
+ if [ "${INSTALL_GTK}" == true ]; then
+ # install gtk+3.0
+ APT_INSTALL_CMD="${APT_INSTALL_CMD} gtk+3.0"
+ fi
+
+ if [ "${INSTALL_XVFB}" == true ]; then
+ # install xvfb
+ APT_INSTALL_CMD="${APT_INSTALL_CMD} xvfb"
+ fi
+
+ eval "${APT_INSTALL_CMD}"
+}
+
+# Check if any application needs virtual screen and launch it
+function check_and_start_xvfb() {
+ # check if `xvfb` installed
+ if [ "${INSTALL_XVFB}" == true ]; then
+ # Spawning a virtual screen for GUI apps
+ Xvfb :1 -ac -screen 0 1024x768x8 &
+ # Saving the PID
+ XVFB_PID=$!
+ # Saving older display value
+ OLD_DISPLAY=$DISPLAY
+ # Setting DISPLAY to created screen
+ export DISPLAY=:1
+ fi
+}
+
+# Kill the created virtual screen
+function check_and_stop_xvfb() {
+ # check if `xvfb` installed
+ if [ "${INSTALL_XVFB}" == true ]; then
+ # Killing `xvfb` process to remove screen
+ kill -9 $XVFB_PID
+ # Setting back the DISPLAY to older value
+ export DISPLAY=$OLD_DISPLAY
+ fi
+}
+
+# Run the applications for specified iterations
+function run_apps() {
+ for ((i=0; i<SCC_GEN_RUNS_COUNT; i++))
+ do
+ if [ "${RUN_ECLIPSE}" == true ]; then
+ run_eclipse_and_stop
+ fi
+ if [ "${RUN_TOMCAT}" == true ]; then
+ run_tomcat_and_stop
+ fi
+ done
+}
+
+# function to install packages
+function install_packages() {
+ if [ "${IS_APT_ENV}" == true ]; then
+ apt_install_packages
+ fi
+}
+
+# function to download the applications
+function download_and_install_artifacts() {
+
+ # check for eclipse
+ check_to_download_eclipse
+
+ # check for tomcat
+ check_to_download_tomcat
+
+}
+
+# dry run to right size the cache
+function dry_run() {
+ # Creating base layer first instead of running sample programs to generate SCC directly
+ java -Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal,createLayer -Xscmx$SCC_SIZE -version
+
+ # Pointing cache for sample program runs
+ export OPENJ9_JAVA_OPTIONS="-Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal"
+
+ # check if we need xvfb for running application and start a virtual screen if required
+ check_and_start_xvfb
+
+ # Run the applications to generate SCC
+ run_apps
+
+ # check if started a virtual screen and kill the process
+ check_and_stop_xvfb
+
+ FULL=$( (java -Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,printallStats || true) 2>&1 | awk '/^Cache is [0-9.]*% .*full/ {print substr($3, 1, length($3)-1)}')
+
+ java -Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,destroy || true
+
+ SCC_SIZE="${SCC_SIZE:0:-1}"
+
+ SCC_SIZE=$(awk "BEGIN {print int($SCC_SIZE * $FULL / 100.0)}")
+
+ [ "${SCC_SIZE}" -eq 0 ] && SCC_SIZE=1
+
+ SCC_SIZE="${SCC_SIZE}m"
+
+ # Re-generating cache with new size
+ java -Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal,createLayer -Xscmx$SCC_SIZE -version
+
+ unset OPENJ9_JAVA_OPTIONS
+}
+
+# Generate SCC by running apps
+function generate_scc() {
+ # Pointing cache for sample app runs
+ export OPENJ9_JAVA_OPTIONS="-Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal"
+
+ # check if we need xvfb for running application and start a virtual screen if required
+ check_and_start_xvfb
+
+ # Run the applications to generate SCC
+ run_apps
+
+ # check if started a virtual screen and kill the process
+ check_and_stop_xvfb
+
+ # Checking the cache level
+ FULL=$( (java -Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,printallStats || true) 2>&1 | awk '/^Cache is [0-9.]*% .*full/ {print substr($3, 1, length($3)-1)}')
+
+ echo "SCC layer is $FULL% full."
+}
+
+# Remove the downloaded sample apps
+function remove_artifacts() {
+ # Command to remove apps
+ REMOVE_APPS="rm -rf"
+
+ # check for eclipse
+ if [ "${RUN_ECLIPSE}" == true ]; then
+ REMOVE_APPS="${REMOVE_APPS} ${INSTALL_PATH_ECLIPSE}"
+ fi
+
+ # check for tomcat
+ if [ "${RUN_TOMCAT}" == true ]; then
+ REMOVE_APPS="${REMOVE_APPS} ${INSTALL_PATH_TOMCAT}"
+ fi
+
+ eval "$REMOVE_APPS"
+}
+
+# Run eclipse and stop it after the startup
+function run_eclipse_and_stop() {
+ # Starting eclipse in background
+ "${INSTALL_PATH_ECLIPSE}"/eclipse/eclipse &
+ # Saving eclipse PID
+ ECLIPSE_PID=$!
+ # Waiting for eclipse to start - Sleeping for 1 minute
+ sleep 1m
+ # Killing eclipse process
+ kill -9 $ECLIPSE_PID
+ # Waiting for process to be killed - Sleeping for 10 seconds
+ sleep 10s
+}
+
+# Run tomcat and stop it after the startup
+function run_tomcat_and_stop() {
+ # Start tomcat wait till it comes up shut it down
+ "${INSTALL_PATH_TOMCAT}"/bin/startup.sh
+ # wait till tomcat starts - wait for 5 seconds
+ sleep 5
+ # Stop tomcat
+ "${INSTALL_PATH_TOMCAT}"/bin/shutdown.sh
+ # wait till tomcat stops - wait for 5 seconds
+ sleep 5
+}
+
+# Remove the installed packages
+function remove_packages() {
+ if [ "${IS_APT_ENV}" == true ]; then
+ APT_REMOVE_CMD="apt --purge -y autoremove"
+
+ if [ "${INSTALL_GTK}" == true ]; then
+ # remove gtk+3.0
+ APT_REMOVE_CMD="${APT_REMOVE_CMD} gtk+3.0"
+ fi
+
+ if [ "${INSTALL_XVFB}" == true ]; then
+ # remove xvfb
+ APT_REMOVE_CMD="${APT_REMOVE_CMD} xvfb"
+ fi
+
+ eval "${APT_REMOVE_CMD}"
+ fi
+}
+
+# check for OS release file
+if [ -f /etc/os-release ]; then
+ # load file to get the ID (OS name)
+ # shellcheck disable=SC1091
+ source /etc/os-release
+ OS=$ID
+fi
+
+# Check if OS is ubuntu/debian (we can run eclipse as packages required for it are available)
+if [ "${OS}" == "ubuntu" ] || [ "${OS}" = "debian" ]; then
+ # set IS_APT_ENV true
+ IS_APT_ENV=true
+
+ # Set eclipse run to `true`
+ RUN_ECLIPSE=true
+
+ # Set the required packages for eclipse to `true`
+ INSTALL_GTK=true
+ INSTALL_XVFB=true
+
+ # Call function `install_pkgs_via_apt` to install packages
+ install_packages
+fi
+
+# Download the sample apps and install
+download_and_install_artifacts
+
+# Dry run for SCC generation (To get exact size)
+dry_run
+
+# Generate SCC
+generate_scc
+
+# Remove installed artifacts
+remove_artifacts
+
+# Remove packages
+remove_packages
diff --git a/adoptopenjdk_openj9-windowsservercore-1809/Dockerfile.openj9.releases.full b/adoptopenjdk_openj9-windowsservercore-1809/Dockerfile.openj9.releases.full
index 0ba45b0..84dfdf1 100644
--- a/adoptopenjdk_openj9-windowsservercore-1809/Dockerfile.openj9.releases.full
+++ b/adoptopenjdk_openj9-windowsservercore-1809/Dockerfile.openj9.releases.full
@@ -22,13 +22,13 @@ FROM mcr.microsoft.com/windows/servercore:1809
# $ProgressPreference: https://github.com/PowerShell/PowerShell/issues/2138#issuecomment-251261324
SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"]
-ENV JAVA_VERSION jdk-14.0.2+12_openj9-0.21.0
+ENV JAVA_VERSION jdk-15+36_openj9-0.22.0
-RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk14-binaries/releases/download/jdk-14.0.2%2B12_openj9-0.21.0/OpenJDK14U-jdk_x64_windows_openj9_14.0.2_12_openj9-0.21.0.msi ...'); \
+RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15%2B36_openj9-0.22.0/OpenJDK15U-jdk_x64_windows_openj9_15_36_openj9-0.22.0.msi ...'); \
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; \
- wget https://github.com/AdoptOpenJDK/openjdk14-binaries/releases/download/jdk-14.0.2%2B12_openj9-0.21.0/OpenJDK14U-jdk_x64_windows_openj9_14.0.2_12_openj9-0.21.0.msi -O 'openjdk.msi'; \
- Write-Host ('Verifying sha256 (2e496ce7ca02f7a380fd1902e06d55d52121bb2eee29b21b8e54ad3e2fd3466e) ...'); \
- if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne '2e496ce7ca02f7a380fd1902e06d55d52121bb2eee29b21b8e54ad3e2fd3466e') { \
+ wget https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15%2B36_openj9-0.22.0/OpenJDK15U-jdk_x64_windows_openj9_15_36_openj9-0.22.0.msi -O 'openjdk.msi'; \
+ Write-Host ('Verifying sha256 (88dd04dc008ff18e09ad158046a650797ff8e5ce0f1880515e359c49f0fddd4e) ...'); \
+ if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne '88dd04dc008ff18e09ad158046a650797ff8e5ce0f1880515e359c49f0fddd4e') { \
Write-Host 'FAILED!'; \
exit 1; \
}; \
diff --git a/adoptopenjdk_openj9-windowsservercore-ltsc2016/Dockerfile.openj9.releases.full b/adoptopenjdk_openj9-windowsservercore-ltsc2016/Dockerfile.openj9.releases.full
index 4a658d9..0ca5dd4 100644
--- a/adoptopenjdk_openj9-windowsservercore-ltsc2016/Dockerfile.openj9.releases.full
+++ b/adoptopenjdk_openj9-windowsservercore-ltsc2016/Dockerfile.openj9.releases.full
@@ -22,13 +22,13 @@ FROM mcr.microsoft.com/windows/servercore:ltsc2016
# $ProgressPreference: https://github.com/PowerShell/PowerShell/issues/2138#issuecomment-251261324
SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"]
-ENV JAVA_VERSION jdk-14.0.2+12_openj9-0.21.0
+ENV JAVA_VERSION jdk-15+36_openj9-0.22.0
-RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk14-binaries/releases/download/jdk-14.0.2%2B12_openj9-0.21.0/OpenJDK14U-jdk_x64_windows_openj9_14.0.2_12_openj9-0.21.0.msi ...'); \
+RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15%2B36_openj9-0.22.0/OpenJDK15U-jdk_x64_windows_openj9_15_36_openj9-0.22.0.msi ...'); \
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; \
- wget https://github.com/AdoptOpenJDK/openjdk14-binaries/releases/download/jdk-14.0.2%2B12_openj9-0.21.0/OpenJDK14U-jdk_x64_windows_openj9_14.0.2_12_openj9-0.21.0.msi -O 'openjdk.msi'; \
- Write-Host ('Verifying sha256 (2e496ce7ca02f7a380fd1902e06d55d52121bb2eee29b21b8e54ad3e2fd3466e) ...'); \
- if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne '2e496ce7ca02f7a380fd1902e06d55d52121bb2eee29b21b8e54ad3e2fd3466e') { \
+ wget https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15%2B36_openj9-0.22.0/OpenJDK15U-jdk_x64_windows_openj9_15_36_openj9-0.22.0.msi -O 'openjdk.msi'; \
+ Write-Host ('Verifying sha256 (88dd04dc008ff18e09ad158046a650797ff8e5ce0f1880515e359c49f0fddd4e) ...'); \
+ if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne '88dd04dc008ff18e09ad158046a650797ff8e5ce0f1880515e359c49f0fddd4e') { \
Write-Host 'FAILED!'; \
exit 1; \
}; \ |
It seems out of place for the generic As used, the
While it wouldn't make sense to embed that much logic into the Dockerfile, if it is in the build context, it will still be reviewed and so need to follow all the regular guidelines. (So a quick glance would be things like |
…file standards, remove eclipse scc generation to help reduce complexity.
Hi @yosifkit, thank you for the review
Let me clarify. The class cache is only populated with system JDK classes and not
We have tried to simplify the script by removing |
Placing it in the Dockerfile does make it easier for users to see exactly what is doing on without having to jump into the container. My initial recommendation would be to make it fail when unable to accomplish the purpose of the layer (e.g. when unable to download or verify We are also curious as to why the class cache isn't a zip that could just be download with the jdk. Shouldn't this be a standard set that could be applied to more that just container users? (then you could design a standard set of java packages to load). |
Thanks for the feedback !
ok, will update accordingly.
We will have to explore if there are ways in which we could integrate this functionality into the Adopt build system for a more generic usecase, but the current scripts are just targeting the container usecase. |
@yosifkit Let me know if the above change addresses all your concerns, thanks ! |
Along the same lines as #8211 (comment);
So, this new long |
Diff for 4c3c132:TODO diff too large for GitHub comment!
See: http://github.com/docker-library/official-images/actions/runs/309266604 |
Thanks! LGTM. cc @tianon Diff:diff --git a/_bashbrew-cat b/_bashbrew-cat
index cdcdf16..f337762 100644
--- a/_bashbrew-cat
+++ b/_bashbrew-cat
@@ -1,94 +1,94 @@
Maintainers: Dinakar Guniguntala <[email protected]> (@dinogun)
GitRepo: https://github.com/AdoptOpenJDK/openjdk-docker.git
-Tags: 8u262-b10-jdk-hotspot-bionic, 8-jdk-hotspot-bionic, 8-hotspot-bionic
-SharedTags: 8u262-b10-jdk-hotspot, 8-jdk-hotspot, 8-hotspot
+Tags: 8u265-b01-jdk-hotspot-bionic, 8-jdk-hotspot-bionic, 8-hotspot-bionic
+SharedTags: 8u265-b01-jdk-hotspot, 8-jdk-hotspot, 8-hotspot
Architectures: amd64, arm32v7, arm64v8, ppc64le, s390x
-GitCommit: 2ad867c3b57069823d3958515a55d227d3153da2
+GitCommit: deab34cef2565399c54cb4ab47fb06a54007b3f6
Directory: 8/jdk/ubuntu
File: Dockerfile.hotspot.releases.full
-Tags: 8u262-b10-jdk-hotspot-windowsservercore-1809, 8-jdk-hotspot-windowsservercore-1809, 8-hotspot-windowsservercore-1809
-SharedTags: 8u262-b10-jdk-hotspot-windowsservercore, 8-jdk-hotspot-windowsservercore, 8-hotspot-windowsservercore, 8u262-b10-jdk-hotspot, 8-jdk-hotspot, 8-hotspot
+Tags: 8u265-b01-jdk-hotspot-windowsservercore-1809, 8-jdk-hotspot-windowsservercore-1809, 8-hotspot-windowsservercore-1809
+SharedTags: 8u265-b01-jdk-hotspot-windowsservercore, 8-jdk-hotspot-windowsservercore, 8-hotspot-windowsservercore, 8u265-b01-jdk-hotspot, 8-jdk-hotspot, 8-hotspot
Architectures: windows-amd64
-GitCommit: 2ad867c3b57069823d3958515a55d227d3153da2
+GitCommit: deab34cef2565399c54cb4ab47fb06a54007b3f6
Directory: 8/jdk/windows/windowsservercore-1809
File: Dockerfile.hotspot.releases.full
Constraints: windowsservercore-1809
-Tags: 8u262-b10-jdk-hotspot-windowsservercore-ltsc2016, 8-jdk-hotspot-windowsservercore-ltsc2016, 8-hotspot-windowsservercore-ltsc2016
-SharedTags: 8u262-b10-jdk-hotspot-windowsservercore, 8-jdk-hotspot-windowsservercore, 8-hotspot-windowsservercore, 8u262-b10-jdk-hotspot, 8-jdk-hotspot, 8-hotspot
+Tags: 8u265-b01-jdk-hotspot-windowsservercore-ltsc2016, 8-jdk-hotspot-windowsservercore-ltsc2016, 8-hotspot-windowsservercore-ltsc2016
+SharedTags: 8u265-b01-jdk-hotspot-windowsservercore, 8-jdk-hotspot-windowsservercore, 8-hotspot-windowsservercore, 8u265-b01-jdk-hotspot, 8-jdk-hotspot, 8-hotspot
Architectures: windows-amd64
-GitCommit: 2ad867c3b57069823d3958515a55d227d3153da2
+GitCommit: deab34cef2565399c54cb4ab47fb06a54007b3f6
Directory: 8/jdk/windows/windowsservercore-ltsc2016
File: Dockerfile.hotspot.releases.full
Constraints: windowsservercore-ltsc2016
-Tags: 8u262-b10-jdk-openj9-0.21.0-bionic, 8-jdk-openj9-bionic, 8-openj9-bionic
-SharedTags: 8u262-b10-jdk-openj9-0.21.0, 8-jdk-openj9, 8-openj9
+Tags: 8u265-b01-jdk-openj9-0.21.0-bionic, 8-jdk-openj9-bionic, 8-openj9-bionic
+SharedTags: 8u265-b01-jdk-openj9-0.21.0, 8-jdk-openj9, 8-openj9
Architectures: amd64, ppc64le, s390x
-GitCommit: 2ad867c3b57069823d3958515a55d227d3153da2
+GitCommit: deab34cef2565399c54cb4ab47fb06a54007b3f6
Directory: 8/jdk/ubuntu
File: Dockerfile.openj9.releases.full
-Tags: 8u262-b10-jdk-openj9-0.21.0-windowsservercore-1809, 8-jdk-openj9-windowsservercore-1809, 8-openj9-windowsservercore-1809
-SharedTags: 8u262-b10-jdk-openj9-0.21.0-windowsservercore, 8-jdk-openj9-windowsservercore, 8-openj9-windowsservercore, 8u262-b10-jdk-openj9-0.21.0, 8-jdk-openj9, 8-openj9
+Tags: 8u265-b01-jdk-openj9-0.21.0-windowsservercore-1809, 8-jdk-openj9-windowsservercore-1809, 8-openj9-windowsservercore-1809
+SharedTags: 8u265-b01-jdk-openj9-0.21.0-windowsservercore, 8-jdk-openj9-windowsservercore, 8-openj9-windowsservercore, 8u265-b01-jdk-openj9-0.21.0, 8-jdk-openj9, 8-openj9
Architectures: windows-amd64
-GitCommit: 2ad867c3b57069823d3958515a55d227d3153da2
+GitCommit: deab34cef2565399c54cb4ab47fb06a54007b3f6
Directory: 8/jdk/windows/windowsservercore-1809
File: Dockerfile.openj9.releases.full
Constraints: windowsservercore-1809
-Tags: 8u262-b10-jdk-openj9-0.21.0-windowsservercore-ltsc2016, 8-jdk-openj9-windowsservercore-ltsc2016, 8-openj9-windowsservercore-ltsc2016
-SharedTags: 8u262-b10-jdk-openj9-0.21.0-windowsservercore, 8-jdk-openj9-windowsservercore, 8-openj9-windowsservercore, 8u262-b10-jdk-openj9-0.21.0, 8-jdk-openj9, 8-openj9
+Tags: 8u265-b01-jdk-openj9-0.21.0-windowsservercore-ltsc2016, 8-jdk-openj9-windowsservercore-ltsc2016, 8-openj9-windowsservercore-ltsc2016
+SharedTags: 8u265-b01-jdk-openj9-0.21.0-windowsservercore, 8-jdk-openj9-windowsservercore, 8-openj9-windowsservercore, 8u265-b01-jdk-openj9-0.21.0, 8-jdk-openj9, 8-openj9
Architectures: windows-amd64
-GitCommit: 2ad867c3b57069823d3958515a55d227d3153da2
+GitCommit: deab34cef2565399c54cb4ab47fb06a54007b3f6
Directory: 8/jdk/windows/windowsservercore-ltsc2016
File: Dockerfile.openj9.releases.full
Constraints: windowsservercore-ltsc2016
-Tags: 8u262-b10-jre-hotspot-bionic, 8-jre-hotspot-bionic
-SharedTags: 8u262-b10-jre-hotspot, 8-jre-hotspot
+Tags: 8u265-b01-jre-hotspot-bionic, 8-jre-hotspot-bionic
+SharedTags: 8u265-b01-jre-hotspot, 8-jre-hotspot
Architectures: amd64, arm32v7, arm64v8, ppc64le, s390x
-GitCommit: 2ad867c3b57069823d3958515a55d227d3153da2
+GitCommit: deab34cef2565399c54cb4ab47fb06a54007b3f6
Directory: 8/jre/ubuntu
File: Dockerfile.hotspot.releases.full
-Tags: 8u262-b10-jre-hotspot-windowsservercore-1809, 8-jre-hotspot-windowsservercore-1809
-SharedTags: 8u262-b10-jre-hotspot-windowsservercore, 8-jre-hotspot-windowsservercore, 8u262-b10-jre-hotspot, 8-jre-hotspot
+Tags: 8u265-b01-jre-hotspot-windowsservercore-1809, 8-jre-hotspot-windowsservercore-1809
+SharedTags: 8u265-b01-jre-hotspot-windowsservercore, 8-jre-hotspot-windowsservercore, 8u265-b01-jre-hotspot, 8-jre-hotspot
Architectures: windows-amd64
-GitCommit: 2ad867c3b57069823d3958515a55d227d3153da2
+GitCommit: deab34cef2565399c54cb4ab47fb06a54007b3f6
Directory: 8/jre/windows/windowsservercore-1809
File: Dockerfile.hotspot.releases.full
Constraints: windowsservercore-1809
-Tags: 8u262-b10-jre-hotspot-windowsservercore-ltsc2016, 8-jre-hotspot-windowsservercore-ltsc2016
-SharedTags: 8u262-b10-jre-hotspot-windowsservercore, 8-jre-hotspot-windowsservercore, 8u262-b10-jre-hotspot, 8-jre-hotspot
+Tags: 8u265-b01-jre-hotspot-windowsservercore-ltsc2016, 8-jre-hotspot-windowsservercore-ltsc2016
+SharedTags: 8u265-b01-jre-hotspot-windowsservercore, 8-jre-hotspot-windowsservercore, 8u265-b01-jre-hotspot, 8-jre-hotspot
Architectures: windows-amd64
-GitCommit: 2ad867c3b57069823d3958515a55d227d3153da2
+GitCommit: deab34cef2565399c54cb4ab47fb06a54007b3f6
Directory: 8/jre/windows/windowsservercore-ltsc2016
File: Dockerfile.hotspot.releases.full
Constraints: windowsservercore-ltsc2016
-Tags: 8u262-b10-jre-openj9-0.21.0-bionic, 8-jre-openj9-bionic
-SharedTags: 8u262-b10-jre-openj9-0.21.0, 8-jre-openj9
+Tags: 8u265-b01-jre-openj9-0.21.0-bionic, 8-jre-openj9-bionic
+SharedTags: 8u265-b01-jre-openj9-0.21.0, 8-jre-openj9
Architectures: amd64, ppc64le, s390x
-GitCommit: 2ad867c3b57069823d3958515a55d227d3153da2
+GitCommit: deab34cef2565399c54cb4ab47fb06a54007b3f6
Directory: 8/jre/ubuntu
File: Dockerfile.openj9.releases.full
-Tags: 8u262-b10-jre-openj9-0.21.0-windowsservercore-1809, 8-jre-openj9-windowsservercore-1809
-SharedTags: 8u262-b10-jre-openj9-0.21.0-windowsservercore, 8-jre-openj9-windowsservercore, 8u262-b10-jre-openj9-0.21.0, 8-jre-openj9
+Tags: 8u265-b01-jre-openj9-0.21.0-windowsservercore-1809, 8-jre-openj9-windowsservercore-1809
+SharedTags: 8u265-b01-jre-openj9-0.21.0-windowsservercore, 8-jre-openj9-windowsservercore, 8u265-b01-jre-openj9-0.21.0, 8-jre-openj9
Architectures: windows-amd64
-GitCommit: 2ad867c3b57069823d3958515a55d227d3153da2
+GitCommit: deab34cef2565399c54cb4ab47fb06a54007b3f6
Directory: 8/jre/windows/windowsservercore-1809
File: Dockerfile.openj9.releases.full
Constraints: windowsservercore-1809
-Tags: 8u262-b10-jre-openj9-0.21.0-windowsservercore-ltsc2016, 8-jre-openj9-windowsservercore-ltsc2016
-SharedTags: 8u262-b10-jre-openj9-0.21.0-windowsservercore, 8-jre-openj9-windowsservercore, 8u262-b10-jre-openj9-0.21.0, 8-jre-openj9
+Tags: 8u265-b01-jre-openj9-0.21.0-windowsservercore-ltsc2016, 8-jre-openj9-windowsservercore-ltsc2016
+SharedTags: 8u265-b01-jre-openj9-0.21.0-windowsservercore, 8-jre-openj9-windowsservercore, 8u265-b01-jre-openj9-0.21.0, 8-jre-openj9
Architectures: windows-amd64
-GitCommit: 2ad867c3b57069823d3958515a55d227d3153da2
+GitCommit: deab34cef2565399c54cb4ab47fb06a54007b3f6
Directory: 8/jre/windows/windowsservercore-ltsc2016
File: Dockerfile.openj9.releases.full
Constraints: windowsservercore-ltsc2016
@@ -96,14 +96,14 @@ Constraints: windowsservercore-ltsc2016
Tags: 11.0.8_10-jdk-hotspot-bionic, 11-jdk-hotspot-bionic, 11-hotspot-bionic
SharedTags: 11.0.8_10-jdk-hotspot, 11-jdk-hotspot, 11-hotspot
Architectures: amd64, arm32v7, arm64v8, ppc64le, s390x
-GitCommit: 2ad867c3b57069823d3958515a55d227d3153da2
+GitCommit: deab34cef2565399c54cb4ab47fb06a54007b3f6
Directory: 11/jdk/ubuntu
File: Dockerfile.hotspot.releases.full
Tags: 11.0.8_10-jdk-hotspot-windowsservercore-1809, 11-jdk-hotspot-windowsservercore-1809, 11-hotspot-windowsservercore-1809
SharedTags: 11.0.8_10-jdk-hotspot-windowsservercore, 11-jdk-hotspot-windowsservercore, 11-hotspot-windowsservercore, 11.0.8_10-jdk-hotspot, 11-jdk-hotspot, 11-hotspot
Architectures: windows-amd64
-GitCommit: 2ad867c3b57069823d3958515a55d227d3153da2
+GitCommit: deab34cef2565399c54cb4ab47fb06a54007b3f6
Directory: 11/jdk/windows/windowsservercore-1809
File: Dockerfile.hotspot.releases.full
Constraints: windowsservercore-1809
@@ -111,22 +111,22 @@ Constraints: windowsservercore-1809
Tags: 11.0.8_10-jdk-hotspot-windowsservercore-ltsc2016, 11-jdk-hotspot-windowsservercore-ltsc2016, 11-hotspot-windowsservercore-ltsc2016
SharedTags: 11.0.8_10-jdk-hotspot-windowsservercore, 11-jdk-hotspot-windowsservercore, 11-hotspot-windowsservercore, 11.0.8_10-jdk-hotspot, 11-jdk-hotspot, 11-hotspot
Architectures: windows-amd64
-GitCommit: 2ad867c3b57069823d3958515a55d227d3153da2
+GitCommit: deab34cef2565399c54cb4ab47fb06a54007b3f6
Directory: 11/jdk/windows/windowsservercore-ltsc2016
File: Dockerfile.hotspot.releases.full
Constraints: windowsservercore-ltsc2016
Tags: 11.0.8_10-jdk-openj9-0.21.0-bionic, 11-jdk-openj9-bionic, 11-openj9-bionic
SharedTags: 11.0.8_10-jdk-openj9-0.21.0, 11-jdk-openj9, 11-openj9
-Architectures: amd64, ppc64le, s390x
-GitCommit: 2ad867c3b57069823d3958515a55d227d3153da2
+Architectures: amd64, arm64v8, ppc64le, s390x
+GitCommit: deab34cef2565399c54cb4ab47fb06a54007b3f6
Directory: 11/jdk/ubuntu
File: Dockerfile.openj9.releases.full
Tags: 11.0.8_10-jdk-openj9-0.21.0-windowsservercore-1809, 11-jdk-openj9-windowsservercore-1809, 11-openj9-windowsservercore-1809
SharedTags: 11.0.8_10-jdk-openj9-0.21.0-windowsservercore, 11-jdk-openj9-windowsservercore, 11-openj9-windowsservercore, 11.0.8_10-jdk-openj9-0.21.0, 11-jdk-openj9, 11-openj9
Architectures: windows-amd64
-GitCommit: 2ad867c3b57069823d3958515a55d227d3153da2
+GitCommit: deab34cef2565399c54cb4ab47fb06a54007b3f6
Directory: 11/jdk/windows/windowsservercore-1809
File: Dockerfile.openj9.releases.full
Constraints: windowsservercore-1809
@@ -134,7 +134,7 @@ Constraints: windowsservercore-1809
Tags: 11.0.8_10-jdk-openj9-0.21.0-windowsservercore-ltsc2016, 11-jdk-openj9-windowsservercore-ltsc2016, 11-openj9-windowsservercore-ltsc2016
SharedTags: 11.0.8_10-jdk-openj9-0.21.0-windowsservercore, 11-jdk-openj9-windowsservercore, 11-openj9-windowsservercore, 11.0.8_10-jdk-openj9-0.21.0, 11-jdk-openj9, 11-openj9
Architectures: windows-amd64
-GitCommit: 2ad867c3b57069823d3958515a55d227d3153da2
+GitCommit: deab34cef2565399c54cb4ab47fb06a54007b3f6
Directory: 11/jdk/windows/windowsservercore-ltsc2016
File: Dockerfile.openj9.releases.full
Constraints: windowsservercore-ltsc2016
@@ -142,14 +142,14 @@ Constraints: windowsservercore-ltsc2016
Tags: 11.0.8_10-jre-hotspot-bionic, 11-jre-hotspot-bionic
SharedTags: 11.0.8_10-jre-hotspot, 11-jre-hotspot
Architectures: amd64, arm32v7, arm64v8, ppc64le, s390x
-GitCommit: 2ad867c3b57069823d3958515a55d227d3153da2
+GitCommit: deab34cef2565399c54cb4ab47fb06a54007b3f6
Directory: 11/jre/ubuntu
File: Dockerfile.hotspot.releases.full
Tags: 11.0.8_10-jre-hotspot-windowsservercore-1809, 11-jre-hotspot-windowsservercore-1809
SharedTags: 11.0.8_10-jre-hotspot-windowsservercore, 11-jre-hotspot-windowsservercore, 11.0.8_10-jre-hotspot, 11-jre-hotspot
Architectures: windows-amd64
-GitCommit: 2ad867c3b57069823d3958515a55d227d3153da2
+GitCommit: deab34cef2565399c54cb4ab47fb06a54007b3f6
Directory: 11/jre/windows/windowsservercore-1809
File: Dockerfile.hotspot.releases.full
Constraints: windowsservercore-1809
@@ -157,30 +157,30 @@ Constraints: windowsservercore-1809
Tags: 11.0.8_10-jre-hotspot-windowsservercore-ltsc2016, 11-jre-hotspot-windowsservercore-ltsc2016
SharedTags: 11.0.8_10-jre-hotspot-windowsservercore, 11-jre-hotspot-windowsservercore, 11.0.8_10-jre-hotspot, 11-jre-hotspot
Architectures: windows-amd64
-GitCommit: 2ad867c3b57069823d3958515a55d227d3153da2
+GitCommit: deab34cef2565399c54cb4ab47fb06a54007b3f6
Directory: 11/jre/windows/windowsservercore-ltsc2016
File: Dockerfile.hotspot.releases.full
Constraints: windowsservercore-ltsc2016
Tags: 11.0.8_10-jre-openj9-0.21.0-bionic, 11-jre-openj9-bionic
SharedTags: 11.0.8_10-jre-openj9-0.21.0, 11-jre-openj9
-Architectures: amd64, ppc64le, s390x
-GitCommit: 2ad867c3b57069823d3958515a55d227d3153da2
+Architectures: amd64, arm64v8, ppc64le, s390x
+GitCommit: deab34cef2565399c54cb4ab47fb06a54007b3f6
Directory: 11/jre/ubuntu
File: Dockerfile.openj9.releases.full
Tags: 11.0.8_10-jre-openj9-0.21.0-windowsservercore-1809, 11-jre-openj9-windowsservercore-1809
SharedTags: 11.0.8_10-jre-openj9-0.21.0-windowsservercore, 11-jre-openj9-windowsservercore, 11.0.8_10-jre-openj9-0.21.0, 11-jre-openj9
Architectures: windows-amd64
-GitCommit: 2ad867c3b57069823d3958515a55d227d3153da2
+GitCommit: deab34cef2565399c54cb4ab47fb06a54007b3f6
Directory: 11/jre/windows/windowsservercore-1809
File: Dockerfile.openj9.releases.full
Constraints: windowsservercore-1809
Tags: 11.0.8_10-jre-openj9-0.21.0-windowsservercore-ltsc2016, 11-jre-openj9-windowsservercore-ltsc2016
-SharedTags: 11.0.8_10-jre-openj9-0.21.0-windowsservercore, 11-jre-openj9-windowsservercore, 11-openj9-windowsservercore, 11.0.8_10-jre-openj9-0.21.0, 11-jre-openj9
+SharedTags: 11.0.8_10-jre-openj9-0.21.0-windowsservercore, 11-jre-openj9-windowsservercore, 11.0.8_10-jre-openj9-0.21.0, 11-jre-openj9
Architectures: windows-amd64
-GitCommit: 2ad867c3b57069823d3958515a55d227d3153da2
+GitCommit: deab34cef2565399c54cb4ab47fb06a54007b3f6
Directory: 11/jre/windows/windowsservercore-ltsc2016
File: Dockerfile.openj9.releases.full
Constraints: windowsservercore-ltsc2016
@@ -188,22 +188,22 @@ Constraints: windowsservercore-ltsc2016
Tags: 13.0.2_8-jdk-hotspot-bionic, 13-jdk-hotspot-bionic, 13-hotspot-bionic
SharedTags: 13.0.2_8-jdk-hotspot, 13-jdk-hotspot, 13-hotspot
Architectures: amd64, arm32v7, arm64v8, ppc64le, s390x
-GitCommit: 3b28dd3fb7230f208ed49da507432a01741b1259
+GitCommit: deab34cef2565399c54cb4ab47fb06a54007b3f6
Directory: 13/jdk/ubuntu
File: Dockerfile.hotspot.releases.full
Tags: 13.0.2_8-jdk-hotspot-windowsservercore-1809, 13-jdk-hotspot-windowsservercore-1809, 13-hotspot-windowsservercore-1809
-SharedTags: 13.0.2_8-jdk-hotspot-windowsservercore, 13-jdk-hotspot-windowsservercore, 13-hotspot-windowsservercore, hotspot-windowsservercore, 13.0.2_8-jdk-hotspot, 13-jdk-hotspot, 13-hotspot
+SharedTags: 13.0.2_8-jdk-hotspot-windowsservercore, 13-jdk-hotspot-windowsservercore, 13-hotspot-windowsservercore, 13.0.2_8-jdk-hotspot, 13-jdk-hotspot, 13-hotspot
Architectures: windows-amd64
-GitCommit: 3b28dd3fb7230f208ed49da507432a01741b1259
+GitCommit: deab34cef2565399c54cb4ab47fb06a54007b3f6
Directory: 13/jdk/windows/windowsservercore-1809
File: Dockerfile.hotspot.releases.full
Constraints: windowsservercore-1809
Tags: 13.0.2_8-jdk-hotspot-windowsservercore-ltsc2016, 13-jdk-hotspot-windowsservercore-ltsc2016, 13-hotspot-windowsservercore-ltsc2016
-SharedTags: 13.0.2_8-jdk-hotspot-windowsservercore, 13-jdk-hotspot-windowsservercore, 13-hotspot-windowsservercore, hotspot-windowsservercore, 13.0.2_8-jdk-hotspot, 13-jdk-hotspot, 13-hotspot
+SharedTags: 13.0.2_8-jdk-hotspot-windowsservercore, 13-jdk-hotspot-windowsservercore, 13-hotspot-windowsservercore, 13.0.2_8-jdk-hotspot, 13-jdk-hotspot, 13-hotspot
Architectures: windows-amd64
-GitCommit: 3b28dd3fb7230f208ed49da507432a01741b1259
+GitCommit: deab34cef2565399c54cb4ab47fb06a54007b3f6
Directory: 13/jdk/windows/windowsservercore-ltsc2016
File: Dockerfile.hotspot.releases.full
Constraints: windowsservercore-ltsc2016
@@ -211,22 +211,22 @@ Constraints: windowsservercore-ltsc2016
Tags: 13.0.2_8-jdk-openj9-0.18.0-bionic, 13-jdk-openj9-bionic, 13-openj9-bionic
SharedTags: 13.0.2_8-jdk-openj9-0.18.0, 13-jdk-openj9, 13-openj9
Architectures: amd64, ppc64le, s390x
-GitCommit: 3b28dd3fb7230f208ed49da507432a01741b1259
+GitCommit: deab34cef2565399c54cb4ab47fb06a54007b3f6
Directory: 13/jdk/ubuntu
File: Dockerfile.openj9.releases.full
Tags: 13.0.2_8-jdk-openj9-0.18.0-windowsservercore-1809, 13-jdk-openj9-windowsservercore-1809, 13-openj9-windowsservercore-1809
-SharedTags: 13.0.2_8-jdk-openj9-0.18.0-windowsservercore, 13-jdk-openj9-windowsservercore, 13-openj9-windowsservercore, openj9-windowsservercore, 13.0.2_8-jdk-openj9-0.18.0, 13-jdk-openj9, 13-openj9
+SharedTags: 13.0.2_8-jdk-openj9-0.18.0-windowsservercore, 13-jdk-openj9-windowsservercore, 13-openj9-windowsservercore, 13.0.2_8-jdk-openj9-0.18.0, 13-jdk-openj9, 13-openj9
Architectures: windows-amd64
-GitCommit: 3b28dd3fb7230f208ed49da507432a01741b1259
+GitCommit: deab34cef2565399c54cb4ab47fb06a54007b3f6
Directory: 13/jdk/windows/windowsservercore-1809
File: Dockerfile.openj9.releases.full
Constraints: windowsservercore-1809
Tags: 13.0.2_8-jdk-openj9-0.18.0-windowsservercore-ltsc2016, 13-jdk-openj9-windowsservercore-ltsc2016, 13-openj9-windowsservercore-ltsc2016
-SharedTags: 13.0.2_8-jdk-openj9-0.18.0-windowsservercore, 13-jdk-openj9-windowsservercore, 13-openj9-windowsservercore, openj9-windowsservercore, 13.0.2_8-jdk-openj9-0.18.0, 13-jdk-openj9, 13-openj9
+SharedTags: 13.0.2_8-jdk-openj9-0.18.0-windowsservercore, 13-jdk-openj9-windowsservercore, 13-openj9-windowsservercore, 13.0.2_8-jdk-openj9-0.18.0, 13-jdk-openj9, 13-openj9
Architectures: windows-amd64
-GitCommit: 3b28dd3fb7230f208ed49da507432a01741b1259
+GitCommit: deab34cef2565399c54cb4ab47fb06a54007b3f6
Directory: 13/jdk/windows/windowsservercore-ltsc2016
File: Dockerfile.openj9.releases.full
Constraints: windowsservercore-ltsc2016
@@ -234,14 +234,14 @@ Constraints: windowsservercore-ltsc2016
Tags: 13.0.2_8-jre-hotspot-bionic, 13-jre-hotspot-bionic
SharedTags: 13.0.2_8-jre-hotspot, 13-jre-hotspot
Architectures: amd64, arm64v8, ppc64le, s390x
-GitCommit: 3b28dd3fb7230f208ed49da507432a01741b1259
+GitCommit: deab34cef2565399c54cb4ab47fb06a54007b3f6
Directory: 13/jre/ubuntu
File: Dockerfile.hotspot.releases.full
Tags: 13.0.2_8-jre-hotspot-windowsservercore-1809, 13-jre-hotspot-windowsservercore-1809
SharedTags: 13.0.2_8-jre-hotspot-windowsservercore, 13-jre-hotspot-windowsservercore, 13.0.2_8-jre-hotspot, 13-jre-hotspot
Architectures: windows-amd64
-GitCommit: 3b28dd3fb7230f208ed49da507432a01741b1259
+GitCommit: deab34cef2565399c54cb4ab47fb06a54007b3f6
Directory: 13/jre/windows/windowsservercore-1809
File: Dockerfile.hotspot.releases.full
Constraints: windowsservercore-1809
@@ -249,7 +249,7 @@ Constraints: windowsservercore-1809
Tags: 13.0.2_8-jre-hotspot-windowsservercore-ltsc2016, 13-jre-hotspot-windowsservercore-ltsc2016
SharedTags: 13.0.2_8-jre-hotspot-windowsservercore, 13-jre-hotspot-windowsservercore, 13.0.2_8-jre-hotspot, 13-jre-hotspot
Architectures: windows-amd64
-GitCommit: 3b28dd3fb7230f208ed49da507432a01741b1259
+GitCommit: deab34cef2565399c54cb4ab47fb06a54007b3f6
Directory: 13/jre/windows/windowsservercore-ltsc2016
File: Dockerfile.hotspot.releases.full
Constraints: windowsservercore-ltsc2016
@@ -257,14 +257,14 @@ Constraints: windowsservercore-ltsc2016
Tags: 13.0.2_8-jre-openj9-0.18.0-bionic, 13-jre-openj9-bionic
SharedTags: 13.0.2_8-jre-openj9-0.18.0, 13-jre-openj9
Architectures: amd64, ppc64le, s390x
-GitCommit: 3b28dd3fb7230f208ed49da507432a01741b1259
+GitCommit: deab34cef2565399c54cb4ab47fb06a54007b3f6
Directory: 13/jre/ubuntu
File: Dockerfile.openj9.releases.full
Tags: 13.0.2_8-jre-openj9-0.18.0-windowsservercore-1809, 13-jre-openj9-windowsservercore-1809
SharedTags: 13.0.2_8-jre-openj9-0.18.0-windowsservercore, 13-jre-openj9-windowsservercore, 13.0.2_8-jre-openj9-0.18.0, 13-jre-openj9
Architectures: windows-amd64
-GitCommit: 3b28dd3fb7230f208ed49da507432a01741b1259
+GitCommit: deab34cef2565399c54cb4ab47fb06a54007b3f6
Directory: 13/jre/windows/windowsservercore-1809
File: Dockerfile.openj9.releases.full
Constraints: windowsservercore-1809
@@ -272,99 +272,191 @@ Constraints: windowsservercore-1809
Tags: 13.0.2_8-jre-openj9-0.18.0-windowsservercore-ltsc2016, 13-jre-openj9-windowsservercore-ltsc2016
SharedTags: 13.0.2_8-jre-openj9-0.18.0-windowsservercore, 13-jre-openj9-windowsservercore, 13.0.2_8-jre-openj9-0.18.0, 13-jre-openj9
Architectures: windows-amd64
-GitCommit: 3b28dd3fb7230f208ed49da507432a01741b1259
+GitCommit: deab34cef2565399c54cb4ab47fb06a54007b3f6
Directory: 13/jre/windows/windowsservercore-ltsc2016
File: Dockerfile.openj9.releases.full
Constraints: windowsservercore-ltsc2016
-Tags: 14.0.2_8-jdk-hotspot-bionic, 14-jdk-hotspot-bionic, 14-hotspot-bionic, hotspot-bionic
-SharedTags: 14.0.2_8-jdk-hotspot, 14-jdk-hotspot, 14-hotspot, hotspot, latest
+Tags: 14.0.2_12-jdk-hotspot-bionic, 14-jdk-hotspot-bionic, 14-hotspot-bionic
+SharedTags: 14.0.2_12-jdk-hotspot, 14-jdk-hotspot, 14-hotspot
Architectures: amd64, arm32v7, arm64v8, ppc64le, s390x
-GitCommit: 2ad867c3b57069823d3958515a55d227d3153da2
+GitCommit: deab34cef2565399c54cb4ab47fb06a54007b3f6
Directory: 14/jdk/ubuntu
File: Dockerfile.hotspot.releases.full
-Tags: 14.0.2_8-jdk-hotspot-windowsservercore-1809, 14-jdk-hotspot-windowsservercore-1809, 14-hotspot-windowsservercore-1809, hotspot-windowsservercore-1809
-SharedTags: 14.0.2_8-jdk-hotspot-windowsservercore, 14-jdk-hotspot-windowsservercore, 14-hotspot-windowsservercore, hotspot-windowsservercore, 14.0.2_8-jdk-hotspot, 14-jdk-hotspot, 14-hotspot, hotspot, latest
+Tags: 14.0.2_12-jdk-hotspot-windowsservercore-1809, 14-jdk-hotspot-windowsservercore-1809, 14-hotspot-windowsservercore-1809
+SharedTags: 14.0.2_12-jdk-hotspot-windowsservercore, 14-jdk-hotspot-windowsservercore, 14-hotspot-windowsservercore, 14.0.2_12-jdk-hotspot, 14-jdk-hotspot, 14-hotspot
Architectures: windows-amd64
-GitCommit: 2ad867c3b57069823d3958515a55d227d3153da2
+GitCommit: deab34cef2565399c54cb4ab47fb06a54007b3f6
Directory: 14/jdk/windows/windowsservercore-1809
File: Dockerfile.hotspot.releases.full
Constraints: windowsservercore-1809
-Tags: 14.0.2_8-jdk-hotspot-windowsservercore-ltsc2016, 14-jdk-hotspot-windowsservercore-ltsc2016, 14-hotspot-windowsservercore-ltsc2016, hotspot-windowsservercore-ltsc2016
-SharedTags: 14.0.2_8-jdk-hotspot-windowsservercore, 14-jdk-hotspot-windowsservercore, 14-hotspot-windowsservercore, hotspot-windowsservercore, 14.0.2_8-jdk-hotspot, 14-jdk-hotspot, 14-hotspot, hotspot, latest
+Tags: 14.0.2_12-jdk-hotspot-windowsservercore-ltsc2016, 14-jdk-hotspot-windowsservercore-ltsc2016, 14-hotspot-windowsservercore-ltsc2016
+SharedTags: 14.0.2_12-jdk-hotspot-windowsservercore, 14-jdk-hotspot-windowsservercore, 14-hotspot-windowsservercore, 14.0.2_12-jdk-hotspot, 14-jdk-hotspot, 14-hotspot
Architectures: windows-amd64
-GitCommit: 2ad867c3b57069823d3958515a55d227d3153da2
+GitCommit: deab34cef2565399c54cb4ab47fb06a54007b3f6
Directory: 14/jdk/windows/windowsservercore-ltsc2016
File: Dockerfile.hotspot.releases.full
Constraints: windowsservercore-ltsc2016
-Tags: 14.0.2_8-jdk-openj9-0.21.0-bionic, 14-jdk-openj9-bionic, 14-openj9-bionic, openj9-bionic
-SharedTags: 14.0.2_8-jdk-openj9-0.21.0, 14-jdk-openj9, 14-openj9, openj9
+Tags: 14.0.2_12-jdk-openj9-0.21.0-bionic, 14-jdk-openj9-bionic, 14-openj9-bionic
+SharedTags: 14.0.2_12-jdk-openj9-0.21.0, 14-jdk-openj9, 14-openj9
Architectures: amd64, ppc64le, s390x
-GitCommit: 2ad867c3b57069823d3958515a55d227d3153da2
+GitCommit: deab34cef2565399c54cb4ab47fb06a54007b3f6
Directory: 14/jdk/ubuntu
File: Dockerfile.openj9.releases.full
-Tags: 14.0.2_8-jdk-openj9-0.21.0-windowsservercore-1809, 14-jdk-openj9-windowsservercore-1809, 14-openj9-windowsservercore-1809, openj9-windowsservercore-1809
-SharedTags: 14.0.2_8-jdk-openj9-0.21.0-windowsservercore, 14-jdk-openj9-windowsservercore, 14-openj9-windowsservercore, openj9-windowsservercore, 14.0.2_8-jdk-openj9-0.21.0, 14-jdk-openj9, 14-openj9, openj9
+Tags: 14.0.2_12-jdk-openj9-0.21.0-windowsservercore-1809, 14-jdk-openj9-windowsservercore-1809, 14-openj9-windowsservercore-1809
+SharedTags: 14.0.2_12-jdk-openj9-0.21.0-windowsservercore, 14-jdk-openj9-windowsservercore, 14-openj9-windowsservercore, 14.0.2_12-jdk-openj9-0.21.0, 14-jdk-openj9, 14-openj9
Architectures: windows-amd64
-GitCommit: 2ad867c3b57069823d3958515a55d227d3153da2
+GitCommit: deab34cef2565399c54cb4ab47fb06a54007b3f6
Directory: 14/jdk/windows/windowsservercore-1809
File: Dockerfile.openj9.releases.full
Constraints: windowsservercore-1809
-Tags: 14.0.2_8-jdk-openj9-0.21.0-windowsservercore-ltsc2016, 14-jdk-openj9-windowsservercore-ltsc2016, 14-openj9-windowsservercore-ltsc2016, openj9-windowsservercore-ltsc2016
-SharedTags: 14.0.2_8-jdk-openj9-0.21.0-windowsservercore, 14-jdk-openj9-windowsservercore, 14-openj9-windowsservercore, openj9-windowsservercore, 14.0.2_8-jdk-openj9-0.21.0, 14-jdk-openj9, 14-openj9, openj9
+Tags: 14.0.2_12-jdk-openj9-0.21.0-windowsservercore-ltsc2016, 14-jdk-openj9-windowsservercore-ltsc2016, 14-openj9-windowsservercore-ltsc2016
+SharedTags: 14.0.2_12-jdk-openj9-0.21.0-windowsservercore, 14-jdk-openj9-windowsservercore, 14-openj9-windowsservercore, 14.0.2_12-jdk-openj9-0.21.0, 14-jdk-openj9, 14-openj9
Architectures: windows-amd64
-GitCommit: 2ad867c3b57069823d3958515a55d227d3153da2
+GitCommit: deab34cef2565399c54cb4ab47fb06a54007b3f6
Directory: 14/jdk/windows/windowsservercore-ltsc2016
File: Dockerfile.openj9.releases.full
Constraints: windowsservercore-ltsc2016
-Tags: 14.0.2_8-jre-hotspot-bionic, 14-jre-hotspot-bionic
-SharedTags: 14.0.2_8-jre-hotspot, 14-jre-hotspot
+Tags: 14.0.2_12-jre-hotspot-bionic, 14-jre-hotspot-bionic
+SharedTags: 14.0.2_12-jre-hotspot, 14-jre-hotspot
Architectures: amd64, arm32v7, arm64v8, ppc64le, s390x
-GitCommit: 2ad867c3b57069823d3958515a55d227d3153da2
+GitCommit: deab34cef2565399c54cb4ab47fb06a54007b3f6
Directory: 14/jre/ubuntu
File: Dockerfile.hotspot.releases.full
-Tags: 14.0.2_8-jre-hotspot-windowsservercore-1809, 14-jre-hotspot-windowsservercore-1809
-SharedTags: 14.0.2_8-jre-hotspot-windowsservercore, 14-jre-hotspot-windowsservercore, 14.0.2_8-jre-hotspot, 14-jre-hotspot
+Tags: 14.0.2_12-jre-hotspot-windowsservercore-1809, 14-jre-hotspot-windowsservercore-1809
+SharedTags: 14.0.2_12-jre-hotspot-windowsservercore, 14-jre-hotspot-windowsservercore, 14.0.2_12-jre-hotspot, 14-jre-hotspot
Architectures: windows-amd64
-GitCommit: 2ad867c3b57069823d3958515a55d227d3153da2
+GitCommit: deab34cef2565399c54cb4ab47fb06a54007b3f6
Directory: 14/jre/windows/windowsservercore-1809
File: Dockerfile.hotspot.releases.full
Constraints: windowsservercore-1809
-Tags: 14.0.2_8-jre-hotspot-windowsservercore-ltsc2016, 14-jre-hotspot-windowsservercore-ltsc2016
-SharedTags: 14.0.2_8-jre-hotspot-windowsservercore, 14-jre-hotspot-windowsservercore, 14.0.2_8-jre-hotspot, 14-jre-hotspot
+Tags: 14.0.2_12-jre-hotspot-windowsservercore-ltsc2016, 14-jre-hotspot-windowsservercore-ltsc2016
+SharedTags: 14.0.2_12-jre-hotspot-windowsservercore, 14-jre-hotspot-windowsservercore, 14.0.2_12-jre-hotspot, 14-jre-hotspot
Architectures: windows-amd64
-GitCommit: 2ad867c3b57069823d3958515a55d227d3153da2
+GitCommit: deab34cef2565399c54cb4ab47fb06a54007b3f6
Directory: 14/jre/windows/windowsservercore-ltsc2016
File: Dockerfile.hotspot.releases.full
Constraints: windowsservercore-ltsc2016
-Tags: 14.0.2_8-jre-openj9-0.21.0-bionic, 14-jre-openj9-bionic
-SharedTags: 14.0.2_8-jre-openj9-0.21.0, 14-jre-openj9
+Tags: 14.0.2_12-jre-openj9-0.21.0-bionic, 14-jre-openj9-bionic
+SharedTags: 14.0.2_12-jre-openj9-0.21.0, 14-jre-openj9
Architectures: amd64, ppc64le, s390x
-GitCommit: 2ad867c3b57069823d3958515a55d227d3153da2
+GitCommit: deab34cef2565399c54cb4ab47fb06a54007b3f6
Directory: 14/jre/ubuntu
File: Dockerfile.openj9.releases.full
-Tags: 14.0.2_8-jre-openj9-0.21.0-windowsservercore-1809, 14-jre-openj9-windowsservercore-1809
-SharedTags: 14.0.2_8-jre-openj9-0.21.0-windowsservercore, 14-jre-openj9-windowsservercore, 14.0.2_8-jre-openj9-0.21.0, 14-jre-openj9
+Tags: 14.0.2_12-jre-openj9-0.21.0-windowsservercore-1809, 14-jre-openj9-windowsservercore-1809
+SharedTags: 14.0.2_12-jre-openj9-0.21.0-windowsservercore, 14-jre-openj9-windowsservercore, 14.0.2_12-jre-openj9-0.21.0, 14-jre-openj9
Architectures: windows-amd64
-GitCommit: 2ad867c3b57069823d3958515a55d227d3153da2
+GitCommit: deab34cef2565399c54cb4ab47fb06a54007b3f6
Directory: 14/jre/windows/windowsservercore-1809
File: Dockerfile.openj9.releases.full
Constraints: windowsservercore-1809
-Tags: 14.0.2_8-jre-openj9-0.21.0-windowsservercore-ltsc2016, 14-jre-openj9-windowsservercore-ltsc2016
-SharedTags: 14.0.2_8-jre-openj9-0.21.0-windowsservercore, 14-jre-openj9-windowsservercore, 14.0.2_8-jre-openj9-0.21.0, 14-jre-openj9
+Tags: 14.0.2_12-jre-openj9-0.21.0-windowsservercore-ltsc2016, 14-jre-openj9-windowsservercore-ltsc2016
+SharedTags: 14.0.2_12-jre-openj9-0.21.0-windowsservercore, 14-jre-openj9-windowsservercore, 14.0.2_12-jre-openj9-0.21.0, 14-jre-openj9
Architectures: windows-amd64
-GitCommit: 2ad867c3b57069823d3958515a55d227d3153da2
+GitCommit: deab34cef2565399c54cb4ab47fb06a54007b3f6
Directory: 14/jre/windows/windowsservercore-ltsc2016
File: Dockerfile.openj9.releases.full
Constraints: windowsservercore-ltsc2016
+
+Tags: 15_36-jdk-hotspot-bionic, 15-jdk-hotspot-bionic, 15-hotspot-bionic, hotspot-bionic
+SharedTags: 15_36-jdk-hotspot, 15-jdk-hotspot, 15-hotspot, hotspot, latest
+Architectures: amd64, arm32v7, arm64v8, ppc64le, s390x
+GitCommit: deab34cef2565399c54cb4ab47fb06a54007b3f6
+Directory: 15/jdk/ubuntu
+File: Dockerfile.hotspot.releases.full
+
+Tags: 15_36-jdk-hotspot-windowsservercore-1809, 15-jdk-hotspot-windowsservercore-1809, 15-hotspot-windowsservercore-1809, hotspot-windowsservercore-1809
+SharedTags: 15_36-jdk-hotspot-windowsservercore, 15-jdk-hotspot-windowsservercore, 15-hotspot-windowsservercore, hotspot-windowsservercore, 15_36-jdk-hotspot, 15-jdk-hotspot, 15-hotspot, hotspot, latest
+Architectures: windows-amd64
+GitCommit: deab34cef2565399c54cb4ab47fb06a54007b3f6
+Directory: 15/jdk/windows/windowsservercore-1809
+File: Dockerfile.hotspot.releases.full
+Constraints: windowsservercore-1809
+
+Tags: 15_36-jdk-hotspot-windowsservercore-ltsc2016, 15-jdk-hotspot-windowsservercore-ltsc2016, 15-hotspot-windowsservercore-ltsc2016, hotspot-windowsservercore-ltsc2016
+SharedTags: 15_36-jdk-hotspot-windowsservercore, 15-jdk-hotspot-windowsservercore, 15-hotspot-windowsservercore, hotspot-windowsservercore, 15_36-jdk-hotspot, 15-jdk-hotspot, 15-hotspot, hotspot, latest
+Architectures: windows-amd64
+GitCommit: deab34cef2565399c54cb4ab47fb06a54007b3f6
+Directory: 15/jdk/windows/windowsservercore-ltsc2016
+File: Dockerfile.hotspot.releases.full
+Constraints: windowsservercore-ltsc2016
+
+Tags: 15_36-jdk-openj9-0.22.0-bionic, 15-jdk-openj9-bionic, 15-openj9-bionic, openj9-bionic
+SharedTags: 15_36-jdk-openj9-0.22.0, 15-jdk-openj9, 15-openj9, openj9
+Architectures: amd64, ppc64le, s390x
+GitCommit: deab34cef2565399c54cb4ab47fb06a54007b3f6
+Directory: 15/jdk/ubuntu
+File: Dockerfile.openj9.releases.full
+
+Tags: 15_36-jdk-openj9-0.22.0-windowsservercore-1809, 15-jdk-openj9-windowsservercore-1809, 15-openj9-windowsservercore-1809, openj9-windowsservercore-1809
+SharedTags: 15_36-jdk-openj9-0.22.0-windowsservercore, 15-jdk-openj9-windowsservercore, 15-openj9-windowsservercore, openj9-windowsservercore, 15_36-jdk-openj9-0.22.0, 15-jdk-openj9, 15-openj9, openj9
+Architectures: windows-amd64
+GitCommit: deab34cef2565399c54cb4ab47fb06a54007b3f6
+Directory: 15/jdk/windows/windowsservercore-1809
+File: Dockerfile.openj9.releases.full
+Constraints: windowsservercore-1809
+
+Tags: 15_36-jdk-openj9-0.22.0-windowsservercore-ltsc2016, 15-jdk-openj9-windowsservercore-ltsc2016, 15-openj9-windowsservercore-ltsc2016, openj9-windowsservercore-ltsc2016
+SharedTags: 15_36-jdk-openj9-0.22.0-windowsservercore, 15-jdk-openj9-windowsservercore, 15-openj9-windowsservercore, openj9-windowsservercore, 15_36-jdk-openj9-0.22.0, 15-jdk-openj9, 15-openj9, openj9
+Architectures: windows-amd64
+GitCommit: deab34cef2565399c54cb4ab47fb06a54007b3f6
+Directory: 15/jdk/windows/windowsservercore-ltsc2016
+File: Dockerfile.openj9.releases.full
+Constraints: windowsservercore-ltsc2016
+
+Tags: 15_36-jre-hotspot-bionic, 15-jre-hotspot-bionic
+SharedTags: 15_36-jre-hotspot, 15-jre-hotspot, latest
+Architectures: amd64, arm32v7, arm64v8, ppc64le, s390x
+GitCommit: deab34cef2565399c54cb4ab47fb06a54007b3f6
+Directory: 15/jre/ubuntu
+File: Dockerfile.hotspot.releases.full
+
+Tags: 15_36-jre-hotspot-windowsservercore-1809, 15-jre-hotspot-windowsservercore-1809
+SharedTags: 15_36-jre-hotspot-windowsservercore, 15-jre-hotspot-windowsservercore, 15_36-jre-hotspot, 15-jre-hotspot, latest
+Architectures: windows-amd64
+GitCommit: deab34cef2565399c54cb4ab47fb06a54007b3f6
+Directory: 15/jre/windows/windowsservercore-1809
+File: Dockerfile.hotspot.releases.full
+Constraints: windowsservercore-1809
+
+Tags: 15_36-jre-hotspot-windowsservercore-ltsc2016, 15-jre-hotspot-windowsservercore-ltsc2016
+SharedTags: 15_36-jre-hotspot-windowsservercore, 15-jre-hotspot-windowsservercore, 15_36-jre-hotspot, 15-jre-hotspot, latest
+Architectures: windows-amd64
+GitCommit: deab34cef2565399c54cb4ab47fb06a54007b3f6
+Directory: 15/jre/windows/windowsservercore-ltsc2016
+File: Dockerfile.hotspot.releases.full
+Constraints: windowsservercore-ltsc2016
+
+Tags: 15_36-jre-openj9-0.22.0-bionic, 15-jre-openj9-bionic
+SharedTags: 15_36-jre-openj9-0.22.0, 15-jre-openj9
+Architectures: amd64, ppc64le, s390x
+GitCommit: deab34cef2565399c54cb4ab47fb06a54007b3f6
+Directory: 15/jre/ubuntu
+File: Dockerfile.openj9.releases.full
+
+Tags: 15_36-jre-openj9-0.22.0-windowsservercore-1809, 15-jre-openj9-windowsservercore-1809
+SharedTags: 15_36-jre-openj9-0.22.0-windowsservercore, 15-jre-openj9-windowsservercore, 15_36-jre-openj9-0.22.0, 15-jre-openj9
+Architectures: windows-amd64
+GitCommit: deab34cef2565399c54cb4ab47fb06a54007b3f6
+Directory: 15/jre/windows/windowsservercore-1809
+File: Dockerfile.openj9.releases.full
+Constraints: windowsservercore-1809
+
+Tags: 15_36-jre-openj9-0.22.0-windowsservercore-ltsc2016, 15-jre-openj9-windowsservercore-ltsc2016
+SharedTags: 15_36-jre-openj9-0.22.0-windowsservercore, 15-jre-openj9-windowsservercore, 15_36-jre-openj9-0.22.0, 15-jre-openj9
+Architectures: windows-amd64
+GitCommit: deab34cef2565399c54cb4ab47fb06a54007b3f6
+Directory: 15/jre/windows/windowsservercore-ltsc2016
+File: Dockerfile.openj9.releases.full
+Constraints: windowsservercore-ltsc2016
diff --git a/_bashbrew-list b/_bashbrew-list
index e623e63..20af45a 100644
--- a/_bashbrew-list
+++ b/_bashbrew-list
@@ -1,23 +1,23 @@
-adoptopenjdk:8u262-b10-jdk-hotspot
-adoptopenjdk:8u262-b10-jdk-hotspot-bionic
-adoptopenjdk:8u262-b10-jdk-hotspot-windowsservercore
-adoptopenjdk:8u262-b10-jdk-hotspot-windowsservercore-1809
-adoptopenjdk:8u262-b10-jdk-hotspot-windowsservercore-ltsc2016
-adoptopenjdk:8u262-b10-jdk-openj9-0.21.0
-adoptopenjdk:8u262-b10-jdk-openj9-0.21.0-bionic
-adoptopenjdk:8u262-b10-jdk-openj9-0.21.0-windowsservercore
-adoptopenjdk:8u262-b10-jdk-openj9-0.21.0-windowsservercore-1809
-adoptopenjdk:8u262-b10-jdk-openj9-0.21.0-windowsservercore-ltsc2016
-adoptopenjdk:8u262-b10-jre-hotspot
-adoptopenjdk:8u262-b10-jre-hotspot-bionic
-adoptopenjdk:8u262-b10-jre-hotspot-windowsservercore
-adoptopenjdk:8u262-b10-jre-hotspot-windowsservercore-1809
-adoptopenjdk:8u262-b10-jre-hotspot-windowsservercore-ltsc2016
-adoptopenjdk:8u262-b10-jre-openj9-0.21.0
-adoptopenjdk:8u262-b10-jre-openj9-0.21.0-bionic
-adoptopenjdk:8u262-b10-jre-openj9-0.21.0-windowsservercore
-adoptopenjdk:8u262-b10-jre-openj9-0.21.0-windowsservercore-1809
-adoptopenjdk:8u262-b10-jre-openj9-0.21.0-windowsservercore-ltsc2016
+adoptopenjdk:8u265-b01-jdk-hotspot
+adoptopenjdk:8u265-b01-jdk-hotspot-bionic
+adoptopenjdk:8u265-b01-jdk-hotspot-windowsservercore
+adoptopenjdk:8u265-b01-jdk-hotspot-windowsservercore-1809
+adoptopenjdk:8u265-b01-jdk-hotspot-windowsservercore-ltsc2016
+adoptopenjdk:8u265-b01-jdk-openj9-0.21.0
+adoptopenjdk:8u265-b01-jdk-openj9-0.21.0-bionic
+adoptopenjdk:8u265-b01-jdk-openj9-0.21.0-windowsservercore
+adoptopenjdk:8u265-b01-jdk-openj9-0.21.0-windowsservercore-1809
+adoptopenjdk:8u265-b01-jdk-openj9-0.21.0-windowsservercore-ltsc2016
+adoptopenjdk:8u265-b01-jre-hotspot
+adoptopenjdk:8u265-b01-jre-hotspot-bionic
+adoptopenjdk:8u265-b01-jre-hotspot-windowsservercore
+adoptopenjdk:8u265-b01-jre-hotspot-windowsservercore-1809
+adoptopenjdk:8u265-b01-jre-hotspot-windowsservercore-ltsc2016
+adoptopenjdk:8u265-b01-jre-openj9-0.21.0
+adoptopenjdk:8u265-b01-jre-openj9-0.21.0-bionic
+adoptopenjdk:8u265-b01-jre-openj9-0.21.0-windowsservercore
+adoptopenjdk:8u265-b01-jre-openj9-0.21.0-windowsservercore-1809
+adoptopenjdk:8u265-b01-jre-openj9-0.21.0-windowsservercore-ltsc2016
adoptopenjdk:8-hotspot
adoptopenjdk:8-hotspot-bionic
adoptopenjdk:8-hotspot-windowsservercore
@@ -178,26 +178,76 @@ adoptopenjdk:14-openj9-bionic
adoptopenjdk:14-openj9-windowsservercore
adoptopenjdk:14-openj9-windowsservercore-1809
adoptopenjdk:14-openj9-windowsservercore-ltsc2016
-adoptopenjdk:14.0.2_8-jdk-hotspot
-adoptopenjdk:14.0.2_8-jdk-hotspot-bionic
-adoptopenjdk:14.0.2_8-jdk-hotspot-windowsservercore
-adoptopenjdk:14.0.2_8-jdk-hotspot-windowsservercore-1809
-adoptopenjdk:14.0.2_8-jdk-hotspot-windowsservercore-ltsc2016
-adoptopenjdk:14.0.2_8-jdk-openj9-0.21.0
-adoptopenjdk:14.0.2_8-jdk-openj9-0.21.0-bionic
-adoptopenjdk:14.0.2_8-jdk-openj9-0.21.0-windowsservercore
-adoptopenjdk:14.0.2_8-jdk-openj9-0.21.0-windowsservercore-1809
-adoptopenjdk:14.0.2_8-jdk-openj9-0.21.0-windowsservercore-ltsc2016
-adoptopenjdk:14.0.2_8-jre-hotspot
-adoptopenjdk:14.0.2_8-jre-hotspot-bionic
-adoptopenjdk:14.0.2_8-jre-hotspot-windowsservercore
-adoptopenjdk:14.0.2_8-jre-hotspot-windowsservercore-1809
-adoptopenjdk:14.0.2_8-jre-hotspot-windowsservercore-ltsc2016
-adoptopenjdk:14.0.2_8-jre-openj9-0.21.0
-adoptopenjdk:14.0.2_8-jre-openj9-0.21.0-bionic
-adoptopenjdk:14.0.2_8-jre-openj9-0.21.0-windowsservercore
-adoptopenjdk:14.0.2_8-jre-openj9-0.21.0-windowsservercore-1809
-adoptopenjdk:14.0.2_8-jre-openj9-0.21.0-windowsservercore-ltsc2016
+adoptopenjdk:14.0.2_12-jdk-hotspot
+adoptopenjdk:14.0.2_12-jdk-hotspot-bionic
+adoptopenjdk:14.0.2_12-jdk-hotspot-windowsservercore
+adoptopenjdk:14.0.2_12-jdk-hotspot-windowsservercore-1809
+adoptopenjdk:14.0.2_12-jdk-hotspot-windowsservercore-ltsc2016
+adoptopenjdk:14.0.2_12-jdk-openj9-0.21.0
+adoptopenjdk:14.0.2_12-jdk-openj9-0.21.0-bionic
+adoptopenjdk:14.0.2_12-jdk-openj9-0.21.0-windowsservercore
+adoptopenjdk:14.0.2_12-jdk-openj9-0.21.0-windowsservercore-1809
+adoptopenjdk:14.0.2_12-jdk-openj9-0.21.0-windowsservercore-ltsc2016
+adoptopenjdk:14.0.2_12-jre-hotspot
+adoptopenjdk:14.0.2_12-jre-hotspot-bionic
+adoptopenjdk:14.0.2_12-jre-hotspot-windowsservercore
+adoptopenjdk:14.0.2_12-jre-hotspot-windowsservercore-1809
+adoptopenjdk:14.0.2_12-jre-hotspot-windowsservercore-ltsc2016
+adoptopenjdk:14.0.2_12-jre-openj9-0.21.0
+adoptopenjdk:14.0.2_12-jre-openj9-0.21.0-bionic
+adoptopenjdk:14.0.2_12-jre-openj9-0.21.0-windowsservercore
+adoptopenjdk:14.0.2_12-jre-openj9-0.21.0-windowsservercore-1809
+adoptopenjdk:14.0.2_12-jre-openj9-0.21.0-windowsservercore-ltsc2016
+adoptopenjdk:15-hotspot
+adoptopenjdk:15-hotspot-bionic
+adoptopenjdk:15-hotspot-windowsservercore
+adoptopenjdk:15-hotspot-windowsservercore-1809
+adoptopenjdk:15-hotspot-windowsservercore-ltsc2016
+adoptopenjdk:15-jdk-hotspot
+adoptopenjdk:15-jdk-hotspot-bionic
+adoptopenjdk:15-jdk-hotspot-windowsservercore
+adoptopenjdk:15-jdk-hotspot-windowsservercore-1809
+adoptopenjdk:15-jdk-hotspot-windowsservercore-ltsc2016
+adoptopenjdk:15-jdk-openj9
+adoptopenjdk:15-jdk-openj9-bionic
+adoptopenjdk:15-jdk-openj9-windowsservercore
+adoptopenjdk:15-jdk-openj9-windowsservercore-1809
+adoptopenjdk:15-jdk-openj9-windowsservercore-ltsc2016
+adoptopenjdk:15-jre-hotspot
+adoptopenjdk:15-jre-hotspot-bionic
+adoptopenjdk:15-jre-hotspot-windowsservercore
+adoptopenjdk:15-jre-hotspot-windowsservercore-1809
+adoptopenjdk:15-jre-hotspot-windowsservercore-ltsc2016
+adoptopenjdk:15-jre-openj9
+adoptopenjdk:15-jre-openj9-bionic
+adoptopenjdk:15-jre-openj9-windowsservercore
+adoptopenjdk:15-jre-openj9-windowsservercore-1809
+adoptopenjdk:15-jre-openj9-windowsservercore-ltsc2016
+adoptopenjdk:15-openj9
+adoptopenjdk:15-openj9-bionic
+adoptopenjdk:15-openj9-windowsservercore
+adoptopenjdk:15-openj9-windowsservercore-1809
+adoptopenjdk:15-openj9-windowsservercore-ltsc2016
+adoptopenjdk:15_36-jdk-hotspot
+adoptopenjdk:15_36-jdk-hotspot-bionic
+adoptopenjdk:15_36-jdk-hotspot-windowsservercore
+adoptopenjdk:15_36-jdk-hotspot-windowsservercore-1809
+adoptopenjdk:15_36-jdk-hotspot-windowsservercore-ltsc2016
+adoptopenjdk:15_36-jdk-openj9-0.22.0
+adoptopenjdk:15_36-jdk-openj9-0.22.0-bionic
+adoptopenjdk:15_36-jdk-openj9-0.22.0-windowsservercore
+adoptopenjdk:15_36-jdk-openj9-0.22.0-windowsservercore-1809
+adoptopenjdk:15_36-jdk-openj9-0.22.0-windowsservercore-ltsc2016
+adoptopenjdk:15_36-jre-hotspot
+adoptopenjdk:15_36-jre-hotspot-bionic
+adoptopenjdk:15_36-jre-hotspot-windowsservercore
+adoptopenjdk:15_36-jre-hotspot-windowsservercore-1809
+adoptopenjdk:15_36-jre-hotspot-windowsservercore-ltsc2016
+adoptopenjdk:15_36-jre-openj9-0.22.0
+adoptopenjdk:15_36-jre-openj9-0.22.0-bionic
+adoptopenjdk:15_36-jre-openj9-0.22.0-windowsservercore
+adoptopenjdk:15_36-jre-openj9-0.22.0-windowsservercore-1809
+adoptopenjdk:15_36-jre-openj9-0.22.0-windowsservercore-ltsc2016
adoptopenjdk:hotspot
adoptopenjdk:hotspot-bionic
adoptopenjdk:hotspot-windowsservercore
diff --git a/adoptopenjdk_11-hotspot-bionic/Dockerfile.hotspot.releases.full b/adoptopenjdk_11-hotspot-bionic/Dockerfile.hotspot.releases.full
index db96e3c..823d393 100644
--- a/adoptopenjdk_11-hotspot-bionic/Dockerfile.hotspot.releases.full
+++ b/adoptopenjdk_11-hotspot-bionic/Dockerfile.hotspot.releases.full
@@ -17,7 +17,7 @@
# limitations under the License.
#
-FROM ubuntu:18.04
+FROM ubuntu:20.04
ENV LANG='en_US.UTF-8' LANGUAGE='en_US:en' LC_ALL='en_US.UTF-8'
diff --git a/adoptopenjdk_11-jre-hotspot-bionic/Dockerfile.hotspot.releases.full b/adoptopenjdk_11-jre-hotspot-bionic/Dockerfile.hotspot.releases.full
index 4f42896..2e9d6fa 100644
--- a/adoptopenjdk_11-jre-hotspot-bionic/Dockerfile.hotspot.releases.full
+++ b/adoptopenjdk_11-jre-hotspot-bionic/Dockerfile.hotspot.releases.full
@@ -17,7 +17,7 @@
# limitations under the License.
#
-FROM ubuntu:18.04
+FROM ubuntu:20.04
ENV LANG='en_US.UTF-8' LANGUAGE='en_US:en' LC_ALL='en_US.UTF-8'
diff --git a/adoptopenjdk_11-jre-openj9-bionic/Dockerfile.openj9.releases.full b/adoptopenjdk_11-jre-openj9-bionic/Dockerfile.openj9.releases.full
index c5d00fb..5a8caab 100644
--- a/adoptopenjdk_11-jre-openj9-bionic/Dockerfile.openj9.releases.full
+++ b/adoptopenjdk_11-jre-openj9-bionic/Dockerfile.openj9.releases.full
@@ -17,7 +17,7 @@
# limitations under the License.
#
-FROM ubuntu:18.04
+FROM ubuntu:20.04
ENV LANG='en_US.UTF-8' LANGUAGE='en_US:en' LC_ALL='en_US.UTF-8'
@@ -62,4 +62,65 @@ RUN set -eux; \
ENV JAVA_HOME=/opt/java/openjdk \
PATH="/opt/java/openjdk/bin:$PATH"
-ENV JAVA_TOOL_OPTIONS="-XX:+IgnoreUnrecognizedVMOptions -XX:+UseContainerSupport -XX:+IdleTuningCompactOnIdle -XX:+IdleTuningGcOnIdle"
+ENV JAVA_TOOL_OPTIONS="-XX:+IgnoreUnrecognizedVMOptions -XX:+IdleTuningGcOnIdle"
+
+# Create OpenJ9 SharedClassCache (SCC) for bootclasses to improve the java startup.
+# Downloads and runs tomcat to generate SCC for bootclasses at /opt/java/.scc/openj9_system_scc
+# Does a dry-run and calculates the optimal cache size and recreates the cache with the appropriate size.
+# With SCC, OpenJ9 startup is improved ~50% with an increase in image size of ~14MB
+# Application classes can be create a separate cache layer with this as the base for further startup improvement
+
+RUN set -eux; \
+ unset OPENJ9_JAVA_OPTIONS; \
+ SCC_SIZE="50m"; \
+ SCC_GEN_RUNS_COUNT=3; \
+ DOWNLOAD_PATH_TOMCAT=/tmp/tomcat; \
+ INSTALL_PATH_TOMCAT=/opt/tomcat-home; \
+ TOMCAT_CHECKSUM="0db27185d9fc3174f2c670f814df3dda8a008b89d1a38a5d96cbbe119767ebfb1cf0bce956b27954aee9be19c4a7b91f2579d967932207976322033a86075f98"; \
+ TOMCAT_DWNLD_URL="https://archive.apache.org/dist/tomcat/tomcat-9/v9.0.35/bin/apache-tomcat-9.0.35.tar.gz"; \
+ \
+ mkdir -p "${DOWNLOAD_PATH_TOMCAT}" "${INSTALL_PATH_TOMCAT}"; \
+ curl -LfsSo "${DOWNLOAD_PATH_TOMCAT}"/tomcat.tar.gz "${TOMCAT_DWNLD_URL}"; \
+ echo "${TOMCAT_CHECKSUM} *${DOWNLOAD_PATH_TOMCAT}/tomcat.tar.gz" | sha512sum -c -; \
+ tar -xf "${DOWNLOAD_PATH_TOMCAT}"/tomcat.tar.gz -C "${INSTALL_PATH_TOMCAT}" --strip-components=1; \
+ rm -rf "${DOWNLOAD_PATH_TOMCAT}"; \
+ \
+ java -Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal,createLayer -Xscmx$SCC_SIZE -version; \
+ export OPENJ9_JAVA_OPTIONS="-Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal"; \
+ for i in $(seq 0 $SCC_GEN_RUNS_COUNT); \
+ do \
+ "${INSTALL_PATH_TOMCAT}"/bin/startup.sh; \
+ sleep 5; \
+ "${INSTALL_PATH_TOMCAT}"/bin/shutdown.sh; \
+ sleep 5; \
+ done; \
+ \
+ FULL=$( (java -Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,printallStats 2>&1 || true) | awk '/^Cache is [0-9.]*% .*full/ {print substr($3, 1, length($3)-1)}'); \
+ DST_CACHE=$(java -Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,destroy 2>&1 || true); \
+ SCC_SIZE=$(echo $SCC_SIZE | sed 's/.$//'); \
+ SCC_SIZE=$(awk "BEGIN {print int($SCC_SIZE * $FULL / 100.0)}"); \
+ [ "${SCC_SIZE}" -eq 0 ] && SCC_SIZE=1; \
+ SCC_SIZE="${SCC_SIZE}m"; \
+ java -Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal,createLayer -Xscmx$SCC_SIZE -version; \
+ unset OPENJ9_JAVA_OPTIONS; \
+ \
+ export OPENJ9_JAVA_OPTIONS="-Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal"; \
+ for i in $(seq 0 $SCC_GEN_RUNS_COUNT); \
+ do \
+ "${INSTALL_PATH_TOMCAT}"/bin/startup.sh; \
+ sleep 5; \
+ "${INSTALL_PATH_TOMCAT}"/bin/shutdown.sh; \
+ sleep 5; \
+ done; \
+ \
+ FULL=$( (java -Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,printallStats 2>&1 || true) | awk '/^Cache is [0-9.]*% .*full/ {print substr($3, 1, length($3)-1)}'); \
+ echo "SCC layer is $FULL% full."; \
+ rm -rf "${INSTALL_PATH_TOMCAT}"; \
+ if [ -d "/opt/java/.scc" ]; then \
+ chmod -R 0777 /opt/java/.scc; \
+ fi; \
+ \
+ echo "SCC generation phase completed";
+
+ENV OPENJ9_JAVA_OPTIONS="-Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,readonly,nonFatal"
+
diff --git a/adoptopenjdk_11-jre-openj9-windowsservercore-1809/Dockerfile.openj9.releases.full b/adoptopenjdk_11-jre-openj9-windowsservercore-1809/Dockerfile.openj9.releases.full
index 61278bc..00b380f 100644
--- a/adoptopenjdk_11-jre-openj9-windowsservercore-1809/Dockerfile.openj9.releases.full
+++ b/adoptopenjdk_11-jre-openj9-windowsservercore-1809/Dockerfile.openj9.releases.full
@@ -41,4 +41,4 @@ RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk11-binaries/
Remove-Item -Path C:\temp -Recurse | Out-Null; \
Write-Host 'Removing openjdk.msi ...'; \
Remove-Item openjdk.msi -Force
-ENV JAVA_TOOL_OPTIONS="-XX:+IgnoreUnrecognizedVMOptions -XX:+UseContainerSupport -XX:+IdleTuningCompactOnIdle -XX:+IdleTuningGcOnIdle"
+ENV JAVA_TOOL_OPTIONS="-XX:+IgnoreUnrecognizedVMOptions -XX:+IdleTuningGcOnIdle"
diff --git a/adoptopenjdk_11-jre-openj9-windowsservercore-ltsc2016/Dockerfile.openj9.releases.full b/adoptopenjdk_11-jre-openj9-windowsservercore-ltsc2016/Dockerfile.openj9.releases.full
index a9bc9eb..846a7c0 100644
--- a/adoptopenjdk_11-jre-openj9-windowsservercore-ltsc2016/Dockerfile.openj9.releases.full
+++ b/adoptopenjdk_11-jre-openj9-windowsservercore-ltsc2016/Dockerfile.openj9.releases.full
@@ -41,4 +41,4 @@ RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk11-binaries/
Remove-Item -Path C:\temp -Recurse | Out-Null; \
Write-Host 'Removing openjdk.msi ...'; \
Remove-Item openjdk.msi -Force
-ENV JAVA_TOOL_OPTIONS="-XX:+IgnoreUnrecognizedVMOptions -XX:+UseContainerSupport -XX:+IdleTuningCompactOnIdle -XX:+IdleTuningGcOnIdle"
+ENV JAVA_TOOL_OPTIONS="-XX:+IgnoreUnrecognizedVMOptions -XX:+IdleTuningGcOnIdle"
diff --git a/adoptopenjdk_11-openj9-bionic/Dockerfile.openj9.releases.full b/adoptopenjdk_11-openj9-bionic/Dockerfile.openj9.releases.full
index 6ff8d3a..b838662 100644
--- a/adoptopenjdk_11-openj9-bionic/Dockerfile.openj9.releases.full
+++ b/adoptopenjdk_11-openj9-bionic/Dockerfile.openj9.releases.full
@@ -17,7 +17,7 @@
# limitations under the License.
#
-FROM ubuntu:18.04
+FROM ubuntu:20.04
ENV LANG='en_US.UTF-8' LANGUAGE='en_US:en' LC_ALL='en_US.UTF-8'
@@ -62,5 +62,66 @@ RUN set -eux; \
ENV JAVA_HOME=/opt/java/openjdk \
PATH="/opt/java/openjdk/bin:$PATH"
-ENV JAVA_TOOL_OPTIONS="-XX:+IgnoreUnrecognizedVMOptions -XX:+UseContainerSupport -XX:+IdleTuningCompactOnIdle -XX:+IdleTuningGcOnIdle"
+ENV JAVA_TOOL_OPTIONS="-XX:+IgnoreUnrecognizedVMOptions -XX:+IdleTuningGcOnIdle"
+
+# Create OpenJ9 SharedClassCache (SCC) for bootclasses to improve the java startup.
+# Downloads and runs tomcat to generate SCC for bootclasses at /opt/java/.scc/openj9_system_scc
+# Does a dry-run and calculates the optimal cache size and recreates the cache with the appropriate size.
+# With SCC, OpenJ9 startup is improved ~50% with an increase in image size of ~14MB
+# Application classes can be create a separate cache layer with this as the base for further startup improvement
+
+RUN set -eux; \
+ unset OPENJ9_JAVA_OPTIONS; \
+ SCC_SIZE="50m"; \
+ SCC_GEN_RUNS_COUNT=3; \
+ DOWNLOAD_PATH_TOMCAT=/tmp/tomcat; \
+ INSTALL_PATH_TOMCAT=/opt/tomcat-home; \
+ TOMCAT_CHECKSUM="0db27185d9fc3174f2c670f814df3dda8a008b89d1a38a5d96cbbe119767ebfb1cf0bce956b27954aee9be19c4a7b91f2579d967932207976322033a86075f98"; \
+ TOMCAT_DWNLD_URL="https://archive.apache.org/dist/tomcat/tomcat-9/v9.0.35/bin/apache-tomcat-9.0.35.tar.gz"; \
+ \
+ mkdir -p "${DOWNLOAD_PATH_TOMCAT}" "${INSTALL_PATH_TOMCAT}"; \
+ curl -LfsSo "${DOWNLOAD_PATH_TOMCAT}"/tomcat.tar.gz "${TOMCAT_DWNLD_URL}"; \
+ echo "${TOMCAT_CHECKSUM} *${DOWNLOAD_PATH_TOMCAT}/tomcat.tar.gz" | sha512sum -c -; \
+ tar -xf "${DOWNLOAD_PATH_TOMCAT}"/tomcat.tar.gz -C "${INSTALL_PATH_TOMCAT}" --strip-components=1; \
+ rm -rf "${DOWNLOAD_PATH_TOMCAT}"; \
+ \
+ java -Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal,createLayer -Xscmx$SCC_SIZE -version; \
+ export OPENJ9_JAVA_OPTIONS="-Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal"; \
+ for i in $(seq 0 $SCC_GEN_RUNS_COUNT); \
+ do \
+ "${INSTALL_PATH_TOMCAT}"/bin/startup.sh; \
+ sleep 5; \
+ "${INSTALL_PATH_TOMCAT}"/bin/shutdown.sh; \
+ sleep 5; \
+ done; \
+ \
+ FULL=$( (java -Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,printallStats 2>&1 || true) | awk '/^Cache is [0-9.]*% .*full/ {print substr($3, 1, length($3)-1)}'); \
+ DST_CACHE=$(java -Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,destroy 2>&1 || true); \
+ SCC_SIZE=$(echo $SCC_SIZE | sed 's/.$//'); \
+ SCC_SIZE=$(awk "BEGIN {print int($SCC_SIZE * $FULL / 100.0)}"); \
+ [ "${SCC_SIZE}" -eq 0 ] && SCC_SIZE=1; \
+ SCC_SIZE="${SCC_SIZE}m"; \
+ java -Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal,createLayer -Xscmx$SCC_SIZE -version; \
+ unset OPENJ9_JAVA_OPTIONS; \
+ \
+ export OPENJ9_JAVA_OPTIONS="-Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal"; \
+ for i in $(seq 0 $SCC_GEN_RUNS_COUNT); \
+ do \
+ "${INSTALL_PATH_TOMCAT}"/bin/startup.sh; \
+ sleep 5; \
+ "${INSTALL_PATH_TOMCAT}"/bin/shutdown.sh; \
+ sleep 5; \
+ done; \
+ \
+ FULL=$( (java -Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,printallStats 2>&1 || true) | awk '/^Cache is [0-9.]*% .*full/ {print substr($3, 1, length($3)-1)}'); \
+ echo "SCC layer is $FULL% full."; \
+ rm -rf "${INSTALL_PATH_TOMCAT}"; \
+ if [ -d "/opt/java/.scc" ]; then \
+ chmod -R 0777 /opt/java/.scc; \
+ fi; \
+ \
+ echo "SCC generation phase completed";
+
+ENV OPENJ9_JAVA_OPTIONS="-Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,readonly,nonFatal"
+
CMD ["jshell"]
diff --git a/adoptopenjdk_11-openj9-windowsservercore-1809/Dockerfile.openj9.releases.full b/adoptopenjdk_11-openj9-windowsservercore-1809/Dockerfile.openj9.releases.full
index 7e239e2..247d90b 100644
--- a/adoptopenjdk_11-openj9-windowsservercore-1809/Dockerfile.openj9.releases.full
+++ b/adoptopenjdk_11-openj9-windowsservercore-1809/Dockerfile.openj9.releases.full
@@ -41,5 +41,5 @@ RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk11-binaries/
Remove-Item -Path C:\temp -Recurse | Out-Null; \
Write-Host 'Removing openjdk.msi ...'; \
Remove-Item openjdk.msi -Force
-ENV JAVA_TOOL_OPTIONS="-XX:+IgnoreUnrecognizedVMOptions -XX:+UseContainerSupport -XX:+IdleTuningCompactOnIdle -XX:+IdleTuningGcOnIdle"
+ENV JAVA_TOOL_OPTIONS="-XX:+IgnoreUnrecognizedVMOptions -XX:+IdleTuningGcOnIdle"
CMD ["jshell"]
diff --git a/adoptopenjdk_11-openj9-windowsservercore-ltsc2016/Dockerfile.openj9.releases.full b/adoptopenjdk_11-openj9-windowsservercore-ltsc2016/Dockerfile.openj9.releases.full
index 8f2ec98..eb4dd09 100644
--- a/adoptopenjdk_11-openj9-windowsservercore-ltsc2016/Dockerfile.openj9.releases.full
+++ b/adoptopenjdk_11-openj9-windowsservercore-ltsc2016/Dockerfile.openj9.releases.full
@@ -41,5 +41,5 @@ RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk11-binaries/
Remove-Item -Path C:\temp -Recurse | Out-Null; \
Write-Host 'Removing openjdk.msi ...'; \
Remove-Item openjdk.msi -Force
-ENV JAVA_TOOL_OPTIONS="-XX:+IgnoreUnrecognizedVMOptions -XX:+UseContainerSupport -XX:+IdleTuningCompactOnIdle -XX:+IdleTuningGcOnIdle"
+ENV JAVA_TOOL_OPTIONS="-XX:+IgnoreUnrecognizedVMOptions -XX:+IdleTuningGcOnIdle"
CMD ["jshell"]
diff --git a/adoptopenjdk_13-hotspot-bionic/Dockerfile.hotspot.releases.full b/adoptopenjdk_13-hotspot-bionic/Dockerfile.hotspot.releases.full
index eae6c73..b17482d 100644
--- a/adoptopenjdk_13-hotspot-bionic/Dockerfile.hotspot.releases.full
+++ b/adoptopenjdk_13-hotspot-bionic/Dockerfile.hotspot.releases.full
@@ -22,7 +22,7 @@ FROM ubuntu:18.04
ENV LANG='en_US.UTF-8' LANGUAGE='en_US:en' LC_ALL='en_US.UTF-8'
RUN apt-get update \
- && apt-get install -y --no-install-recommends curl ca-certificates fontconfig locales \
+ && apt-get install -y --no-install-recommends tzdata curl ca-certificates fontconfig locales \
&& echo "en_US.UTF-8 UTF-8" >> /etc/locale.gen \
&& locale-gen en_US.UTF-8 \
&& rm -rf /var/lib/apt/lists/*
diff --git a/adoptopenjdk_13-hotspot-windowsservercore-1809/Dockerfile.hotspot.releases.full b/adoptopenjdk_13-hotspot-windowsservercore-1809/Dockerfile.hotspot.releases.full
index b1cad0a..a438c2a 100644
--- a/adoptopenjdk_13-hotspot-windowsservercore-1809/Dockerfile.hotspot.releases.full
+++ b/adoptopenjdk_13-hotspot-windowsservercore-1809/Dockerfile.hotspot.releases.full
@@ -38,7 +38,7 @@ RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk13-binaries/
Write-Host 'Installing using MSI ...'; \
Start-Process -FilePath "msiexec.exe" -ArgumentList '/i', 'openjdk.msi', '/L*V', 'C:\temp\OpenJDK.log', \
'/quiet', 'ADDLOCAL=FeatureEnvironment,FeatureJarFileRunWith,FeatureJavaHome' -Wait -Passthru; \
+ Remove-Item -Path C:\temp -Recurse | Out-Null; \
Write-Host 'Removing openjdk.msi ...'; \
- Remove-Item openjdk.msi -Force; \
- Remove-Item -Path C:\temp -Recurse | Out-Null;
+ Remove-Item openjdk.msi -Force
CMD ["jshell"]
diff --git a/adoptopenjdk_13-hotspot-windowsservercore-ltsc2016/Dockerfile.hotspot.releases.full b/adoptopenjdk_13-hotspot-windowsservercore-ltsc2016/Dockerfile.hotspot.releases.full
index 61ed0b3..ceeab95 100644
--- a/adoptopenjdk_13-hotspot-windowsservercore-ltsc2016/Dockerfile.hotspot.releases.full
+++ b/adoptopenjdk_13-hotspot-windowsservercore-ltsc2016/Dockerfile.hotspot.releases.full
@@ -38,7 +38,7 @@ RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk13-binaries/
Write-Host 'Installing using MSI ...'; \
Start-Process -FilePath "msiexec.exe" -ArgumentList '/i', 'openjdk.msi', '/L*V', 'C:\temp\OpenJDK.log', \
'/quiet', 'ADDLOCAL=FeatureEnvironment,FeatureJarFileRunWith,FeatureJavaHome' -Wait -Passthru; \
+ Remove-Item -Path C:\temp -Recurse | Out-Null; \
Write-Host 'Removing openjdk.msi ...'; \
- Remove-Item openjdk.msi -Force; \
- Remove-Item -Path C:\temp -Recurse | Out-Null;
+ Remove-Item openjdk.msi -Force
CMD ["jshell"]
diff --git a/adoptopenjdk_13-jre-hotspot-bionic/Dockerfile.hotspot.releases.full b/adoptopenjdk_13-jre-hotspot-bionic/Dockerfile.hotspot.releases.full
index 6103c9d..b1f58d2 100644
--- a/adoptopenjdk_13-jre-hotspot-bionic/Dockerfile.hotspot.releases.full
+++ b/adoptopenjdk_13-jre-hotspot-bionic/Dockerfile.hotspot.releases.full
@@ -22,7 +22,7 @@ FROM ubuntu:18.04
ENV LANG='en_US.UTF-8' LANGUAGE='en_US:en' LC_ALL='en_US.UTF-8'
RUN apt-get update \
- && apt-get install -y --no-install-recommends curl ca-certificates fontconfig locales \
+ && apt-get install -y --no-install-recommends tzdata curl ca-certificates fontconfig locales \
&& echo "en_US.UTF-8 UTF-8" >> /etc/locale.gen \
&& locale-gen en_US.UTF-8 \
&& rm -rf /var/lib/apt/lists/*
diff --git a/adoptopenjdk_13-jre-hotspot-windowsservercore-1809/Dockerfile.hotspot.releases.full b/adoptopenjdk_13-jre-hotspot-windowsservercore-1809/Dockerfile.hotspot.releases.full
index d474e60..0e1691f 100644
--- a/adoptopenjdk_13-jre-hotspot-windowsservercore-1809/Dockerfile.hotspot.releases.full
+++ b/adoptopenjdk_13-jre-hotspot-windowsservercore-1809/Dockerfile.hotspot.releases.full
@@ -38,6 +38,6 @@ RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk13-binaries/
Write-Host 'Installing using MSI ...'; \
Start-Process -FilePath "msiexec.exe" -ArgumentList '/i', 'openjdk.msi', '/L*V', 'C:\temp\OpenJDK.log', \
'/quiet', 'ADDLOCAL=FeatureEnvironment,FeatureJarFileRunWith,FeatureJavaHome' -Wait -Passthru; \
+ Remove-Item -Path C:\temp -Recurse | Out-Null; \
Write-Host 'Removing openjdk.msi ...'; \
- Remove-Item openjdk.msi -Force; \
- Remove-Item -Path C:\temp -Recurse | Out-Null;
+ Remove-Item openjdk.msi -Force
diff --git a/adoptopenjdk_13-jre-hotspot-windowsservercore-ltsc2016/Dockerfile.hotspot.releases.full b/adoptopenjdk_13-jre-hotspot-windowsservercore-ltsc2016/Dockerfile.hotspot.releases.full
index 77b8e00..a6ba70a 100644
--- a/adoptopenjdk_13-jre-hotspot-windowsservercore-ltsc2016/Dockerfile.hotspot.releases.full
+++ b/adoptopenjdk_13-jre-hotspot-windowsservercore-ltsc2016/Dockerfile.hotspot.releases.full
@@ -38,6 +38,6 @@ RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk13-binaries/
Write-Host 'Installing using MSI ...'; \
Start-Process -FilePath "msiexec.exe" -ArgumentList '/i', 'openjdk.msi', '/L*V', 'C:\temp\OpenJDK.log', \
'/quiet', 'ADDLOCAL=FeatureEnvironment,FeatureJarFileRunWith,FeatureJavaHome' -Wait -Passthru; \
+ Remove-Item -Path C:\temp -Recurse | Out-Null; \
Write-Host 'Removing openjdk.msi ...'; \
- Remove-Item openjdk.msi -Force; \
- Remove-Item -Path C:\temp -Recurse | Out-Null;
+ Remove-Item openjdk.msi -Force
diff --git a/adoptopenjdk_13-jre-openj9-bionic/Dockerfile.openj9.releases.full b/adoptopenjdk_13-jre-openj9-bionic/Dockerfile.openj9.releases.full
index eaea9c2..b8415da 100644
--- a/adoptopenjdk_13-jre-openj9-bionic/Dockerfile.openj9.releases.full
+++ b/adoptopenjdk_13-jre-openj9-bionic/Dockerfile.openj9.releases.full
@@ -22,7 +22,7 @@ FROM ubuntu:18.04
ENV LANG='en_US.UTF-8' LANGUAGE='en_US:en' LC_ALL='en_US.UTF-8'
RUN apt-get update \
- && apt-get install -y --no-install-recommends curl ca-certificates fontconfig locales \
+ && apt-get install -y --no-install-recommends tzdata curl ca-certificates fontconfig locales \
&& echo "en_US.UTF-8 UTF-8" >> /etc/locale.gen \
&& locale-gen en_US.UTF-8 \
&& rm -rf /var/lib/apt/lists/*
diff --git a/adoptopenjdk_13-jre-openj9-windowsservercore-1809/Dockerfile.openj9.releases.full b/adoptopenjdk_13-jre-openj9-windowsservercore-1809/Dockerfile.openj9.releases.full
index 05b9f31..8769114 100644
--- a/adoptopenjdk_13-jre-openj9-windowsservercore-1809/Dockerfile.openj9.releases.full
+++ b/adoptopenjdk_13-jre-openj9-windowsservercore-1809/Dockerfile.openj9.releases.full
@@ -38,7 +38,7 @@ RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk13-binaries/
Write-Host 'Installing using MSI ...'; \
Start-Process -FilePath "msiexec.exe" -ArgumentList '/i', 'openjdk.msi', '/L*V', 'C:\temp\OpenJDK.log', \
'/quiet', 'ADDLOCAL=FeatureEnvironment,FeatureJarFileRunWith,FeatureJavaHome' -Wait -Passthru; \
+ Remove-Item -Path C:\temp -Recurse | Out-Null; \
Write-Host 'Removing openjdk.msi ...'; \
- Remove-Item openjdk.msi -Force; \
- Remove-Item -Path C:\temp -Recurse | Out-Null;
+ Remove-Item openjdk.msi -Force
ENV JAVA_TOOL_OPTIONS="-XX:+IgnoreUnrecognizedVMOptions -XX:+UseContainerSupport -XX:+IdleTuningCompactOnIdle -XX:+IdleTuningGcOnIdle"
diff --git a/adoptopenjdk_13-jre-openj9-windowsservercore-ltsc2016/Dockerfile.openj9.releases.full b/adoptopenjdk_13-jre-openj9-windowsservercore-ltsc2016/Dockerfile.openj9.releases.full
index 3e104f5..5769db2 100644
--- a/adoptopenjdk_13-jre-openj9-windowsservercore-ltsc2016/Dockerfile.openj9.releases.full
+++ b/adoptopenjdk_13-jre-openj9-windowsservercore-ltsc2016/Dockerfile.openj9.releases.full
@@ -38,7 +38,7 @@ RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk13-binaries/
Write-Host 'Installing using MSI ...'; \
Start-Process -FilePath "msiexec.exe" -ArgumentList '/i', 'openjdk.msi', '/L*V', 'C:\temp\OpenJDK.log', \
'/quiet', 'ADDLOCAL=FeatureEnvironment,FeatureJarFileRunWith,FeatureJavaHome' -Wait -Passthru; \
+ Remove-Item -Path C:\temp -Recurse | Out-Null; \
Write-Host 'Removing openjdk.msi ...'; \
- Remove-Item openjdk.msi -Force; \
- Remove-Item -Path C:\temp -Recurse | Out-Null;
+ Remove-Item openjdk.msi -Force
ENV JAVA_TOOL_OPTIONS="-XX:+IgnoreUnrecognizedVMOptions -XX:+UseContainerSupport -XX:+IdleTuningCompactOnIdle -XX:+IdleTuningGcOnIdle"
diff --git a/adoptopenjdk_13-openj9-bionic/Dockerfile.openj9.releases.full b/adoptopenjdk_13-openj9-bionic/Dockerfile.openj9.releases.full
index a5df670..59cc004 100644
--- a/adoptopenjdk_13-openj9-bionic/Dockerfile.openj9.releases.full
+++ b/adoptopenjdk_13-openj9-bionic/Dockerfile.openj9.releases.full
@@ -22,7 +22,7 @@ FROM ubuntu:18.04
ENV LANG='en_US.UTF-8' LANGUAGE='en_US:en' LC_ALL='en_US.UTF-8'
RUN apt-get update \
- && apt-get install -y --no-install-recommends curl ca-certificates fontconfig locales \
+ && apt-get install -y --no-install-recommends tzdata curl ca-certificates fontconfig locales \
&& echo "en_US.UTF-8 UTF-8" >> /etc/locale.gen \
&& locale-gen en_US.UTF-8 \
&& rm -rf /var/lib/apt/lists/*
diff --git a/adoptopenjdk_13-openj9-windowsservercore-1809/Dockerfile.openj9.releases.full b/adoptopenjdk_13-openj9-windowsservercore-1809/Dockerfile.openj9.releases.full
index 268fb19..96e3b6b 100644
--- a/adoptopenjdk_13-openj9-windowsservercore-1809/Dockerfile.openj9.releases.full
+++ b/adoptopenjdk_13-openj9-windowsservercore-1809/Dockerfile.openj9.releases.full
@@ -38,8 +38,8 @@ RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk13-binaries/
Write-Host 'Installing using MSI ...'; \
Start-Process -FilePath "msiexec.exe" -ArgumentList '/i', 'openjdk.msi', '/L*V', 'C:\temp\OpenJDK.log', \
'/quiet', 'ADDLOCAL=FeatureEnvironment,FeatureJarFileRunWith,FeatureJavaHome' -Wait -Passthru; \
+ Remove-Item -Path C:\temp -Recurse | Out-Null; \
Write-Host 'Removing openjdk.msi ...'; \
- Remove-Item openjdk.msi -Force; \
- Remove-Item -Path C:\temp -Recurse | Out-Null;
+ Remove-Item openjdk.msi -Force
ENV JAVA_TOOL_OPTIONS="-XX:+IgnoreUnrecognizedVMOptions -XX:+UseContainerSupport -XX:+IdleTuningCompactOnIdle -XX:+IdleTuningGcOnIdle"
CMD ["jshell"]
diff --git a/adoptopenjdk_13-openj9-windowsservercore-ltsc2016/Dockerfile.openj9.releases.full b/adoptopenjdk_13-openj9-windowsservercore-ltsc2016/Dockerfile.openj9.releases.full
index 6aa5ddb..89b2f07 100644
--- a/adoptopenjdk_13-openj9-windowsservercore-ltsc2016/Dockerfile.openj9.releases.full
+++ b/adoptopenjdk_13-openj9-windowsservercore-ltsc2016/Dockerfile.openj9.releases.full
@@ -38,8 +38,8 @@ RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk13-binaries/
Write-Host 'Installing using MSI ...'; \
Start-Process -FilePath "msiexec.exe" -ArgumentList '/i', 'openjdk.msi', '/L*V', 'C:\temp\OpenJDK.log', \
'/quiet', 'ADDLOCAL=FeatureEnvironment,FeatureJarFileRunWith,FeatureJavaHome' -Wait -Passthru; \
+ Remove-Item -Path C:\temp -Recurse | Out-Null; \
Write-Host 'Removing openjdk.msi ...'; \
- Remove-Item openjdk.msi -Force; \
- Remove-Item -Path C:\temp -Recurse | Out-Null;
+ Remove-Item openjdk.msi -Force
ENV JAVA_TOOL_OPTIONS="-XX:+IgnoreUnrecognizedVMOptions -XX:+UseContainerSupport -XX:+IdleTuningCompactOnIdle -XX:+IdleTuningGcOnIdle"
CMD ["jshell"]
diff --git a/adoptopenjdk_hotspot-bionic/Dockerfile.hotspot.releases.full b/adoptopenjdk_14-hotspot-bionic/Dockerfile.hotspot.releases.full
similarity index 99%
copy from adoptopenjdk_hotspot-bionic/Dockerfile.hotspot.releases.full
copy to adoptopenjdk_14-hotspot-bionic/Dockerfile.hotspot.releases.full
index b9cfc0c..93b4243 100644
--- a/adoptopenjdk_hotspot-bionic/Dockerfile.hotspot.releases.full
+++ b/adoptopenjdk_14-hotspot-bionic/Dockerfile.hotspot.releases.full
@@ -17,7 +17,7 @@
# limitations under the License.
#
-FROM ubuntu:18.04
+FROM ubuntu:20.04
ENV LANG='en_US.UTF-8' LANGUAGE='en_US:en' LC_ALL='en_US.UTF-8'
diff --git a/adoptopenjdk_hotspot-windowsservercore-1809/Dockerfile.hotspot.releases.full b/adoptopenjdk_14-hotspot-windowsservercore-1809/Dockerfile.hotspot.releases.full
similarity index 100%
copy from adoptopenjdk_hotspot-windowsservercore-1809/Dockerfile.hotspot.releases.full
copy to adoptopenjdk_14-hotspot-windowsservercore-1809/Dockerfile.hotspot.releases.full
diff --git a/adoptopenjdk_hotspot-windowsservercore-ltsc2016/Dockerfile.hotspot.releases.full b/adoptopenjdk_14-hotspot-windowsservercore-ltsc2016/Dockerfile.hotspot.releases.full
similarity index 100%
copy from adoptopenjdk_hotspot-windowsservercore-ltsc2016/Dockerfile.hotspot.releases.full
copy to adoptopenjdk_14-hotspot-windowsservercore-ltsc2016/Dockerfile.hotspot.releases.full
diff --git a/adoptopenjdk_14-jre-hotspot-bionic/Dockerfile.hotspot.releases.full b/adoptopenjdk_14-jre-hotspot-bionic/Dockerfile.hotspot.releases.full
index 7d8bbb0..c3f04ca 100644
--- a/adoptopenjdk_14-jre-hotspot-bionic/Dockerfile.hotspot.releases.full
+++ b/adoptopenjdk_14-jre-hotspot-bionic/Dockerfile.hotspot.releases.full
@@ -17,7 +17,7 @@
# limitations under the License.
#
-FROM ubuntu:18.04
+FROM ubuntu:20.04
ENV LANG='en_US.UTF-8' LANGUAGE='en_US:en' LC_ALL='en_US.UTF-8'
diff --git a/adoptopenjdk_14-jre-openj9-bionic/Dockerfile.openj9.releases.full b/adoptopenjdk_14-jre-openj9-bionic/Dockerfile.openj9.releases.full
index 30c3618..77b7893 100644
--- a/adoptopenjdk_14-jre-openj9-bionic/Dockerfile.openj9.releases.full
+++ b/adoptopenjdk_14-jre-openj9-bionic/Dockerfile.openj9.releases.full
@@ -17,7 +17,7 @@
# limitations under the License.
#
-FROM ubuntu:18.04
+FROM ubuntu:20.04
ENV LANG='en_US.UTF-8' LANGUAGE='en_US:en' LC_ALL='en_US.UTF-8'
@@ -58,4 +58,65 @@ RUN set -eux; \
ENV JAVA_HOME=/opt/java/openjdk \
PATH="/opt/java/openjdk/bin:$PATH"
-ENV JAVA_TOOL_OPTIONS="-XX:+IgnoreUnrecognizedVMOptions -XX:+UseContainerSupport -XX:+IdleTuningCompactOnIdle -XX:+IdleTuningGcOnIdle"
+ENV JAVA_TOOL_OPTIONS="-XX:+IgnoreUnrecognizedVMOptions -XX:+IdleTuningGcOnIdle"
+
+# Create OpenJ9 SharedClassCache (SCC) for bootclasses to improve the java startup.
+# Downloads and runs tomcat to generate SCC for bootclasses at /opt/java/.scc/openj9_system_scc
+# Does a dry-run and calculates the optimal cache size and recreates the cache with the appropriate size.
+# With SCC, OpenJ9 startup is improved ~50% with an increase in image size of ~14MB
+# Application classes can be create a separate cache layer with this as the base for further startup improvement
+
+RUN set -eux; \
+ unset OPENJ9_JAVA_OPTIONS; \
+ SCC_SIZE="50m"; \
+ SCC_GEN_RUNS_COUNT=3; \
+ DOWNLOAD_PATH_TOMCAT=/tmp/tomcat; \
+ INSTALL_PATH_TOMCAT=/opt/tomcat-home; \
+ TOMCAT_CHECKSUM="0db27185d9fc3174f2c670f814df3dda8a008b89d1a38a5d96cbbe119767ebfb1cf0bce956b27954aee9be19c4a7b91f2579d967932207976322033a86075f98"; \
+ TOMCAT_DWNLD_URL="https://archive.apache.org/dist/tomcat/tomcat-9/v9.0.35/bin/apache-tomcat-9.0.35.tar.gz"; \
+ \
+ mkdir -p "${DOWNLOAD_PATH_TOMCAT}" "${INSTALL_PATH_TOMCAT}"; \
+ curl -LfsSo "${DOWNLOAD_PATH_TOMCAT}"/tomcat.tar.gz "${TOMCAT_DWNLD_URL}"; \
+ echo "${TOMCAT_CHECKSUM} *${DOWNLOAD_PATH_TOMCAT}/tomcat.tar.gz" | sha512sum -c -; \
+ tar -xf "${DOWNLOAD_PATH_TOMCAT}"/tomcat.tar.gz -C "${INSTALL_PATH_TOMCAT}" --strip-components=1; \
+ rm -rf "${DOWNLOAD_PATH_TOMCAT}"; \
+ \
+ java -Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal,createLayer -Xscmx$SCC_SIZE -version; \
+ export OPENJ9_JAVA_OPTIONS="-Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal"; \
+ for i in $(seq 0 $SCC_GEN_RUNS_COUNT); \
+ do \
+ "${INSTALL_PATH_TOMCAT}"/bin/startup.sh; \
+ sleep 5; \
+ "${INSTALL_PATH_TOMCAT}"/bin/shutdown.sh; \
+ sleep 5; \
+ done; \
+ \
+ FULL=$( (java -Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,printallStats 2>&1 || true) | awk '/^Cache is [0-9.]*% .*full/ {print substr($3, 1, length($3)-1)}'); \
+ DST_CACHE=$(java -Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,destroy 2>&1 || true); \
+ SCC_SIZE=$(echo $SCC_SIZE | sed 's/.$//'); \
+ SCC_SIZE=$(awk "BEGIN {print int($SCC_SIZE * $FULL / 100.0)}"); \
+ [ "${SCC_SIZE}" -eq 0 ] && SCC_SIZE=1; \
+ SCC_SIZE="${SCC_SIZE}m"; \
+ java -Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal,createLayer -Xscmx$SCC_SIZE -version; \
+ unset OPENJ9_JAVA_OPTIONS; \
+ \
+ export OPENJ9_JAVA_OPTIONS="-Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal"; \
+ for i in $(seq 0 $SCC_GEN_RUNS_COUNT); \
+ do \
+ "${INSTALL_PATH_TOMCAT}"/bin/startup.sh; \
+ sleep 5; \
+ "${INSTALL_PATH_TOMCAT}"/bin/shutdown.sh; \
+ sleep 5; \
+ done; \
+ \
+ FULL=$( (java -Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,printallStats 2>&1 || true) | awk '/^Cache is [0-9.]*% .*full/ {print substr($3, 1, length($3)-1)}'); \
+ echo "SCC layer is $FULL% full."; \
+ rm -rf "${INSTALL_PATH_TOMCAT}"; \
+ if [ -d "/opt/java/.scc" ]; then \
+ chmod -R 0777 /opt/java/.scc; \
+ fi; \
+ \
+ echo "SCC generation phase completed";
+
+ENV OPENJ9_JAVA_OPTIONS="-Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,readonly,nonFatal"
+
diff --git a/adoptopenjdk_14-jre-openj9-windowsservercore-1809/Dockerfile.openj9.releases.full b/adoptopenjdk_14-jre-openj9-windowsservercore-1809/Dockerfile.openj9.releases.full
index 1e52ad2..57e9792 100644
--- a/adoptopenjdk_14-jre-openj9-windowsservercore-1809/Dockerfile.openj9.releases.full
+++ b/adoptopenjdk_14-jre-openj9-windowsservercore-1809/Dockerfile.openj9.releases.full
@@ -41,4 +41,4 @@ RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk14-binaries/
Remove-Item -Path C:\temp -Recurse | Out-Null; \
Write-Host 'Removing openjdk.msi ...'; \
Remove-Item openjdk.msi -Force
-ENV JAVA_TOOL_OPTIONS="-XX:+IgnoreUnrecognizedVMOptions -XX:+UseContainerSupport -XX:+IdleTuningCompactOnIdle -XX:+IdleTuningGcOnIdle"
+ENV JAVA_TOOL_OPTIONS="-XX:+IgnoreUnrecognizedVMOptions -XX:+IdleTuningGcOnIdle"
diff --git a/adoptopenjdk_14-jre-openj9-windowsservercore-ltsc2016/Dockerfile.openj9.releases.full b/adoptopenjdk_14-jre-openj9-windowsservercore-ltsc2016/Dockerfile.openj9.releases.full
index bd82c66..468c265 100644
--- a/adoptopenjdk_14-jre-openj9-windowsservercore-ltsc2016/Dockerfile.openj9.releases.full
+++ b/adoptopenjdk_14-jre-openj9-windowsservercore-ltsc2016/Dockerfile.openj9.releases.full
@@ -41,4 +41,4 @@ RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk14-binaries/
Remove-Item -Path C:\temp -Recurse | Out-Null; \
Write-Host 'Removing openjdk.msi ...'; \
Remove-Item openjdk.msi -Force
-ENV JAVA_TOOL_OPTIONS="-XX:+IgnoreUnrecognizedVMOptions -XX:+UseContainerSupport -XX:+IdleTuningCompactOnIdle -XX:+IdleTuningGcOnIdle"
+ENV JAVA_TOOL_OPTIONS="-XX:+IgnoreUnrecognizedVMOptions -XX:+IdleTuningGcOnIdle"
diff --git a/adoptopenjdk_openj9-bionic/Dockerfile.openj9.releases.full b/adoptopenjdk_14-openj9-bionic/Dockerfile.openj9.releases.full
similarity index 44%
copy from adoptopenjdk_openj9-bionic/Dockerfile.openj9.releases.full
copy to adoptopenjdk_14-openj9-bionic/Dockerfile.openj9.releases.full
index eff0c96..5148412 100644
--- a/adoptopenjdk_openj9-bionic/Dockerfile.openj9.releases.full
+++ b/adoptopenjdk_14-openj9-bionic/Dockerfile.openj9.releases.full
@@ -17,7 +17,7 @@
# limitations under the License.
#
-FROM ubuntu:18.04
+FROM ubuntu:20.04
ENV LANG='en_US.UTF-8' LANGUAGE='en_US:en' LC_ALL='en_US.UTF-8'
@@ -58,5 +58,66 @@ RUN set -eux; \
ENV JAVA_HOME=/opt/java/openjdk \
PATH="/opt/java/openjdk/bin:$PATH"
-ENV JAVA_TOOL_OPTIONS="-XX:+IgnoreUnrecognizedVMOptions -XX:+UseContainerSupport -XX:+IdleTuningCompactOnIdle -XX:+IdleTuningGcOnIdle"
+ENV JAVA_TOOL_OPTIONS="-XX:+IgnoreUnrecognizedVMOptions -XX:+IdleTuningGcOnIdle"
+
+# Create OpenJ9 SharedClassCache (SCC) for bootclasses to improve the java startup.
+# Downloads and runs tomcat to generate SCC for bootclasses at /opt/java/.scc/openj9_system_scc
+# Does a dry-run and calculates the optimal cache size and recreates the cache with the appropriate size.
+# With SCC, OpenJ9 startup is improved ~50% with an increase in image size of ~14MB
+# Application classes can be create a separate cache layer with this as the base for further startup improvement
+
+RUN set -eux; \
+ unset OPENJ9_JAVA_OPTIONS; \
+ SCC_SIZE="50m"; \
+ SCC_GEN_RUNS_COUNT=3; \
+ DOWNLOAD_PATH_TOMCAT=/tmp/tomcat; \
+ INSTALL_PATH_TOMCAT=/opt/tomcat-home; \
+ TOMCAT_CHECKSUM="0db27185d9fc3174f2c670f814df3dda8a008b89d1a38a5d96cbbe119767ebfb1cf0bce956b27954aee9be19c4a7b91f2579d967932207976322033a86075f98"; \
+ TOMCAT_DWNLD_URL="https://archive.apache.org/dist/tomcat/tomcat-9/v9.0.35/bin/apache-tomcat-9.0.35.tar.gz"; \
+ \
+ mkdir -p "${DOWNLOAD_PATH_TOMCAT}" "${INSTALL_PATH_TOMCAT}"; \
+ curl -LfsSo "${DOWNLOAD_PATH_TOMCAT}"/tomcat.tar.gz "${TOMCAT_DWNLD_URL}"; \
+ echo "${TOMCAT_CHECKSUM} *${DOWNLOAD_PATH_TOMCAT}/tomcat.tar.gz" | sha512sum -c -; \
+ tar -xf "${DOWNLOAD_PATH_TOMCAT}"/tomcat.tar.gz -C "${INSTALL_PATH_TOMCAT}" --strip-components=1; \
+ rm -rf "${DOWNLOAD_PATH_TOMCAT}"; \
+ \
+ java -Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal,createLayer -Xscmx$SCC_SIZE -version; \
+ export OPENJ9_JAVA_OPTIONS="-Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal"; \
+ for i in $(seq 0 $SCC_GEN_RUNS_COUNT); \
+ do \
+ "${INSTALL_PATH_TOMCAT}"/bin/startup.sh; \
+ sleep 5; \
+ "${INSTALL_PATH_TOMCAT}"/bin/shutdown.sh; \
+ sleep 5; \
+ done; \
+ \
+ FULL=$( (java -Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,printallStats 2>&1 || true) | awk '/^Cache is [0-9.]*% .*full/ {print substr($3, 1, length($3)-1)}'); \
+ DST_CACHE=$(java -Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,destroy 2>&1 || true); \
+ SCC_SIZE=$(echo $SCC_SIZE | sed 's/.$//'); \
+ SCC_SIZE=$(awk "BEGIN {print int($SCC_SIZE * $FULL / 100.0)}"); \
+ [ "${SCC_SIZE}" -eq 0 ] && SCC_SIZE=1; \
+ SCC_SIZE="${SCC_SIZE}m"; \
+ java -Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal,createLayer -Xscmx$SCC_SIZE -version; \
+ unset OPENJ9_JAVA_OPTIONS; \
+ \
+ export OPENJ9_JAVA_OPTIONS="-Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal"; \
+ for i in $(seq 0 $SCC_GEN_RUNS_COUNT); \
+ do \
+ "${INSTALL_PATH_TOMCAT}"/bin/startup.sh; \
+ sleep 5; \
+ "${INSTALL_PATH_TOMCAT}"/bin/shutdown.sh; \
+ sleep 5; \
+ done; \
+ \
+ FULL=$( (java -Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,printallStats 2>&1 || true) | awk '/^Cache is [0-9.]*% .*full/ {print substr($3, 1, length($3)-1)}'); \
+ echo "SCC layer is $FULL% full."; \
+ rm -rf "${INSTALL_PATH_TOMCAT}"; \
+ if [ -d "/opt/java/.scc" ]; then \
+ chmod -R 0777 /opt/java/.scc; \
+ fi; \
+ \
+ echo "SCC generation phase completed";
+
+ENV OPENJ9_JAVA_OPTIONS="-Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,readonly,nonFatal"
+
CMD ["jshell"]
diff --git a/adoptopenjdk_openj9-windowsservercore-1809/Dockerfile.openj9.releases.full b/adoptopenjdk_14-openj9-windowsservercore-1809/Dockerfile.openj9.releases.full
similarity index 94%
copy from adoptopenjdk_openj9-windowsservercore-1809/Dockerfile.openj9.releases.full
copy to adoptopenjdk_14-openj9-windowsservercore-1809/Dockerfile.openj9.releases.full
index 0ba45b0..bef51c3 100644
--- a/adoptopenjdk_openj9-windowsservercore-1809/Dockerfile.openj9.releases.full
+++ b/adoptopenjdk_14-openj9-windowsservercore-1809/Dockerfile.openj9.releases.full
@@ -41,5 +41,5 @@ RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk14-binaries/
Remove-Item -Path C:\temp -Recurse | Out-Null; \
Write-Host 'Removing openjdk.msi ...'; \
Remove-Item openjdk.msi -Force
-ENV JAVA_TOOL_OPTIONS="-XX:+IgnoreUnrecognizedVMOptions -XX:+UseContainerSupport -XX:+IdleTuningCompactOnIdle -XX:+IdleTuningGcOnIdle"
+ENV JAVA_TOOL_OPTIONS="-XX:+IgnoreUnrecognizedVMOptions -XX:+IdleTuningGcOnIdle"
CMD ["jshell"]
diff --git a/adoptopenjdk_openj9-windowsservercore-ltsc2016/Dockerfile.openj9.releases.full b/adoptopenjdk_14-openj9-windowsservercore-ltsc2016/Dockerfile.openj9.releases.full
similarity index 94%
copy from adoptopenjdk_openj9-windowsservercore-ltsc2016/Dockerfile.openj9.releases.full
copy to adoptopenjdk_14-openj9-windowsservercore-ltsc2016/Dockerfile.openj9.releases.full
index 4a658d9..4dfe67a 100644
--- a/adoptopenjdk_openj9-windowsservercore-ltsc2016/Dockerfile.openj9.releases.full
+++ b/adoptopenjdk_14-openj9-windowsservercore-ltsc2016/Dockerfile.openj9.releases.full
@@ -41,5 +41,5 @@ RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk14-binaries/
Remove-Item -Path C:\temp -Recurse | Out-Null; \
Write-Host 'Removing openjdk.msi ...'; \
Remove-Item openjdk.msi -Force
-ENV JAVA_TOOL_OPTIONS="-XX:+IgnoreUnrecognizedVMOptions -XX:+UseContainerSupport -XX:+IdleTuningCompactOnIdle -XX:+IdleTuningGcOnIdle"
+ENV JAVA_TOOL_OPTIONS="-XX:+IgnoreUnrecognizedVMOptions -XX:+IdleTuningGcOnIdle"
CMD ["jshell"]
diff --git a/adoptopenjdk_8-hotspot-bionic/Dockerfile.hotspot.releases.full b/adoptopenjdk_15-jre-hotspot-bionic/Dockerfile.hotspot.releases.full
similarity index 60%
copy from adoptopenjdk_8-hotspot-bionic/Dockerfile.hotspot.releases.full
copy to adoptopenjdk_15-jre-hotspot-bionic/Dockerfile.hotspot.releases.full
index 5227a8a..3f7cb1d 100644
--- a/adoptopenjdk_8-hotspot-bionic/Dockerfile.hotspot.releases.full
+++ b/adoptopenjdk_15-jre-hotspot-bionic/Dockerfile.hotspot.releases.full
@@ -17,7 +17,7 @@
# limitations under the License.
#
-FROM ubuntu:18.04
+FROM ubuntu:20.04
ENV LANG='en_US.UTF-8' LANGUAGE='en_US:en' LC_ALL='en_US.UTF-8'
@@ -27,30 +27,30 @@ RUN apt-get update \
&& locale-gen en_US.UTF-8 \
&& rm -rf /var/lib/apt/lists/*
-ENV JAVA_VERSION jdk8u262-b10
+ENV JAVA_VERSION jdk-15+36
RUN set -eux; \
ARCH="$(dpkg --print-architecture)"; \
case "${ARCH}" in \
aarch64|arm64) \
- ESUM='7be0b2a4c749a277302a54b456624c076b3a5b990ad502e2a72d803ab31aecab'; \
- BINARY_URL='https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u262-b10/OpenJDK8U-jdk_aarch64_linux_hotspot_8u262b10.tar.gz'; \
+ ESUM='318f50bae6652d4468ee262ce0fd6569adbc461bea0d1ecce77ce2843efee8d4'; \
+ BINARY_URL='https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15%2B36/OpenJDK15U-jre_aarch64_linux_hotspot_15_36.tar.gz'; \
;; \
armhf|armv7l) \
- ESUM='dd85ebb9a64916b4b621a23729e3360adb363d430bf1e99e98f25397834d74bd'; \
- BINARY_URL='https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u262-b10/OpenJDK8U-jdk_arm_linux_hotspot_8u262b10.tar.gz'; \
+ ESUM='09c1ba3636e7899d8b43795d7988bcc4b1e1be2919764d94f6d4a1a855ce774f'; \
+ BINARY_URL='https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15%2B36/OpenJDK15U-jre_arm_linux_hotspot_15_36.tar.gz'; \
;; \
ppc64el|ppc64le) \
- ESUM='d2a16915fb85ba851145c91cda5666cb78f06bf4713a2b3bdce813779ff972c2'; \
- BINARY_URL='https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u262-b10/OpenJDK8U-jdk_ppc64le_linux_hotspot_8u262b10.tar.gz'; \
+ ESUM='6ea692c7e43bee201a56313bd9f4ddcdea43bed1dfe203c49316ac4d08a4cdd3'; \
+ BINARY_URL='https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15%2B36/OpenJDK15U-jre_ppc64le_linux_hotspot_15_36.tar.gz'; \
;; \
s390x) \
- ESUM='a504af6924a095cfb6c392653dccd7299925048c91b399d05efa95a094820120'; \
- BINARY_URL='https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u262-b10/OpenJDK8U-jdk_s390x_linux_hotspot_8u262b10.tar.gz'; \
+ ESUM='e1e124a29e2bf892d267eb63d00dd136558b4e276bcb6741ea676c995b2fff51'; \
+ BINARY_URL='https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15%2B36/OpenJDK15U-jre_s390x_linux_hotspot_15_36.tar.gz'; \
;; \
amd64|x86_64) \
- ESUM='733755fd649fad6ae91fc083f7e5a5a0b56410fb6ac1815cff29f744b128b1b1'; \
- BINARY_URL='https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u262-b10/OpenJDK8U-jdk_x64_linux_hotspot_8u262b10.tar.gz'; \
+ ESUM='230d97a6b16a0735f15013a91f7582a22282ec12bdfaec291ab63274cc075efb'; \
+ BINARY_URL='https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15%2B36/OpenJDK15U-jre_x64_linux_hotspot_15_36.tar.gz'; \
;; \
*) \
echo "Unsupported arch: ${ARCH}"; \
diff --git a/adoptopenjdk_8-hotspot-windowsservercore-1809/Dockerfile.hotspot.releases.full b/adoptopenjdk_15-jre-hotspot-windowsservercore-1809/Dockerfile.hotspot.releases.full
similarity index 77%
copy from adoptopenjdk_8-hotspot-windowsservercore-1809/Dockerfile.hotspot.releases.full
copy to adoptopenjdk_15-jre-hotspot-windowsservercore-1809/Dockerfile.hotspot.releases.full
index f3fd09c..b3d622e 100644
--- a/adoptopenjdk_8-hotspot-windowsservercore-1809/Dockerfile.hotspot.releases.full
+++ b/adoptopenjdk_15-jre-hotspot-windowsservercore-1809/Dockerfile.hotspot.releases.full
@@ -22,13 +22,13 @@ FROM mcr.microsoft.com/windows/servercore:1809
# $ProgressPreference: https://github.com/PowerShell/PowerShell/issues/2138#issuecomment-251261324
SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"]
-ENV JAVA_VERSION jdk8u262-b10
+ENV JAVA_VERSION jdk-15+36
-RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u262-b10/OpenJDK8U-jdk_x64_windows_hotspot_8u262b10.msi ...'); \
+RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15%2B36/OpenJDK15U-jre_x64_windows_hotspot_15_36.msi ...'); \
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; \
- wget https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u262-b10/OpenJDK8U-jdk_x64_windows_hotspot_8u262b10.msi -O 'openjdk.msi'; \
- Write-Host ('Verifying sha256 (251429e9c5ea2d2950aceca10c67e4bf5be3f5f299f2fad4c9757b5ac857cc2c) ...'); \
- if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne '251429e9c5ea2d2950aceca10c67e4bf5be3f5f299f2fad4c9757b5ac857cc2c') { \
+ wget https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15%2B36/OpenJDK15U-jre_x64_windows_hotspot_15_36.msi -O 'openjdk.msi'; \
+ Write-Host ('Verifying sha256 (d14250fb3ed06d6421c6b2e04ae266b436138213eea2fe4ddc3640df8064d9bc) ...'); \
+ if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne 'd14250fb3ed06d6421c6b2e04ae266b436138213eea2fe4ddc3640df8064d9bc') { \
Write-Host 'FAILED!'; \
exit 1; \
}; \
diff --git a/adoptopenjdk_8-jre-hotspot-windowsservercore-ltsc2016/Dockerfile.hotspot.releases.full b/adoptopenjdk_15-jre-hotspot-windowsservercore-ltsc2016/Dockerfile.hotspot.releases.full
similarity index 77%
copy from adoptopenjdk_8-jre-hotspot-windowsservercore-ltsc2016/Dockerfile.hotspot.releases.full
copy to adoptopenjdk_15-jre-hotspot-windowsservercore-ltsc2016/Dockerfile.hotspot.releases.full
index 7790fd0..98f4a11 100644
--- a/adoptopenjdk_8-jre-hotspot-windowsservercore-ltsc2016/Dockerfile.hotspot.releases.full
+++ b/adoptopenjdk_15-jre-hotspot-windowsservercore-ltsc2016/Dockerfile.hotspot.releases.full
@@ -22,13 +22,13 @@ FROM mcr.microsoft.com/windows/servercore:ltsc2016
# $ProgressPreference: https://github.com/PowerShell/PowerShell/issues/2138#issuecomment-251261324
SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"]
-ENV JAVA_VERSION jdk8u262-b10
+ENV JAVA_VERSION jdk-15+36
-RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u262-b10/OpenJDK8U-jre_x64_windows_hotspot_8u262b10.msi ...'); \
+RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15%2B36/OpenJDK15U-jre_x64_windows_hotspot_15_36.msi ...'); \
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; \
- wget https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u262-b10/OpenJDK8U-jre_x64_windows_hotspot_8u262b10.msi -O 'openjdk.msi'; \
- Write-Host ('Verifying sha256 (e85f21cddd791f1b362de285338912de60ee12d7fd27847faeee37f294f7a06b) ...'); \
- if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne 'e85f21cddd791f1b362de285338912de60ee12d7fd27847faeee37f294f7a06b') { \
+ wget https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15%2B36/OpenJDK15U-jre_x64_windows_hotspot_15_36.msi -O 'openjdk.msi'; \
+ Write-Host ('Verifying sha256 (d14250fb3ed06d6421c6b2e04ae266b436138213eea2fe4ddc3640df8064d9bc) ...'); \
+ if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne 'd14250fb3ed06d6421c6b2e04ae266b436138213eea2fe4ddc3640df8064d9bc') { \
Write-Host 'FAILED!'; \
exit 1; \
}; \
diff --git a/adoptopenjdk_14-jre-openj9-bionic/Dockerfile.openj9.releases.full b/adoptopenjdk_15-jre-openj9-bionic/Dockerfile.openj9.releases.full
similarity index 29%
copy from adoptopenjdk_14-jre-openj9-bionic/Dockerfile.openj9.releases.full
copy to adoptopenjdk_15-jre-openj9-bionic/Dockerfile.openj9.releases.full
index 30c3618..140593a 100644
--- a/adoptopenjdk_14-jre-openj9-bionic/Dockerfile.openj9.releases.full
+++ b/adoptopenjdk_15-jre-openj9-bionic/Dockerfile.openj9.releases.full
@@ -17,7 +17,7 @@
# limitations under the License.
#
-FROM ubuntu:18.04
+FROM ubuntu:20.04
ENV LANG='en_US.UTF-8' LANGUAGE='en_US:en' LC_ALL='en_US.UTF-8'
@@ -27,22 +27,22 @@ RUN apt-get update \
&& locale-gen en_US.UTF-8 \
&& rm -rf /var/lib/apt/lists/*
-ENV JAVA_VERSION jdk-14.0.2+12_openj9-0.21.0
+ENV JAVA_VERSION jdk-15+36_openj9-0.22.0
RUN set -eux; \
ARCH="$(dpkg --print-architecture)"; \
case "${ARCH}" in \
ppc64el|ppc64le) \
- ESUM='ad7a55a3669878c0c7d7c66faafe7c626d4341374719b6fdd81d2986c6e80945'; \
- BINARY_URL='https://github.com/AdoptOpenJDK/openjdk14-binaries/releases/download/jdk-14.0.2%2B12_openj9-0.21.0/OpenJDK14U-jre_ppc64le_linux_openj9_14.0.2_12_openj9-0.21.0.tar.gz'; \
+ ESUM='fef3e6034a861b0bfa14120f064373d866b65f3525b9c791a647010194eb5632'; \
+ BINARY_URL='https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15%2B36_openj9-0.22.0/OpenJDK15U-jre_ppc64le_linux_openj9_15_36_openj9-0.22.0.tar.gz'; \
;; \
s390x) \
- ESUM='6a3c0f61873bfcd23da806f5df9267e08cbfd064ab7cf6e8b08648b4cbe2f9e2'; \
- BINARY_URL='https://github.com/AdoptOpenJDK/openjdk14-binaries/releases/download/jdk-14.0.2%2B12_openj9-0.21.0/OpenJDK14U-jre_s390x_linux_openj9_14.0.2_12_openj9-0.21.0.tar.gz'; \
+ ESUM='5f5a6a46a432af651d63538997b0850fed9f631ab4a797e29d33347d3052fddc'; \
+ BINARY_URL='https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15%2B36_openj9-0.22.0/OpenJDK15U-jre_s390x_linux_openj9_15_36_openj9-0.22.0.tar.gz'; \
;; \
amd64|x86_64) \
- ESUM='3a137146a7b0bd8b029e72beb37c5fbb09dcfb9e33a10125076fff1555227cfd'; \
- BINARY_URL='https://github.com/AdoptOpenJDK/openjdk14-binaries/releases/download/jdk-14.0.2%2B12_openj9-0.21.0/OpenJDK14U-jre_x64_linux_openj9_14.0.2_12_openj9-0.21.0.tar.gz'; \
+ ESUM='3811aea0eeaccd4aa50bbf6a374e31b19f52a22c1f2c8b378e8ea0ac194b8638'; \
+ BINARY_URL='https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15%2B36_openj9-0.22.0/OpenJDK15U-jre_x64_linux_openj9_15_36_openj9-0.22.0.tar.gz'; \
;; \
*) \
echo "Unsupported arch: ${ARCH}"; \
@@ -58,4 +58,65 @@ RUN set -eux; \
ENV JAVA_HOME=/opt/java/openjdk \
PATH="/opt/java/openjdk/bin:$PATH"
-ENV JAVA_TOOL_OPTIONS="-XX:+IgnoreUnrecognizedVMOptions -XX:+UseContainerSupport -XX:+IdleTuningCompactOnIdle -XX:+IdleTuningGcOnIdle"
+ENV JAVA_TOOL_OPTIONS="-XX:+IgnoreUnrecognizedVMOptions -XX:+IdleTuningGcOnIdle"
+
+# Create OpenJ9 SharedClassCache (SCC) for bootclasses to improve the java startup.
+# Downloads and runs tomcat to generate SCC for bootclasses at /opt/java/.scc/openj9_system_scc
+# Does a dry-run and calculates the optimal cache size and recreates the cache with the appropriate size.
+# With SCC, OpenJ9 startup is improved ~50% with an increase in image size of ~14MB
+# Application classes can be create a separate cache layer with this as the base for further startup improvement
+
+RUN set -eux; \
+ unset OPENJ9_JAVA_OPTIONS; \
+ SCC_SIZE="50m"; \
+ SCC_GEN_RUNS_COUNT=3; \
+ DOWNLOAD_PATH_TOMCAT=/tmp/tomcat; \
+ INSTALL_PATH_TOMCAT=/opt/tomcat-home; \
+ TOMCAT_CHECKSUM="0db27185d9fc3174f2c670f814df3dda8a008b89d1a38a5d96cbbe119767ebfb1cf0bce956b27954aee9be19c4a7b91f2579d967932207976322033a86075f98"; \
+ TOMCAT_DWNLD_URL="https://archive.apache.org/dist/tomcat/tomcat-9/v9.0.35/bin/apache-tomcat-9.0.35.tar.gz"; \
+ \
+ mkdir -p "${DOWNLOAD_PATH_TOMCAT}" "${INSTALL_PATH_TOMCAT}"; \
+ curl -LfsSo "${DOWNLOAD_PATH_TOMCAT}"/tomcat.tar.gz "${TOMCAT_DWNLD_URL}"; \
+ echo "${TOMCAT_CHECKSUM} *${DOWNLOAD_PATH_TOMCAT}/tomcat.tar.gz" | sha512sum -c -; \
+ tar -xf "${DOWNLOAD_PATH_TOMCAT}"/tomcat.tar.gz -C "${INSTALL_PATH_TOMCAT}" --strip-components=1; \
+ rm -rf "${DOWNLOAD_PATH_TOMCAT}"; \
+ \
+ java -Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal,createLayer -Xscmx$SCC_SIZE -version; \
+ export OPENJ9_JAVA_OPTIONS="-Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal"; \
+ for i in $(seq 0 $SCC_GEN_RUNS_COUNT); \
+ do \
+ "${INSTALL_PATH_TOMCAT}"/bin/startup.sh; \
+ sleep 5; \
+ "${INSTALL_PATH_TOMCAT}"/bin/shutdown.sh; \
+ sleep 5; \
+ done; \
+ \
+ FULL=$( (java -Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,printallStats 2>&1 || true) | awk '/^Cache is [0-9.]*% .*full/ {print substr($3, 1, length($3)-1)}'); \
+ DST_CACHE=$(java -Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,destroy 2>&1 || true); \
+ SCC_SIZE=$(echo $SCC_SIZE | sed 's/.$//'); \
+ SCC_SIZE=$(awk "BEGIN {print int($SCC_SIZE * $FULL / 100.0)}"); \
+ [ "${SCC_SIZE}" -eq 0 ] && SCC_SIZE=1; \
+ SCC_SIZE="${SCC_SIZE}m"; \
+ java -Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal,createLayer -Xscmx$SCC_SIZE -version; \
+ unset OPENJ9_JAVA_OPTIONS; \
+ \
+ export OPENJ9_JAVA_OPTIONS="-Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal"; \
+ for i in $(seq 0 $SCC_GEN_RUNS_COUNT); \
+ do \
+ "${INSTALL_PATH_TOMCAT}"/bin/startup.sh; \
+ sleep 5; \
+ "${INSTALL_PATH_TOMCAT}"/bin/shutdown.sh; \
+ sleep 5; \
+ done; \
+ \
+ FULL=$( (java -Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,printallStats 2>&1 || true) | awk '/^Cache is [0-9.]*% .*full/ {print substr($3, 1, length($3)-1)}'); \
+ echo "SCC layer is $FULL% full."; \
+ rm -rf "${INSTALL_PATH_TOMCAT}"; \
+ if [ -d "/opt/java/.scc" ]; then \
+ chmod -R 0777 /opt/java/.scc; \
+ fi; \
+ \
+ echo "SCC generation phase completed";
+
+ENV OPENJ9_JAVA_OPTIONS="-Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,readonly,nonFatal"
+
diff --git a/adoptopenjdk_11-hotspot-windowsservercore-1809/Dockerfile.hotspot.releases.full b/adoptopenjdk_15-jre-openj9-windowsservercore-1809/Dockerfile.openj9.releases.full
similarity index 73%
copy from adoptopenjdk_11-hotspot-windowsservercore-1809/Dockerfile.hotspot.releases.full
copy to adoptopenjdk_15-jre-openj9-windowsservercore-1809/Dockerfile.openj9.releases.full
index b1db662..dc5accf 100644
--- a/adoptopenjdk_11-hotspot-windowsservercore-1809/Dockerfile.hotspot.releases.full
+++ b/adoptopenjdk_15-jre-openj9-windowsservercore-1809/Dockerfile.openj9.releases.full
@@ -22,13 +22,13 @@ FROM mcr.microsoft.com/windows/servercore:1809
# $ProgressPreference: https://github.com/PowerShell/PowerShell/issues/2138#issuecomment-251261324
SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"]
-ENV JAVA_VERSION jdk-11.0.8+10
+ENV JAVA_VERSION jdk-15+36_openj9-0.22.0
-RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk11-binaries/releases/download/jdk-11.0.8%2B10/OpenJDK11U-jdk_x64_windows_hotspot_11.0.8_10.msi ...'); \
+RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15%2B36_openj9-0.22.0/OpenJDK15U-jre_x64_windows_openj9_15_36_openj9-0.22.0.msi ...'); \
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; \
- wget https://github.com/AdoptOpenJDK/openjdk11-binaries/releases/download/jdk-11.0.8%2B10/OpenJDK11U-jdk_x64_windows_hotspot_11.0.8_10.msi -O 'openjdk.msi'; \
- Write-Host ('Verifying sha256 (148b487e0dde39ec5c0f32aa2397c17968b6cf6818822cea2b2394dfd0157396) ...'); \
- if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne '148b487e0dde39ec5c0f32aa2397c17968b6cf6818822cea2b2394dfd0157396') { \
+ wget https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15%2B36_openj9-0.22.0/OpenJDK15U-jre_x64_windows_openj9_15_36_openj9-0.22.0.msi -O 'openjdk.msi'; \
+ Write-Host ('Verifying sha256 (78b7f6950c5afafa99164644f8dc85cd05d653964e828b52ea1916a3e27b7e61) ...'); \
+ if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne '78b7f6950c5afafa99164644f8dc85cd05d653964e828b52ea1916a3e27b7e61') { \
Write-Host 'FAILED!'; \
exit 1; \
}; \
@@ -41,4 +41,4 @@ RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk11-binaries/
Remove-Item -Path C:\temp -Recurse | Out-Null; \
Write-Host 'Removing openjdk.msi ...'; \
Remove-Item openjdk.msi -Force
-CMD ["jshell"]
+ENV JAVA_TOOL_OPTIONS="-XX:+IgnoreUnrecognizedVMOptions -XX:+IdleTuningGcOnIdle"
diff --git a/adoptopenjdk_14-jre-hotspot-windowsservercore-ltsc2016/Dockerfile.hotspot.releases.full b/adoptopenjdk_15-jre-openj9-windowsservercore-ltsc2016/Dockerfile.openj9.releases.full
similarity index 73%
copy from adoptopenjdk_14-jre-hotspot-windowsservercore-ltsc2016/Dockerfile.hotspot.releases.full
copy to adoptopenjdk_15-jre-openj9-windowsservercore-ltsc2016/Dockerfile.openj9.releases.full
index f645611..8aea245 100644
--- a/adoptopenjdk_14-jre-hotspot-windowsservercore-ltsc2016/Dockerfile.hotspot.releases.full
+++ b/adoptopenjdk_15-jre-openj9-windowsservercore-ltsc2016/Dockerfile.openj9.releases.full
@@ -22,13 +22,13 @@ FROM mcr.microsoft.com/windows/servercore:ltsc2016
# $ProgressPreference: https://github.com/PowerShell/PowerShell/issues/2138#issuecomment-251261324
SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"]
-ENV JAVA_VERSION jdk-14.0.2+12
+ENV JAVA_VERSION jdk-15+36_openj9-0.22.0
-RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk14-binaries/releases/download/jdk-14.0.2%2B12/OpenJDK14U-jre_x64_windows_hotspot_14.0.2_12.msi ...'); \
+RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15%2B36_openj9-0.22.0/OpenJDK15U-jre_x64_windows_openj9_15_36_openj9-0.22.0.msi ...'); \
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; \
- wget https://github.com/AdoptOpenJDK/openjdk14-binaries/releases/download/jdk-14.0.2%2B12/OpenJDK14U-jre_x64_windows_hotspot_14.0.2_12.msi -O 'openjdk.msi'; \
- Write-Host ('Verifying sha256 (bf468c78387b8095914a2d46af6961d5c22697929b66961e346a41fc8bf909d4) ...'); \
- if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne 'bf468c78387b8095914a2d46af6961d5c22697929b66961e346a41fc8bf909d4') { \
+ wget https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15%2B36_openj9-0.22.0/OpenJDK15U-jre_x64_windows_openj9_15_36_openj9-0.22.0.msi -O 'openjdk.msi'; \
+ Write-Host ('Verifying sha256 (78b7f6950c5afafa99164644f8dc85cd05d653964e828b52ea1916a3e27b7e61) ...'); \
+ if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne '78b7f6950c5afafa99164644f8dc85cd05d653964e828b52ea1916a3e27b7e61') { \
Write-Host 'FAILED!'; \
exit 1; \
}; \
@@ -41,3 +41,4 @@ RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk14-binaries/
Remove-Item -Path C:\temp -Recurse | Out-Null; \
Write-Host 'Removing openjdk.msi ...'; \
Remove-Item openjdk.msi -Force
+ENV JAVA_TOOL_OPTIONS="-XX:+IgnoreUnrecognizedVMOptions -XX:+IdleTuningGcOnIdle"
diff --git a/adoptopenjdk_8-hotspot-bionic/Dockerfile.hotspot.releases.full b/adoptopenjdk_8-hotspot-bionic/Dockerfile.hotspot.releases.full
index 5227a8a..305e1b7 100644
--- a/adoptopenjdk_8-hotspot-bionic/Dockerfile.hotspot.releases.full
+++ b/adoptopenjdk_8-hotspot-bionic/Dockerfile.hotspot.releases.full
@@ -17,7 +17,7 @@
# limitations under the License.
#
-FROM ubuntu:18.04
+FROM ubuntu:20.04
ENV LANG='en_US.UTF-8' LANGUAGE='en_US:en' LC_ALL='en_US.UTF-8'
@@ -27,30 +27,30 @@ RUN apt-get update \
&& locale-gen en_US.UTF-8 \
&& rm -rf /var/lib/apt/lists/*
-ENV JAVA_VERSION jdk8u262-b10
+ENV JAVA_VERSION jdk8u265-b01
RUN set -eux; \
ARCH="$(dpkg --print-architecture)"; \
case "${ARCH}" in \
aarch64|arm64) \
- ESUM='7be0b2a4c749a277302a54b456624c076b3a5b990ad502e2a72d803ab31aecab'; \
- BINARY_URL='https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u262-b10/OpenJDK8U-jdk_aarch64_linux_hotspot_8u262b10.tar.gz'; \
+ ESUM='87d16dac293d2a9abbb559a277bfaded702f28d1bfdc526f8613bb9cfed84a12'; \
+ BINARY_URL='https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u265-b01/OpenJDK8U-jdk_aarch64_linux_hotspot_8u265b01.tar.gz'; \
;; \
armhf|armv7l) \
- ESUM='dd85ebb9a64916b4b621a23729e3360adb363d430bf1e99e98f25397834d74bd'; \
- BINARY_URL='https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u262-b10/OpenJDK8U-jdk_arm_linux_hotspot_8u262b10.tar.gz'; \
+ ESUM='dc3405aab81f422b7721f665c76371bd7b03c291eea89cd110a82d8bcf07809a'; \
+ BINARY_URL='https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u265-b01/OpenJDK8U-jdk_arm_linux_hotspot_8u265b01.tar.gz'; \
;; \
ppc64el|ppc64le) \
- ESUM='d2a16915fb85ba851145c91cda5666cb78f06bf4713a2b3bdce813779ff972c2'; \
- BINARY_URL='https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u262-b10/OpenJDK8U-jdk_ppc64le_linux_hotspot_8u262b10.tar.gz'; \
+ ESUM='7bbb9d76458ee29bc5e2458b32a91b8c032ecffe6cb8500734ca41d2d8f5c9f3'; \
+ BINARY_URL='https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u265-b01/OpenJDK8U-jdk_ppc64le_linux_hotspot_8u265b01.tar.gz'; \
;; \
s390x) \
- ESUM='a504af6924a095cfb6c392653dccd7299925048c91b399d05efa95a094820120'; \
- BINARY_URL='https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u262-b10/OpenJDK8U-jdk_s390x_linux_hotspot_8u262b10.tar.gz'; \
+ ESUM='aca50f02d59169cb428d54501846b518edc9fff6a6f428459c72b4faa2b4abb0'; \
+ BINARY_URL='https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u265-b01/OpenJDK8U-jdk_s390x_linux_hotspot_8u265b01.tar.gz'; \
;; \
amd64|x86_64) \
- ESUM='733755fd649fad6ae91fc083f7e5a5a0b56410fb6ac1815cff29f744b128b1b1'; \
- BINARY_URL='https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u262-b10/OpenJDK8U-jdk_x64_linux_hotspot_8u262b10.tar.gz'; \
+ ESUM='1285da6278f2d38a790a21148d7e683f20de0799c44b937043830ef6b57f58c4'; \
+ BINARY_URL='https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u265-b01/OpenJDK8U-jdk_x64_linux_hotspot_8u265b01.tar.gz'; \
;; \
*) \
echo "Unsupported arch: ${ARCH}"; \
diff --git a/adoptopenjdk_8-hotspot-windowsservercore-1809/Dockerfile.hotspot.releases.full b/adoptopenjdk_8-hotspot-windowsservercore-1809/Dockerfile.hotspot.releases.full
index f3fd09c..7f626b3 100644
--- a/adoptopenjdk_8-hotspot-windowsservercore-1809/Dockerfile.hotspot.releases.full
+++ b/adoptopenjdk_8-hotspot-windowsservercore-1809/Dockerfile.hotspot.releases.full
@@ -22,13 +22,13 @@ FROM mcr.microsoft.com/windows/servercore:1809
# $ProgressPreference: https://github.com/PowerShell/PowerShell/issues/2138#issuecomment-251261324
SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"]
-ENV JAVA_VERSION jdk8u262-b10
+ENV JAVA_VERSION jdk8u265-b01
-RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u262-b10/OpenJDK8U-jdk_x64_windows_hotspot_8u262b10.msi ...'); \
+RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u265-b01/OpenJDK8U-jdk_x64_windows_hotspot_8u265b01.msi ...'); \
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; \
- wget https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u262-b10/OpenJDK8U-jdk_x64_windows_hotspot_8u262b10.msi -O 'openjdk.msi'; \
- Write-Host ('Verifying sha256 (251429e9c5ea2d2950aceca10c67e4bf5be3f5f299f2fad4c9757b5ac857cc2c) ...'); \
- if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne '251429e9c5ea2d2950aceca10c67e4bf5be3f5f299f2fad4c9757b5ac857cc2c') { \
+ wget https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u265-b01/OpenJDK8U-jdk_x64_windows_hotspot_8u265b01.msi -O 'openjdk.msi'; \
+ Write-Host ('Verifying sha256 (3749bfd8dcc4ce3877a5b593f7df8fe05d7294435b62a919be35a003c559e033) ...'); \
+ if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne '3749bfd8dcc4ce3877a5b593f7df8fe05d7294435b62a919be35a003c559e033') { \
Write-Host 'FAILED!'; \
exit 1; \
}; \
diff --git a/adoptopenjdk_8-hotspot-windowsservercore-ltsc2016/Dockerfile.hotspot.releases.full b/adoptopenjdk_8-hotspot-windowsservercore-ltsc2016/Dockerfile.hotspot.releases.full
index 08180ff..1ce974f 100644
--- a/adoptopenjdk_8-hotspot-windowsservercore-ltsc2016/Dockerfile.hotspot.releases.full
+++ b/adoptopenjdk_8-hotspot-windowsservercore-ltsc2016/Dockerfile.hotspot.releases.full
@@ -22,13 +22,13 @@ FROM mcr.microsoft.com/windows/servercore:ltsc2016
# $ProgressPreference: https://github.com/PowerShell/PowerShell/issues/2138#issuecomment-251261324
SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"]
-ENV JAVA_VERSION jdk8u262-b10
+ENV JAVA_VERSION jdk8u265-b01
-RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u262-b10/OpenJDK8U-jdk_x64_windows_hotspot_8u262b10.msi ...'); \
+RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u265-b01/OpenJDK8U-jdk_x64_windows_hotspot_8u265b01.msi ...'); \
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; \
- wget https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u262-b10/OpenJDK8U-jdk_x64_windows_hotspot_8u262b10.msi -O 'openjdk.msi'; \
- Write-Host ('Verifying sha256 (251429e9c5ea2d2950aceca10c67e4bf5be3f5f299f2fad4c9757b5ac857cc2c) ...'); \
- if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne '251429e9c5ea2d2950aceca10c67e4bf5be3f5f299f2fad4c9757b5ac857cc2c') { \
+ wget https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u265-b01/OpenJDK8U-jdk_x64_windows_hotspot_8u265b01.msi -O 'openjdk.msi'; \
+ Write-Host ('Verifying sha256 (3749bfd8dcc4ce3877a5b593f7df8fe05d7294435b62a919be35a003c559e033) ...'); \
+ if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne '3749bfd8dcc4ce3877a5b593f7df8fe05d7294435b62a919be35a003c559e033') { \
Write-Host 'FAILED!'; \
exit 1; \
}; \
diff --git a/adoptopenjdk_8-jre-hotspot-bionic/Dockerfile.hotspot.releases.full b/adoptopenjdk_8-jre-hotspot-bionic/Dockerfile.hotspot.releases.full
index b6996a0..92f52aa 100644
--- a/adoptopenjdk_8-jre-hotspot-bionic/Dockerfile.hotspot.releases.full
+++ b/adoptopenjdk_8-jre-hotspot-bionic/Dockerfile.hotspot.releases.full
@@ -17,7 +17,7 @@
# limitations under the License.
#
-FROM ubuntu:18.04
+FROM ubuntu:20.04
ENV LANG='en_US.UTF-8' LANGUAGE='en_US:en' LC_ALL='en_US.UTF-8'
@@ -27,30 +27,30 @@ RUN apt-get update \
&& locale-gen en_US.UTF-8 \
&& rm -rf /var/lib/apt/lists/*
-ENV JAVA_VERSION jdk8u262-b10
+ENV JAVA_VERSION jdk8u265-b01
RUN set -eux; \
ARCH="$(dpkg --print-architecture)"; \
case "${ARCH}" in \
aarch64|arm64) \
- ESUM='0ad1ff282ad034a613c64313c885edef5dfbc5dd51f2eda705bbeb7fa822f238'; \
- BINARY_URL='https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u262-b10/OpenJDK8U-jre_aarch64_linux_hotspot_8u262b10.tar.gz'; \
+ ESUM='2f9c5be1bf704f1233bcf96b8c02524c14dc4d43dc80c4926856091961b79948'; \
+ BINARY_URL='https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u265-b01/OpenJDK8U-jre_aarch64_linux_hotspot_8u265b01.tar.gz'; \
;; \
armhf|armv7l) \
- ESUM='330ce008c6f49ddd6dcf43c7839896bb7fe14843300358a71b441a3f94036f69'; \
- BINARY_URL='https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u262-b10/OpenJDK8U-jre_arm_linux_hotspot_8u262b10.tar.gz'; \
+ ESUM='4ac2503725b2729ec245dbdb000b2486f9c73ae86860c9525f9ac822ec81f0d6'; \
+ BINARY_URL='https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u265-b01/OpenJDK8U-jre_arm_linux_hotspot_8u265b01.tar.gz'; \
;; \
ppc64el|ppc64le) \
- ESUM='12309354889da2ed9085fda9812c7d2653fa099c36d322af222da11cbb244df7'; \
- BINARY_URL='https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u262-b10/OpenJDK8U-jre_ppc64le_linux_hotspot_8u262b10.tar.gz'; \
+ ESUM='4fb3640fae4b9bd4ebf834c775b547ed930cd1b805f4686223994480411aee72'; \
+ BINARY_URL='https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u265-b01/OpenJDK8U-jre_ppc64le_linux_hotspot_8u265b01.tar.gz'; \
;; \
s390x) \
- ESUM='0225d0a8707c0b6a059c58b77dd7387fb439816100d668ba000c4536cef77fc2'; \
- BINARY_URL='https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u262-b10/OpenJDK8U-jre_s390x_linux_hotspot_8u262b10.tar.gz'; \
+ ESUM='8b76480c809c4fde654ab55d10371c35d70b50069ab1724960509d99ed61065d'; \
+ BINARY_URL='https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u265-b01/OpenJDK8U-jre_s390x_linux_hotspot_8u265b01.tar.gz'; \
;; \
amd64|x86_64) \
- ESUM='3ce1f34b279a4f8fc6374f5644739622886dd4bcac4fcb0eb596955bac5ca5a4'; \
- BINARY_URL='https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u262-b10/OpenJDK8U-jre_x64_linux_hotspot_8u262b10.tar.gz'; \
+ ESUM='9bce39f63d24626da75778f240294fa466a0ed117e32db798164621fe30b0723'; \
+ BINARY_URL='https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u265-b01/OpenJDK8U-jre_x64_linux_hotspot_8u265b01.tar.gz'; \
;; \
*) \
echo "Unsupported arch: ${ARCH}"; \
diff --git a/adoptopenjdk_8-jre-hotspot-windowsservercore-1809/Dockerfile.hotspot.releases.full b/adoptopenjdk_8-jre-hotspot-windowsservercore-1809/Dockerfile.hotspot.releases.full
index 0a3b655..f414d68 100644
--- a/adoptopenjdk_8-jre-hotspot-windowsservercore-1809/Dockerfile.hotspot.releases.full
+++ b/adoptopenjdk_8-jre-hotspot-windowsservercore-1809/Dockerfile.hotspot.releases.full
@@ -22,13 +22,13 @@ FROM mcr.microsoft.com/windows/servercore:1809
# $ProgressPreference: https://github.com/PowerShell/PowerShell/issues/2138#issuecomment-251261324
SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"]
-ENV JAVA_VERSION jdk8u252-b09.1
+ENV JAVA_VERSION jdk8u265-b01
-RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u252-b09.1/OpenJDK8U-jre_x64_windows_hotspot_8u252b09.msi ...'); \
+RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u265-b01/OpenJDK8U-jre_x64_windows_hotspot_8u265b01.msi ...'); \
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; \
- wget https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u252-b09.1/OpenJDK8U-jre_x64_windows_hotspot_8u252b09.msi -O 'openjdk.msi'; \
- Write-Host ('Verifying sha256 (7651a26e53260e48ca2431a8cdb6b910e8f8c92564cb8378b566d77346a63527) ...'); \
- if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne '7651a26e53260e48ca2431a8cdb6b910e8f8c92564cb8378b566d77346a63527') { \
+ wget https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u265-b01/OpenJDK8U-jre_x64_windows_hotspot_8u265b01.msi -O 'openjdk.msi'; \
+ Write-Host ('Verifying sha256 (5a41ec5d781429b7364412fcb7a05bfd4dd633d9b5e67ab2cdf878ee5ed4c722) ...'); \
+ if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne '5a41ec5d781429b7364412fcb7a05bfd4dd633d9b5e67ab2cdf878ee5ed4c722') { \
Write-Host 'FAILED!'; \
exit 1; \
}; \
@@ -38,6 +38,6 @@ RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk8-binaries/r
Write-Host 'Installing using MSI ...'; \
Start-Process -FilePath "msiexec.exe" -ArgumentList '/i', 'openjdk.msi', '/L*V', 'C:\temp\OpenJDK.log', \
'/quiet', 'ADDLOCAL=FeatureEnvironment,FeatureJarFileRunWith,FeatureJavaHome' -Wait -Passthru; \
+ Remove-Item -Path C:\temp -Recurse | Out-Null; \
Write-Host 'Removing openjdk.msi ...'; \
- Remove-Item openjdk.msi -Force; \
- Remove-Item -Path C:\temp -Recurse | Out-Null;
+ Remove-Item openjdk.msi -Force
diff --git a/adoptopenjdk_8-jre-hotspot-windowsservercore-ltsc2016/Dockerfile.hotspot.releases.full b/adoptopenjdk_8-jre-hotspot-windowsservercore-ltsc2016/Dockerfile.hotspot.releases.full
index 7790fd0..660a88c 100644
--- a/adoptopenjdk_8-jre-hotspot-windowsservercore-ltsc2016/Dockerfile.hotspot.releases.full
+++ b/adoptopenjdk_8-jre-hotspot-windowsservercore-ltsc2016/Dockerfile.hotspot.releases.full
@@ -22,13 +22,13 @@ FROM mcr.microsoft.com/windows/servercore:ltsc2016
# $ProgressPreference: https://github.com/PowerShell/PowerShell/issues/2138#issuecomment-251261324
SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"]
-ENV JAVA_VERSION jdk8u262-b10
+ENV JAVA_VERSION jdk8u265-b01
-RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u262-b10/OpenJDK8U-jre_x64_windows_hotspot_8u262b10.msi ...'); \
+RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u265-b01/OpenJDK8U-jre_x64_windows_hotspot_8u265b01.msi ...'); \
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; \
- wget https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u262-b10/OpenJDK8U-jre_x64_windows_hotspot_8u262b10.msi -O 'openjdk.msi'; \
- Write-Host ('Verifying sha256 (e85f21cddd791f1b362de285338912de60ee12d7fd27847faeee37f294f7a06b) ...'); \
- if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne 'e85f21cddd791f1b362de285338912de60ee12d7fd27847faeee37f294f7a06b') { \
+ wget https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u265-b01/OpenJDK8U-jre_x64_windows_hotspot_8u265b01.msi -O 'openjdk.msi'; \
+ Write-Host ('Verifying sha256 (5a41ec5d781429b7364412fcb7a05bfd4dd633d9b5e67ab2cdf878ee5ed4c722) ...'); \
+ if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne '5a41ec5d781429b7364412fcb7a05bfd4dd633d9b5e67ab2cdf878ee5ed4c722') { \
Write-Host 'FAILED!'; \
exit 1; \
}; \
diff --git a/adoptopenjdk_8-jre-openj9-bionic/Dockerfile.openj9.releases.full b/adoptopenjdk_8-jre-openj9-bionic/Dockerfile.openj9.releases.full
index 368a875..db6266a 100644
--- a/adoptopenjdk_8-jre-openj9-bionic/Dockerfile.openj9.releases.full
+++ b/adoptopenjdk_8-jre-openj9-bionic/Dockerfile.openj9.releases.full
@@ -17,7 +17,7 @@
# limitations under the License.
#
-FROM ubuntu:18.04
+FROM ubuntu:20.04
ENV LANG='en_US.UTF-8' LANGUAGE='en_US:en' LC_ALL='en_US.UTF-8'
@@ -27,22 +27,22 @@ RUN apt-get update \
&& locale-gen en_US.UTF-8 \
&& rm -rf /var/lib/apt/lists/*
-ENV JAVA_VERSION jdk8u262-b10_openj9-0.21.0
+ENV JAVA_VERSION jdk8u265-b01_openj9-0.21.0
RUN set -eux; \
ARCH="$(dpkg --print-architecture)"; \
case "${ARCH}" in \
ppc64el|ppc64le) \
- ESUM='722517d9565bd9602580609114eb0de9b40b01050d52ff7bae24c438d363e186'; \
- BINARY_URL='https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u262-b10_openj9-0.21.0/OpenJDK8U-jre_ppc64le_linux_openj9_8u262b10_openj9-0.21.0.tar.gz'; \
+ ESUM='b1c91e757195b87d51027ea97fece00ac1adb9837b055e5f039dd45511fb3c0a'; \
+ BINARY_URL='https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u265-b01_openj9-0.21.0/OpenJDK8U-jre_ppc64le_linux_openj9_8u265b01_openj9-0.21.0.tar.gz'; \
;; \
s390x) \
- ESUM='c14aeedf4e989a6b31e00d6e18b8377957b07b000cac316aee9d973ef6d65b6f'; \
- BINARY_URL='https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u262-b10_openj9-0.21.0/OpenJDK8U-jre_s390x_linux_openj9_8u262b10_openj9-0.21.0.tar.gz'; \
+ ESUM='ec573cb2361b5fee3944387329d7859889d73c6c8a7d5f7ecf0d95503efda726'; \
+ BINARY_URL='https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u265-b01_openj9-0.21.0/OpenJDK8U-jre_s390x_linux_openj9_8u265b01_openj9-0.21.0.tar.gz'; \
;; \
amd64|x86_64) \
- ESUM='aef8750b492ff6371318cf5138e38827d8895815b2ac079dcfcb02007a45c7f6'; \
- BINARY_URL='https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u262-b10_openj9-0.21.0/OpenJDK8U-jre_x64_linux_openj9_8u262b10_openj9-0.21.0.tar.gz'; \
+ ESUM='0da0aad21f02b4f08f717647def8beafcf0116c36b195705416f46a1ab97f4de'; \
+ BINARY_URL='https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u265-b01_openj9-0.21.0/OpenJDK8U-jre_x64_linux_openj9_8u265b01_openj9-0.21.0.tar.gz'; \
;; \
*) \
echo "Unsupported arch: ${ARCH}"; \
@@ -58,4 +58,65 @@ RUN set -eux; \
ENV JAVA_HOME=/opt/java/openjdk \
PATH="/opt/java/openjdk/bin:$PATH"
-ENV JAVA_TOOL_OPTIONS="-XX:+IgnoreUnrecognizedVMOptions -XX:+UseContainerSupport -XX:+IdleTuningCompactOnIdle -XX:+IdleTuningGcOnIdle"
+ENV JAVA_TOOL_OPTIONS="-XX:+IgnoreUnrecognizedVMOptions -XX:+IdleTuningGcOnIdle"
+
+# Create OpenJ9 SharedClassCache (SCC) for bootclasses to improve the java startup.
+# Downloads and runs tomcat to generate SCC for bootclasses at /opt/java/.scc/openj9_system_scc
+# Does a dry-run and calculates the optimal cache size and recreates the cache with the appropriate size.
+# With SCC, OpenJ9 startup is improved ~50% with an increase in image size of ~14MB
+# Application classes can be create a separate cache layer with this as the base for further startup improvement
+
+RUN set -eux; \
+ unset OPENJ9_JAVA_OPTIONS; \
+ SCC_SIZE="50m"; \
+ SCC_GEN_RUNS_COUNT=3; \
+ DOWNLOAD_PATH_TOMCAT=/tmp/tomcat; \
+ INSTALL_PATH_TOMCAT=/opt/tomcat-home; \
+ TOMCAT_CHECKSUM="0db27185d9fc3174f2c670f814df3dda8a008b89d1a38a5d96cbbe119767ebfb1cf0bce956b27954aee9be19c4a7b91f2579d967932207976322033a86075f98"; \
+ TOMCAT_DWNLD_URL="https://archive.apache.org/dist/tomcat/tomcat-9/v9.0.35/bin/apache-tomcat-9.0.35.tar.gz"; \
+ \
+ mkdir -p "${DOWNLOAD_PATH_TOMCAT}" "${INSTALL_PATH_TOMCAT}"; \
+ curl -LfsSo "${DOWNLOAD_PATH_TOMCAT}"/tomcat.tar.gz "${TOMCAT_DWNLD_URL}"; \
+ echo "${TOMCAT_CHECKSUM} *${DOWNLOAD_PATH_TOMCAT}/tomcat.tar.gz" | sha512sum -c -; \
+ tar -xf "${DOWNLOAD_PATH_TOMCAT}"/tomcat.tar.gz -C "${INSTALL_PATH_TOMCAT}" --strip-components=1; \
+ rm -rf "${DOWNLOAD_PATH_TOMCAT}"; \
+ \
+ java -Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal,createLayer -Xscmx$SCC_SIZE -version; \
+ export OPENJ9_JAVA_OPTIONS="-Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal"; \
+ for i in $(seq 0 $SCC_GEN_RUNS_COUNT); \
+ do \
+ "${INSTALL_PATH_TOMCAT}"/bin/startup.sh; \
+ sleep 5; \
+ "${INSTALL_PATH_TOMCAT}"/bin/shutdown.sh; \
+ sleep 5; \
+ done; \
+ \
+ FULL=$( (java -Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,printallStats 2>&1 || true) | awk '/^Cache is [0-9.]*% .*full/ {print substr($3, 1, length($3)-1)}'); \
+ DST_CACHE=$(java -Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,destroy 2>&1 || true); \
+ SCC_SIZE=$(echo $SCC_SIZE | sed 's/.$//'); \
+ SCC_SIZE=$(awk "BEGIN {print int($SCC_SIZE * $FULL / 100.0)}"); \
+ [ "${SCC_SIZE}" -eq 0 ] && SCC_SIZE=1; \
+ SCC_SIZE="${SCC_SIZE}m"; \
+ java -Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal,createLayer -Xscmx$SCC_SIZE -version; \
+ unset OPENJ9_JAVA_OPTIONS; \
+ \
+ export OPENJ9_JAVA_OPTIONS="-Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal"; \
+ for i in $(seq 0 $SCC_GEN_RUNS_COUNT); \
+ do \
+ "${INSTALL_PATH_TOMCAT}"/bin/startup.sh; \
+ sleep 5; \
+ "${INSTALL_PATH_TOMCAT}"/bin/shutdown.sh; \
+ sleep 5; \
+ done; \
+ \
+ FULL=$( (java -Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,printallStats 2>&1 || true) | awk '/^Cache is [0-9.]*% .*full/ {print substr($3, 1, length($3)-1)}'); \
+ echo "SCC layer is $FULL% full."; \
+ rm -rf "${INSTALL_PATH_TOMCAT}"; \
+ if [ -d "/opt/java/.scc" ]; then \
+ chmod -R 0777 /opt/java/.scc; \
+ fi; \
+ \
+ echo "SCC generation phase completed";
+
+ENV OPENJ9_JAVA_OPTIONS="-Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,readonly,nonFatal"
+
diff --git a/adoptopenjdk_8-jre-openj9-windowsservercore-1809/Dockerfile.openj9.releases.full b/adoptopenjdk_8-jre-openj9-windowsservercore-1809/Dockerfile.openj9.releases.full
index 11edf8f..1e463ce 100644
--- a/adoptopenjdk_8-jre-openj9-windowsservercore-1809/Dockerfile.openj9.releases.full
+++ b/adoptopenjdk_8-jre-openj9-windowsservercore-1809/Dockerfile.openj9.releases.full
@@ -22,13 +22,13 @@ FROM mcr.microsoft.com/windows/servercore:1809
# $ProgressPreference: https://github.com/PowerShell/PowerShell/issues/2138#issuecomment-251261324
SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"]
-ENV JAVA_VERSION jdk8u262-b10_openj9-0.21.0
+ENV JAVA_VERSION jdk8u265-b01_openj9-0.21.0
-RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u262-b10_openj9-0.21.0/OpenJDK8U-jre_x64_windows_openj9_8u262b10_openj9-0.21.0.msi ...'); \
+RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u265-b01_openj9-0.21.0/OpenJDK8U-jre_x64_windows_openj9_8u265b01_openj9-0.21.0.msi ...'); \
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; \
- wget https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u262-b10_openj9-0.21.0/OpenJDK8U-jre_x64_windows_openj9_8u262b10_openj9-0.21.0.msi -O 'openjdk.msi'; \
- Write-Host ('Verifying sha256 (cfa3f17ea264303f1bea55391a10ce9fcfceff2653161c00fd96f84f2e7dcf63) ...'); \
- if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne 'cfa3f17ea264303f1bea55391a10ce9fcfceff2653161c00fd96f84f2e7dcf63') { \
+ wget https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u265-b01_openj9-0.21.0/OpenJDK8U-jre_x64_windows_openj9_8u265b01_openj9-0.21.0.msi -O 'openjdk.msi'; \
+ Write-Host ('Verifying sha256 (6685611c930761f77f9499de8c992d67859887183e72aa67f3724dc81d3e2472) ...'); \
+ if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne '6685611c930761f77f9499de8c992d67859887183e72aa67f3724dc81d3e2472') { \
Write-Host 'FAILED!'; \
exit 1; \
}; \
@@ -41,4 +41,4 @@ RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk8-binaries/r
Remove-Item -Path C:\temp -Recurse | Out-Null; \
Write-Host 'Removing openjdk.msi ...'; \
Remove-Item openjdk.msi -Force
-ENV JAVA_TOOL_OPTIONS="-XX:+IgnoreUnrecognizedVMOptions -XX:+UseContainerSupport -XX:+IdleTuningCompactOnIdle -XX:+IdleTuningGcOnIdle"
+ENV JAVA_TOOL_OPTIONS="-XX:+IgnoreUnrecognizedVMOptions -XX:+IdleTuningGcOnIdle"
diff --git a/adoptopenjdk_8-jre-openj9-windowsservercore-ltsc2016/Dockerfile.openj9.releases.full b/adoptopenjdk_8-jre-openj9-windowsservercore-ltsc2016/Dockerfile.openj9.releases.full
index 8e2cbf9..da154b2 100644
--- a/adoptopenjdk_8-jre-openj9-windowsservercore-ltsc2016/Dockerfile.openj9.releases.full
+++ b/adoptopenjdk_8-jre-openj9-windowsservercore-ltsc2016/Dockerfile.openj9.releases.full
@@ -22,13 +22,13 @@ FROM mcr.microsoft.com/windows/servercore:ltsc2016
# $ProgressPreference: https://github.com/PowerShell/PowerShell/issues/2138#issuecomment-251261324
SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"]
-ENV JAVA_VERSION jdk8u262-b10_openj9-0.21.0
+ENV JAVA_VERSION jdk8u265-b01_openj9-0.21.0
-RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u262-b10_openj9-0.21.0/OpenJDK8U-jre_x64_windows_openj9_8u262b10_openj9-0.21.0.msi ...'); \
+RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u265-b01_openj9-0.21.0/OpenJDK8U-jre_x64_windows_openj9_8u265b01_openj9-0.21.0.msi ...'); \
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; \
- wget https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u262-b10_openj9-0.21.0/OpenJDK8U-jre_x64_windows_openj9_8u262b10_openj9-0.21.0.msi -O 'openjdk.msi'; \
- Write-Host ('Verifying sha256 (cfa3f17ea264303f1bea55391a10ce9fcfceff2653161c00fd96f84f2e7dcf63) ...'); \
- if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne 'cfa3f17ea264303f1bea55391a10ce9fcfceff2653161c00fd96f84f2e7dcf63') { \
+ wget https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u265-b01_openj9-0.21.0/OpenJDK8U-jre_x64_windows_openj9_8u265b01_openj9-0.21.0.msi -O 'openjdk.msi'; \
+ Write-Host ('Verifying sha256 (6685611c930761f77f9499de8c992d67859887183e72aa67f3724dc81d3e2472) ...'); \
+ if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne '6685611c930761f77f9499de8c992d67859887183e72aa67f3724dc81d3e2472') { \
Write-Host 'FAILED!'; \
exit 1; \
}; \
@@ -41,4 +41,4 @@ RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk8-binaries/r
Remove-Item -Path C:\temp -Recurse | Out-Null; \
Write-Host 'Removing openjdk.msi ...'; \
Remove-Item openjdk.msi -Force
-ENV JAVA_TOOL_OPTIONS="-XX:+IgnoreUnrecognizedVMOptions -XX:+UseContainerSupport -XX:+IdleTuningCompactOnIdle -XX:+IdleTuningGcOnIdle"
+ENV JAVA_TOOL_OPTIONS="-XX:+IgnoreUnrecognizedVMOptions -XX:+IdleTuningGcOnIdle"
diff --git a/adoptopenjdk_8-openj9-bionic/Dockerfile.openj9.releases.full b/adoptopenjdk_8-openj9-bionic/Dockerfile.openj9.releases.full
index d09a5a0..cb3615c 100644
--- a/adoptopenjdk_8-openj9-bionic/Dockerfile.openj9.releases.full
+++ b/adoptopenjdk_8-openj9-bionic/Dockerfile.openj9.releases.full
@@ -17,7 +17,7 @@
# limitations under the License.
#
-FROM ubuntu:18.04
+FROM ubuntu:20.04
ENV LANG='en_US.UTF-8' LANGUAGE='en_US:en' LC_ALL='en_US.UTF-8'
@@ -27,22 +27,22 @@ RUN apt-get update \
&& locale-gen en_US.UTF-8 \
&& rm -rf /var/lib/apt/lists/*
-ENV JAVA_VERSION jdk8u262-b10_openj9-0.21.0
+ENV JAVA_VERSION jdk8u265-b01_openj9-0.21.0
RUN set -eux; \
ARCH="$(dpkg --print-architecture)"; \
case "${ARCH}" in \
ppc64el|ppc64le) \
- ESUM='8659c84c5c5d94ffed4789f06f2be401e59020b83e95fd45e71992f425483a13'; \
- BINARY_URL='https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u262-b10_openj9-0.21.0/OpenJDK8U-jdk_ppc64le_linux_openj9_8u262b10_openj9-0.21.0.tar.gz'; \
+ ESUM='ad78af32749b40f9f1dcc7ba23aa5e0ac0e7b63edd355d56e766a04d7ab3b60c'; \
+ BINARY_URL='https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u265-b01_openj9-0.21.0/OpenJDK8U-jdk_ppc64le_linux_openj9_8u265b01_openj9-0.21.0.tar.gz'; \
;; \
s390x) \
- ESUM='37fe91840b1d8fa98bc6a859ef29b28e0b2187cd926c9d58743f7022640f8d8e'; \
- BINARY_URL='https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u262-b10_openj9-0.21.0/OpenJDK8U-jdk_s390x_linux_openj9_8u262b10_openj9-0.21.0.tar.gz'; \
+ ESUM='54b9dbcf9f221a0c2ed469b3b5828b56b2cf22fbbf61f0b462b4a9db0737f7f7'; \
+ BINARY_URL='https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u265-b01_openj9-0.21.0/OpenJDK8U-jdk_s390x_linux_openj9_8u265b01_openj9-0.21.0.tar.gz'; \
;; \
amd64|x86_64) \
- ESUM='bdeab95a04462ae48df1dc1c53c833f86bfa34bd3a86c65c7adad7c096a1dbce'; \
- BINARY_URL='https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u262-b10_openj9-0.21.0/OpenJDK8U-jdk_x64_linux_openj9_8u262b10_openj9-0.21.0.tar.gz'; \
+ ESUM='88ff739005cbb012f3ee73d426bd75810ce7de551d08e555475a261d57e3ecbf'; \
+ BINARY_URL='https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u265-b01_openj9-0.21.0/OpenJDK8U-jdk_x64_linux_openj9_8u265b01_openj9-0.21.0.tar.gz'; \
;; \
*) \
echo "Unsupported arch: ${ARCH}"; \
@@ -58,4 +58,65 @@ RUN set -eux; \
ENV JAVA_HOME=/opt/java/openjdk \
PATH="/opt/java/openjdk/bin:$PATH"
-ENV JAVA_TOOL_OPTIONS="-XX:+IgnoreUnrecognizedVMOptions -XX:+UseContainerSupport -XX:+IdleTuningCompactOnIdle -XX:+IdleTuningGcOnIdle"
+ENV JAVA_TOOL_OPTIONS="-XX:+IgnoreUnrecognizedVMOptions -XX:+IdleTuningGcOnIdle"
+
+# Create OpenJ9 SharedClassCache (SCC) for bootclasses to improve the java startup.
+# Downloads and runs tomcat to generate SCC for bootclasses at /opt/java/.scc/openj9_system_scc
+# Does a dry-run and calculates the optimal cache size and recreates the cache with the appropriate size.
+# With SCC, OpenJ9 startup is improved ~50% with an increase in image size of ~14MB
+# Application classes can be create a separate cache layer with this as the base for further startup improvement
+
+RUN set -eux; \
+ unset OPENJ9_JAVA_OPTIONS; \
+ SCC_SIZE="50m"; \
+ SCC_GEN_RUNS_COUNT=3; \
+ DOWNLOAD_PATH_TOMCAT=/tmp/tomcat; \
+ INSTALL_PATH_TOMCAT=/opt/tomcat-home; \
+ TOMCAT_CHECKSUM="0db27185d9fc3174f2c670f814df3dda8a008b89d1a38a5d96cbbe119767ebfb1cf0bce956b27954aee9be19c4a7b91f2579d967932207976322033a86075f98"; \
+ TOMCAT_DWNLD_URL="https://archive.apache.org/dist/tomcat/tomcat-9/v9.0.35/bin/apache-tomcat-9.0.35.tar.gz"; \
+ \
+ mkdir -p "${DOWNLOAD_PATH_TOMCAT}" "${INSTALL_PATH_TOMCAT}"; \
+ curl -LfsSo "${DOWNLOAD_PATH_TOMCAT}"/tomcat.tar.gz "${TOMCAT_DWNLD_URL}"; \
+ echo "${TOMCAT_CHECKSUM} *${DOWNLOAD_PATH_TOMCAT}/tomcat.tar.gz" | sha512sum -c -; \
+ tar -xf "${DOWNLOAD_PATH_TOMCAT}"/tomcat.tar.gz -C "${INSTALL_PATH_TOMCAT}" --strip-components=1; \
+ rm -rf "${DOWNLOAD_PATH_TOMCAT}"; \
+ \
+ java -Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal,createLayer -Xscmx$SCC_SIZE -version; \
+ export OPENJ9_JAVA_OPTIONS="-Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal"; \
+ for i in $(seq 0 $SCC_GEN_RUNS_COUNT); \
+ do \
+ "${INSTALL_PATH_TOMCAT}"/bin/startup.sh; \
+ sleep 5; \
+ "${INSTALL_PATH_TOMCAT}"/bin/shutdown.sh; \
+ sleep 5; \
+ done; \
+ \
+ FULL=$( (java -Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,printallStats 2>&1 || true) | awk '/^Cache is [0-9.]*% .*full/ {print substr($3, 1, length($3)-1)}'); \
+ DST_CACHE=$(java -Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,destroy 2>&1 || true); \
+ SCC_SIZE=$(echo $SCC_SIZE | sed 's/.$//'); \
+ SCC_SIZE=$(awk "BEGIN {print int($SCC_SIZE * $FULL / 100.0)}"); \
+ [ "${SCC_SIZE}" -eq 0 ] && SCC_SIZE=1; \
+ SCC_SIZE="${SCC_SIZE}m"; \
+ java -Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal,createLayer -Xscmx$SCC_SIZE -version; \
+ unset OPENJ9_JAVA_OPTIONS; \
+ \
+ export OPENJ9_JAVA_OPTIONS="-Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal"; \
+ for i in $(seq 0 $SCC_GEN_RUNS_COUNT); \
+ do \
+ "${INSTALL_PATH_TOMCAT}"/bin/startup.sh; \
+ sleep 5; \
+ "${INSTALL_PATH_TOMCAT}"/bin/shutdown.sh; \
+ sleep 5; \
+ done; \
+ \
+ FULL=$( (java -Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,printallStats 2>&1 || true) | awk '/^Cache is [0-9.]*% .*full/ {print substr($3, 1, length($3)-1)}'); \
+ echo "SCC layer is $FULL% full."; \
+ rm -rf "${INSTALL_PATH_TOMCAT}"; \
+ if [ -d "/opt/java/.scc" ]; then \
+ chmod -R 0777 /opt/java/.scc; \
+ fi; \
+ \
+ echo "SCC generation phase completed";
+
+ENV OPENJ9_JAVA_OPTIONS="-Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,readonly,nonFatal"
+
diff --git a/adoptopenjdk_8-openj9-windowsservercore-1809/Dockerfile.openj9.releases.full b/adoptopenjdk_8-openj9-windowsservercore-1809/Dockerfile.openj9.releases.full
index 640e854..2549894 100644
--- a/adoptopenjdk_8-openj9-windowsservercore-1809/Dockerfile.openj9.releases.full
+++ b/adoptopenjdk_8-openj9-windowsservercore-1809/Dockerfile.openj9.releases.full
@@ -22,13 +22,13 @@ FROM mcr.microsoft.com/windows/servercore:1809
# $ProgressPreference: https://github.com/PowerShell/PowerShell/issues/2138#issuecomment-251261324
SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"]
-ENV JAVA_VERSION jdk8u262-b10_openj9-0.21.0
+ENV JAVA_VERSION jdk8u265-b01_openj9-0.21.0
-RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u262-b10_openj9-0.21.0/OpenJDK8U-jdk_x64_windows_openj9_8u262b10_openj9-0.21.0.msi ...'); \
+RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u265-b01_openj9-0.21.0/OpenJDK8U-jdk_x64_windows_openj9_8u265b01_openj9-0.21.0.msi ...'); \
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; \
- wget https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u262-b10_openj9-0.21.0/OpenJDK8U-jdk_x64_windows_openj9_8u262b10_openj9-0.21.0.msi -O 'openjdk.msi'; \
- Write-Host ('Verifying sha256 (824f32604bee0469d9dac5208dc8a025a142d95c53d838eab753bda619d46614) ...'); \
- if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne '824f32604bee0469d9dac5208dc8a025a142d95c53d838eab753bda619d46614') { \
+ wget https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u265-b01_openj9-0.21.0/OpenJDK8U-jdk_x64_windows_openj9_8u265b01_openj9-0.21.0.msi -O 'openjdk.msi'; \
+ Write-Host ('Verifying sha256 (7e766cba0e9712be33a6be2412a8f58cc2daa813512f90e58d7ab2ebceed4357) ...'); \
+ if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne '7e766cba0e9712be33a6be2412a8f58cc2daa813512f90e58d7ab2ebceed4357') { \
Write-Host 'FAILED!'; \
exit 1; \
}; \
@@ -41,4 +41,4 @@ RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk8-binaries/r
Remove-Item -Path C:\temp -Recurse | Out-Null; \
Write-Host 'Removing openjdk.msi ...'; \
Remove-Item openjdk.msi -Force
-ENV JAVA_TOOL_OPTIONS="-XX:+IgnoreUnrecognizedVMOptions -XX:+UseContainerSupport -XX:+IdleTuningCompactOnIdle -XX:+IdleTuningGcOnIdle"
+ENV JAVA_TOOL_OPTIONS="-XX:+IgnoreUnrecognizedVMOptions -XX:+IdleTuningGcOnIdle"
diff --git a/adoptopenjdk_8-openj9-windowsservercore-ltsc2016/Dockerfile.openj9.releases.full b/adoptopenjdk_8-openj9-windowsservercore-ltsc2016/Dockerfile.openj9.releases.full
index 6d86a27..a2b57bf 100644
--- a/adoptopenjdk_8-openj9-windowsservercore-ltsc2016/Dockerfile.openj9.releases.full
+++ b/adoptopenjdk_8-openj9-windowsservercore-ltsc2016/Dockerfile.openj9.releases.full
@@ -22,13 +22,13 @@ FROM mcr.microsoft.com/windows/servercore:ltsc2016
# $ProgressPreference: https://github.com/PowerShell/PowerShell/issues/2138#issuecomment-251261324
SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"]
-ENV JAVA_VERSION jdk8u262-b10_openj9-0.21.0
+ENV JAVA_VERSION jdk8u265-b01_openj9-0.21.0
-RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u262-b10_openj9-0.21.0/OpenJDK8U-jdk_x64_windows_openj9_8u262b10_openj9-0.21.0.msi ...'); \
+RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u265-b01_openj9-0.21.0/OpenJDK8U-jdk_x64_windows_openj9_8u265b01_openj9-0.21.0.msi ...'); \
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; \
- wget https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u262-b10_openj9-0.21.0/OpenJDK8U-jdk_x64_windows_openj9_8u262b10_openj9-0.21.0.msi -O 'openjdk.msi'; \
- Write-Host ('Verifying sha256 (824f32604bee0469d9dac5208dc8a025a142d95c53d838eab753bda619d46614) ...'); \
- if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne '824f32604bee0469d9dac5208dc8a025a142d95c53d838eab753bda619d46614') { \
+ wget https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u265-b01_openj9-0.21.0/OpenJDK8U-jdk_x64_windows_openj9_8u265b01_openj9-0.21.0.msi -O 'openjdk.msi'; \
+ Write-Host ('Verifying sha256 (7e766cba0e9712be33a6be2412a8f58cc2daa813512f90e58d7ab2ebceed4357) ...'); \
+ if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne '7e766cba0e9712be33a6be2412a8f58cc2daa813512f90e58d7ab2ebceed4357') { \
Write-Host 'FAILED!'; \
exit 1; \
}; \
@@ -41,4 +41,4 @@ RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk8-binaries/r
Remove-Item -Path C:\temp -Recurse | Out-Null; \
Write-Host 'Removing openjdk.msi ...'; \
Remove-Item openjdk.msi -Force
-ENV JAVA_TOOL_OPTIONS="-XX:+IgnoreUnrecognizedVMOptions -XX:+UseContainerSupport -XX:+IdleTuningCompactOnIdle -XX:+IdleTuningGcOnIdle"
+ENV JAVA_TOOL_OPTIONS="-XX:+IgnoreUnrecognizedVMOptions -XX:+IdleTuningGcOnIdle"
diff --git a/adoptopenjdk_hotspot-bionic/Dockerfile.hotspot.releases.full b/adoptopenjdk_hotspot-bionic/Dockerfile.hotspot.releases.full
index b9cfc0c..7990f08 100644
--- a/adoptopenjdk_hotspot-bionic/Dockerfile.hotspot.releases.full
+++ b/adoptopenjdk_hotspot-bionic/Dockerfile.hotspot.releases.full
@@ -17,7 +17,7 @@
# limitations under the License.
#
-FROM ubuntu:18.04
+FROM ubuntu:20.04
ENV LANG='en_US.UTF-8' LANGUAGE='en_US:en' LC_ALL='en_US.UTF-8'
@@ -27,30 +27,30 @@ RUN apt-get update \
&& locale-gen en_US.UTF-8 \
&& rm -rf /var/lib/apt/lists/*
-ENV JAVA_VERSION jdk-14.0.2+12
+ENV JAVA_VERSION jdk-15+36
RUN set -eux; \
ARCH="$(dpkg --print-architecture)"; \
case "${ARCH}" in \
aarch64|arm64) \
- ESUM='ee87e9f03b1fbe6f328429b78fe1a9f44900026d220c90dfd747fe0bcd62d904'; \
- BINARY_URL='https://github.com/AdoptOpenJDK/openjdk14-binaries/releases/download/jdk-14.0.2%2B12/OpenJDK14U-jdk_aarch64_linux_hotspot_14.0.2_12.tar.gz'; \
+ ESUM='44c8cd580f6e828f8fbb431a59b3c8f694da8c75adb7c311f7b6b9ed81c19c54'; \
+ BINARY_URL='https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15%2B36/OpenJDK15U-jdk_aarch64_linux_hotspot_15_36.tar.gz'; \
;; \
armhf|armv7l) \
- ESUM='65f193496c6977ba7aed1563edc4b5be091b5ff03e3d790074bb4e389a034b36'; \
- BINARY_URL='https://github.com/AdoptOpenJDK/openjdk14-binaries/releases/download/jdk-14.0.2%2B12/OpenJDK14U-jdk_arm_linux_hotspot_14.0.2_12.tar.gz'; \
+ ESUM='d7de37fee91fe098791d48ea2a880cf2789949665d6bc9a232380738f99c16a9'; \
+ BINARY_URL='https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15%2B36/OpenJDK15U-jdk_arm_linux_hotspot_15_36.tar.gz'; \
;; \
ppc64el|ppc64le) \
- ESUM='465a3b8e931896b8d95e452d479615c4bf543535c05b6ea246323ae114e67d7d'; \
- BINARY_URL='https://github.com/AdoptOpenJDK/openjdk14-binaries/releases/download/jdk-14.0.2%2B12/OpenJDK14U-jdk_ppc64le_linux_hotspot_14.0.2_12.tar.gz'; \
+ ESUM='537eb289a0fc56915078ff92616574b00b8ad0119543f5e4a817ede0e52c4030'; \
+ BINARY_URL='https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15%2B36/OpenJDK15U-jdk_ppc64le_linux_hotspot_15_36.tar.gz'; \
;; \
s390x) \
- ESUM='7d27aea30e359cf0bb561f8dcca6f4591dbc3ae831981f8a19aa367d31a9709b'; \
- BINARY_URL='https://github.com/AdoptOpenJDK/openjdk14-binaries/releases/download/jdk-14.0.2%2B12/OpenJDK14U-jdk_s390x_linux_hotspot_14.0.2_12.tar.gz'; \
+ ESUM='3e238ea4924f4dd2a8167c911a99b96ffdfb51e12f3969cffbdc0791a58d0cf2'; \
+ BINARY_URL='https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15%2B36/OpenJDK15U-jdk_s390x_linux_hotspot_15_36.tar.gz'; \
;; \
amd64|x86_64) \
- ESUM='7d5ee7e06909b8a99c0d029f512f67b092597aa5b0e78c109bd59405bbfa74fe'; \
- BINARY_URL='https://github.com/AdoptOpenJDK/openjdk14-binaries/releases/download/jdk-14.0.2%2B12/OpenJDK14U-jdk_x64_linux_hotspot_14.0.2_12.tar.gz'; \
+ ESUM='c198593d1b5188ee3570e2ca33c3bc004aaefbda2c11e68e58ae7296cf5c3982'; \
+ BINARY_URL='https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15%2B36/OpenJDK15U-jdk_x64_linux_hotspot_15_36.tar.gz'; \
;; \
*) \
echo "Unsupported arch: ${ARCH}"; \
diff --git a/adoptopenjdk_hotspot-windowsservercore-1809/Dockerfile.hotspot.releases.full b/adoptopenjdk_hotspot-windowsservercore-1809/Dockerfile.hotspot.releases.full
index 89a3af2..e0c0d34 100644
--- a/adoptopenjdk_hotspot-windowsservercore-1809/Dockerfile.hotspot.releases.full
+++ b/adoptopenjdk_hotspot-windowsservercore-1809/Dockerfile.hotspot.releases.full
@@ -22,13 +22,13 @@ FROM mcr.microsoft.com/windows/servercore:1809
# $ProgressPreference: https://github.com/PowerShell/PowerShell/issues/2138#issuecomment-251261324
SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"]
-ENV JAVA_VERSION jdk-14.0.2+12
+ENV JAVA_VERSION jdk-15+36
-RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk14-binaries/releases/download/jdk-14.0.2%2B12/OpenJDK14U-jdk_x64_windows_hotspot_14.0.2_12.msi ...'); \
+RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15%2B36/OpenJDK15U-jdk_x64_windows_hotspot_15_36.msi ...'); \
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; \
- wget https://github.com/AdoptOpenJDK/openjdk14-binaries/releases/download/jdk-14.0.2%2B12/OpenJDK14U-jdk_x64_windows_hotspot_14.0.2_12.msi -O 'openjdk.msi'; \
- Write-Host ('Verifying sha256 (9cbd03600e58ad8d2383c15e596396fbdfbc9655ba0019f5bc74c910e4082c7c) ...'); \
- if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne '9cbd03600e58ad8d2383c15e596396fbdfbc9655ba0019f5bc74c910e4082c7c') { \
+ wget https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15%2B36/OpenJDK15U-jdk_x64_windows_hotspot_15_36.msi -O 'openjdk.msi'; \
+ Write-Host ('Verifying sha256 (e2ac92e686e52d8c76a831319ad721547d811d2e2e9b3a8fae47420652beb930) ...'); \
+ if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne 'e2ac92e686e52d8c76a831319ad721547d811d2e2e9b3a8fae47420652beb930') { \
Write-Host 'FAILED!'; \
exit 1; \
}; \
diff --git a/adoptopenjdk_hotspot-windowsservercore-ltsc2016/Dockerfile.hotspot.releases.full b/adoptopenjdk_hotspot-windowsservercore-ltsc2016/Dockerfile.hotspot.releases.full
index b71b65c..d288c3c 100644
--- a/adoptopenjdk_hotspot-windowsservercore-ltsc2016/Dockerfile.hotspot.releases.full
+++ b/adoptopenjdk_hotspot-windowsservercore-ltsc2016/Dockerfile.hotspot.releases.full
@@ -22,13 +22,13 @@ FROM mcr.microsoft.com/windows/servercore:ltsc2016
# $ProgressPreference: https://github.com/PowerShell/PowerShell/issues/2138#issuecomment-251261324
SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"]
-ENV JAVA_VERSION jdk-14.0.2+12
+ENV JAVA_VERSION jdk-15+36
-RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk14-binaries/releases/download/jdk-14.0.2%2B12/OpenJDK14U-jdk_x64_windows_hotspot_14.0.2_12.msi ...'); \
+RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15%2B36/OpenJDK15U-jdk_x64_windows_hotspot_15_36.msi ...'); \
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; \
- wget https://github.com/AdoptOpenJDK/openjdk14-binaries/releases/download/jdk-14.0.2%2B12/OpenJDK14U-jdk_x64_windows_hotspot_14.0.2_12.msi -O 'openjdk.msi'; \
- Write-Host ('Verifying sha256 (9cbd03600e58ad8d2383c15e596396fbdfbc9655ba0019f5bc74c910e4082c7c) ...'); \
- if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne '9cbd03600e58ad8d2383c15e596396fbdfbc9655ba0019f5bc74c910e4082c7c') { \
+ wget https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15%2B36/OpenJDK15U-jdk_x64_windows_hotspot_15_36.msi -O 'openjdk.msi'; \
+ Write-Host ('Verifying sha256 (e2ac92e686e52d8c76a831319ad721547d811d2e2e9b3a8fae47420652beb930) ...'); \
+ if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne 'e2ac92e686e52d8c76a831319ad721547d811d2e2e9b3a8fae47420652beb930') { \
Write-Host 'FAILED!'; \
exit 1; \
}; \
diff --git a/adoptopenjdk_openj9-bionic/Dockerfile.openj9.releases.full b/adoptopenjdk_openj9-bionic/Dockerfile.openj9.releases.full
index eff0c96..3a3e7b0 100644
--- a/adoptopenjdk_openj9-bionic/Dockerfile.openj9.releases.full
+++ b/adoptopenjdk_openj9-bionic/Dockerfile.openj9.releases.full
@@ -17,7 +17,7 @@
# limitations under the License.
#
-FROM ubuntu:18.04
+FROM ubuntu:20.04
ENV LANG='en_US.UTF-8' LANGUAGE='en_US:en' LC_ALL='en_US.UTF-8'
@@ -27,22 +27,22 @@ RUN apt-get update \
&& locale-gen en_US.UTF-8 \
&& rm -rf /var/lib/apt/lists/*
-ENV JAVA_VERSION jdk-14.0.2+12_openj9-0.21.0
+ENV JAVA_VERSION jdk-15+36_openj9-0.22.0
RUN set -eux; \
ARCH="$(dpkg --print-architecture)"; \
case "${ARCH}" in \
ppc64el|ppc64le) \
- ESUM='177fd161ae14df92203d70cd618559daf889ec0c172d6ee615859352f68a2371'; \
- BINARY_URL='https://github.com/AdoptOpenJDK/openjdk14-binaries/releases/download/jdk-14.0.2%2B12_openj9-0.21.0/OpenJDK14U-jdk_ppc64le_linux_openj9_14.0.2_12_openj9-0.21.0.tar.gz'; \
+ ESUM='88058a977c63382b59b7aaaec08d656490494b2c9575ae787c873de1b2baeaca'; \
+ BINARY_URL='https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15%2B36_openj9-0.22.0/OpenJDK15U-jdk_ppc64le_linux_openj9_15_36_openj9-0.22.0.tar.gz'; \
;; \
s390x) \
- ESUM='4757dc2009a0c31604be4631e02a5a3aac53ebe9b6a2046ae8995ec0e453dc1a'; \
- BINARY_URL='https://github.com/AdoptOpenJDK/openjdk14-binaries/releases/download/jdk-14.0.2%2B12_openj9-0.21.0/OpenJDK14U-jdk_s390x_linux_openj9_14.0.2_12_openj9-0.21.0.tar.gz'; \
+ ESUM='1cb8366199635c82a58b2619483f84318e9ead5b542b52ffc355fb561adb0f14'; \
+ BINARY_URL='https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15%2B36_openj9-0.22.0/OpenJDK15U-jdk_s390x_linux_openj9_15_36_openj9-0.22.0.tar.gz'; \
;; \
amd64|x86_64) \
- ESUM='306f7138cdb65daaf2596ec36cafbde72088144c83b2e964f0193662e6caf3be'; \
- BINARY_URL='https://github.com/AdoptOpenJDK/openjdk14-binaries/releases/download/jdk-14.0.2%2B12_openj9-0.21.0/OpenJDK14U-jdk_x64_linux_openj9_14.0.2_12_openj9-0.21.0.tar.gz'; \
+ ESUM='3f016e23a1fba0b1d29f03415c36d54a8a33480ce1d238fbef09d38c5a69eff7'; \
+ BINARY_URL='https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15%2B36_openj9-0.22.0/OpenJDK15U-jdk_x64_linux_openj9_15_36_openj9-0.22.0.tar.gz'; \
;; \
*) \
echo "Unsupported arch: ${ARCH}"; \
@@ -58,5 +58,66 @@ RUN set -eux; \
ENV JAVA_HOME=/opt/java/openjdk \
PATH="/opt/java/openjdk/bin:$PATH"
-ENV JAVA_TOOL_OPTIONS="-XX:+IgnoreUnrecognizedVMOptions -XX:+UseContainerSupport -XX:+IdleTuningCompactOnIdle -XX:+IdleTuningGcOnIdle"
+ENV JAVA_TOOL_OPTIONS="-XX:+IgnoreUnrecognizedVMOptions -XX:+IdleTuningGcOnIdle"
+
+# Create OpenJ9 SharedClassCache (SCC) for bootclasses to improve the java startup.
+# Downloads and runs tomcat to generate SCC for bootclasses at /opt/java/.scc/openj9_system_scc
+# Does a dry-run and calculates the optimal cache size and recreates the cache with the appropriate size.
+# With SCC, OpenJ9 startup is improved ~50% with an increase in image size of ~14MB
+# Application classes can be create a separate cache layer with this as the base for further startup improvement
+
+RUN set -eux; \
+ unset OPENJ9_JAVA_OPTIONS; \
+ SCC_SIZE="50m"; \
+ SCC_GEN_RUNS_COUNT=3; \
+ DOWNLOAD_PATH_TOMCAT=/tmp/tomcat; \
+ INSTALL_PATH_TOMCAT=/opt/tomcat-home; \
+ TOMCAT_CHECKSUM="0db27185d9fc3174f2c670f814df3dda8a008b89d1a38a5d96cbbe119767ebfb1cf0bce956b27954aee9be19c4a7b91f2579d967932207976322033a86075f98"; \
+ TOMCAT_DWNLD_URL="https://archive.apache.org/dist/tomcat/tomcat-9/v9.0.35/bin/apache-tomcat-9.0.35.tar.gz"; \
+ \
+ mkdir -p "${DOWNLOAD_PATH_TOMCAT}" "${INSTALL_PATH_TOMCAT}"; \
+ curl -LfsSo "${DOWNLOAD_PATH_TOMCAT}"/tomcat.tar.gz "${TOMCAT_DWNLD_URL}"; \
+ echo "${TOMCAT_CHECKSUM} *${DOWNLOAD_PATH_TOMCAT}/tomcat.tar.gz" | sha512sum -c -; \
+ tar -xf "${DOWNLOAD_PATH_TOMCAT}"/tomcat.tar.gz -C "${INSTALL_PATH_TOMCAT}" --strip-components=1; \
+ rm -rf "${DOWNLOAD_PATH_TOMCAT}"; \
+ \
+ java -Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal,createLayer -Xscmx$SCC_SIZE -version; \
+ export OPENJ9_JAVA_OPTIONS="-Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal"; \
+ for i in $(seq 0 $SCC_GEN_RUNS_COUNT); \
+ do \
+ "${INSTALL_PATH_TOMCAT}"/bin/startup.sh; \
+ sleep 5; \
+ "${INSTALL_PATH_TOMCAT}"/bin/shutdown.sh; \
+ sleep 5; \
+ done; \
+ \
+ FULL=$( (java -Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,printallStats 2>&1 || true) | awk '/^Cache is [0-9.]*% .*full/ {print substr($3, 1, length($3)-1)}'); \
+ DST_CACHE=$(java -Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,destroy 2>&1 || true); \
+ SCC_SIZE=$(echo $SCC_SIZE | sed 's/.$//'); \
+ SCC_SIZE=$(awk "BEGIN {print int($SCC_SIZE * $FULL / 100.0)}"); \
+ [ "${SCC_SIZE}" -eq 0 ] && SCC_SIZE=1; \
+ SCC_SIZE="${SCC_SIZE}m"; \
+ java -Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal,createLayer -Xscmx$SCC_SIZE -version; \
+ unset OPENJ9_JAVA_OPTIONS; \
+ \
+ export OPENJ9_JAVA_OPTIONS="-Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal"; \
+ for i in $(seq 0 $SCC_GEN_RUNS_COUNT); \
+ do \
+ "${INSTALL_PATH_TOMCAT}"/bin/startup.sh; \
+ sleep 5; \
+ "${INSTALL_PATH_TOMCAT}"/bin/shutdown.sh; \
+ sleep 5; \
+ done; \
+ \
+ FULL=$( (java -Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,printallStats 2>&1 || true) | awk '/^Cache is [0-9.]*% .*full/ {print substr($3, 1, length($3)-1)}'); \
+ echo "SCC layer is $FULL% full."; \
+ rm -rf "${INSTALL_PATH_TOMCAT}"; \
+ if [ -d "/opt/java/.scc" ]; then \
+ chmod -R 0777 /opt/java/.scc; \
+ fi; \
+ \
+ echo "SCC generation phase completed";
+
+ENV OPENJ9_JAVA_OPTIONS="-Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,readonly,nonFatal"
+
CMD ["jshell"]
diff --git a/adoptopenjdk_openj9-windowsservercore-1809/Dockerfile.openj9.releases.full b/adoptopenjdk_openj9-windowsservercore-1809/Dockerfile.openj9.releases.full
index 0ba45b0..70d6b68 100644
--- a/adoptopenjdk_openj9-windowsservercore-1809/Dockerfile.openj9.releases.full
+++ b/adoptopenjdk_openj9-windowsservercore-1809/Dockerfile.openj9.releases.full
@@ -22,13 +22,13 @@ FROM mcr.microsoft.com/windows/servercore:1809
# $ProgressPreference: https://github.com/PowerShell/PowerShell/issues/2138#issuecomment-251261324
SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"]
-ENV JAVA_VERSION jdk-14.0.2+12_openj9-0.21.0
+ENV JAVA_VERSION jdk-15+36_openj9-0.22.0
-RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk14-binaries/releases/download/jdk-14.0.2%2B12_openj9-0.21.0/OpenJDK14U-jdk_x64_windows_openj9_14.0.2_12_openj9-0.21.0.msi ...'); \
+RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15%2B36_openj9-0.22.0/OpenJDK15U-jdk_x64_windows_openj9_15_36_openj9-0.22.0.msi ...'); \
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; \
- wget https://github.com/AdoptOpenJDK/openjdk14-binaries/releases/download/jdk-14.0.2%2B12_openj9-0.21.0/OpenJDK14U-jdk_x64_windows_openj9_14.0.2_12_openj9-0.21.0.msi -O 'openjdk.msi'; \
- Write-Host ('Verifying sha256 (2e496ce7ca02f7a380fd1902e06d55d52121bb2eee29b21b8e54ad3e2fd3466e) ...'); \
- if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne '2e496ce7ca02f7a380fd1902e06d55d52121bb2eee29b21b8e54ad3e2fd3466e') { \
+ wget https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15%2B36_openj9-0.22.0/OpenJDK15U-jdk_x64_windows_openj9_15_36_openj9-0.22.0.msi -O 'openjdk.msi'; \
+ Write-Host ('Verifying sha256 (88dd04dc008ff18e09ad158046a650797ff8e5ce0f1880515e359c49f0fddd4e) ...'); \
+ if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne '88dd04dc008ff18e09ad158046a650797ff8e5ce0f1880515e359c49f0fddd4e') { \
Write-Host 'FAILED!'; \
exit 1; \
}; \
@@ -41,5 +41,5 @@ RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk14-binaries/
Remove-Item -Path C:\temp -Recurse | Out-Null; \
Write-Host 'Removing openjdk.msi ...'; \
Remove-Item openjdk.msi -Force
-ENV JAVA_TOOL_OPTIONS="-XX:+IgnoreUnrecognizedVMOptions -XX:+UseContainerSupport -XX:+IdleTuningCompactOnIdle -XX:+IdleTuningGcOnIdle"
+ENV JAVA_TOOL_OPTIONS="-XX:+IgnoreUnrecognizedVMOptions -XX:+IdleTuningGcOnIdle"
CMD ["jshell"]
diff --git a/adoptopenjdk_openj9-windowsservercore-ltsc2016/Dockerfile.openj9.releases.full b/adoptopenjdk_openj9-windowsservercore-ltsc2016/Dockerfile.openj9.releases.full
index 4a658d9..8c4a975 100644
--- a/adoptopenjdk_openj9-windowsservercore-ltsc2016/Dockerfile.openj9.releases.full
+++ b/adoptopenjdk_openj9-windowsservercore-ltsc2016/Dockerfile.openj9.releases.full
@@ -22,13 +22,13 @@ FROM mcr.microsoft.com/windows/servercore:ltsc2016
# $ProgressPreference: https://github.com/PowerShell/PowerShell/issues/2138#issuecomment-251261324
SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"]
-ENV JAVA_VERSION jdk-14.0.2+12_openj9-0.21.0
+ENV JAVA_VERSION jdk-15+36_openj9-0.22.0
-RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk14-binaries/releases/download/jdk-14.0.2%2B12_openj9-0.21.0/OpenJDK14U-jdk_x64_windows_openj9_14.0.2_12_openj9-0.21.0.msi ...'); \
+RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15%2B36_openj9-0.22.0/OpenJDK15U-jdk_x64_windows_openj9_15_36_openj9-0.22.0.msi ...'); \
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; \
- wget https://github.com/AdoptOpenJDK/openjdk14-binaries/releases/download/jdk-14.0.2%2B12_openj9-0.21.0/OpenJDK14U-jdk_x64_windows_openj9_14.0.2_12_openj9-0.21.0.msi -O 'openjdk.msi'; \
- Write-Host ('Verifying sha256 (2e496ce7ca02f7a380fd1902e06d55d52121bb2eee29b21b8e54ad3e2fd3466e) ...'); \
- if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne '2e496ce7ca02f7a380fd1902e06d55d52121bb2eee29b21b8e54ad3e2fd3466e') { \
+ wget https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/download/jdk-15%2B36_openj9-0.22.0/OpenJDK15U-jdk_x64_windows_openj9_15_36_openj9-0.22.0.msi -O 'openjdk.msi'; \
+ Write-Host ('Verifying sha256 (88dd04dc008ff18e09ad158046a650797ff8e5ce0f1880515e359c49f0fddd4e) ...'); \
+ if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne '88dd04dc008ff18e09ad158046a650797ff8e5ce0f1880515e359c49f0fddd4e') { \
Write-Host 'FAILED!'; \
exit 1; \
}; \
@@ -41,5 +41,5 @@ RUN Write-Host ('Downloading https://github.com/AdoptOpenJDK/openjdk14-binaries/
Remove-Item -Path C:\temp -Recurse | Out-Null; \
Write-Host 'Removing openjdk.msi ...'; \
Remove-Item openjdk.msi -Force
-ENV JAVA_TOOL_OPTIONS="-XX:+IgnoreUnrecognizedVMOptions -XX:+UseContainerSupport -XX:+IdleTuningCompactOnIdle -XX:+IdleTuningGcOnIdle"
+ENV JAVA_TOOL_OPTIONS="-XX:+IgnoreUnrecognizedVMOptions -XX:+IdleTuningGcOnIdle"
CMD ["jshell"] |
+ SCC_GEN_RUNS_COUNT=3; \
...
+ for i in $(seq 0 $SCC_GEN_RUNS_COUNT); \
+ do \
+ "${INSTALL_PATH_TOMCAT}"/bin/startup.sh; \
+ sleep 5; \
+ "${INSTALL_PATH_TOMCAT}"/bin/shutdown.sh; \
+ sleep 5; \
+ done; \
...
+ for i in $(seq 0 $SCC_GEN_RUNS_COUNT); \
+ do \
+ "${INSTALL_PATH_TOMCAT}"/bin/startup.sh; \
+ sleep 5; \
+ "${INSTALL_PATH_TOMCAT}"/bin/shutdown.sh; \
+ sleep 5; \
+ done; \ This is going to result in every single build sitting in this build step for at least a full minute without accomplishing much -- please don't forget to spend some time evaluating whether this cache is something that could be pre-computed and hosted alongside the binaries instead of spending/wasting time calculating it downstream (and then it could be more expansive/comprehensive and run other tools as you determine what's the "best" set with the rest of the AdoptOpenJDK project). |
@tianon Thanks for your review, Currently we are planning to achieve something similar to what you have suggested, This Issue talks about different ways to achieve generating cache and populating it into image without taking much time at the build phase. Thanks ! |
@tianon Agreed on the time spent generating the SCC, will try to move this to the build itself. Please note that we will try and target this for the Jan 2021 update. This means that we will continue to use this Dockerfile for the CPU update scheduled for this week. |
File: Dockerfile.hotspot.releases.full | ||
Constraints: windowsservercore-1809 | ||
Constraints: windowsservercore-ltsc2016 | ||
|
||
Tags: 11.0.8_10-jre-hotspot-bionic, 11-jre-hotspot-bionic |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Arg, this isn't based on Ubuntu Bionic anymore (and we didn't catch it). 😞
Unfortunately the update to focal was supposed to have happened after the official release but got merged by mistake, and I didn't catch it :-( . This is getting fixed in AdoptOpenJDK/openjdk-docker#446. Will raise a new PR for that shortly. Sorry for all the inconvenience. |
No description provided.