Skip to content

Commit 4db79a7

Browse files
committed
cleanup
1 parent e545287 commit 4db79a7

File tree

10 files changed

+28
-174
lines changed

10 files changed

+28
-174
lines changed

spring-cloud-kubernetes-integration-tests/spring-cloud-kubernetes-fabric8-client-catalog-watcher/src/test/java/org/springframework/cloud/kubernetes/fabric8/catalog/watch/TestAssertions.java

Lines changed: 2 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -23,9 +23,6 @@
2323

2424
import org.assertj.core.api.Assertions;
2525
import org.awaitility.Awaitility;
26-
import reactor.netty.http.client.HttpClient;
27-
import reactor.util.retry.Retry;
28-
import reactor.util.retry.RetryBackoffSpec;
2926

3027
import org.springframework.boot.test.system.CapturedOutput;
3128
import org.springframework.cloud.kubernetes.commons.discovery.EndpointNameAndNamespace;
@@ -34,11 +31,12 @@
3431
import org.springframework.core.ParameterizedTypeReference;
3532
import org.springframework.core.ResolvableType;
3633
import org.springframework.http.HttpMethod;
37-
import org.springframework.http.client.reactive.ReactorClientHttpConnector;
3834
import org.springframework.web.reactive.function.client.WebClient;
3935

4036
import static org.assertj.core.api.Assertions.assertThat;
4137
import static org.awaitility.Awaitility.await;
38+
import static org.springframework.cloud.kubernetes.integration.tests.commons.Commons.builder;
39+
import static org.springframework.cloud.kubernetes.integration.tests.commons.Commons.retrySpec;
4240

4341
/**
4442
* @author wind57
@@ -116,12 +114,4 @@ static void invokeAndAssert(Util util, Set<String> namespaces, int port, String
116114

117115
}
118116

119-
private static WebClient.Builder builder() {
120-
return WebClient.builder().clientConnector(new ReactorClientHttpConnector(HttpClient.create()));
121-
}
122-
123-
private static RetryBackoffSpec retrySpec() {
124-
return Retry.fixedDelay(15, Duration.ofSeconds(1)).filter(Objects::nonNull);
125-
}
126-
127117
}

spring-cloud-kubernetes-integration-tests/spring-cloud-kubernetes-fabric8-client-discovery/src/test/java/org/springframework/cloud/kubernetes/fabric8/client/discovery/TestAssertions.java

Lines changed: 2 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -22,23 +22,20 @@
2222
import java.util.Map;
2323
import java.util.Objects;
2424

25-
import reactor.netty.http.client.HttpClient;
26-
import reactor.util.retry.Retry;
27-
import reactor.util.retry.RetryBackoffSpec;
28-
2925
import org.springframework.boot.test.json.BasicJsonTester;
3026
import org.springframework.boot.test.system.CapturedOutput;
3127
import org.springframework.cloud.client.ServiceInstance;
3228
import org.springframework.cloud.client.discovery.DiscoveryClient;
3329
import org.springframework.cloud.client.discovery.ReactiveDiscoveryClient;
3430
import org.springframework.cloud.kubernetes.commons.discovery.DefaultKubernetesServiceInstance;
3531
import org.springframework.http.HttpMethod;
36-
import org.springframework.http.client.reactive.ReactorClientHttpConnector;
3732
import org.springframework.web.reactive.function.client.WebClient;
3833

3934
import static java.util.AbstractMap.SimpleEntry;
4035
import static java.util.Map.Entry;
4136
import static org.assertj.core.api.Assertions.assertThat;
37+
import static org.springframework.cloud.kubernetes.integration.tests.commons.Commons.builder;
38+
import static org.springframework.cloud.kubernetes.integration.tests.commons.Commons.retrySpec;
4239
import static org.testcontainers.shaded.org.awaitility.Awaitility.await;
4340

4441
/**
@@ -321,12 +318,4 @@ private static void waitForLogStatement(CapturedOutput output, String message) {
321318
.until(() -> output.getOut().contains(message));
322319
}
323320

324-
private static WebClient.Builder builder() {
325-
return WebClient.builder().clientConnector(new ReactorClientHttpConnector(HttpClient.create()));
326-
}
327-
328-
private static RetryBackoffSpec retrySpec() {
329-
return Retry.fixedDelay(15, Duration.ofSeconds(1)).filter(Objects::nonNull);
330-
}
331-
332321
}

spring-cloud-kubernetes-integration-tests/spring-cloud-kubernetes-fabric8-client-istio/src/test/java/org/springframework/cloud/kubernetes/fabric8/client/istio/Fabric8IstioIT.java

Lines changed: 3 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -17,9 +17,7 @@
1717
package org.springframework.cloud.kubernetes.fabric8.client.istio;
1818

1919
import java.io.InputStream;
20-
import java.time.Duration;
2120
import java.util.List;
22-
import java.util.Objects;
2321

2422
import io.fabric8.kubernetes.api.model.Service;
2523
import io.fabric8.kubernetes.api.model.apps.Deployment;
@@ -31,18 +29,17 @@
3129
import org.junit.jupiter.api.Test;
3230
import org.testcontainers.containers.Container;
3331
import org.testcontainers.k3s.K3sContainer;
34-
import reactor.netty.http.client.HttpClient;
35-
import reactor.util.retry.Retry;
36-
import reactor.util.retry.RetryBackoffSpec;
3732

3833
import org.springframework.cloud.kubernetes.integration.tests.commons.Commons;
3934
import org.springframework.cloud.kubernetes.integration.tests.commons.Images;
4035
import org.springframework.cloud.kubernetes.integration.tests.commons.Phase;
4136
import org.springframework.cloud.kubernetes.integration.tests.commons.fabric8_client.Util;
4237
import org.springframework.http.HttpMethod;
43-
import org.springframework.http.client.reactive.ReactorClientHttpConnector;
4438
import org.springframework.web.reactive.function.client.WebClient;
4539

40+
import static org.springframework.cloud.kubernetes.integration.tests.commons.Commons.builder;
41+
import static org.springframework.cloud.kubernetes.integration.tests.commons.Commons.retrySpec;
42+
4643
/**
4744
* @author wind57
4845
*/
@@ -133,14 +130,6 @@ private static void appManifests(Phase phase) {
133130

134131
}
135132

136-
private WebClient.Builder builder() {
137-
return WebClient.builder().clientConnector(new ReactorClientHttpConnector(HttpClient.create()));
138-
}
139-
140-
private RetryBackoffSpec retrySpec() {
141-
return Retry.fixedDelay(15, Duration.ofSeconds(1)).filter(Objects::nonNull);
142-
}
143-
144133
private static String istioctlPodName() {
145134
try {
146135
return K3S

spring-cloud-kubernetes-test-support/pom.xml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,10 +22,17 @@
2222
<groupId>org.springframework.boot</groupId>
2323
<artifactId>spring-boot-starter-test</artifactId>
2424
</dependency>
25+
26+
<dependency>
27+
<groupId>org.springframework.boot</groupId>
28+
<artifactId>spring-boot-starter-webflux</artifactId>
29+
</dependency>
30+
2531
<dependency>
2632
<groupId>io.kubernetes</groupId>
2733
<artifactId>client-java-extended</artifactId>
2834
</dependency>
35+
2936
<dependency>
3037
<groupId>io.fabric8</groupId>
3138
<artifactId>kubernetes-client</artifactId>

spring-cloud-kubernetes-test-support/src/main/java/org/springframework/cloud/kubernetes/integration/tests/commons/Commons.java

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@
2626
import java.time.Duration;
2727
import java.util.Arrays;
2828
import java.util.List;
29+
import java.util.Objects;
2930
import java.util.Optional;
3031
import java.util.concurrent.TimeUnit;
3132

@@ -36,12 +37,17 @@
3637
import org.apache.commons.logging.Log;
3738
import org.apache.commons.logging.LogFactory;
3839
import org.junit.jupiter.api.Assertions;
40+
import org.springframework.http.client.reactive.ReactorClientHttpConnector;
41+
import org.springframework.web.reactive.function.client.WebClient;
3942
import org.testcontainers.containers.Container;
4043
import org.testcontainers.k3s.K3sContainer;
4144

4245
import org.springframework.core.io.ClassPathResource;
4346
import org.springframework.util.StreamUtils;
4447
import org.springframework.util.StringUtils;
48+
import reactor.netty.http.client.HttpClient;
49+
import reactor.util.retry.Retry;
50+
import reactor.util.retry.RetryBackoffSpec;
4551

4652
import static org.awaitility.Awaitility.await;
4753
import static org.springframework.cloud.kubernetes.integration.tests.commons.Constants.KUBERNETES_VERSION_FILE;
@@ -264,6 +270,14 @@ public static void waitForLogStatement(String message, K3sContainer k3sContainer
264270

265271
}
266272

273+
public static WebClient.Builder builder() {
274+
return WebClient.builder().clientConnector(new ReactorClientHttpConnector(HttpClient.create()));
275+
}
276+
277+
public static RetryBackoffSpec retrySpec() {
278+
return Retry.fixedDelay(15, Duration.ofSeconds(1)).filter(Objects::nonNull);
279+
}
280+
267281
private static void loadImageFromPath(String tarName, K3sContainer container) {
268282
await().atMost(Duration.ofMinutes(2)).pollInterval(Duration.ofSeconds(1)).until(() -> {
269283
Container.ExecResult result = container.execInContainer("ctr", "i", "import", TMP_IMAGES + "/" + tarName);

spring-cloud-kubernetes-test-support/src/main/java/org/springframework/cloud/kubernetes/integration/tests/commons/fabric8_client/Util.java

Lines changed: 0 additions & 92 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,6 @@
2020
import java.time.Duration;
2121
import java.util.List;
2222
import java.util.Map;
23-
import java.util.Optional;
2423
import java.util.Set;
2524
import java.util.concurrent.TimeUnit;
2625

@@ -33,7 +32,6 @@
3332
import io.fabric8.kubernetes.api.model.Service;
3433
import io.fabric8.kubernetes.api.model.ServiceAccount;
3534
import io.fabric8.kubernetes.api.model.apps.Deployment;
36-
import io.fabric8.kubernetes.api.model.apps.DeploymentList;
3735
import io.fabric8.kubernetes.api.model.networking.v1.Ingress;
3836
import io.fabric8.kubernetes.api.model.networking.v1.IngressLoadBalancerIngress;
3937
import io.fabric8.kubernetes.api.model.rbac.ClusterRole;
@@ -42,8 +40,6 @@
4240
import io.fabric8.kubernetes.client.Config;
4341
import io.fabric8.kubernetes.client.KubernetesClient;
4442
import io.fabric8.kubernetes.client.KubernetesClientBuilder;
45-
import io.fabric8.kubernetes.client.dsl.base.PatchContext;
46-
import io.fabric8.kubernetes.client.dsl.base.PatchType;
4743
import io.fabric8.kubernetes.client.utils.Serialization;
4844
import jakarta.annotation.Nullable;
4945
import org.apache.commons.logging.Log;
@@ -54,7 +50,6 @@
5450
import org.springframework.cloud.kubernetes.integration.tests.commons.Phase;
5551

5652
import static org.awaitility.Awaitility.await;
57-
import static org.junit.jupiter.api.Assertions.fail;
5853
import static org.springframework.cloud.kubernetes.integration.tests.commons.Commons.loadImage;
5954
import static org.springframework.cloud.kubernetes.integration.tests.commons.Commons.pomVersion;
6055
import static org.springframework.cloud.kubernetes.integration.tests.commons.Commons.pullImage;
@@ -245,40 +240,6 @@ public void deleteNamespace(String name) {
245240

246241
}
247242

248-
public void setUpClusterWide(String serviceAccountNamespace, Set<String> namespaces) {
249-
InputStream clusterRoleBindingAsStream = inputStream("cluster/cluster-role.yaml");
250-
InputStream serviceAccountAsStream = inputStream("cluster/service-account.yaml");
251-
InputStream roleBindingAsStream = inputStream("cluster/role-binding.yaml");
252-
253-
ClusterRole clusterRole = client.rbac().clusterRoles().load(clusterRoleBindingAsStream).item();
254-
if (client.rbac().clusterRoles().withName(clusterRole.getMetadata().getName()).get() == null) {
255-
client.rbac().clusterRoles().resource(clusterRole).create();
256-
}
257-
258-
ServiceAccount serviceAccountFromStream = client.serviceAccounts().load(serviceAccountAsStream).item();
259-
serviceAccountFromStream.getMetadata().setNamespace(serviceAccountNamespace);
260-
if (client.serviceAccounts()
261-
.inNamespace(serviceAccountNamespace)
262-
.withName(serviceAccountFromStream.getMetadata().getName())
263-
.get() == null) {
264-
client.serviceAccounts().inNamespace(serviceAccountNamespace).resource(serviceAccountFromStream).create();
265-
}
266-
267-
RoleBinding roleBindingFromStream = client.rbac().roleBindings().load(roleBindingAsStream).item();
268-
namespaces.forEach(namespace -> {
269-
roleBindingFromStream.getMetadata().setNamespace(namespace);
270-
271-
if (client.rbac()
272-
.roleBindings()
273-
.inNamespace(namespace)
274-
.withName(roleBindingFromStream.getMetadata().getName())
275-
.get() == null) {
276-
client.rbac().roleBindings().inNamespace(namespace).resource(roleBindingFromStream).create();
277-
}
278-
});
279-
280-
}
281-
282243
public void createAndWait(String namespace, @Nullable ConfigMap configMap, @Nullable Secret secret) {
283244
if (configMap != null) {
284245
client.configMaps().resource(configMap).create();
@@ -486,59 +447,6 @@ public void waitForIngress(String namespace, Ingress ingress) {
486447

487448
}
488449

489-
public void patchWithReplace(String imageName, String deploymentName, String namespace, String patchBody,
490-
Map<String, String> labels) {
491-
String body = patchBody.replace("image_name_here", imageName);
492-
493-
client.apps()
494-
.deployments()
495-
.inNamespace(namespace)
496-
.withName(deploymentName)
497-
.patch(PatchContext.of(PatchType.JSON_MERGE), body);
498-
499-
waitForDeploymentAfterPatch(deploymentName, namespace, labels);
500-
}
501-
502-
private void waitForDeploymentAfterPatch(String deploymentName, String namespace, Map<String, String> labels) {
503-
try {
504-
await().pollDelay(Duration.ofSeconds(4))
505-
.pollInterval(Duration.ofSeconds(3))
506-
.atMost(60, TimeUnit.SECONDS)
507-
.until(() -> isDeploymentReadyAfterPatch(deploymentName, namespace, labels));
508-
}
509-
catch (Exception e) {
510-
throw new RuntimeException(e);
511-
}
512-
513-
}
514-
515-
private boolean isDeploymentReadyAfterPatch(String deploymentName, String namespace, Map<String, String> labels) {
516-
517-
DeploymentList deployments = client.apps().deployments().inNamespace(namespace).list();
518-
519-
if (deployments.getItems().isEmpty()) {
520-
fail("No deployment with name " + deploymentName);
521-
}
522-
523-
Deployment deployment = deployments.getItems()
524-
.stream()
525-
.filter(x -> x.getMetadata().getName().equals(deploymentName))
526-
.findFirst()
527-
.orElseThrow();
528-
// if no replicas are defined, it means only 1 is needed
529-
int replicas = Optional.ofNullable(deployment.getSpec().getReplicas()).orElse(1);
530-
531-
int numberOfPods = client.pods().inNamespace(namespace).withLabels(labels).list().getItems().size();
532-
533-
if (numberOfPods != replicas) {
534-
LOG.info("number of pods not yet stabilized");
535-
return false;
536-
}
537-
538-
return replicas == Optional.ofNullable(deployment.getStatus().getReadyReplicas()).orElse(0);
539-
540-
}
541-
542450
private void innerSetup(String namespace, InputStream serviceAccountAsStream, InputStream roleBindingAsStream,
543451
InputStream roleAsStream) {
544452
ServiceAccount serviceAccountFromStream = client.serviceAccounts()

spring-cloud-kubernetes-test-support/src/main/resources/cluster/cluster-role-binding.yaml

Lines changed: 0 additions & 14 deletions
This file was deleted.

spring-cloud-kubernetes-test-support/src/main/resources/cluster/cluster-role.yaml

Lines changed: 0 additions & 8 deletions
This file was deleted.

spring-cloud-kubernetes-test-support/src/main/resources/cluster/role-binding.yaml

Lines changed: 0 additions & 15 deletions
This file was deleted.

spring-cloud-kubernetes-test-support/src/main/resources/cluster/service-account.yaml

Lines changed: 0 additions & 6 deletions
This file was deleted.

0 commit comments

Comments
 (0)