You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Since changes from 86e740f have been implemented, we have an error when transferring a file to a pod that has /tmp read-only.
Before these changes (fix #4910), it was transferring the file to a directory that is allowed to write, but with the new way to transfer files, it seems it must have write access to /tmp.
To answer the obvious question you will ask as to is it possible to have /tmp writable in our pod, the answer is no, it is impossible.
Question:
Is there a way (or an option) to have the file being copied directly in the intended directory and not have it copied to /tmp first?
(We need to upgrade version of kubernetes-client, and this is a blocker)
Error message:
Caused by: io.fabric8.kubernetes.client.KubernetesClientException: sh: /tmp/fabric8-a8874cdd-eb99-4f4c-a022-20150120503f.tar: Read-only file system
at io.fabric8.kubernetes.client.dsl.internal.ExecWebSocketListener.onMessage(ExecWebSocketListener.java:319)
at io.fabric8.kubernetes.client.okhttp.OkHttpWebSocketImpl$1.onMessage(OkHttpWebSocketImpl.java:110)
at okhttp3.internal.ws.RealWebSocket.onReadMessage(RealWebSocket.kt:338)
at okhttp3.internal.ws.WebSocketReader.readMessageFrame(WebSocketReader.kt:247)
at okhttp3.internal.ws.WebSocketReader.processNextFrame(WebSocketReader.kt:106)
at okhttp3.internal.ws.RealWebSocket.loopReader(RealWebSocket.kt:293)
at okhttp3.internal.ws.RealWebSocket$connect$1.onResponse(RealWebSocket.kt:195)
at okhttp3.internal.connection.RealCall$AsyncCall.run(RealCall.kt:519)
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)
Suppressed: java.lang.Throwable: waiting here
at io.fabric8.kubernetes.client.utils.Utils.waitUntilReady(Utils.java:174)
at io.fabric8.kubernetes.client.dsl.internal.uploadable.PodUpload.upload(PodUpload.java:101)
at io.fabric8.kubernetes.client.dsl.internal.uploadable.PodUpload.uploadTar(PodUpload.java:141)
at io.fabric8.kubernetes.client.dsl.internal.uploadable.PodUpload.upload(PodUpload.java:55)
at io.fabric8.kubernetes.client.dsl.internal.core.v1.PodOperationsImpl.lambda$upload$4(PodOperationsImpl.java:427)
at io.fabric8.kubernetes.client.utils.internal.OptionalDependencyWrapper.wrapRunWithOptionalDependency(OptionalDependencyWrapper.java:39)
at io.fabric8.kubernetes.client.dsl.internal.core.v1.PodOperationsImpl.upload(PodOperationsImpl.java:425)
…
Thank you
The text was updated successfully, but these errors were encountered:
Since changes from 86e740f have been implemented, we have an error when transferring a file to a pod that has /tmp read-only.
Before these changes (fix #4910), it was transferring the file to a directory that is allowed to write, but with the new way to transfer files, it seems it must have write access to /tmp.
To answer the obvious question you will ask as to is it possible to have /tmp writable in our pod, the answer is no, it is impossible.
What we suspect: upload function in PodUpload.java (https://github.com/fabric8io/kubernetes-client/blob/v6.8.1/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/dsl/internal/uploadable/PodUpload.java#L135)
Version with the issue: 6.8.1
Question:
Is there a way (or an option) to have the file being copied directly in the intended directory and not have it copied to /tmp first?
(We need to upgrade version of kubernetes-client, and this is a blocker)
Error message:
Caused by: io.fabric8.kubernetes.client.KubernetesClientException: sh: /tmp/fabric8-a8874cdd-eb99-4f4c-a022-20150120503f.tar: Read-only file system
…
Thank you
The text was updated successfully, but these errors were encountered: