diff --git a/.gitignore b/.gitignore index 1f93dfc..6ac3712 100644 --- a/.gitignore +++ b/.gitignore @@ -5,3 +5,4 @@ build .idea +.DS_Store \ No newline at end of file diff --git a/hypertrace-gradle-docker-java-application-plugin/CHANGELOG.md b/hypertrace-gradle-docker-java-application-plugin/CHANGELOG.md index 84d79bb..7d4ebf2 100644 --- a/hypertrace-gradle-docker-java-application-plugin/CHANGELOG.md +++ b/hypertrace-gradle-docker-java-application-plugin/CHANGELOG.md @@ -54,4 +54,4 @@ ## [0.9.9] - Fix bug introduced in 0.9.8 preventing startup. Docker laying improvements not yet working, so - currently equivalent to 0.9.4 \ No newline at end of file + currently equivalent to 0.9.4 diff --git a/hypertrace-gradle-docker-java-application-plugin/README.md b/hypertrace-gradle-docker-java-application-plugin/README.md index 02095ca..8431066 100644 --- a/hypertrace-gradle-docker-java-application-plugin/README.md +++ b/hypertrace-gradle-docker-java-application-plugin/README.md @@ -14,7 +14,8 @@ default behavior of `com.bmuschko.docker-java-application` for identifying main An application can define multiple variants which allow specifying different base images to use. - `javaVersion` - - JavaVersion + - JavaVersion + - Defaults to the toolchain version from the java plugin - `baseImage` - String - Defaults to hypertrace/java:JavaMajorVersion @@ -121,4 +122,4 @@ Produces a diff of: +HEALTHCHECK -interval=2s --start-period=15s --timeout=2s CMD wget -qO- http://127.0.0.1:9003/health &> /dev/null || exit 1 -ENV SERVICE_NAME=example-app +ENV SERVICE_NAME=example-app MY_VAR=foo -``` \ No newline at end of file +``` diff --git a/hypertrace-gradle-docker-java-application-plugin/build.gradle.kts b/hypertrace-gradle-docker-java-application-plugin/build.gradle.kts index cc00aca..1c7c660 100644 --- a/hypertrace-gradle-docker-java-application-plugin/build.gradle.kts +++ b/hypertrace-gradle-docker-java-application-plugin/build.gradle.kts @@ -4,8 +4,8 @@ plugins { } java { - targetCompatibility = JavaVersion.VERSION_1_8 - sourceCompatibility = JavaVersion.VERSION_1_8 + targetCompatibility = JavaVersion.VERSION_11 + sourceCompatibility = JavaVersion.VERSION_11 } gradlePlugin { @@ -21,4 +21,3 @@ dependencies { api("com.bmuschko:gradle-docker-plugin:7.4.0") api(project(":hypertrace-gradle-docker-plugin")) } - diff --git a/hypertrace-gradle-docker-java-application-plugin/src/main/java/org/hypertrace/gradle/docker/HypertraceDockerJavaApplicationPlugin.java b/hypertrace-gradle-docker-java-application-plugin/src/main/java/org/hypertrace/gradle/docker/HypertraceDockerJavaApplicationPlugin.java index a7bb7eb..ac0804a 100644 --- a/hypertrace-gradle-docker-java-application-plugin/src/main/java/org/hypertrace/gradle/docker/HypertraceDockerJavaApplicationPlugin.java +++ b/hypertrace-gradle-docker-java-application-plugin/src/main/java/org/hypertrace/gradle/docker/HypertraceDockerJavaApplicationPlugin.java @@ -63,9 +63,14 @@ public void apply(Project target) { } private void addApplicationExtension(Project project) { - this.getHypertraceDockerExtension(project) - .getExtensions() - .create(EXTENSION_NAME, HypertraceDockerJavaApplication.class, project.getName()); + HypertraceDockerJavaApplication extension = + this.getHypertraceDockerExtension(project) + .getExtensions() + .create(EXTENSION_NAME, HypertraceDockerJavaApplication.class, project.getName()); + + extension.javaVersion.convention( + getJavaExtension(project).getToolchain().getLanguageVersion().map(JavaVersion::toVersion) + .orElse(JavaVersion.VERSION_11)); } private void updateDefaultJvmArgs(Project project, HypertraceDockerJavaApplication javaApplication) { @@ -233,11 +238,14 @@ private Configuration getRuntimeClasspath(Project project) { } private SourceSetOutput mainSourceSetOutput(Project project) { - return project.getExtensions() - .getByType(JavaPluginExtension.class) - .getSourceSets() - .getByName(SourceSet.MAIN_SOURCE_SET_NAME) - .getOutput(); + return getJavaExtension(project) + .getSourceSets() + .getByName(SourceSet.MAIN_SOURCE_SET_NAME) + .getOutput(); + } + + private JavaPluginExtension getJavaExtension(Project project) { + return project.getExtensions().getByType(JavaPluginExtension.class); } private Provider provideIfDirectoryExists(Provider directoryProvider) { diff --git a/hypertrace-gradle-docker-plugin/build.gradle.kts b/hypertrace-gradle-docker-plugin/build.gradle.kts index a8b76b0..cdd584e 100644 --- a/hypertrace-gradle-docker-plugin/build.gradle.kts +++ b/hypertrace-gradle-docker-plugin/build.gradle.kts @@ -4,8 +4,8 @@ plugins { } java { - targetCompatibility = JavaVersion.VERSION_1_8 - sourceCompatibility = JavaVersion.VERSION_1_8 + targetCompatibility = JavaVersion.VERSION_11 + sourceCompatibility = JavaVersion.VERSION_11 } gradlePlugin { diff --git a/hypertrace-gradle-docker-publish-plugin/build.gradle.kts b/hypertrace-gradle-docker-publish-plugin/build.gradle.kts index 6123c71..29cceea 100644 --- a/hypertrace-gradle-docker-publish-plugin/build.gradle.kts +++ b/hypertrace-gradle-docker-publish-plugin/build.gradle.kts @@ -4,8 +4,8 @@ plugins { } java { - targetCompatibility = JavaVersion.VERSION_1_8 - sourceCompatibility = JavaVersion.VERSION_1_8 + targetCompatibility = JavaVersion.VERSION_11 + sourceCompatibility = JavaVersion.VERSION_11 } gradlePlugin {