Skip to content

Commit

Permalink
Fix configuration of environment in Kotlin bootBuildImage examples
Browse files Browse the repository at this point in the history
Fixes gh-22913
  • Loading branch information
wilkinsona committed Aug 12, 2020
1 parent 5e5c1fb commit f43a0b4
Show file tree
Hide file tree
Showing 6 changed files with 51 additions and 15 deletions.
Expand Up @@ -72,6 +72,7 @@ task dependencyVersions(type: org.springframework.boot.build.constraints.Extract

tasks.withType(org.asciidoctor.gradle.jvm.AbstractAsciidoctorTask) {
dependsOn dependencyVersions
inputs.dir('src/docs/gradle').withPathSensitivity(PathSensitivity.RELATIVE)
doFirst {
attributes "dependency-management-plugin-version": dependencyVersions.versionConstraints["io.spring.gradle:dependency-management-plugin"]
}
Expand Down
Expand Up @@ -15,3 +15,9 @@ bootBuildImage {
]
}
// end::env[]

task bootBuildImageEnvironment {
doFirst {
bootBuildImage.environment.each { name, value -> println "$name=$value" }
}
}
@@ -1,19 +1,21 @@
import org.springframework.boot.gradle.tasks.bundling.BootJar
import org.springframework.boot.gradle.tasks.bundling.BootBuildImage

plugins {
java
id("org.springframework.boot") version "{gradle-project-version}"
}

tasks.getByName<BootJar>("bootJar") {
mainClassName = "com.example.ExampleApplication"
}

// tag::env[]
tasks.getByName<BootBuildImage>("bootBuildImage") {
environment = [
"HTTP_PROXY" : "http://proxy.example.com",
"HTTPS_PROXY" : "https://proxy.example.com"
]
environment = mapOf("HTTP_PROXY" to "http://proxy.example.com",
"HTTPS_PROXY" to "https://proxy.example.com")
}
// end::env[]

tasks.register("bootBuildImageEnvironment") {
doFirst {
for((name, value) in tasks.getByName<BootBuildImage>("bootBuildImage").environment) {
print(name + "=" + value)
}
}
}
Expand Up @@ -12,3 +12,9 @@ bootBuildImage {
environment = ["BP_JVM_VERSION" : "13.0.1"]
}
// end::env[]

task bootBuildImageEnvironment {
doFirst {
bootBuildImage.environment.each { name, value -> println "$name=$value" }
}
}
@@ -1,16 +1,21 @@
import org.springframework.boot.gradle.tasks.bundling.BootJar
import org.springframework.boot.gradle.tasks.bundling.BootBuildImage

plugins {
java
id("org.springframework.boot") version "{gradle-project-version}"
}

tasks.getByName<BootJar>("bootJar") {
mainClassName = "com.example.ExampleApplication"
}

// tag::env[]
tasks.getByName<BootBuildImage>("bootBuildImage") {
environment = ["BP_JVM_VERSION" : "13.0.1"]
environment = mapOf("BP_JVM_VERSION" to "13.0.1")
}
// end::env[]

tasks.register("bootBuildImageEnvironment") {
doFirst {
for((name, value) in tasks.getByName<BootBuildImage>("bootBuildImage").environment) {
print(name + "=" + value)
}
}
}

Expand Up @@ -28,6 +28,7 @@
import java.util.jar.Manifest;
import java.util.zip.ZipEntry;

import org.gradle.testkit.runner.BuildResult;
import org.junit.jupiter.api.TestTemplate;
import org.junit.jupiter.api.extension.ExtendWith;

Expand Down Expand Up @@ -221,6 +222,21 @@ void bootJarLayeredExcludeTools() throws IOException {
}
}

@TestTemplate
void bootBuildImageWithCustomBuildpackJvmVersion() throws IOException {
BuildResult result = this.gradleBuild.script("src/docs/gradle/packaging/boot-build-image-env")
.build("bootBuildImageEnvironment");
assertThat(result.getOutput()).contains("BP_JVM_VERSION=13.0.1");
}

@TestTemplate
void bootBuildImageWithCustomProxySettings() throws IOException {
BuildResult result = this.gradleBuild.script("src/docs/gradle/packaging/boot-build-image-env-proxy")
.build("bootBuildImageEnvironment");
assertThat(result.getOutput()).contains("HTTP_PROXY=http://proxy.example.com")
.contains("HTTPS_PROXY=https://proxy.example.com");
}

protected void jarFile(File file) throws IOException {
try (JarOutputStream jar = new JarOutputStream(new FileOutputStream(file))) {
jar.putNextEntry(new ZipEntry("META-INF/MANIFEST.MF"));
Expand Down

0 comments on commit f43a0b4

Please sign in to comment.