Skip to content

Commit b87fead

Browse files
committed
fix: restore extension functionality
1 parent 5f58904 commit b87fead

File tree

1 file changed

+11
-9
lines changed

1 file changed

+11
-9
lines changed

operator-framework-junit5/src/main/java/io/javaoperatorsdk/operator/junit/AbstractOperatorExtension.java

Lines changed: 11 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,6 @@
1818
import io.fabric8.kubernetes.api.model.NamespaceBuilder;
1919
import io.fabric8.kubernetes.client.DefaultKubernetesClient;
2020
import io.fabric8.kubernetes.client.KubernetesClient;
21-
import io.fabric8.kubernetes.client.dsl.MixedOperation;
2221
import io.fabric8.kubernetes.client.dsl.NonNamespaceOperation;
2322
import io.fabric8.kubernetes.client.dsl.Resource;
2423
import io.fabric8.kubernetes.client.utils.KubernetesResourceUtil;
@@ -35,7 +34,7 @@ public abstract class AbstractOperatorExtension implements HasKubernetesClient,
3534
private static final Logger LOGGER = LoggerFactory.getLogger(AbstractOperatorExtension.class);
3635
public static final int CRD_READY_WAIT = 2000;
3736

38-
private final KubernetesClient kubernetesClient;
37+
private final KubernetesClient kubernetesClient = new DefaultKubernetesClient();
3938
protected final ConfigurationService configurationService;
4039
protected final List<HasMetadata> infrastructure;
4140
protected Duration infrastructureTimeout;
@@ -53,7 +52,6 @@ protected AbstractOperatorExtension(
5352
boolean preserveNamespaceOnError,
5453
boolean waitForNamespaceDeletion) {
5554

56-
this.kubernetesClient = new DefaultKubernetesClient();
5755
this.configurationService = configurationService;
5856
this.infrastructure = infrastructure;
5957
this.infrastructureTimeout = infrastructureTimeout;
@@ -97,12 +95,18 @@ public <T extends HasMetadata> NonNamespaceOperation<T, KubernetesResourceList<T
9795
return kubernetesClient.resources(type).inNamespace(namespace);
9896
}
9997

98+
@SuppressWarnings("unchecked")
99+
private <T extends HasMetadata> NonNamespaceOperation<T, KubernetesResourceList<T>, Resource<T>> resources(
100+
T resource) {
101+
return resources((Class<T>) resource.getClass());
102+
}
103+
100104
public <T extends HasMetadata> T get(Class<T> type, String name) {
101-
return kubernetesClient.resources(type).inNamespace(namespace).withName(name).get();
105+
return resources(type).withName(name).get();
102106
}
103107

104108
public <T extends HasMetadata> T create(T resource) {
105-
return (T) kubernetesClient.resources(resource.getClass()).inNamespace(namespace).create();
109+
return resources(resource).create(resource);
106110
}
107111

108112
@Deprecated(forRemoval = true)
@@ -111,9 +115,7 @@ public <T extends HasMetadata> T create(Class<T> type, T resource) {
111115
}
112116

113117
public <T extends HasMetadata> T replace(T resource) {
114-
final MixedOperation<T, KubernetesResourceList<T>, Resource<T>> resources =
115-
kubernetesClient.resources((Class<T>) resource.getClass());
116-
return resources.inNamespace(namespace).replace(resource);
118+
return resources(resource).replace(resource);
117119
}
118120

119121
@Deprecated(forRemoval = true)
@@ -122,7 +124,7 @@ public <T extends HasMetadata> T replace(Class<T> type, T resource) {
122124
}
123125

124126
public <T extends HasMetadata> boolean delete(T resource) {
125-
return kubernetesClient.resource(resource).inNamespace(namespace).delete();
127+
return resources(resource).delete(resource);
126128
}
127129

128130
@Deprecated(forRemoval = true)

0 commit comments

Comments
 (0)