-
Notifications
You must be signed in to change notification settings - Fork 1.5k
Description
Describe the bug
Hello everyone,
I get the following error:
Exception in thread "MockWebServer" java.lang.AbstractMethodError: Receiver class io.fabric8.kubernetes.client.server.mock.KubernetesAttributesExtractor does not define or inherit an implementation of the resolved method 'abstract io.fabric8.mockwebserver.crud.AttributeSet extract(java.lang.String)' of interface io.fabric8.mockwebserver.crud.AttributeExtractor.
at io.fabric8.mockwebserver.crud.CrudDispatcher.doGet(CrudDispatcher.java:175)
at io.fabric8.mockwebserver.crud.CrudDispatcher.handlePatch(CrudDispatcher.java:80)
at io.fabric8.mockwebserver.crud.CrudDispatcher.dispatch(CrudDispatcher.java:45)
at io.fabric8.kubernetes.client.server.mock.KubernetesMixedDispatcher.dispatch(KubernetesMixedDispatcher.java:65)
at okhttp3.mockwebserver.MockWebServer$4.processOneRequest(MockWebServer.java:573)
at okhttp3.mockwebserver.MockWebServer$4.processConnection(MockWebServer.java:531)
at okhttp3.mockwebserver.MockWebServer$4.execute(MockWebServer.java:456)
at okhttp3.internal.NamedRunnable.run(NamedRunnable.java:32)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
at java.base/java.lang.Thread.run(Thread.java:829)
when I try to execute:
kubernetesServer
.getClient()
.batch()
.v1()
.jobs()
.inNamespace("namespace")
.withName("name")
.patchStatus(job);
The version affected is 5.10.x. It works with 5.4 until 5.9.
It seems that the method was implemented: https://github.com/fabric8io/kubernetes-client/blob/v5.9.0/kubernetes-server-mock/src/main/java/io/fabric8/kubernetes/client/server/mock/KubernetesAttributesExtractor.java#L164
while it's not the case anymore: https://github.com/fabric8io/kubernetes-client/blob/v5.10.0/kubernetes-server-mock/src/main/java/io/fabric8/kubernetes/client/server/mock/KubernetesAttributesExtractor.java
If you need more info, let me know :)
Fabric8 Kubernetes Client version
5.10.0
Steps to reproduce
Run the following snippet:
Job job = new JobBuilder()
.withApiVersion("batch/v1")
.withNewMetadata()
.withNamespace("default")
.withName("name")
.endMetadata()
.withNewSpec()
.withNewTemplate()
.withNewSpec()
.addNewContainer()
.withImage("openjdk:18-jdk-alpine")
.withName("name")
.withCommand("java", "--version")
.endContainer()
.withRestartPolicy("Never")
.endSpec()
.endTemplate()
.endSpec()
.build();
kubernetesServer .getClient().
.batch()
.v1()
.jobs()
.inNamespace("default")
.create(job);
JobStatus jobStatus = new JobStatus();
jobStatus.setFailed(1);
job.setStatus(jobStatus);
kubernetesServer
.getClient()
.batch()
.v1()
.jobs()
.inNamespace("namespace")
.withName("name")
.patchStatus(job);
Expected behavior
The method should work as it does with the versions until 5.9.
Runtime
Kubernetes (vanilla), other (please specify in additional context)
Kubernetes API Server version
other (please specify in additional context)
Environment
macOS
Fabric8 Kubernetes Client Logs
No response
Additional context
No response