in function-maven-plugin/src/main/java/com/google/cloud/functions/plugin/DeployFunction.java [253:282]
static CloudSdk buildCloudSdk(
CloudSdkMojo mojo, CloudSdkChecker cloudSdkChecker, CloudSdkDownloader cloudSdkDownloader) {
try {
if (mojo.getCloudSdkHome() != null) {
// Check if the user has defined a specific Cloud SDK.
CloudSdk cloudSdk = new CloudSdk.Builder().sdkPath(mojo.getCloudSdkHome()).build();
if (mojo.getCloudSdkVersion() != null) {
cloudSdkChecker.checkCloudSdk(cloudSdk, mojo.getCloudSdkVersion());
}
return cloudSdk;
} else {
return new CloudSdk.Builder()
.sdkPath(
cloudSdkDownloader.downloadIfNecessary(
mojo.getCloudSdkVersion(),
mojo.getLog(),
Collections.emptyList(),
mojo.getMavenSession().isOffline()))
.build();
}
} catch (CloudSdkNotFoundException
| CloudSdkOutOfDateException
| CloudSdkVersionFileException ex) {
throw new RuntimeException(ex);
}
}