Skip to content

Commit ef58bef

Browse files
committed
it fix
Signed-off-by: Attila Mészáros <[email protected]>
1 parent f8b3df1 commit ef58bef

File tree

1 file changed

+9
-6
lines changed

1 file changed

+9
-6
lines changed

operator-framework-core/src/main/java/io/javaoperatorsdk/operator/processing/dependent/kubernetes/KubernetesDependentConverter.java

+9-6
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
import java.lang.reflect.InvocationTargetException;
44
import java.util.Set;
55

6+
import io.fabric8.kubernetes.api.model.GenericKubernetesResource;
67
import io.fabric8.kubernetes.api.model.HasMetadata;
78
import io.javaoperatorsdk.operator.api.config.ControllerConfiguration;
89
import io.javaoperatorsdk.operator.api.config.Utils;
@@ -60,12 +61,14 @@ private InformerConfiguration<R> createInformerConfiguration(KubernetesDependent
6061
var resourceType = dependentInstance.resourceType();
6162

6263
InformerConfiguration.InformerConfigurationBuilder informerConfig;
63-
if (resourceType.isAssignableFrom(GenericKubernetesDependentResource.class)) {
64-
if (configAnnotation.informerConfig() == null ||
65-
Constants.NO_VALUE_SET.equals(configAnnotation.informerConfig().groupVersionKind())) {
66-
throw new IllegalStateException(
67-
"Set groupVersionKind should be set when using GenericKubernetesResource");
64+
if (configAnnotation != null && configAnnotation.informerConfig() != null &&
65+
!Constants.NO_VALUE_SET.equals(configAnnotation.informerConfig().groupVersionKind())) {
66+
67+
if (!GenericKubernetesResource.class.isAssignableFrom(resourceType)) {
68+
throw new IllegalStateException("If GroupVersionKind is set the resource type must be " +
69+
"GenericKubernetesDependentResource. For: " + originatingClass.getName());
6870
}
71+
6972
informerConfig = InformerConfiguration.from(
7073
GroupVersionKind.fromString(configAnnotation.informerConfig().groupVersionKind()),
7174
controllerConfig.getResourceClass());
@@ -77,7 +80,7 @@ private InformerConfiguration<R> createInformerConfiguration(KubernetesDependent
7780
informerConfig.withSecondaryToPrimaryMapper(
7881
dependentInstance.getSecondaryToPrimaryMapper().orElse(null));
7982

80-
if (configAnnotation != null) {
83+
if (configAnnotation != null && configAnnotation.informerConfig() != null) {
8184

8285
if (!Constants.NO_VALUE_SET.equals(configAnnotation.informerConfig().name())) {
8386
informerConfig.withName(dependentInstance.name());

0 commit comments

Comments
 (0)