-
Notifications
You must be signed in to change notification settings - Fork 30
Open
Description
Expected Behavior
In case terminate-startup-on-exception
is set to false
, it should start and ignore the unexpected value.
micronaut:
config-client:
enabled: true
kubernetes:
client:
config-maps:
terminate-startup-on-exception: false
Actual Behaviour
It crashes with the following exception:
2025-09-11 08:50:37 +0200 DEBUG [main] io.micronaut.kubernetes.client.OkHttpClientLogging.intercept:91 KubeApi GET https://10.233.0.1/api OUT<0-byte> IN <134-byte> 200
2025-09-11 08:50:37 +0200 DEBUG [main] io.micronaut.kubernetes.client.OkHttpClientLogging.intercept:91 KubeApi GET https://10.233.0.1/api/v1 OUT<0-byte> IN <unknown-length> 200
2025-09-11 08:50:37 +0200 DEBUG [main] io.micronaut.kubernetes.client.OkHttpClientLogging.intercept:91 KubeApi GET https://10.233.0.1/apis OUT<0-byte> IN <unknown-length> 200
2025-09-11 08:50:37 +0200 DEBUG [main] io.micronaut.kubernetes.client.OkHttpClientLogging.intercept:91 KubeApi GET https://10.233.0.1/apis/apiregistration.k8s.io/v1 OUT<0-byte> IN <465-byte> 200
2025-09-11 08:50:37 +0200 DEBUG [main] io.micronaut.kubernetes.client.OkHttpClientLogging.intercept:91 KubeApi GET https://10.233.0.1/apis/apps/v1 OUT<0-byte> IN <2254-byte> 200
2025-09-11 08:50:37 +0200 DEBUG [main] io.micronaut.kubernetes.client.OkHttpClientLogging.intercept:91 KubeApi GET https://10.233.0.1/apis/events.k8s.io/v1 OUT<0-byte> IN <308-byte> 200
2025-09-11 08:50:37 +0200 DEBUG [main] io.micronaut.kubernetes.client.OkHttpClientLogging.intercept:91 KubeApi GET https://10.233.0.1/apis/authentication.k8s.io/v1 OUT<0-byte> IN <343-byte> 200
2025-09-11 08:50:37 +0200 DEBUG [main] io.micronaut.kubernetes.client.OkHttpClientLogging.intercept:91 KubeApi GET https://10.233.0.1/apis/authorization.k8s.io/v1 OUT<0-byte> IN <679-byte> 200
2025-09-11 08:50:37 +0200 DEBUG [main] io.micronaut.kubernetes.client.OkHttpClientLogging.intercept:91 KubeApi GET https://10.233.0.1/apis/autoscaling/v2 OUT<0-byte> IN <527-byte> 200
2025-09-11 08:50:37 +0200 DEBUG [main] io.micronaut.kubernetes.client.OkHttpClientLogging.intercept:91 KubeApi GET https://10.233.0.1/apis/batch/v1 OUT<0-byte> IN <755-byte> 200
2025-09-11 08:50:37 +0200 DEBUG [main] io.micronaut.kubernetes.client.OkHttpClientLogging.intercept:91 KubeApi GET https://10.233.0.1/apis/certificates.k8s.io/v1 OUT<0-byte> IN <678-byte> 200
2025-09-11 08:50:37 +0200 DEBUG [main] io.micronaut.kubernetes.client.OkHttpClientLogging.intercept:91 KubeApi GET https://10.233.0.1/apis/networking.k8s.io/v1 OUT<0-byte> IN <896-byte> 200
2025-09-11 08:50:37 +0200 DEBUG [main] io.micronaut.kubernetes.client.OkHttpClientLogging.intercept:91 KubeApi GET https://10.233.0.1/apis/policy/v1 OUT<0-byte> IN <481-byte> 200
2025-09-11 08:50:37 +0200 DEBUG [main] io.micronaut.kubernetes.client.OkHttpClientLogging.intercept:91 KubeApi GET https://10.233.0.1/apis/rbac.authorization.k8s.io/v1 OUT<0-byte> IN <959-byte> 200
2025-09-11 08:50:37 +0200 DEBUG [main] io.micronaut.kubernetes.client.OkHttpClientLogging.intercept:91 KubeApi GET https://10.233.0.1/apis/storage.k8s.io/v1 OUT<0-byte> IN <1338-byte> 200
2025-09-11 08:50:37 +0200 DEBUG [main] io.micronaut.kubernetes.client.OkHttpClientLogging.intercept:91 KubeApi GET https://10.233.0.1/apis/admissionregistration.k8s.io/v1 OUT<0-byte> IN <1457-byte> 200
2025-09-11 08:50:37 +0200 DEBUG [main] io.micronaut.kubernetes.client.OkHttpClientLogging.intercept:91 KubeApi GET https://10.233.0.1/apis/apiextensions.k8s.io/v1 OUT<0-byte> IN <561-byte> 200
2025-09-11 08:50:37 +0200 DEBUG [main] io.micronaut.kubernetes.client.OkHttpClientLogging.intercept:91 KubeApi GET https://10.233.0.1/apis/scheduling.k8s.io/v1 OUT<0-byte> IN <338-byte> 200
2025-09-11 08:50:37 +0200 DEBUG [main] io.micronaut.kubernetes.client.OkHttpClientLogging.intercept:91 KubeApi GET https://10.233.0.1/apis/coordination.k8s.io/v1 OUT<0-byte> IN <294-byte> 200
2025-09-11 08:50:37 +0200 DEBUG [main] io.micronaut.kubernetes.client.OkHttpClientLogging.intercept:91 KubeApi GET https://10.233.0.1/apis/node.k8s.io/v1 OUT<0-byte> IN <309-byte> 200
2025-09-11 08:50:38 +0200 DEBUG [main] io.micronaut.kubernetes.client.OkHttpClientLogging.intercept:91 KubeApi GET https://10.233.0.1/apis/discovery.k8s.io/v1 OUT<0-byte> IN <315-byte> 200
2025-09-11 08:50:38 +0200 DEBUG [main] io.micronaut.kubernetes.client.OkHttpClientLogging.intercept:91 KubeApi GET https://10.233.0.1/apis/flowcontrol.apiserver.k8s.io/v1 OUT<0-byte> IN <850-byte> 200
2025-09-11 08:50:38 +0200 DEBUG [main] io.micronaut.kubernetes.client.OkHttpClientLogging.intercept:91 KubeApi GET https://10.233.0.1/apis/acme.cert-manager.io/v1 OUT<0-byte> IN <828-byte> 200
2025-09-11 08:50:38 +0200 DEBUG [main] io.micronaut.kubernetes.client.OkHttpClientLogging.intercept:91 KubeApi GET https://10.233.0.1/apis/cert-manager.io/v1 OUT<0-byte> IN <1672-byte> 200
2025-09-11 08:50:38 +0200 DEBUG [main] io.micronaut.kubernetes.client.OkHttpClientLogging.intercept:91 KubeApi GET https://10.233.0.1/apis/databases.spotahome.com/v1 OUT<0-byte> IN <342-byte> 200
2025-09-11 08:50:38 +0200 DEBUG [main] io.micronaut.kubernetes.client.OkHttpClientLogging.intercept:91 KubeApi GET https://10.233.0.1/apis/dex.coreos.com/v1 OUT<0-byte> IN <2223-byte> 200
2025-09-11 08:50:38 +0200 DEBUG [main] io.micronaut.kubernetes.client.OkHttpClientLogging.intercept:91 KubeApi GET https://10.233.0.1/apis/monitoring.coreos.com/v1 OUT<0-byte> IN <2369-byte> 200
2025-09-11 08:50:38 +0200 DEBUG [main] io.micronaut.kubernetes.client.OkHttpClientLogging.intercept:91 KubeApi GET https://10.233.0.1/apis/networking.istio.io/v1 OUT<0-byte> IN <2917-byte> 200
2025-09-11 08:50:38 +0200 DEBUG [main] io.micronaut.kubernetes.client.OkHttpClientLogging.intercept:91 KubeApi GET https://10.233.0.1/apis/security.istio.io/v1 OUT<0-byte> IN <1424-byte> 200
2025-09-11 08:50:38 +0200 DEBUG [main] io.micronaut.kubernetes.client.OkHttpClientLogging.intercept:91 KubeApi GET https://10.233.0.1/apis/telemetry.istio.io/v1 OUT<0-byte> IN <498-byte> 200
2025-09-11 08:50:38 +0200 DEBUG [main] io.micronaut.kubernetes.client.OkHttpClientLogging.intercept:91 KubeApi GET https://10.233.0.1/apis/acme.easydns.com/v1alpha1 OUT<0-byte> IN <164-byte> 200
2025-09-11 08:50:38 +0200 ERROR [main] io.micronaut.runtime.Micronaut.handleStartupException:349 Error starting Micronaut server: Bean definition [io.micronaut.kubernetes.configuration.KubernetesConfigMapWatcher] could not be loaded: The required field `verbs` is not found in the JSON string: {"kind":"Challenge","name":"challenges","version":"v1alpha1"} io.micronaut.context.exceptions.BeanInstantiationException: Bean definition [io.micronaut.kubernetes.configuration.KubernetesConfigMapWatcher] could not be loaded: The required field `verbs` is not found in the JSON string: {"kind":"Challenge","name":"challenges","version":"v1alpha1"}
at io.micronaut.context.DefaultBeanContext.initializeContext(DefaultBeanContext.java:2038)
at io.micronaut.context.DefaultApplicationContext.initializeContext(DefaultApplicationContext.java:323)
at io.micronaut.context.DefaultBeanContext.configureAndStartContext(DefaultBeanContext.java:3342)
at io.micronaut.context.DefaultBeanContext.start(DefaultBeanContext.java:353)
at io.micronaut.context.DefaultApplicationContext.start(DefaultApplicationContext.java:225)
at io.micronaut.runtime.Micronaut.start(Micronaut.java:75)
at io.micronaut.runtime.Micronaut.run(Micronaut.java:334)
at io.micronaut.runtime.Micronaut.run(Micronaut.java:320)
at cloud.api.main.Application.main(Application.java:137)
Caused by: java.lang.IllegalArgumentException: The required field `verbs` is not found in the JSON string: {"kind":"Challenge","name":"challenges","version":"v1alpha1"}
at io.kubernetes.client.openapi.models.V1APIResource.validateJsonElement(V1APIResource.java:441)
at io.kubernetes.client.openapi.models.V1APIResourceList.validateJsonElement(V1APIResourceList.java:276)
at io.kubernetes.client.openapi.models.V1APIResourceList$CustomTypeAdapterFactory$1.read(V1APIResourceList.java:301)
at io.kubernetes.client.openapi.models.V1APIResourceList$CustomTypeAdapterFactory$1.read(V1APIResourceList.java:291)
at com.google.gson.TypeAdapter$NullSafeTypeAdapter.read(TypeAdapter.java:314)
at com.google.gson.Gson.fromJson(Gson.java:1359)
at com.google.gson.Gson.fromJson(Gson.java:1260)
at com.google.gson.Gson.fromJson(Gson.java:1228)
at io.kubernetes.client.openapi.JSON.deserialize(JSON.java:894)
at io.kubernetes.client.openapi.ApiClient.deserialize(ApiClient.java:926)
at io.kubernetes.client.openapi.ApiClient.handleResponse(ApiClient.java:1143)
at io.kubernetes.client.openapi.ApiClient.execute(ApiClient.java:1067)
at io.kubernetes.client.Discovery.get(Discovery.java:192)
at io.kubernetes.client.Discovery.resourceDiscovery(Discovery.java:173)
at io.kubernetes.client.Discovery.findAll(Discovery.java:88)
at io.kubernetes.client.Discovery.findAll(Discovery.java:82)
at io.kubernetes.client.Discovery.findAll(Discovery.java:58)
at io.micronaut.kubernetes.client.DiscoveryCache.getLastAPIDiscovery(DiscoveryCache.java:121)
at io.micronaut.kubernetes.client.DiscoveryCache.find(DiscoveryCache.java:103)
at io.micronaut.kubernetes.client.informer.resolvers.DefaultInformerNamespaceResolver.resolveInformerNamespaces(DefaultInformerNamespaceResolver.java:116)
at io.micronaut.kubernetes.client.informer.ResourceEventHandlerBeanListener.onCreated(ResourceEventHandlerBeanListener.java:93)
at io.micronaut.kubernetes.client.informer.ResourceEventHandlerBeanListener.onCreated(ResourceEventHandlerBeanListener.java:50)
at io.micronaut.context.DefaultBeanContext.triggerBeanCreatedEventListener(DefaultBeanContext.java:2388)
at io.micronaut.context.DefaultBeanContext.postBeanCreated(DefaultBeanContext.java:2365)
at io.micronaut.context.DefaultBeanContext.createRegistration(DefaultBeanContext.java:3150)
at io.micronaut.context.SingletonScope.getOrCreate(SingletonScope.java:80)
at io.micronaut.context.DefaultBeanContext.intializeEagerBean(DefaultBeanContext.java:3035)
at io.micronaut.context.DefaultBeanContext.initializeEagerBean(DefaultBeanContext.java:2704)
at io.micronaut.context.DefaultBeanContext.initializeContext(DefaultBeanContext.java:2032)
... 8 common frames omitted
Steps To Reproduce
No response
Environment Information
- K8S version: v1.32.5
- micronaut-platform: 4.8.3
- micronaut-kubernetes-client: 7.0.0
- also failing with io.kubernetes:client-java v24.0.0
- Java version eclipse-temurin:24
Example Application
No response
Version
micronaut-platform: 4.8.3
Metadata
Metadata
Assignees
Labels
No labels