Skip to content

Commit 65254ba

Browse files
committed
fix: impl, test
1 parent 247b2e1 commit 65254ba

File tree

6 files changed

+15
-14
lines changed

6 files changed

+15
-14
lines changed
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,11 @@
11
package io.javaoperatorsdk.operator.api.reconciler.dependent;
22

3+
import io.fabric8.kubernetes.api.model.HasMetadata;
4+
35
/**
4-
* Marker interface, that can be added in additionally to a {@link Deleter} Dependent Resource. It
5-
* is used to model a situation when a resource is makes sure to delete during reconciliation, but
6+
* Used to describe the situation when a resource is makes sure to delete during reconciliation, but
67
* not during cleanup, since that is handled by the Kubernetes garbage collector. See also:
78
* https://github.com/java-operator-sdk/java-operator-sdk/issues/1127
89
*/
9-
public interface GarbageCollected {
10+
public interface GarbageCollected<P extends HasMetadata> extends Deleter<P> {
1011
}

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

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
package io.javaoperatorsdk.operator.processing.dependent.kubernetes;
22

33
import io.fabric8.kubernetes.api.model.HasMetadata;
4-
import io.javaoperatorsdk.operator.api.reconciler.dependent.Deleter;
54
import io.javaoperatorsdk.operator.api.reconciler.dependent.GarbageCollected;
65
import io.javaoperatorsdk.operator.processing.dependent.Creator;
76
import io.javaoperatorsdk.operator.processing.dependent.Updater;
@@ -15,7 +14,7 @@
1514
public abstract class CRUDKubernetesDependentResource<R extends HasMetadata, P extends HasMetadata>
1615
extends
1716
KubernetesDependentResource<R, P>
18-
implements Creator<R, P>, Updater<R, P>, Deleter<P>, GarbageCollected {
17+
implements Creator<R, P>, Updater<R, P>, GarbageCollected<P> {
1918

2019
public CRUDKubernetesDependentResource(Class<R> resourceType) {
2120
super(resourceType);

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

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -146,7 +146,7 @@ protected InformerEventSource<R, P> createEventSource(EventSourceContext<P> cont
146146
}
147147

148148
protected boolean addOwnerReference() {
149-
return creatable && deletable && garbageCollected;
149+
return garbageCollected;
150150
}
151151

152152
@Override

operator-framework/src/test/java/io/javaoperatorsdk/operator/sample/orderedmanageddependent/ConfigMapDependentResource2.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,11 +7,12 @@
77
import io.fabric8.kubernetes.api.model.ObjectMeta;
88
import io.javaoperatorsdk.operator.api.reconciler.Context;
99
import io.javaoperatorsdk.operator.api.reconciler.dependent.ReconcileResult;
10+
import io.javaoperatorsdk.operator.processing.dependent.kubernetes.CRUDKubernetesDependentResource;
1011
import io.javaoperatorsdk.operator.processing.dependent.kubernetes.KubernetesDependent;
1112

1213
@KubernetesDependent(labelSelector = "dependent = cm2")
1314
public class ConfigMapDependentResource2 extends
14-
CRUKubernetesDependentResource<ConfigMap, OrderedManagedDependentCustomResource> {
15+
CRUDKubernetesDependentResource<ConfigMap, OrderedManagedDependentCustomResource> {
1516

1617
public ConfigMapDependentResource2() {
1718
super(ConfigMap.class);

sample-operators/tomcat-operator/src/main/java/io/javaoperatorsdk/operator/sample/DeploymentDependentResource.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,12 +5,12 @@
55
import io.fabric8.kubernetes.api.model.apps.DeploymentBuilder;
66
import io.javaoperatorsdk.operator.ReconcilerUtils;
77
import io.javaoperatorsdk.operator.api.reconciler.Context;
8-
import io.javaoperatorsdk.operator.processing.dependent.kubernetes.CRUKubernetesDependentResource;
8+
import io.javaoperatorsdk.operator.processing.dependent.kubernetes.CRUDKubernetesDependentResource;
99
import io.javaoperatorsdk.operator.processing.dependent.kubernetes.KubernetesDependent;
1010

1111
@KubernetesDependent(labelSelector = "app.kubernetes.io/managed-by=tomcat-operator")
1212
public class DeploymentDependentResource
13-
extends CRUKubernetesDependentResource<Deployment, Tomcat> {
13+
extends CRUDKubernetesDependentResource<Deployment, Tomcat> {
1414

1515
public DeploymentDependentResource() {
1616
super(Deployment.class);

sample-operators/tomcat-operator/src/main/java/io/javaoperatorsdk/operator/sample/ServiceDependentResource.java

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -5,12 +5,11 @@
55
import io.fabric8.kubernetes.api.model.ServiceBuilder;
66
import io.javaoperatorsdk.operator.ReconcilerUtils;
77
import io.javaoperatorsdk.operator.api.reconciler.Context;
8-
import io.javaoperatorsdk.operator.processing.dependent.Creator;
9-
import io.javaoperatorsdk.operator.processing.dependent.Updater;
10-
import io.javaoperatorsdk.operator.processing.dependent.kubernetes.KubernetesDependentResource;
8+
import io.javaoperatorsdk.operator.processing.dependent.kubernetes.CRUDKubernetesDependentResource;
9+
import io.javaoperatorsdk.operator.processing.dependent.kubernetes.KubernetesDependent;
1110

12-
public class ServiceDependentResource extends KubernetesDependentResource<Service, Tomcat>
13-
implements Creator<Service, Tomcat>, Updater<Service, Tomcat> {
11+
@KubernetesDependent(labelSelector = "app.kubernetes.io/managed-by=tomcat-operator")
12+
public class ServiceDependentResource extends CRUDKubernetesDependentResource<Service, Tomcat> {
1413

1514
public ServiceDependentResource() {
1615
super(Service.class);
@@ -23,6 +22,7 @@ protected Service desired(Tomcat tomcat, Context<Tomcat> context) {
2322
.editMetadata()
2423
.withName(tomcatMetadata.getName())
2524
.withNamespace(tomcatMetadata.getNamespace())
25+
.addToLabels("app.kubernetes.io/managed-by", "tomcat-operator")
2626
.endMetadata()
2727
.editSpec()
2828
.addToSelector("app", tomcatMetadata.getName())

0 commit comments

Comments
 (0)