@@ -812,10 +812,16 @@ func run(ctx context.Context, opts options.Options, execArgs *execArgsInfo) erro
812812 // We need to change the ownership of the files to the user that will
813813 // be running the init script.
814814 if chownErr := filepath .Walk (opts .WorkspaceFolder , func (path string , _ os.FileInfo , err error ) error {
815+ if errors .Is (err , fs .ErrNotExist ) {
816+ return nil
817+ }
815818 if err != nil {
816819 return err
817820 }
818- return os .Lchown (path , execArgs .UserInfo .uid , execArgs .UserInfo .gid )
821+ if err := os .Lchown (path , execArgs .UserInfo .uid , execArgs .UserInfo .gid ); err != nil && ! errors .Is (err , fs .ErrNotExist ) {
822+ return err
823+ }
824+ return nil
819825 }); chownErr != nil {
820826 opts .Logger (log .LevelError , "chown %q: %s" , execArgs .UserInfo .user .HomeDir , chownErr .Error ())
821827 endStage ("⚠️ Failed to the ownership of the workspace, you may need to fix this manually!" )
@@ -829,10 +835,16 @@ func run(ctx context.Context, opts options.Options, execArgs *execArgsInfo) erro
829835 if execArgs .UserInfo .uid != 0 {
830836 endStage := startStage ("🔄 Updating ownership of %s..." , execArgs .UserInfo .user .HomeDir )
831837 if chownErr := filepath .Walk (execArgs .UserInfo .user .HomeDir , func (path string , _ fs.FileInfo , err error ) error {
838+ if errors .Is (err , fs .ErrNotExist ) {
839+ return nil
840+ }
832841 if err != nil {
833842 return err
834843 }
835- return os .Lchown (path , execArgs .UserInfo .uid , execArgs .UserInfo .gid )
844+ if err := os .Lchown (path , execArgs .UserInfo .uid , execArgs .UserInfo .gid ); err != nil && ! errors .Is (err , fs .ErrNotExist ) {
845+ return err
846+ }
847+ return nil
836848 }); chownErr != nil {
837849 opts .Logger (log .LevelError , "chown %q: %s" , execArgs .UserInfo .user .HomeDir , chownErr .Error ())
838850 endStage ("⚠️ Failed to update ownership of %s, you may need to fix this manually!" , execArgs .UserInfo .user .HomeDir )
0 commit comments