Skip to content

Commit 10ae190

Browse files
committed
fix
1 parent 36c190e commit 10ae190

File tree

5 files changed

+36
-14
lines changed

5 files changed

+36
-14
lines changed

spring-cloud-kubernetes-fabric8-autoconfig/src/main/java/org/springframework/cloud/kubernetes/fabric8/Fabric8AutoConfiguration.java

Lines changed: 18 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -23,12 +23,16 @@
2323
import io.fabric8.kubernetes.client.KubernetesClient;
2424
import io.fabric8.kubernetes.client.KubernetesClientBuilder;
2525

26+
import jakarta.annotation.PreDestroy;
27+
import org.springframework.beans.factory.annotation.Autowired;
2628
import org.springframework.boot.autoconfigure.AutoConfigureAfter;
2729
import org.springframework.boot.autoconfigure.condition.ConditionalOnCloudPlatform;
2830
import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
2931
import org.springframework.boot.cloud.CloudPlatform;
3032
import org.springframework.cloud.kubernetes.commons.KubernetesClientProperties;
3133
import org.springframework.cloud.kubernetes.commons.KubernetesCommonsAutoConfiguration;
34+
import org.springframework.context.ApplicationContext;
35+
import org.springframework.context.ConfigurableApplicationContext;
3236
import org.springframework.context.annotation.Bean;
3337
import org.springframework.context.annotation.Configuration;
3438

@@ -44,6 +48,9 @@
4448
@AutoConfigureAfter(KubernetesCommonsAutoConfiguration.class)
4549
public class Fabric8AutoConfiguration {
4650

51+
@Autowired
52+
private ConfigurableApplicationContext context;
53+
4754
private static <D> D or(D left, D right) {
4855
return left != null ? left : right;
4956
}
@@ -52,10 +59,6 @@ private static Integer orDurationInt(Duration left, Integer right) {
5259
return left != null ? (int) left.toMillis() : right;
5360
}
5461

55-
private static Long orDurationLong(Duration left, Long right) {
56-
return left != null ? left.toMillis() : right;
57-
}
58-
5962
@Bean
6063
@ConditionalOnMissingBean(Config.class)
6164
public Config kubernetesClientConfig(KubernetesClientProperties kubernetesClientProperties) {
@@ -117,4 +120,15 @@ public Fabric8PodUtils kubernetesPodUtils(KubernetesClient client) {
117120
return new Fabric8PodUtils(client);
118121
}
119122

123+
@PreDestroy
124+
void preDestroy() {
125+
context.getBeansOfType(KubernetesClient.class).values().forEach(KubernetesClient::close);
126+
127+
// in case of bootstrap
128+
ApplicationContext parent = context.getParent();
129+
if (parent != null) {
130+
parent.getBeansOfType(KubernetesClient.class).values().forEach(KubernetesClient::close);
131+
}
132+
}
133+
120134
}

spring-cloud-kubernetes-integration-tests/spring-cloud-kubernetes-fabric8-client-reload/src/main/resources/application-mount.yaml

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,20 @@
1+
logging:
2+
level:
3+
org:
4+
springframework:
5+
cloud:
6+
kubernetes:
7+
commons: debug
8+
19
spring:
210
application:
3-
name: poll-reload-mount
11+
name: poll-reload
412
cloud:
513
kubernetes:
614
reload:
715
enabled: true
816
monitoring-config-maps: true
9-
strategy: shutdown
17+
strategy: refresh
1018
mode: polling
1119
period: 5000
1220
config:

spring-cloud-kubernetes-integration-tests/spring-cloud-kubernetes-fabric8-client-reload/src/test/java/org/springframework/cloud/kubernetes/fabric8/client/reload/Fabric8EventReloadIT.java

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -140,13 +140,13 @@ void testInformFromOneNamespaceEventNotTriggered() {
140140
return "left-initial".equals(innerResult);
141141
});
142142

143-
testInformFromOneNamespaceEventTriggered();
144-
testInform();
145-
testInformFromOneNamespaceEventTriggeredSecretsDisabled();
146-
testDataChangesInConfigMap();
143+
// testInformFromOneNamespaceEventTriggered();
144+
// testInform();
145+
// testInformFromOneNamespaceEventTriggeredSecretsDisabled();
146+
// testDataChangesInConfigMap();
147147
testConfigMapMountPollingReload();
148-
testPollingReloadConfigMapWithBootstrap();
149-
testSecretReload();
148+
// testPollingReloadConfigMapWithBootstrap();
149+
// testSecretReload();
150150
}
151151

152152
/**

spring-cloud-kubernetes-integration-tests/spring-cloud-kubernetes-fabric8-client-reload/src/test/resources/configmap.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,4 +5,4 @@ metadata:
55
namespace: default
66
data:
77
application.properties: |
8-
from.properties.key=as-mount-initial
8+
from.properties.key=as-mount-initial-3

spring-cloud-kubernetes-integration-tests/spring-cloud-kubernetes-fabric8-client-reload/src/test/resources/right-configmap.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,6 @@ apiVersion: v1
22
kind: ConfigMap
33
metadata:
44
name: right-configmap
5-
namespace: right
5+
namespace: default
66
data:
77
right.value: "right-initial"

0 commit comments

Comments
 (0)