commit
b0e4cabdd8
|
@ -0,0 +1,12 @@
|
||||||
|
FROM ubuntu:focal-20220113
|
||||||
|
|
||||||
|
ADD setup.sh /setup.sh
|
||||||
|
ADD get-jdk-url.sh /get-jdk-url.sh
|
||||||
|
ADD get-docker-url.sh /get-docker-url.sh
|
||||||
|
RUN ./setup.sh java8 java18
|
||||||
|
|
||||||
|
ENV JAVA_HOME /opt/openjdk
|
||||||
|
ENV PATH $JAVA_HOME/bin:$PATH
|
||||||
|
ADD docker-lib.sh /docker-lib.sh
|
||||||
|
|
||||||
|
ENTRYPOINT [ "switch", "shell=/bin/bash", "--", "codep", "/bin/docker daemon" ]
|
|
@ -11,6 +11,9 @@ case "$1" in
|
||||||
java17)
|
java17)
|
||||||
echo "https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.2%2B8/OpenJDK17U-jdk_x64_linux_hotspot_17.0.2_8.tar.gz"
|
echo "https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.2%2B8/OpenJDK17U-jdk_x64_linux_hotspot_17.0.2_8.tar.gz"
|
||||||
;;
|
;;
|
||||||
|
java18)
|
||||||
|
echo "https://github.com/adoptium/temurin18-binaries/releases/download/jdk18-2022-02-15-13-13-beta/OpenJDK18-jdk_x64_linux_hotspot_2022-02-15-13-13.tar.gz"
|
||||||
|
;;
|
||||||
*)
|
*)
|
||||||
echo $"Unknown java version"
|
echo $"Unknown java version"
|
||||||
exit 1
|
exit 1
|
||||||
|
|
|
@ -183,6 +183,12 @@ resources:
|
||||||
source:
|
source:
|
||||||
<<: *registry-image-resource-source
|
<<: *registry-image-resource-source
|
||||||
repository: ((docker-hub-organization))/spring-boot-ci-jdk17
|
repository: ((docker-hub-organization))/spring-boot-ci-jdk17
|
||||||
|
- name: ci-image-jdk18
|
||||||
|
type: registry-image
|
||||||
|
icon: docker
|
||||||
|
source:
|
||||||
|
<<: *registry-image-resource-source
|
||||||
|
repository: ((docker-hub-organization))/spring-boot-ci-jdk18
|
||||||
- name: paketo-builder-base-image
|
- name: paketo-builder-base-image
|
||||||
type: registry-image
|
type: registry-image
|
||||||
icon: docker
|
icon: docker
|
||||||
|
@ -221,6 +227,14 @@ resources:
|
||||||
access_token: ((github-ci-status-token))
|
access_token: ((github-ci-status-token))
|
||||||
branch: ((branch))
|
branch: ((branch))
|
||||||
context: jdk17-build
|
context: jdk17-build
|
||||||
|
- name: repo-status-jdk18-build
|
||||||
|
type: github-status-resource
|
||||||
|
icon: eye-check-outline
|
||||||
|
source:
|
||||||
|
repository: ((github-repo-name))
|
||||||
|
access_token: ((github-ci-status-token))
|
||||||
|
branch: ((branch))
|
||||||
|
context: jdk18-build
|
||||||
- name: slack-alert
|
- name: slack-alert
|
||||||
type: slack-notification
|
type: slack-notification
|
||||||
icon: slack
|
icon: slack
|
||||||
|
@ -273,6 +287,14 @@ jobs:
|
||||||
vars:
|
vars:
|
||||||
ci-image-name: ci-image-jdk17
|
ci-image-name: ci-image-jdk17
|
||||||
<<: *docker-hub-mirror-vars
|
<<: *docker-hub-mirror-vars
|
||||||
|
- task: build-ci-image-jdk18
|
||||||
|
privileged: true
|
||||||
|
file: git-repo/ci/tasks/build-ci-image.yml
|
||||||
|
output_mapping:
|
||||||
|
image: ci-image-jdk18
|
||||||
|
vars:
|
||||||
|
ci-image-name: ci-image-jdk18
|
||||||
|
<<: *docker-hub-mirror-vars
|
||||||
- in_parallel:
|
- in_parallel:
|
||||||
- put: ci-image
|
- put: ci-image
|
||||||
params:
|
params:
|
||||||
|
@ -283,6 +305,9 @@ jobs:
|
||||||
- put: ci-image-jdk17
|
- put: ci-image-jdk17
|
||||||
params:
|
params:
|
||||||
image: ci-image-jdk17/image.tar
|
image: ci-image-jdk17/image.tar
|
||||||
|
- put: ci-image-jdk18
|
||||||
|
params:
|
||||||
|
image: ci-image-jdk18/image.tar
|
||||||
- name: detect-jdk-updates
|
- name: detect-jdk-updates
|
||||||
plan:
|
plan:
|
||||||
- get: git-repo
|
- get: git-repo
|
||||||
|
@ -308,6 +333,12 @@ jobs:
|
||||||
params:
|
params:
|
||||||
<<: *github-task-params
|
<<: *github-task-params
|
||||||
JDK_VERSION: java17
|
JDK_VERSION: java17
|
||||||
|
- task: detect-jdk18-update
|
||||||
|
image: ci-image
|
||||||
|
file: git-repo/ci/tasks/detect-jdk-updates.yml
|
||||||
|
params:
|
||||||
|
<<: *github-task-params
|
||||||
|
JDK_VERSION: java18
|
||||||
- name: detect-ubuntu-image-updates
|
- name: detect-ubuntu-image-updates
|
||||||
plan:
|
plan:
|
||||||
- get: git-repo
|
- get: git-repo
|
||||||
|
@ -452,6 +483,38 @@ jobs:
|
||||||
- put: slack-alert
|
- put: slack-alert
|
||||||
params:
|
params:
|
||||||
<<: *slack-success-params
|
<<: *slack-success-params
|
||||||
|
- name: jdk18-build
|
||||||
|
serial: true
|
||||||
|
public: true
|
||||||
|
plan:
|
||||||
|
- get: ci-image-jdk18
|
||||||
|
- get: git-repo
|
||||||
|
trigger: true
|
||||||
|
- put: repo-status-jdk18-build
|
||||||
|
params: { state: "pending", commit: "git-repo" }
|
||||||
|
- do:
|
||||||
|
- task: build-project
|
||||||
|
image: ci-image-jdk18
|
||||||
|
privileged: true
|
||||||
|
timeout: ((task-timeout))
|
||||||
|
file: git-repo/ci/tasks/build-project.yml
|
||||||
|
params:
|
||||||
|
BRANCH: ((branch))
|
||||||
|
TOOLCHAIN_JAVA_VERSION: 18
|
||||||
|
<<: *gradle-enterprise-task-params
|
||||||
|
<<: *docker-hub-task-params
|
||||||
|
on_failure:
|
||||||
|
do:
|
||||||
|
- put: repo-status-jdk18-build
|
||||||
|
params: { state: "failure", commit: "git-repo" }
|
||||||
|
- put: slack-alert
|
||||||
|
params:
|
||||||
|
<<: *slack-fail-params
|
||||||
|
- put: repo-status-jdk18-build
|
||||||
|
params: { state: "success", commit: "git-repo" }
|
||||||
|
- put: slack-alert
|
||||||
|
params:
|
||||||
|
<<: *slack-success-params
|
||||||
- name: windows-build
|
- name: windows-build
|
||||||
serial: true
|
serial: true
|
||||||
plan:
|
plan:
|
||||||
|
@ -776,13 +839,42 @@ jobs:
|
||||||
- put: slack-alert
|
- put: slack-alert
|
||||||
params:
|
params:
|
||||||
<<: *slack-success-params
|
<<: *slack-success-params
|
||||||
|
- name: jdk18-run-system-tests
|
||||||
|
serial: true
|
||||||
|
public: true
|
||||||
|
plan:
|
||||||
|
- get: ci-image-jdk18
|
||||||
|
- get: git-repo
|
||||||
|
- get: paketo-builder-base-image
|
||||||
|
trigger: true
|
||||||
|
- get: daily
|
||||||
|
trigger: true
|
||||||
|
- do:
|
||||||
|
- task: run-system-tests
|
||||||
|
image: ci-image-jdk18
|
||||||
|
privileged: true
|
||||||
|
timeout: ((task-timeout))
|
||||||
|
file: git-repo/ci/tasks/run-system-tests.yml
|
||||||
|
params:
|
||||||
|
BRANCH: ((branch))
|
||||||
|
TOOLCHAIN_JAVA_VERSION: 18
|
||||||
|
<<: *gradle-enterprise-task-params
|
||||||
|
<<: *docker-hub-task-params
|
||||||
|
on_failure:
|
||||||
|
do:
|
||||||
|
- put: slack-alert
|
||||||
|
params:
|
||||||
|
<<: *slack-fail-params
|
||||||
|
- put: slack-alert
|
||||||
|
params:
|
||||||
|
<<: *slack-success-params
|
||||||
groups:
|
groups:
|
||||||
- name: "builds"
|
- name: "builds"
|
||||||
jobs: ["build", "jdk11-build", "jdk17-build", "windows-build"]
|
jobs: ["build", "jdk11-build", "jdk17-build", "jdk18-build", "windows-build"]
|
||||||
- name: "releases"
|
- name: "releases"
|
||||||
jobs: ["stage-milestone", "stage-rc", "stage-release", "promote-milestone", "promote-rc", "promote-release", "create-github-release", "publish-gradle-plugin", "publish-to-sdkman", "update-homebrew-tap"]
|
jobs: ["stage-milestone", "stage-rc", "stage-release", "promote-milestone", "promote-rc", "promote-release", "create-github-release", "publish-gradle-plugin", "publish-to-sdkman", "update-homebrew-tap"]
|
||||||
- name: "system-tests"
|
- name: "system-tests"
|
||||||
jobs: ["run-system-tests", "jdk11-run-system-tests", "jdk17-run-system-tests"]
|
jobs: ["run-system-tests", "jdk11-run-system-tests", "jdk17-run-system-tests", "jdk18-run-system-tests"]
|
||||||
- name: "ci-images"
|
- name: "ci-images"
|
||||||
jobs: ["build-ci-images", "detect-docker-updates", "detect-jdk-updates", "detect-ubuntu-image-updates"]
|
jobs: ["build-ci-images", "detect-docker-updates", "detect-jdk-updates", "detect-ubuntu-image-updates"]
|
||||||
- name: "pull-requests"
|
- name: "pull-requests"
|
||||||
|
|
|
@ -20,6 +20,10 @@ case "$JDK_VERSION" in
|
||||||
BASE_URL="https://api.adoptium.net/v3/assets/feature_releases/17/ga"
|
BASE_URL="https://api.adoptium.net/v3/assets/feature_releases/17/ga"
|
||||||
ISSUE_TITLE="Upgrade Java 17 version in CI image"
|
ISSUE_TITLE="Upgrade Java 17 version in CI image"
|
||||||
;;
|
;;
|
||||||
|
java18)
|
||||||
|
BASE_URL="https://api.adoptium.net/v3/assets/feature_releases/18/ea"
|
||||||
|
ISSUE_TITLE="Upgrade Java 18 version in CI image"
|
||||||
|
;;
|
||||||
*)
|
*)
|
||||||
echo $"Unknown java version"
|
echo $"Unknown java version"
|
||||||
exit 1;
|
exit 1;
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright 2012-2021 the original author or authors.
|
* Copyright 2012-2022 the original author or authors.
|
||||||
*
|
*
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
* you may not use this file except in compliance with the License.
|
* you may not use this file except in compliance with the License.
|
||||||
|
@ -30,7 +30,7 @@ import org.springframework.util.StringUtils;
|
||||||
/**
|
/**
|
||||||
* Helper class to build Gradle {@link Project Projects} for test fixtures. Wraps
|
* Helper class to build Gradle {@link Project Projects} for test fixtures. Wraps
|
||||||
* functionality of Gradle's own {@link ProjectBuilder} in order to workaround an issue on
|
* functionality of Gradle's own {@link ProjectBuilder} in order to workaround an issue on
|
||||||
* JDK 17.
|
* JDK 17 and 18.
|
||||||
*
|
*
|
||||||
* @author Christoph Dreis
|
* @author Christoph Dreis
|
||||||
* @see <a href="https://github.com/gradle/gradle/issues/16857">Gradle Support JDK 17</a>
|
* @see <a href="https://github.com/gradle/gradle/issues/16857">Gradle Support JDK 17</a>
|
||||||
|
@ -67,7 +67,7 @@ public final class GradleProjectBuilder {
|
||||||
if (StringUtils.hasText(this.name)) {
|
if (StringUtils.hasText(this.name)) {
|
||||||
builder.withName(this.name);
|
builder.withName(this.name);
|
||||||
}
|
}
|
||||||
if (JavaVersion.current() == JavaVersion.VERSION_17) {
|
if (JavaVersion.current().isCompatibleWith(JavaVersion.VERSION_17)) {
|
||||||
NativeServices.initialize(userHome);
|
NativeServices.initialize(userHome);
|
||||||
try {
|
try {
|
||||||
ProjectBuilderImpl.getGlobalServices();
|
ProjectBuilderImpl.getGlobalServices();
|
||||||
|
|
|
@ -33,6 +33,9 @@ public final class GradleVersions {
|
||||||
}
|
}
|
||||||
|
|
||||||
public static List<String> allCompatible() {
|
public static List<String> allCompatible() {
|
||||||
|
if (isJava18()) {
|
||||||
|
return Arrays.asList("7.3.3", "7.4");
|
||||||
|
}
|
||||||
if (isJava17()) {
|
if (isJava17()) {
|
||||||
return Arrays.asList("7.2", "7.3.3", "7.4");
|
return Arrays.asList("7.2", "7.3.3", "7.4");
|
||||||
}
|
}
|
||||||
|
@ -52,6 +55,10 @@ public final class GradleVersions {
|
||||||
return GradleVersion.current().getVersion();
|
return GradleVersion.current().getVersion();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private static boolean isJava18() {
|
||||||
|
return JavaVersion.current().isCompatibleWith(JavaVersion.VERSION_HIGHER);
|
||||||
|
}
|
||||||
|
|
||||||
private static boolean isJava17() {
|
private static boolean isJava17() {
|
||||||
return JavaVersion.current().isCompatibleWith(JavaVersion.VERSION_17);
|
return JavaVersion.current().isCompatibleWith(JavaVersion.VERSION_17);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue