@@ -204,6 +204,11 @@ func modifyDevContainer(ctx devspacecontext.Context, devPod *latest.DevPod, devC
204204 return errors .Wrap (err , "replace working dir" )
205205 }
206206
207+ err = replaceSecurityContext (ctx , devPod , devContainer , podTemplate )
208+ if err != nil {
209+ return errors .Wrap (err , "replace securitycontext" )
210+ }
211+
207212 err = replaceResources (ctx , devPod , devContainer , podTemplate )
208213 if err != nil {
209214 return errors .Wrap (err , "replace resources" )
@@ -256,6 +261,23 @@ func replaceWorkingDir(ctx devspacecontext.Context, devPod *latest.DevPod, devCo
256261 return nil
257262}
258263
264+ func replaceSecurityContext (ctx devspacecontext.Context , devPod * latest.DevPod , devContainer * latest.DevContainer , podTemplate * corev1.PodTemplateSpec ) error {
265+ if devContainer .Sync == nil {
266+ return nil
267+ }
268+
269+ index , container , err := getPodTemplateContainer (ctx , devPod , devContainer , podTemplate )
270+ if err != nil {
271+ return err
272+ }
273+
274+ if container .SecurityContext != nil {
275+ container .SecurityContext .ReadOnlyRootFilesystem = nil
276+ podTemplate .Spec .Containers [index ] = * container
277+ }
278+ return nil
279+ }
280+
259281func replaceCommand (ctx devspacecontext.Context , devPod * latest.DevPod , devContainer * latest.DevContainer , podTemplate * corev1.PodTemplateSpec ) error {
260282 // replace with DevSpace helper
261283 injectRestartHelper := devContainer .RestartHelper != nil && devContainer .RestartHelper .Inject != nil && * devContainer .RestartHelper .Inject
0 commit comments