diff --git a/aip-console-jenkins/pom.xml b/aip-console-jenkins/pom.xml index 2ccbbb6b..74886c6f 100644 --- a/aip-console-jenkins/pom.xml +++ b/aip-console-jenkins/pom.xml @@ -14,7 +14,7 @@ hpi - 2.11.0-SNAPSHOT + 2.10.4 2.60.3 diff --git a/aip-console-jenkins/src/main/java/io/jenkins/plugins/aipconsole/CommonActionBuilder.java b/aip-console-jenkins/src/main/java/io/jenkins/plugins/aipconsole/CommonActionBuilder.java index f01f5076..6960ff20 100644 --- a/aip-console-jenkins/src/main/java/io/jenkins/plugins/aipconsole/CommonActionBuilder.java +++ b/aip-console-jenkins/src/main/java/io/jenkins/plugins/aipconsole/CommonActionBuilder.java @@ -31,6 +31,7 @@ import java.util.concurrent.TimeUnit; import static io.jenkins.plugins.aipconsole.Messages.GenericError_DescriptorImpl_bad_server_version; +import static io.jenkins.plugins.aipconsole.Messages.GenericError_DescriptorImpl_feature_maxVersion_notCompatible; import static io.jenkins.plugins.aipconsole.Messages.GenericError_DescriptorImpl_feature_notCompatible; import static io.jenkins.plugins.aipconsole.Messages.GenericError_error_accessDenied; import static io.jenkins.plugins.aipconsole.Messages.GenericError_error_noApiKey; @@ -140,6 +141,10 @@ public Result getDefaultResult() { protected abstract VersionInformation getFeatureMinVersion(); + protected VersionInformation getFeatureMaxVersion() { + return null; + } + protected abstract void performClient(@Nonnull Run var1, @Nonnull FilePath var2, @Nonnull Launcher var3, @Nonnull TaskListener var4) throws InterruptedException, IOException; @@ -204,6 +209,11 @@ public void perform(@Nonnull Run run, @Nonnull FilePath workspace, @Nonnul run.setResult(Result.FAILURE); return; } + if (getFeatureMaxVersion() != null && getFeatureMaxVersion().isLowerThan(serverApiVersion)) { + listener.error(GenericError_DescriptorImpl_feature_maxVersion_notCompatible(apiVersion, getFeatureMaxVersion().toString())); + run.setResult(Result.FAILURE); + return; + } } } performClient(run, workspace, launcher, listener); diff --git a/aip-console-jenkins/src/main/java/io/jenkins/plugins/aipconsole/OnboardApplicationDeepAnalysisBuilder.java b/aip-console-jenkins/src/main/java/io/jenkins/plugins/aipconsole/OnboardApplicationDeepAnalysisBuilder.java index 47b093f6..2c14fca6 100644 --- a/aip-console-jenkins/src/main/java/io/jenkins/plugins/aipconsole/OnboardApplicationDeepAnalysisBuilder.java +++ b/aip-console-jenkins/src/main/java/io/jenkins/plugins/aipconsole/OnboardApplicationDeepAnalysisBuilder.java @@ -128,11 +128,20 @@ private static VersionInformation getMinVersion() { return VersionInformation.fromVersionString("2.8.0"); } + private static VersionInformation getMaxVersion() { + return VersionInformation.fromVersionString("2.10.4"); + } + @Override protected VersionInformation getFeatureMinVersion() { return getMinVersion(); } + @Override + protected VersionInformation getFeatureMaxVersion() { + return getMaxVersion(); + } + public String getSnapshotName() { return snapshotName; } diff --git a/aip-console-jenkins/src/main/java/io/jenkins/plugins/aipconsole/OnboardApplicationFastScanBuilder.java b/aip-console-jenkins/src/main/java/io/jenkins/plugins/aipconsole/OnboardApplicationFastScanBuilder.java index 76f6717f..3bee4f54 100644 --- a/aip-console-jenkins/src/main/java/io/jenkins/plugins/aipconsole/OnboardApplicationFastScanBuilder.java +++ b/aip-console-jenkins/src/main/java/io/jenkins/plugins/aipconsole/OnboardApplicationFastScanBuilder.java @@ -231,6 +231,15 @@ private static VersionInformation getMinVersion() { return VersionInformation.fromVersionString("2.8.0"); } + private static VersionInformation getMaxVersion() { + return VersionInformation.fromVersionString("2.10.4"); + } + + @Override + protected VersionInformation getFeatureMaxVersion() { + return getMaxVersion(); + } + @Override protected VersionInformation getFeatureMinVersion() { return getMinVersion(); diff --git a/aip-console-jenkins/src/main/resources/io/jenkins/plugins/aipconsole/Messages.properties b/aip-console-jenkins/src/main/resources/io/jenkins/plugins/aipconsole/Messages.properties index 1280a2c8..063c91a2 100644 --- a/aip-console-jenkins/src/main/resources/io/jenkins/plugins/aipconsole/Messages.properties +++ b/aip-console-jenkins/src/main/resources/io/jenkins/plugins/aipconsole/Messages.properties @@ -5,6 +5,7 @@ GenericError.error.noServerUrl=AIP Console Server URL is empty, unable to run st GenericError.error.accessDenied=Unable to access to AIP Console at the following URL : ''{0}'' # GenericError.DescriptorImpl.feature.notCompatible=This feature is not compatible with the CAST Imaging Console version {0}. Please upgrade to minimum version {1}. +GenericError.DescriptorImpl.feature.maxVersion.notCompatible=This feature is not compatible with the CAST Imaging Console version {0}. The highest supported version is {1}. Please download the related version. GenericError.DescriptorImpl.bad.server.version=The CAST Imaging Console version {0} is not compatible with this Automation Tools. Please upgrade to version {1} or higher. # Create application Builder Display Name CreateApplicationBuilder.DescriptorImpl.displayName=Console Create Application diff --git a/aip-console-tools-cli/src/main/java/com/castsoftware/aip/console/tools/commands/BasicCallable.java b/aip-console-tools-cli/src/main/java/com/castsoftware/aip/console/tools/commands/BasicCallable.java index 168aab97..054614f5 100644 --- a/aip-console-tools-cli/src/main/java/com/castsoftware/aip/console/tools/commands/BasicCallable.java +++ b/aip-console-tools-cli/src/main/java/com/castsoftware/aip/console/tools/commands/BasicCallable.java @@ -90,6 +90,13 @@ public Integer call() throws Exception { , apiVersion, getMinVersion().toString()); return Constants.RETURN_SERVER_VERSION_NOT_COMPATIBLE; } + if (getMaxVersion() != null && getMaxVersion().isLowerThan(serverApiVersion)) { + log.error("This feature is not compatible with the CAST Imaging Console version {}." + + " The highest supported version is {}." + + " Please download the related version." + , apiVersion, getMaxVersion().toString()); + return Constants.RETURN_SERVER_VERSION_NOT_COMPATIBLE; + } } } diff --git a/aip-console-tools-cli/src/main/java/com/castsoftware/aip/console/tools/commands/OnboardApplicationDeepAnalysisCommand.java b/aip-console-tools-cli/src/main/java/com/castsoftware/aip/console/tools/commands/OnboardApplicationDeepAnalysisCommand.java index cbfe1053..f912b2eb 100644 --- a/aip-console-tools-cli/src/main/java/com/castsoftware/aip/console/tools/commands/OnboardApplicationDeepAnalysisCommand.java +++ b/aip-console-tools-cli/src/main/java/com/castsoftware/aip/console/tools/commands/OnboardApplicationDeepAnalysisCommand.java @@ -47,6 +47,7 @@ public class OnboardApplicationDeepAnalysisCommand extends BasicCallable { //This version can be null if failed to convert from string private static final VersionInformation MIN_VERSION = VersionInformation.fromVersionString("2.8.0"); + private static final VersionInformation MAX_VERSION = VersionInformation.fromVersionString("2.10.4"); public OnboardApplicationDeepAnalysisCommand(RestApiService restApiService, JobsService jobsService, UploadService uploadService, ApplicationService applicationService) { super(restApiService, jobsService, uploadService, applicationService); @@ -74,4 +75,9 @@ protected VersionInformation getMinVersion() { return MIN_VERSION; } + @Override + protected VersionInformation getMaxVersion() { + return MAX_VERSION; + } + } diff --git a/aip-console-tools-cli/src/main/java/com/castsoftware/aip/console/tools/commands/OnboardApplicationFastScanCommand.java b/aip-console-tools-cli/src/main/java/com/castsoftware/aip/console/tools/commands/OnboardApplicationFastScanCommand.java index 5c0c6aeb..2f400318 100644 --- a/aip-console-tools-cli/src/main/java/com/castsoftware/aip/console/tools/commands/OnboardApplicationFastScanCommand.java +++ b/aip-console-tools-cli/src/main/java/com/castsoftware/aip/console/tools/commands/OnboardApplicationFastScanCommand.java @@ -60,6 +60,7 @@ public class OnboardApplicationFastScanCommand extends BasicCallable { //This version can be null if failed to convert from string private static final VersionInformation MIN_VERSION = VersionInformation.fromVersionString("2.8.0"); + private static final VersionInformation MAX_VERSION = VersionInformation.fromVersionString("2.10.4"); public OnboardApplicationFastScanCommand(RestApiService restApiService, JobsService jobsService, UploadService uploadService, ApplicationService applicationService) { super(restApiService, jobsService, uploadService, applicationService); @@ -88,9 +89,14 @@ public Integer processCallCommand() throws Exception { .build(); return applicationService.fastScan(fastScanProperties); } - + @Override protected VersionInformation getMinVersion() { return MIN_VERSION; } + + @Override + protected VersionInformation getMaxVersion() { + return MAX_VERSION; + } } diff --git a/pom.xml b/pom.xml index 3f86c685..c98ecd8f 100644 --- a/pom.xml +++ b/pom.xml @@ -22,7 +22,7 @@ - 2.11.0-SNAPSHOT + 2.10.4 1.8 ${project.parent.version} 4.7.5