Skip to content

Commit edcbda1

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

File tree

3 files changed

+24
-3
lines changed

3 files changed

+24
-3
lines changed

Diff for: src/main/java/io/javaoperatorsdk/operator/glue/dependent/GenericDependentResource.java

+14-1
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,9 @@
44
import java.util.Optional;
55
import java.util.Set;
66

7+
import org.slf4j.Logger;
8+
import org.slf4j.LoggerFactory;
9+
710
import io.fabric8.kubernetes.api.model.GenericKubernetesResource;
811
import io.fabric8.kubernetes.client.utils.Serialization;
912
import io.javaoperatorsdk.operator.api.reconciler.Context;
@@ -24,6 +27,8 @@ public class GenericDependentResource
2427
Updater<GenericKubernetesResource, Glue>,
2528
Creator<GenericKubernetesResource, Glue> {
2629

30+
private static final Logger log = LoggerFactory.getLogger(GenericDependentResource.class);
31+
2732
protected final GenericKubernetesResource desired;
2833
protected final String desiredTemplate;
2934
protected final String name;
@@ -104,7 +109,15 @@ protected Optional<GenericKubernetesResource> selectTargetSecondaryResource(
104109
Glue primary,
105110
Context<Glue> context) {
106111

107-
var res = context.getSecondaryResources(GenericKubernetesResource.class)
112+
var allSecondaryResources = context.getSecondaryResources(GenericKubernetesResource.class);
113+
if (log.isDebugEnabled()) {
114+
log.debug("All secondary resources for DR: {}, resources: {}", name,
115+
allSecondaryResources.stream()
116+
.map(r -> "{ Name: %s; Namespace: %s }".formatted(r.getMetadata().getName(),
117+
r.getMetadata().getNamespace()))
118+
.toList());
119+
}
120+
var res = allSecondaryResources
108121
.stream()
109122
.filter(r -> r.getKind().equals(getGroupVersionKind().getKind()) &&
110123
r.getApiVersion().equals(getGroupVersionKind().apiVersion()) &&

Diff for: src/main/java/io/javaoperatorsdk/operator/glue/reconciler/glue/GlueReconciler.java

+7-1
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,8 @@
2727
import io.javaoperatorsdk.operator.glue.reconciler.ValidationAndStatusHandler;
2828
import io.javaoperatorsdk.operator.glue.reconciler.operator.GlueOperatorReconciler;
2929
import io.javaoperatorsdk.operator.glue.templating.GenericTemplateHandler;
30+
import io.javaoperatorsdk.operator.processing.GroupVersionKind;
31+
import io.javaoperatorsdk.operator.processing.dependent.kubernetes.GroupVersionKindPlural;
3032
import io.javaoperatorsdk.operator.processing.dependent.workflow.Condition;
3133
import io.javaoperatorsdk.operator.processing.dependent.workflow.KubernetesResourceDeletedCondition;
3234
import io.javaoperatorsdk.operator.processing.dependent.workflow.WorkflowBuilder;
@@ -199,7 +201,11 @@ private void createAndAddDependentToWorkflow(Glue primary, Context<Glue> context
199201
var name = genericTemplateHandler.processTemplate(Utils.getName(spec), primary, false, context);
200202
var dr = createDependentResource(name, spec, leafDependent, resourceInSameNamespaceAsPrimary,
201203
targetNamespace.orElse(null));
202-
var gvk = dr.getGroupVersionKind();
204+
GroupVersionKind gvk = dr.getGroupVersionKind();
205+
// remove when fixed in josdk
206+
if (gvk instanceof GroupVersionKindPlural gvkp) {
207+
gvk = new GroupVersionKind(gvkp.getGroup(), gvkp.getVersion(), gvkp.getKind());
208+
}
203209

204210
var es = informerRegister.registerInformer(context, gvk, primary);
205211
dr.setEventSource(es);

Diff for: src/main/java/io/javaoperatorsdk/operator/glue/reconciler/glue/InformerRegister.java

+3-1
Original file line numberDiff line numberDiff line change
@@ -105,9 +105,11 @@ public InformerEventSource<GenericKubernetesResource, Glue> registerInformer(
105105

106106
var newInformer = informerProducer.createInformer(configBuilder.build(), context);
107107
log.debug("Registering informer for gvk: {}", gvk);
108-
return (InformerEventSource<GenericKubernetesResource, Glue>) context
108+
var resultInformer = (InformerEventSource<GenericKubernetesResource, Glue>) context
109109
.eventSourceRetriever()
110110
.dynamicallyRegisterEventSource(newInformer);
111+
log.debug("Actual new informer registered: {}", resultInformer == newInformer);
112+
return resultInformer;
111113
}
112114

113115
public synchronized void deRegisterInformer(GroupVersionKind groupVersionKind,

0 commit comments

Comments
 (0)