Skip to content

Commit 3e8bcaf

Browse files
committed
fix: bump kubernetes-client to 7.0.0 (redhat-developer#921)
Signed-off-by: Andre Dietisheim <[email protected]>
1 parent 01b2033 commit 3e8bcaf

File tree

20 files changed

+440
-315
lines changed

20 files changed

+440
-315
lines changed

gradle/libs.versions.toml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
[versions]
22
# libraries
33
junit = "4.13.2"
4-
openshift-client = "6.12.0"
5-
devtools-common = "1.9.7-SNAPSHOT"
4+
openshift-client = "7.0.0"
5+
devtools-common = "1.9.7"
66
keycloak = "24.0.5"
77
jsonwebtoken = "0.12.6"
88
retrofit2 = "2.11.0"

src/it/java/org/jboss/tools/intellij/openshift/utils/OdoCluster.java

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -10,19 +10,18 @@
1010
******************************************************************************/
1111
package org.jboss.tools.intellij.openshift.utils;
1212

13-
import org.jboss.tools.intellij.openshift.utils.oc.Oc;
14-
1513
import java.io.IOException;
14+
import org.jboss.tools.intellij.openshift.utils.oc.Oc;
1615

1716
public class OdoCluster {
1817

1918
public static final OdoCluster INSTANCE = new OdoCluster();
2019

21-
private static final String CLUSTER_URL = System.getenv("CLUSTER_URL");
20+
public static final String CLUSTER_URL = System.getenv("CLUSTER_URL");
2221

23-
private static final String CLUSTER_USER = System.getenv("CLUSTER_USER");
22+
public static final String CLUSTER_USER = System.getenv("CLUSTER_USER");
2423

25-
private static final String CLUSTER_PASSWORD = System.getenv("CLUSTER_PASSWORD");
24+
public static final String CLUSTER_PASSWORD = System.getenv("CLUSTER_PASSWORD");
2625

2726
public void login(Oc oc) throws IOException {
2827
if (CLUSTER_URL != null && !oc.getMasterUrl().toString().startsWith(CLUSTER_URL)) {

src/it/java/org/jboss/tools/intellij/openshift/utils/ToolFactoryTest.java

Lines changed: 13 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -11,30 +11,38 @@
1111
package org.jboss.tools.intellij.openshift.utils;
1212

1313
import com.intellij.testFramework.fixtures.BasePlatformTestCase;
14+
import io.fabric8.kubernetes.client.KubernetesClient;
15+
import java.util.concurrent.ExecutionException;
1416
import org.jboss.tools.intellij.openshift.utils.ToolFactory.Tool;
1517
import org.jboss.tools.intellij.openshift.utils.helm.Helm;
1618
import org.jboss.tools.intellij.openshift.utils.oc.Oc;
1719
import org.jboss.tools.intellij.openshift.utils.odo.Odo;
1820
import org.jboss.tools.intellij.openshift.utils.odo.OdoDelegate;
1921

20-
import java.util.concurrent.ExecutionException;
21-
2222
public class ToolFactoryTest extends BasePlatformTestCase {
2323

24+
private KubernetesClient client;
25+
26+
@Override
27+
protected void setUp() throws Exception {
28+
super.setUp();
29+
this.client = new KubernetesClientFactory().create();
30+
}
31+
2432
public void testGetOdo() throws ExecutionException, InterruptedException {
25-
Tool<OdoDelegate> tool = ToolFactory.getInstance().createOdo(getProject()).get();
33+
Tool<OdoDelegate> tool = ToolFactory.getInstance().createOdo(client, getProject()).get();
2634
Odo odo = tool.get();
2735
assertNotNull(odo);
2836
}
2937

3038
public void testGetHelm() throws ExecutionException, InterruptedException {
31-
Tool<Helm> tool = ToolFactory.getInstance().createHelm(getProject()).get();
39+
Tool<Helm> tool = ToolFactory.getInstance().createHelm().get();
3240
Helm helm = tool.get();
3341
assertNotNull(helm);
3442
}
3543

3644
public void testGetOc() throws ExecutionException, InterruptedException {
37-
Tool<Oc> tool = ToolFactory.getInstance().createOc(getProject()).get();
45+
Tool<Oc> tool = ToolFactory.getInstance().createOc(client).get();
3846
Oc oc = tool.get();
3947
assertNotNull(oc);
4048
}

src/it/java/org/jboss/tools/intellij/openshift/utils/helm/HelmCliSearchTest.java

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -16,22 +16,22 @@
1616

1717
public class HelmCliSearchTest extends HelmCliTest {
1818

19-
public void testSearch_should_list_all_charts() throws IOException {
20-
// given openshift a repo was added to helm
21-
// when
22-
List<Chart> charts = helm.search();
23-
// then
24-
assertFalse(charts.isEmpty());
25-
}
19+
public void testSearch_should_list_all_charts() throws IOException {
20+
// given openshift a repo was added to helm
21+
// when
22+
List<Chart> charts = helm.search();
23+
// then
24+
assertFalse(charts.isEmpty());
25+
}
2626

27-
public void testSearch_should_list_kuberos() throws IOException {
28-
// given openshift repo was added to helm
29-
String id = Charts.CHART_KUBEROS;
30-
// when
31-
List<Chart> charts = helm.search(id);
32-
// then
33-
boolean found = charts.stream().anyMatch((Chart chart) -> chart.getName().contains(id));
34-
assertTrue(found);
35-
}
27+
public void testSearch_should_list_kuberos() throws IOException {
28+
// given openshift repo was added to helm
29+
String id = Charts.CHART_KUBEROS;
30+
// when
31+
List<Chart> charts = helm.search(id);
32+
// then
33+
boolean found = charts.stream().anyMatch((Chart chart) -> chart.getName().contains(id));
34+
assertTrue(found);
35+
}
3636

3737
}

src/it/java/org/jboss/tools/intellij/openshift/utils/helm/HelmCliTest.java

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -11,37 +11,39 @@
1111
package org.jboss.tools.intellij.openshift.utils.helm;
1212

1313
import com.intellij.testFramework.fixtures.BasePlatformTestCase;
14+
import io.fabric8.kubernetes.client.KubernetesClient;
15+
import java.util.Random;
16+
import org.jboss.tools.intellij.openshift.utils.KubernetesClientFactory;
1417
import org.jboss.tools.intellij.openshift.utils.OdoCluster;
1518
import org.jboss.tools.intellij.openshift.utils.ToolFactory;
1619
import org.jboss.tools.intellij.openshift.utils.ToolFactory.Tool;
1720
import org.jboss.tools.intellij.openshift.utils.oc.Oc;
1821
import org.jboss.tools.intellij.openshift.utils.odo.Odo;
1922
import org.jboss.tools.intellij.openshift.utils.odo.OdoDelegate;
2023

21-
import java.util.Random;
22-
2324
public abstract class HelmCliTest extends BasePlatformTestCase {
2425

2526
protected Helm helm;
26-
27+
private KubernetesClient client;
2728
private final String projectName = "prj-" + new Random().nextInt();
2829

2930
@Override
3031
protected void setUp() throws Exception {
3132
super.setUp();
32-
Tool<OdoDelegate> odoTool = ToolFactory.getInstance().createOdo(getProject()).get();
33-
Tool<Oc> ocTool = ToolFactory.getInstance().createOc(getProject()).get();
33+
this.client = new KubernetesClientFactory().create();
34+
Tool<OdoDelegate> odoTool = ToolFactory.getInstance().createOdo(client, getProject()).get();
35+
Tool<Oc> ocTool = ToolFactory.getInstance().createOc(client).get();
3436
Odo odo = odoTool.get();
3537
OdoCluster.INSTANCE.login(ocTool.get());
3638
odo.createProject(projectName);
37-
Tool<Helm> helmTool = ToolFactory.getInstance().createHelm(getProject()).get();
39+
Tool<Helm> helmTool = ToolFactory.getInstance().createHelm().get();
3840
this.helm = helmTool.get();
3941
Charts.addRepository(Charts.REPOSITORY_STABLE, helm);
4042
}
4143

4244
@Override
4345
protected void tearDown() throws Exception {
44-
Tool<OdoDelegate> tool = ToolFactory.getInstance().createOdo(getProject()).getNow(null);
46+
Tool<OdoDelegate> tool = ToolFactory.getInstance().createOdo(client, getProject()).getNow(null);
4547
if (tool != null) {
4648
tool.get().deleteProject(projectName);
4749
}

src/it/java/org/jboss/tools/intellij/openshift/utils/odo/OdoCliTest.java

Lines changed: 26 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -14,22 +14,23 @@
1414
import com.intellij.openapi.util.io.FileUtil;
1515
import com.intellij.testFramework.fixtures.BasePlatformTestCase;
1616
import com.redhat.devtools.intellij.common.utils.MessagesHelper;
17+
import io.fabric8.kubernetes.client.KubernetesClient;
18+
import java.io.File;
19+
import java.io.IOException;
20+
import java.util.Random;
21+
import java.util.concurrent.CompletableFuture;
22+
import java.util.concurrent.ExecutionException;
23+
import java.util.concurrent.TimeUnit;
1724
import org.jboss.tools.intellij.openshift.tree.application.ApplicationRootNodeOdo;
1825
import org.jboss.tools.intellij.openshift.tree.application.ApplicationsRootNode;
26+
import org.jboss.tools.intellij.openshift.utils.KubernetesClientFactory;
1927
import org.jboss.tools.intellij.openshift.utils.OdoCluster;
2028
import org.jboss.tools.intellij.openshift.utils.ToolFactory;
2129
import org.junit.After;
2230
import org.junit.Before;
2331
import org.junit.runner.RunWith;
2432
import org.junit.runners.JUnit4;
2533

26-
import java.io.File;
27-
import java.io.IOException;
28-
import java.util.Random;
29-
import java.util.concurrent.CompletableFuture;
30-
import java.util.concurrent.ExecutionException;
31-
import java.util.concurrent.TimeUnit;
32-
3334
import static org.awaitility.Awaitility.with;
3435
import static org.jboss.tools.intellij.openshift.Constants.PLUGIN_FOLDER;
3536
import static org.mockito.Mockito.mock;
@@ -64,34 +65,40 @@ public abstract class OdoCliTest extends BasePlatformTestCase {
6465
protected static final String REGISTRY_PREFIX = "reg";
6566

6667
private TestDialog previousTestDialog;
68+
private KubernetesClient client;
6769

6870
@Before
6971
public void init() throws Exception {
70-
previousTestDialog = MessagesHelper.setTestDialog(TestDialog.OK);
71-
ToolFactory.getInstance().createOc(getProject()).whenComplete((ocTool, throwable) -> {
72-
try {
73-
OdoCluster.INSTANCE.login(ocTool.get());
74-
} catch (IOException e) {
75-
throw new RuntimeException(e);
76-
}
77-
});
78-
odo = getOdo().get();
72+
this.previousTestDialog = MessagesHelper.setTestDialog(TestDialog.OK);
73+
this.client = new KubernetesClientFactory().create();
74+
loginCluster();
75+
this.odo = createOdo(client).get();
7976
}
8077

8178
@After
8279
public void cleanup() {
8380
MessagesHelper.setTestDialog(previousTestDialog);
8481
}
8582

86-
private CompletableFuture<OdoFacade> getOdo() {
83+
private void loginCluster() {
84+
ToolFactory.getInstance().createOc(client).whenComplete((ocTool, throwable) -> {
85+
try {
86+
OdoCluster.INSTANCE.login(ocTool.get());
87+
} catch (IOException e) {
88+
throw new RuntimeException("Could not log into " + OdoCluster.CLUSTER_URL + " as user " + OdoCluster.CLUSTER_USER, e);
89+
}
90+
});
91+
}
92+
93+
private CompletableFuture<OdoFacade> createOdo(KubernetesClient client) {
8794
return ToolFactory.getInstance()
88-
.createOdo(getProject())
95+
.createOdo(client, getProject())
8996
.thenApply(tool -> new ApplicationRootNodeOdo(tool.get(), false, rootNode, processHelper));
9097
}
9198

9299
protected void createProject(String project) throws IOException, ExecutionException, InterruptedException {
93100
odo.createProject(project);
94-
odo = getOdo().get();
101+
odo = createOdo(client).get();
95102
}
96103

97104
protected void createComponent(String project, String component, String starter, String projectPath) throws IOException, ExecutionException, InterruptedException {

src/it/java/org/jboss/tools/intellij/openshift/utils/odo/OdoKubernetesClientTest.java

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -27,10 +27,6 @@
2727
import io.fabric8.openshift.api.model.ProjectList;
2828
import io.fabric8.openshift.client.OpenShiftClient;
2929
import io.fabric8.openshift.client.dsl.ProjectOperation;
30-
import org.jboss.tools.intellij.openshift.utils.Cli;
31-
import org.junit.Before;
32-
import org.junit.Test;
33-
3430
import java.io.IOException;
3531
import java.net.HttpURLConnection;
3632
import java.net.MalformedURLException;
@@ -40,7 +36,9 @@
4036
import java.util.List;
4137
import java.util.Map;
4238
import java.util.function.Function;
43-
import java.util.function.Supplier;
39+
import org.jboss.tools.intellij.openshift.utils.Cli;
40+
import org.junit.Before;
41+
import org.junit.Test;
4442

4543
import static org.fest.assertions.Assertions.assertThat;
4644
import static org.mockito.ArgumentMatchers.anyString;
@@ -256,11 +254,10 @@ private OdoCli createOdo(KubernetesClient kubernetesClient, OpenShiftClient open
256254
MessageBus bus = mock(MessageBus.class);
257255
doReturn(connection)
258256
.when(bus).connect();
259-
Supplier<KubernetesClient> kubernetesClientFactory = () -> kubernetesClient;
260257
Function<KubernetesClient, OpenShiftClient> openShiftClientFactory = client -> openShiftClient;
261258
Function<String, Map<String, String>> envVarFactory = url -> new HashMap<>();
262259
Cli.TelemetryReport telemetryReport = mock(Cli.TelemetryReport.class);
263-
return new OdoCli(project, command, bus, kubernetesClientFactory, openShiftClientFactory, envVarFactory, telemetryReport);
260+
return new OdoCli(command, project, kubernetesClient, bus, openShiftClientFactory, envVarFactory, telemetryReport);
264261
}
265262

266263
private static <R extends HasMetadata> R mockResource(String name, Class<R> clazz) {

src/main/java/org/jboss/tools/intellij/openshift/actions/HelmAction.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ public void actionPerformed(AnActionEvent anActionEvent, TreePath[] path, Object
5757

5858
protected Helm getHelm(AnActionEvent anActionEvent) {
5959
try {
60-
return ActionUtils.getApplicationRootNode(anActionEvent).getHelm(true);
60+
return ActionUtils.getApplicationRootNode(anActionEvent).getHelm();
6161
} catch (Exception e) {
6262
LOGGER.warn("Could not get helm: {}", e.getMessage(), e);
6363
return null;

src/main/java/org/jboss/tools/intellij/openshift/actions/OcAction.java

Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -28,16 +28,17 @@ protected OcAction(Class... filters) {
2828
@Override
2929
public void actionPerformed(AnActionEvent anActionEvent, TreePath path, Object selected) {
3030
setTelemetrySender(new TelemetrySender(PREFIX_ACTION + getTelemetryActionName()));
31-
ActionUtils.getApplicationRootNode(anActionEvent).getOcTool().whenComplete(
32-
(ocTool, throwable) -> {
33-
if (ocTool != null) {
34-
Oc oc = ocTool.get();
35-
if (oc != null) {
36-
this.actionPerformedOnSelectedObject(anActionEvent, getElement(selected), oc);
31+
ActionUtils.getApplicationRootNode(anActionEvent).getOcTool()
32+
.whenComplete(
33+
(ocTool, throwable) -> {
34+
if (ocTool != null) {
35+
Oc oc = ocTool.get();
36+
if (oc != null) {
37+
this.actionPerformedOnSelectedObject(anActionEvent, getElement(selected), oc);
38+
}
3739
}
3840
}
39-
}
40-
);
41+
);
4142
}
4243

4344
public abstract void actionPerformedOnSelectedObject(AnActionEvent anActionEvent, Object selected, @NotNull Oc oc);

src/main/java/org/jboss/tools/intellij/openshift/actions/project/ChangeActiveProjectAction.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
******************************************************************************/
1111
package org.jboss.tools.intellij.openshift.actions.project;
1212

13+
import com.intellij.openapi.actionSystem.ActionUpdateThread;
1314
import com.intellij.openapi.actionSystem.AnActionEvent;
1415
import com.intellij.openapi.application.ApplicationManager;
1516
import com.intellij.openapi.progress.ProgressIndicator;
@@ -189,4 +190,9 @@ public void run() {
189190
);
190191
}
191192
}
193+
194+
@Override
195+
public @NotNull ActionUpdateThread getActionUpdateThread() {
196+
return ActionUpdateThread.BGT;
197+
}
192198
}

0 commit comments

Comments
 (0)