Skip to content

Commit 713d77b

Browse files
committed
fix!: remove registerControllerForAllNamespaces to use controller config
The intent here is that controllers should be registered according to their configuration. This will become even more relevant when externalized configuration is in place (see #237). This also means using ControllerConfiguration.WATCH_ALL_NAMESPACES_MARKER in the namespaces field of the Controller annotation where appropriate since that's what ControllerConfiguration uses to determine if a controller should watch all namespaces. This still needs to be unified across the code base (see #302).
1 parent a89a718 commit 713d77b

File tree

9 files changed

+14
-20
lines changed

9 files changed

+14
-20
lines changed

operator-framework-core/src/main/java/io/javaoperatorsdk/operator/Operator.java

Lines changed: 1 addition & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -45,17 +45,7 @@ public <R extends CustomResource> void register(ResourceController<R> controller
4545
final var targetNamespaces = configuration.getNamespaces().toArray(new String[] {});
4646
registerController(controller, configuration.watchAllNamespaces(), retry, targetNamespaces);
4747
}
48-
49-
public <R extends CustomResource> void registerControllerForAllNamespaces(
50-
ResourceController<R> controller, Retry retry) throws OperatorException {
51-
registerController(controller, true, retry);
52-
}
53-
54-
public <R extends CustomResource> void registerControllerForAllNamespaces(
55-
ResourceController<R> controller) throws OperatorException {
56-
registerController(controller, true, null);
57-
}
58-
48+
5949
public <R extends CustomResource> void registerController(
6050
ResourceController<R> controller, Retry retry, String... targetNamespaces)
6151
throws OperatorException {

samples/mysql-schema/src/main/java/io/javaoperatorsdk/operator/sample/MySQLSchemaOperator.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ public static void main(String[] args) throws IOException {
2424
Config config = new ConfigBuilder().withNamespace(null).build();
2525
KubernetesClient client = new DefaultKubernetesClient(config);
2626
Operator operator = new Operator(client, DefaultConfigurationService.instance());
27-
operator.registerControllerForAllNamespaces(new SchemaController(client));
27+
operator.register(new SchemaController(client));
2828

2929
new FtBasic(new TkFork(new FkRegex("/health", "ALL GOOD!")), 8080).start(Exit.NEVER);
3030
}

samples/mysql-schema/src/main/java/io/javaoperatorsdk/operator/sample/SchemaController.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
import io.javaoperatorsdk.operator.api.DeleteControl;
1111
import io.javaoperatorsdk.operator.api.ResourceController;
1212
import io.javaoperatorsdk.operator.api.UpdateControl;
13+
import io.javaoperatorsdk.operator.api.config.ControllerConfiguration;
1314
import java.sql.Connection;
1415
import java.sql.DriverManager;
1516
import java.sql.PreparedStatement;
@@ -21,7 +22,7 @@
2122
import org.slf4j.Logger;
2223
import org.slf4j.LoggerFactory;
2324

24-
@Controller(crdName = "schemas.mysql.sample.javaoperatorsdk")
25+
@Controller(crdName = "schemas.mysql.sample.javaoperatorsdk", namespaces = ControllerConfiguration.WATCH_ALL_NAMESPACES_MARKER)
2526
public class SchemaController implements ResourceController<Schema> {
2627
static final String USERNAME_FORMAT = "%s-user";
2728
static final String SECRET_FORMAT = "%s-secret";

samples/spring-boot-plain/src/main/java/io/javaoperatorsdk/operator/sample/Config.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ public CustomServiceController customServiceController(KubernetesClient client)
2626
@Bean
2727
public Operator operator(KubernetesClient client, List<ResourceController> controllers) {
2828
Operator operator = new Operator(client, DefaultConfigurationService.instance());
29-
controllers.forEach(c -> operator.registerControllerForAllNamespaces(c));
29+
controllers.forEach(operator::register);
3030
return operator;
3131
}
3232
}

samples/tomcat/src/main/java/io/javaoperatorsdk/operator/sample/TomcatController.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@
1616
import io.fabric8.kubernetes.client.dsl.ServiceResource;
1717
import io.fabric8.kubernetes.client.utils.Serialization;
1818
import io.javaoperatorsdk.operator.api.*;
19+
import io.javaoperatorsdk.operator.api.config.ControllerConfiguration;
1920
import io.javaoperatorsdk.operator.processing.event.EventSourceManager;
2021
import io.javaoperatorsdk.operator.processing.event.internal.CustomResourceEvent;
2122
import java.io.IOException;
@@ -26,7 +27,7 @@
2627
import org.slf4j.Logger;
2728
import org.slf4j.LoggerFactory;
2829

29-
@Controller(crdName = "tomcats.tomcatoperator.io")
30+
@Controller(crdName = "tomcats.tomcatoperator.io", namespaces = ControllerConfiguration.WATCH_ALL_NAMESPACES_MARKER)
3031
public class TomcatController implements ResourceController<Tomcat> {
3132

3233
private final Logger log = LoggerFactory.getLogger(getClass());

samples/tomcat/src/main/java/io/javaoperatorsdk/operator/sample/TomcatOperator.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,10 +25,10 @@ public static void main(String[] args) throws IOException {
2525
Operator operator = new Operator(client, DefaultConfigurationService.instance());
2626

2727
TomcatController tomcatController = new TomcatController(client);
28-
operator.registerControllerForAllNamespaces(tomcatController);
28+
operator.register(tomcatController);
2929
tomcatController.setTomcatOperations(operator.getCustomResourceClients(Tomcat.class));
3030

31-
operator.registerControllerForAllNamespaces(new WebappController(client));
31+
operator.register(new WebappController(client));
3232

3333
new FtBasic(new TkFork(new FkRegex("/health", "ALL GOOD.")), 8080).start(Exit.NEVER);
3434
}

samples/tomcat/src/main/java/io/javaoperatorsdk/operator/sample/WebappController.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
import io.fabric8.kubernetes.api.model.apps.Deployment;
55
import io.fabric8.kubernetes.client.KubernetesClient;
66
import io.javaoperatorsdk.operator.api.*;
7+
import io.javaoperatorsdk.operator.api.config.ControllerConfiguration;
78
import java.io.ByteArrayOutputStream;
89
import java.util.List;
910
import java.util.Objects;
@@ -12,7 +13,7 @@
1213
import org.slf4j.Logger;
1314
import org.slf4j.LoggerFactory;
1415

15-
@Controller(crdName = "webapps.tomcatoperator.io")
16+
@Controller(crdName = "webapps.tomcatoperator.io", namespaces = ControllerConfiguration.WATCH_ALL_NAMESPACES_MARKER)
1617
public class WebappController implements ResourceController<Webapp> {
1718

1819
private KubernetesClient kubernetesClient;

samples/webserver/src/main/java/io/javaoperatorsdk/operator/sample/WebServerController.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919
import io.javaoperatorsdk.operator.api.DeleteControl;
2020
import io.javaoperatorsdk.operator.api.ResourceController;
2121
import io.javaoperatorsdk.operator.api.UpdateControl;
22+
import io.javaoperatorsdk.operator.api.config.ControllerConfiguration;
2223
import java.io.IOException;
2324
import java.io.InputStream;
2425
import java.util.HashMap;
@@ -27,7 +28,7 @@
2728
import org.slf4j.Logger;
2829
import org.slf4j.LoggerFactory;
2930

30-
@Controller(crdName = "webservers.sample.javaoperatorsdk")
31+
@Controller(crdName = "webservers.sample.javaoperatorsdk", namespaces = ControllerConfiguration.WATCH_ALL_NAMESPACES_MARKER)
3132
public class WebServerController implements ResourceController<WebServer> {
3233

3334
private final Logger log = LoggerFactory.getLogger(getClass());

samples/webserver/src/main/java/io/javaoperatorsdk/operator/sample/WebServerOperator.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ public static void main(String[] args) throws IOException {
2424
Config config = new ConfigBuilder().withNamespace(null).build();
2525
KubernetesClient client = new DefaultKubernetesClient(config);
2626
Operator operator = new Operator(client, DefaultConfigurationService.instance());
27-
operator.registerControllerForAllNamespaces(new WebServerController(client));
27+
operator.register(new WebServerController(client));
2828

2929
new FtBasic(new TkFork(new FkRegex("/health", "ALL GOOD!")), 8080).start(Exit.NEVER);
3030
}

0 commit comments

Comments
 (0)