Closed
Description
Hey, I have a case where the plugin fails to extract the OSType
from the info
output which leads to a NPE in getDockerPlatform
.
String getDockerPlatform() {
String osType = getDockerInfo().collect { it.trim() }.find { it.startsWith('OSType:') }
osType.empty ? System.getProperty("os.name") : osType.substring('OSType:'.length()).trim()
}
In this function osType
can be null. Is it possible to improve the null safety here?
Stacktrace:
Caused by: java.lang.NullPointerException: Cannot get property 'empty' on null object
at com.avast.gradle.dockercompose.DockerExecutor.getDockerPlatform(DockerExecutor.groovy:51)
at com.avast.gradle.dockercompose.DockerExecutor_Decorated.getDockerPlatform(Unknown Source)
at com.avast.gradle.dockercompose.DockerExecutor.getContainerPlatform(DockerExecutor.groovy:56)
at com.avast.gradle.dockercompose.DockerExecutor$getContainerPlatform$0.callCurrent(Unknown Source)
at com.avast.gradle.dockercompose.DockerExecutor.getContainerHost(DockerExecutor.groovy:122)
at com.avast.gradle.dockercompose.DockerExecutor$getContainerHost.call(Unknown Source)
at com.avast.gradle.dockercompose.tasks.ComposeUp.createContainerInfo(ComposeUp.groovy:248)
at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
at com.avast.gradle.dockercompose.tasks.ComposeUp$_loadServicesInfo_closure15$_closure26.doCall$original(ComposeUp.groovy:242)
at com.avast.gradle.dockercompose.tasks.ComposeUp$_loadServicesInfo_closure15$_closure26.doCall(ComposeUp.groovy)
at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
at com.avast.gradle.dockercompose.tasks.ComposeUp$_loadServicesInfo_closure15.doCall$original(ComposeUp.groovy:242)
at com.avast.gradle.dockercompose.tasks.ComposeUp$_loadServicesInfo_closure15.doCall(ComposeUp.groovy)
at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
at com.avast.gradle.dockercompose.tasks.ComposeUp.loadServicesInfo(ComposeUp.groovy:242)
at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
at com.avast.gradle.dockercompose.tasks.ComposeUp.up(ComposeUp.groovy:147)