Update images to Windows 2022
preliminary step for
MODIFY
.github/workflows/pr-smoke-test-servlet-images.yml
.github/workflows/pr-smoke-test-servlet-images.yml
@@ -12,7 +12,7 @@ jobs:
strategy:
matrix:
os:
- - windows-2019
+ - windows-latest
- ubuntu-latest
smoke-test-server:
- jetty
@@ -23,13 +23,13 @@ jobs:
- websphere
- wildfly
exclude:
- - os: windows-2019
+ - os: windows-latest
smoke-test-server: websphere
fail-fast: false
steps:
- name: Support long paths
run: git config --system core.longpaths true
- if: matrix.os == 'windows-2019'
+ if: matrix.os == 'windows-latest'
- uses: actions/checkout@v3
@@ -45,9 +45,9 @@ jobs:
cache-read-only: true
- name: Build Linux docker images
- if: matrix.os != 'windows-2019'
+ if: matrix.os != 'windows-latest'
run: ./gradlew :smoke-tests:images:servlet:buildLinuxTestImages -PsmokeTestServer=${{ matrix.smoke-test-server }}
- name: Build Windows docker images
- if: matrix.os == 'windows-2019'
+ if: matrix.os == 'windows-latest'
run: ./gradlew :smoke-tests:images:servlet:buildWindowsTestImages -PsmokeTestServer=${{ matrix.smoke-test-server }}

MODIFY
.github/workflows/publish-smoke-test-servlet-images.yml
.github/workflows/publish-smoke-test-servlet-images.yml
@@ -18,7 +18,7 @@ jobs:
strategy:
matrix:
os:
- - windows-2019
+ - windows-latest
- ubuntu-latest
smoke-test-server:
- jetty
@@ -29,13 +29,13 @@ jobs:
- websphere
- wildfly
exclude:
- - os: windows-2019
+ - os: windows-latest
smoke-test-server: websphere
fail-fast: false
steps:
- name: Support long paths
run: git config --system core.longpaths true
- if: matrix.os == 'windows-2019'
+ if: matrix.os == 'windows-latest'
- uses: actions/checkout@v3
@@ -62,11 +62,11 @@ jobs:
cache-read-only: ${{ matrix.smoke-test-suite != 'tomcat' }}
- name: Build Linux docker images
- if: matrix.os != 'windows-2019'
+ if: matrix.os != 'windows-latest'
run: ./gradlew :smoke-tests:images:servlet:buildLinuxTestImages pushMatrix -PextraTag=${{ env.TAG }} -PsmokeTestServer=${{ matrix.smoke-test-server }}
- name: Build Windows docker images
- if: matrix.os == 'windows-2019'
+ if: matrix.os == 'windows-latest'
run: ./gradlew :smoke-tests:images:servlet:buildWindowsTestImages pushMatrix -PextraTag=${{ env.TAG }} -PsmokeTestServer=${{ matrix.smoke-test-server }}
open-issue-on-failure:

MODIFY
smoke-tests/images/fake-backend/src/docker/backend/windows.dockerfile
smoke-tests/images/fake-backend/src/docker/backend/windows.dockerfile
-FROM winamd64/openjdk:11.0.11-jdk-windowsservercore-1809
+FROM eclipse-temurin:11-jdk-windowsservercore-ltsc2022
COPY fake-backend.jar /fake-backend.jar
CMD ["java", "-jar", "/fake-backend.jar"]

MODIFY
smoke-tests/images/servlet/build.gradle.kts
smoke-tests/images/servlet/build.gradle.kts
@@ -25,8 +25,7 @@ val targets = mapOf(
ImageTarget(listOf("11.0.7"), listOf("openj9"), listOf("11", "16"), mapOf("sourceVersion" to "11.0.7"), "servlet-5.0")
),
"liberty" to listOf(
- // running configure.sh is failing while building the image with Java 17
- ImageTarget(listOf("20.0.0.12"), listOf("hotspot", "openj9"), listOf("8", "11", "16"), mapOf("release" to "2020-11-11_0736")),
+ ImageTarget(listOf("20.0.0.12"), listOf("hotspot", "openj9"), listOf("8", "11"), mapOf("release" to "2020-11-11_0736")),
// running configure.sh is failing while building the image with Java 19
ImageTarget(listOf("21.0.0.10"), listOf("hotspot"), listOf("8", "11", "17"), mapOf("release" to "2021-09-20_1900")),
ImageTarget(listOf("21.0.0.10"), listOf("openj9"), listOf("8", "11", "16"), mapOf("release" to "2021-09-20_1900"))
@@ -145,7 +144,9 @@ fun configureImage(parentTask: TaskProvider<out Task>, server: String, dockerfil
}
} else if (vm == "openj9") {
if (isWindows) {
- "adoptopenjdk:$jdk-openj9"
+ // ibm-semeru-runtimes doesn't publish windows images
+ // adoptopenjdk is deprecated and doesn't publish Windows 2022 images
+ throw GradleException("Unexpected vm: $vm")
} else {
"ibm-semeru-runtimes:open-$jdk-jdk"
}
@@ -207,6 +208,11 @@ fun createDockerTasks(parentTask: TaskProvider<out Task>, isWindows: Boolean) {
for (version in entry.version) {
for (vm in entry.vm) {
+ if (vm == "openj9" && isWindows) {
+ // ibm-semeru-runtimes doesn't publish windows images
+ // adoptopenjdk is deprecated and doesn't publish Windows 2022 images
+ continue
+ }
for (jdk in entry.jdk) {
if (supportsWindows || !isWindows) {
resultImages.add(configureImage(parentTask, server, dockerfile, version, vm, jdk, warProject, extraArgs, isWindows))

MODIFY
smoke-tests/images/servlet/src/jetty.windows.dockerfile
smoke-tests/images/servlet/src/jetty.windows.dockerfile
ARG jdkImage
# Unzip in a separate container so that zip file layer is not part of final image
-FROM mcr.microsoft.com/windows/servercore:1809 as builder
+FROM mcr.microsoft.com/windows/servercore:ltsc2022 as builder
ARG sourceVersion
ADD https://repo1.maven.org/maven2/org/eclipse/jetty/jetty-home/${sourceVersion}/jetty-home-${sourceVersion}.zip /server.zip
RUN ["powershell", "-Command", "expand-archive -Path /server.zip -DestinationPath /server"]
-FROM ${jdkImage}-windowsservercore-1809
+FROM ${jdkImage}-windowsservercore-ltsc2022
ARG sourceVersion
# Make /server the base directory to simplify all further paths

MODIFY
smoke-tests/images/servlet/src/liberty.windows.dockerfile
smoke-tests/images/servlet/src/liberty.windows.dockerfile
ARG jdkImage
# Unzip in a separate container so that zip file layer is not part of final image
-FROM mcr.microsoft.com/windows/servercore:1809 as builder
+FROM mcr.microsoft.com/windows/servercore:ltsc2022 as builder
ARG version
ARG release
ADD https://public.dhe.ibm.com/ibmdl/export/pub/software/openliberty/runtime/release/${release}/openliberty-${version}.zip /server.zip
RUN ["powershell", "-Command", "expand-archive -Path /server.zip -DestinationPath /server"]
-FROM ${jdkImage}-windowsservercore-1809
+FROM ${jdkImage}-windowsservercore-ltsc2022
# Make /server the base directory to simplify all further paths
COPY --from=builder /server/wlp /server

MODIFY
smoke-tests/images/servlet/src/payara.windows.dockerfile
smoke-tests/images/servlet/src/payara.windows.dockerfile
ARG jdkImage
# Unzip in a separate container so that zip file layer is not part of final image
-FROM mcr.microsoft.com/windows/servercore:1809 as builder
+FROM mcr.microsoft.com/windows/servercore:ltsc2022 as builder
ARG version
ADD https://s3-eu-west-1.amazonaws.com/payara.fish/Payara+Downloads/${version}/payara-${version}.zip /server.zip
RUN ["powershell", "-Command", "expand-archive -Path /server.zip -DestinationPath /server"]
RUN ["powershell", "-Command", "remove-item -Path /server/payara5/glassfish/modules/phonehome-bootstrap.jar"]
-FROM ${jdkImage}-windowsservercore-1809
+FROM ${jdkImage}-windowsservercore-ltsc2022
# Make /server the base directory to simplify all further paths
COPY --from=builder /server/payara5 /server

MODIFY
smoke-tests/images/servlet/src/tomcat.windows.dockerfile
smoke-tests/images/servlet/src/tomcat.windows.dockerfile
ARG jdkImage
# Unzip in a separate container so that zip file layer is not part of final image
-FROM mcr.microsoft.com/windows/servercore:1809 as builder
+FROM mcr.microsoft.com/windows/servercore:ltsc2022 as builder
ARG majorVersion
ARG version
ADD https://archive.apache.org/dist/tomcat/tomcat-${majorVersion}/v${version}/bin/apache-tomcat-${version}-windows-x64.zip /server.zip
RUN ["powershell", "-Command", "expand-archive -Path /server.zip -DestinationPath /server"]
-FROM ${jdkImage}-windowsservercore-1809
+FROM ${jdkImage}-windowsservercore-ltsc2022
ARG version
# Make /server the base directory to simplify all further paths

MODIFY
smoke-tests/images/servlet/src/tomee.windows.dockerfile
smoke-tests/images/servlet/src/tomee.windows.dockerfile
ARG jdkImage
# Unzip in a separate container so that zip file layer is not part of final image
-FROM mcr.microsoft.com/windows/servercore:1809 as builder
+FROM mcr.microsoft.com/windows/servercore:ltsc2022 as builder
ARG version
ADD https://archive.apache.org/dist/tomee/tomee-${version}/apache-tomee-${version}-webprofile.zip /server.zip
RUN ["powershell", "-Command", "expand-archive -Path /server.zip -DestinationPath /server"]
-FROM ${jdkImage}-windowsservercore-1809
+FROM ${jdkImage}-windowsservercore-ltsc2022
ARG version
# Make /server the base directory to simplify all further paths

MODIFY
smoke-tests/images/servlet/src/wildfly.windows.dockerfile
smoke-tests/images/servlet/src/wildfly.windows.dockerfile
ARG jdkImage
# Unzip in a separate container so that zip file layer is not part of final image
-FROM mcr.microsoft.com/windows/servercore:1809 as builder
+FROM mcr.microsoft.com/windows/servercore:ltsc2022 as builder
ARG version
ARG baseDownloadUrl
ADD ${baseDownloadUrl}.zip /server.zip
RUN ["powershell", "-Command", "expand-archive -Path /server.zip -DestinationPath /server"]
-FROM ${jdkImage}-windowsservercore-1809
+FROM ${jdkImage}-windowsservercore-ltsc2022
ARG version
# Make /server the base directory to simplify all further paths

MODIFY
smoke-tests/src/test/groovy/io/opentelemetry/smoketest/LibertySmokeTest.groovy
smoke-tests/src/test/groovy/io/opentelemetry/smoketest/LibertySmokeTest.groovy
@@ -35,14 +35,6 @@ class Liberty20Jdk11 extends LibertySmokeTest {
class Liberty20Jdk11Openj9 extends LibertySmokeTest {
}
-@AppServer(version = "20.0.0.12", jdk = "16")
-class Liberty20Jdk16 extends LibertySmokeTest {
-}
-
-@AppServer(version = "20.0.0.12", jdk = "16-openj9")
-class Liberty20Jdk16Openj9 extends LibertySmokeTest {
-}
-
@AppServer(version = "21.0.0.10", jdk = "8")
class Liberty21Jdk8 extends LibertySmokeTest {
}

Update images to Windows 2022 (#7300)

preliminary step for #7299