diff --git a/Jenkinsfile b/Jenkinsfile
new file mode 100644
index 0000000..6e1f964
--- /dev/null
+++ b/Jenkinsfile
@@ -0,0 +1,12 @@
+/*
+See the documentation for more options:
+https://github.com/jenkins-infra/pipeline-library/
+*/
+buildPlugin(
+ forkCount: '1C', // Run a JVM per core in tests
+ useContainerAgent: true, // Set to `false` if you need to use Docker for containerized tests
+ configurations: [
+ [platform: 'linux', jdk: 21],
+ [platform: 'windows', jdk: 17]
+ ]
+)
\ No newline at end of file
diff --git a/pom.xml b/pom.xml
index 25fbd2e..020257c 100644
--- a/pom.xml
+++ b/pom.xml
@@ -5,7 +5,7 @@
org.jenkins-ci.plugins
plugin
- 4.9
+ 4.51
@@ -40,14 +40,22 @@
- 2.426.3
- 11
- 11
- 11
- 11
- 11
+
+ 2.426
+ ${jenkins.baseline}.3
1.33
+
+
+
+ io.jenkins.tools.bom
+ bom-${jenkins.baseline}.x
+ 3208.vb_21177d4b_cd9
+ pom
+ import
+
+
+
@@ -96,12 +104,10 @@
org.jenkins-ci.plugins
trilead-api
- 2.142.v748523a_76693
org.jenkins-ci.plugins
ssh-slaves
- 2.948.vb_8050d697fec
org.jenkins-ci.plugins
@@ -116,7 +122,6 @@
org.jenkins-ci.plugins
plain-credentials
- 179.vc5cb_98f6db_38
org.jenkins-ci.plugins
@@ -166,7 +171,6 @@
org.jenkins-ci.tools
maven-hpi-plugin
- 3.48
maven-enforcer-plugin
@@ -183,7 +187,6 @@
org.codehaus.mojo
animal-sniffer-maven-plugin
- 1.19
check
diff --git a/src/main/java/hudson/plugins/spotinst/cloud/AwsSpotinstCloud.java b/src/main/java/hudson/plugins/spotinst/cloud/AwsSpotinstCloud.java
index e2b3165..c0e8ef1 100644
--- a/src/main/java/hudson/plugins/spotinst/cloud/AwsSpotinstCloud.java
+++ b/src/main/java/hudson/plugins/spotinst/cloud/AwsSpotinstCloud.java
@@ -12,7 +12,9 @@
import hudson.plugins.spotinst.model.common.BlResponse;
import hudson.plugins.spotinst.repos.IAwsGroupRepo;
import hudson.plugins.spotinst.repos.RepoManager;
-import hudson.plugins.spotinst.slave.*;
+import hudson.plugins.spotinst.slave.SlaveInstanceDetails;
+import hudson.plugins.spotinst.slave.SlaveUsageEnum;
+import hudson.plugins.spotinst.slave.SpotinstSlave;
import hudson.slaves.ComputerConnector;
import hudson.slaves.EnvironmentVariablesNodeProperty;
import hudson.tools.ToolLocationNodeProperty;
diff --git a/src/main/java/hudson/plugins/spotinst/cloud/BaseSpotinstCloud.java b/src/main/java/hudson/plugins/spotinst/cloud/BaseSpotinstCloud.java
index bc5669a..fa85f6f 100644
--- a/src/main/java/hudson/plugins/spotinst/cloud/BaseSpotinstCloud.java
+++ b/src/main/java/hudson/plugins/spotinst/cloud/BaseSpotinstCloud.java
@@ -1,10 +1,16 @@
package hudson.plugins.spotinst.cloud;
import hudson.DescriptorExtensionList;
-import hudson.model.*;
+import hudson.model.Descriptor;
+import hudson.model.Label;
+import hudson.model.Node;
+import hudson.model.TaskListener;
import hudson.model.labels.LabelAtom;
import hudson.plugins.spotinst.api.infra.JsonMapper;
-import hudson.plugins.spotinst.common.*;
+import hudson.plugins.spotinst.common.ConnectionMethodEnum;
+import hudson.plugins.spotinst.common.Constants;
+import hudson.plugins.spotinst.common.GroupLockingManager;
+import hudson.plugins.spotinst.common.TimeUtils;
import hudson.plugins.spotinst.model.common.BlResponse;
import hudson.plugins.spotinst.slave.*;
import hudson.plugins.sshslaves.SSHConnector;
diff --git a/src/main/java/hudson/plugins/spotinst/cloud/monitor/SpotinstCloudsCommunicationMonitor.java b/src/main/java/hudson/plugins/spotinst/cloud/monitor/SpotinstCloudsCommunicationMonitor.java
index 957c2d5..4d6fa1b 100644
--- a/src/main/java/hudson/plugins/spotinst/cloud/monitor/SpotinstCloudsCommunicationMonitor.java
+++ b/src/main/java/hudson/plugins/spotinst/cloud/monitor/SpotinstCloudsCommunicationMonitor.java
@@ -8,7 +8,9 @@
import jenkins.model.Jenkins;
import org.apache.commons.collections4.CollectionUtils;
-import java.util.*;
+import java.util.Collections;
+import java.util.List;
+import java.util.Objects;
import java.util.stream.Collectors;
@Extension
diff --git a/src/main/java/hudson/plugins/spotinst/common/SpotAwsInstanceTypesHelper.java b/src/main/java/hudson/plugins/spotinst/common/SpotAwsInstanceTypesHelper.java
index 1da9360..3ed73e4 100644
--- a/src/main/java/hudson/plugins/spotinst/common/SpotAwsInstanceTypesHelper.java
+++ b/src/main/java/hudson/plugins/spotinst/common/SpotAwsInstanceTypesHelper.java
@@ -10,7 +10,6 @@
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
-import java.util.Optional;
/**
* Created by Liron Arad on 08/12/2021.
diff --git a/src/main/java/hudson/plugins/spotinst/common/SpotinstContext.java b/src/main/java/hudson/plugins/spotinst/common/SpotinstContext.java
index 3e496cf..9a059e1 100644
--- a/src/main/java/hudson/plugins/spotinst/common/SpotinstContext.java
+++ b/src/main/java/hudson/plugins/spotinst/common/SpotinstContext.java
@@ -3,7 +3,8 @@
import edu.umd.cs.findbugs.annotations.SuppressFBWarnings;
import hudson.plugins.spotinst.model.aws.AwsInstanceType;
-import java.util.*;
+import java.util.Date;
+import java.util.List;
/**
* Created by ohadmuchnik on 24/05/2016.
diff --git a/src/main/java/hudson/plugins/spotinst/jobs/SpotinstSyncGroupsController.java b/src/main/java/hudson/plugins/spotinst/jobs/SpotinstSyncGroupsController.java
index 61a3096..3665595 100644
--- a/src/main/java/hudson/plugins/spotinst/jobs/SpotinstSyncGroupsController.java
+++ b/src/main/java/hudson/plugins/spotinst/jobs/SpotinstSyncGroupsController.java
@@ -14,7 +14,9 @@
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
-import java.util.*;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Set;
import java.util.concurrent.TimeUnit;
import java.util.stream.Collectors;
diff --git a/src/main/java/hudson/plugins/spotinst/slave/SpotLauncherHelper.java b/src/main/java/hudson/plugins/spotinst/slave/SpotLauncherHelper.java
index e0969b2..f9cd710 100644
--- a/src/main/java/hudson/plugins/spotinst/slave/SpotLauncherHelper.java
+++ b/src/main/java/hudson/plugins/spotinst/slave/SpotLauncherHelper.java
@@ -8,7 +8,6 @@
import org.slf4j.LoggerFactory;
import java.util.ArrayList;
-import java.util.LinkedList;
import java.util.List;
import java.util.stream.Collectors;
diff --git a/src/main/java/hudson/plugins/spotinst/slave/SpotSSHComputerLauncher.java b/src/main/java/hudson/plugins/spotinst/slave/SpotSSHComputerLauncher.java
index d913077..ae45323 100644
--- a/src/main/java/hudson/plugins/spotinst/slave/SpotSSHComputerLauncher.java
+++ b/src/main/java/hudson/plugins/spotinst/slave/SpotSSHComputerLauncher.java
@@ -1,6 +1,6 @@
package hudson.plugins.spotinst.slave;
-import hudson.model.*;
+import hudson.model.TaskListener;
import hudson.slaves.ComputerLauncher;
import hudson.slaves.DelegatingComputerLauncher;
import hudson.slaves.SlaveComputer;
diff --git a/src/main/java/hudson/plugins/spotinst/slave/SpotinstComputerLauncher.java b/src/main/java/hudson/plugins/spotinst/slave/SpotinstComputerLauncher.java
index ea9e8c5..8d3280f 100644
--- a/src/main/java/hudson/plugins/spotinst/slave/SpotinstComputerLauncher.java
+++ b/src/main/java/hudson/plugins/spotinst/slave/SpotinstComputerLauncher.java
@@ -1,16 +1,11 @@
package hudson.plugins.spotinst.slave;
-import hudson.model.*;
-import hudson.model.queue.SubTask;
+import hudson.model.TaskListener;
import hudson.slaves.JNLPLauncher;
import hudson.slaves.SlaveComputer;
-import org.apache.commons.lang.BooleanUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
-import java.util.LinkedList;
-import java.util.List;
-
/**
* Created by ohadmuchnik on 25/05/2016.
*/
diff --git a/src/main/java/hudson/plugins/spotinst/slave/SpotinstComputerListener.java b/src/main/java/hudson/plugins/spotinst/slave/SpotinstComputerListener.java
index 276bb4b..945c999 100644
--- a/src/main/java/hudson/plugins/spotinst/slave/SpotinstComputerListener.java
+++ b/src/main/java/hudson/plugins/spotinst/slave/SpotinstComputerListener.java
@@ -2,7 +2,8 @@
import edu.umd.cs.findbugs.annotations.NonNull;
import hudson.Extension;
-import hudson.model.*;
+import hudson.model.Computer;
+import hudson.model.TaskListener;
import hudson.slaves.ComputerListener;
import hudson.slaves.OfflineCause;
import org.slf4j.Logger;
diff --git a/src/main/java/hudson/plugins/spotinst/slave/SpotinstNonLocalizable.java b/src/main/java/hudson/plugins/spotinst/slave/SpotinstNonLocalizable.java
index 1890840..0fa3dad 100644
--- a/src/main/java/hudson/plugins/spotinst/slave/SpotinstNonLocalizable.java
+++ b/src/main/java/hudson/plugins/spotinst/slave/SpotinstNonLocalizable.java
@@ -2,8 +2,6 @@
import jenkins.util.NonLocalizable;
-import java.util.Locale;
-
class SpotinstNonLocalizable extends NonLocalizable {
public SpotinstNonLocalizable(String nonLocalizable) {
diff --git a/src/main/java/hudson/plugins/spotinst/slave/SpotinstSlave.java b/src/main/java/hudson/plugins/spotinst/slave/SpotinstSlave.java
index 2c3830b..a106b50 100644
--- a/src/main/java/hudson/plugins/spotinst/slave/SpotinstSlave.java
+++ b/src/main/java/hudson/plugins/spotinst/slave/SpotinstSlave.java
@@ -1,7 +1,10 @@
package hudson.plugins.spotinst.slave;
import hudson.Extension;
-import hudson.model.*;
+import hudson.model.Computer;
+import hudson.model.Descriptor;
+import hudson.model.Node;
+import hudson.model.Slave;
import hudson.plugins.spotinst.cloud.BaseSpotinstCloud;
import hudson.slaves.*;
import jenkins.model.Jenkins;
diff --git a/src/test/java/hudson/plugins/spotinst/SpotinstCloudTest.java b/src/test/java/hudson/plugins/spotinst/SpotinstCloudTest.java
index 80e5f2d..69a18fb 100644
--- a/src/test/java/hudson/plugins/spotinst/SpotinstCloudTest.java
+++ b/src/test/java/hudson/plugins/spotinst/SpotinstCloudTest.java
@@ -4,7 +4,10 @@
import hudson.model.Node;
import hudson.plugins.spotinst.api.infra.ApiResponse;
import hudson.plugins.spotinst.cloud.*;
-import hudson.plugins.spotinst.common.*;
+import hudson.plugins.spotinst.common.AwsInstanceTypeEnum;
+import hudson.plugins.spotinst.common.ConnectionMethodEnum;
+import hudson.plugins.spotinst.common.GroupLockingManager;
+import hudson.plugins.spotinst.common.SpotinstContext;
import hudson.plugins.spotinst.common.AwsInstanceTypeEnum;
import hudson.plugins.spotinst.model.aws.AwsGroupInstance;
import hudson.plugins.spotinst.model.aws.AwsScaleResultNewSpot;