Skip to content

Commit 5a7d1be

Browse files
authored
fix: config override with metrics (#840)
1 parent e7fd799 commit 5a7d1be

File tree

6 files changed

+21
-21
lines changed

6 files changed

+21
-21
lines changed

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

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -105,8 +105,8 @@ public void stop() throws OperatorException {
105105
*/
106106
public <R extends HasMetadata> void register(Reconciler<R> reconciler)
107107
throws OperatorException {
108-
final var defaultConfiguration = configurationService.getConfigurationFor(reconciler);
109-
register(reconciler, defaultConfiguration);
108+
final var controllerConfiguration = configurationService.getConfigurationFor(reconciler);
109+
register(reconciler, controllerConfiguration);
110110
}
111111

112112
/**

operator-framework-core/src/main/java/io/javaoperatorsdk/operator/api/config/ConfigurationServiceOverrider.java

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -70,7 +70,10 @@ public ConfigurationService build() {
7070
@Override
7171
public <R extends HasMetadata> ControllerConfiguration<R> getConfigurationFor(
7272
Reconciler<R> reconciler) {
73-
return original.getConfigurationFor(reconciler);
73+
ControllerConfiguration<R> controllerConfiguration =
74+
original.getConfigurationFor(reconciler);
75+
controllerConfiguration.setConfigurationService(this);
76+
return controllerConfiguration;
7477
}
7578

7679
@Override

operator-framework-core/src/main/java/io/javaoperatorsdk/operator/processing/event/EventProcessor.java

Lines changed: 0 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -66,21 +66,6 @@ class EventProcessor<R extends HasMetadata> implements EventHandler, LifecycleAw
6666
eventSourceManager);
6767
}
6868

69-
EventProcessor(
70-
ReconciliationDispatcher<R> reconciliationDispatcher,
71-
EventSourceManager<R> eventSourceManager,
72-
String relatedControllerName,
73-
Retry retry) {
74-
this(
75-
eventSourceManager.getControllerResourceEventSource().getResourceCache(),
76-
null,
77-
relatedControllerName,
78-
reconciliationDispatcher,
79-
retry,
80-
null,
81-
eventSourceManager);
82-
}
83-
8469
EventProcessor(
8570
ReconciliationDispatcher<R> reconciliationDispatcher,
8671
EventSourceManager<R> eventSourceManager,

operator-framework-core/src/test/java/io/javaoperatorsdk/operator/processing/event/EventProcessorTest.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -61,11 +61,12 @@ public void setup() {
6161
when(controllerResourceEventSourceMock.getResourceCache()).thenReturn(resourceCacheMock);
6262

6363
eventProcessor =
64-
spy(new EventProcessor(reconciliationDispatcherMock, eventSourceManagerMock, "Test", null));
64+
spy(new EventProcessor(reconciliationDispatcherMock, eventSourceManagerMock, "Test", null,
65+
null));
6566
eventProcessor.start();
6667
eventProcessorWithRetry =
6768
spy(new EventProcessor(reconciliationDispatcherMock, eventSourceManagerMock, "Test",
68-
GenericRetry.defaultLimitedExponentialRetry()));
69+
GenericRetry.defaultLimitedExponentialRetry(), null));
6970
eventProcessorWithRetry.start();
7071

7172
when(eventProcessor.retryEventSource()).thenReturn(retryTimerEventSourceMock);

sample-operators/mysql-schema/pom.xml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,11 @@
2727
<artifactId>operator-framework</artifactId>
2828
<version>${project.version}</version>
2929
</dependency>
30+
<dependency>
31+
<groupId>io.javaoperatorsdk</groupId>
32+
<artifactId>micrometer-support</artifactId>
33+
<version>${project.version}</version>
34+
</dependency>
3035
<dependency>
3136
<groupId>org.takes</groupId>
3237
<artifactId>takes</artifactId>

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

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,10 @@
1414
import io.fabric8.kubernetes.client.DefaultKubernetesClient;
1515
import io.fabric8.kubernetes.client.KubernetesClient;
1616
import io.javaoperatorsdk.operator.Operator;
17+
import io.javaoperatorsdk.operator.api.config.ConfigurationServiceOverrider;
1718
import io.javaoperatorsdk.operator.config.runtime.DefaultConfigurationService;
19+
import io.javaoperatorsdk.operator.monitoring.micrometer.MicrometerMetrics;
20+
import io.micrometer.core.instrument.logging.LoggingMeterRegistry;
1821

1922
public class MySQLSchemaOperator {
2023

@@ -25,7 +28,10 @@ public static void main(String[] args) throws IOException {
2528

2629
Config config = new ConfigBuilder().withNamespace(null).build();
2730
KubernetesClient client = new DefaultKubernetesClient(config);
28-
Operator operator = new Operator(client, DefaultConfigurationService.instance());
31+
Operator operator = new Operator(client,
32+
new ConfigurationServiceOverrider(DefaultConfigurationService.instance())
33+
.withMetrics(new MicrometerMetrics(new LoggingMeterRegistry()))
34+
.build());
2935
operator.register(new MySQLSchemaReconciler(client, MySQLDbConfig.loadFromEnvironmentVars()));
3036
operator.installShutdownHook();
3137
operator.start();

0 commit comments

Comments
 (0)