Skip to content

Commit 8efc8e2

Browse files
committed
feat: automatically register detected controllers
1 parent cfebbc7 commit 8efc8e2

File tree

2 files changed

+9
-2
lines changed

2 files changed

+9
-2
lines changed
Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,27 @@
11
package io.javaoperatorsdk.quarkus.extension;
22

3+
import io.fabric8.kubernetes.client.CustomResource;
34
import io.fabric8.kubernetes.client.KubernetesClient;
45
import io.javaoperatorsdk.operator.Operator;
6+
import io.javaoperatorsdk.operator.api.ResourceController;
57
import io.javaoperatorsdk.operator.api.config.ConfigurationService;
68
import io.quarkus.arc.DefaultBean;
9+
import javax.enterprise.inject.Instance;
710
import javax.enterprise.inject.Produces;
11+
import javax.inject.Inject;
812
import javax.inject.Singleton;
913

1014
@Singleton
1115
public class OperatorProducer {
1216

17+
@Inject Instance<ResourceController<? extends CustomResource>> controllers;
18+
1319
@Produces
1420
@DefaultBean
1521
@Singleton
1622
Operator operator(KubernetesClient client, ConfigurationService configuration) {
17-
return new Operator(client, configuration);
23+
final var operator = new Operator(client, configuration);
24+
controllers.stream().forEach(operator::register);
25+
return operator;
1826
}
1927
}

samples/quarkus/src/main/java/io/javaoperatorsdk/operator/sample/QuarkusOperator.java

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,6 @@ public static void main(String... args) {
2323

2424
@Override
2525
public int run(String... args) throws Exception {
26-
System.out.println("operator = " + operator);
2726
final var config = configuration.getConfigurationFor(new CustomServiceController(client));
2827
System.out.println("CR class: " + config.getCustomResourceClass());
2928
System.out.println("Doneable class = " + config.getDoneableClass());

0 commit comments

Comments
 (0)