File tree 3 files changed +12
-4
lines changed
operator-framework/src/main/java/io/javaoperatorsdk/operator/config/runtime
operator-framework-core/src
main/java/io/javaoperatorsdk/operator
test/java/io/javaoperatorsdk/operator
3 files changed +12
-4
lines changed Original file line number Diff line number Diff line change @@ -37,7 +37,7 @@ public void setApiVersion(String s) {
37
37
throw new UnsupportedOperationException ();
38
38
}
39
39
};
40
- return validator .isFinalizerValid (finalizer );
40
+ return Constants . NO_FINALIZER . equals ( finalizer ) || validator .isFinalizerValid (finalizer );
41
41
}
42
42
43
43
public static String getResourceTypeName (Class <? extends HasMetadata > resourceClass ) {
@@ -49,7 +49,10 @@ public static String getResourceTypeName(Class<? extends HasMetadata> resourceCl
49
49
}
50
50
51
51
public static String getDefaultFinalizerName (Class <? extends HasMetadata > resourceClass ) {
52
- var resourceName = getResourceTypeName (resourceClass );
52
+ return getDefaultFinalizerName (getResourceTypeName (resourceClass ));
53
+ }
54
+
55
+ public static String getDefaultFinalizerName (String resourceName ) {
53
56
// resource names for historic resources such as Pods are missing periods and therefore do not
54
57
// constitute valid domain names as mandated by Kubernetes so generate one that does
55
58
if (resourceName .indexOf ('.' ) < 0 ) {
Original file line number Diff line number Diff line change 3
3
import org .junit .jupiter .api .Test ;
4
4
5
5
import io .fabric8 .kubernetes .api .model .Pod ;
6
+ import io .javaoperatorsdk .operator .api .reconciler .Constants ;
6
7
import io .javaoperatorsdk .operator .sample .simple .TestCustomReconciler ;
7
8
import io .javaoperatorsdk .operator .sample .simple .TestCustomResource ;
8
9
@@ -33,4 +34,9 @@ void defaultFinalizerShouldWork() {
33
34
assertTrue (isFinalizerValid (getDefaultFinalizerName (Pod .class )));
34
35
assertTrue (isFinalizerValid (getDefaultFinalizerName (TestCustomResource .class )));
35
36
}
37
+
38
+ @ Test
39
+ void noFinalizerMarkerShouldWork () {
40
+ assertTrue (isFinalizerValid (Constants .NO_FINALIZER ));
41
+ }
36
42
}
Original file line number Diff line number Diff line change 6
6
import io .fabric8 .kubernetes .api .model .HasMetadata ;
7
7
import io .javaoperatorsdk .operator .ReconcilerUtils ;
8
8
import io .javaoperatorsdk .operator .api .config .ConfigurationService ;
9
- import io .javaoperatorsdk .operator .api .reconciler .Constants ;
10
9
import io .javaoperatorsdk .operator .api .reconciler .ControllerConfiguration ;
11
10
import io .javaoperatorsdk .operator .api .reconciler .Reconciler ;
12
11
import io .javaoperatorsdk .operator .processing .event .source .controller .ResourceEventFilter ;
@@ -35,7 +34,7 @@ public String getFinalizer() {
35
34
return ReconcilerUtils .getDefaultFinalizerName (getResourceClass ());
36
35
} else {
37
36
final var finalizer = annotation .finalizerName ();
38
- if (Constants . NO_FINALIZER . equals ( finalizer ) || ReconcilerUtils .isFinalizerValid (finalizer )) {
37
+ if (ReconcilerUtils .isFinalizerValid (finalizer )) {
39
38
return finalizer ;
40
39
} else {
41
40
throw new IllegalArgumentException (finalizer
You can’t perform that action at this time.
0 commit comments