Skip to content

Commit 2069e1f

Browse files
authored
Check if dir exist before creation in uploadFile (#1297)
Signed-off-by: Alexey Makhov <[email protected]> Signed-off-by: makhov <[email protected]> # Conflicts: # internal/controller/k0smotron.io/k0smotroncluster_controller.go
1 parent f1c73fc commit 2069e1f

File tree

1 file changed

+4
-2
lines changed

1 file changed

+4
-2
lines changed

internal/controller/infrastructure/ssh_provisioner.go

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -237,8 +237,10 @@ func (p *SSHProvisioner) uploadFile(client *rig.Client, file provisioner.File) e
237237
return fmt.Errorf("failed to parse permissions: %w", err)
238238
}
239239

240-
if err := fsys.MkdirAll(dir, fs.FileMode(perms)); err != nil {
241-
return fmt.Errorf("failed to create directory: %w", err)
240+
if _, err := fsys.Stat(dir); errors.Is(err, fs.ErrNotExist) {
241+
if err := fsys.MkdirAll(dir, fs.FileMode(perms)); err != nil {
242+
return fmt.Errorf("failed to create directory: %w", err)
243+
}
242244
}
243245

244246
destFile, err := fsys.OpenFile(file.Path, os.O_CREATE|os.O_TRUNC|os.O_WRONLY, fs.FileMode(perms))

0 commit comments

Comments
 (0)