Skip to content

Commit 4ec8ee5

Browse files
committed
create backup before writing file
1 parent e3df78a commit 4ec8ee5

File tree

1 file changed

+12
-0
lines changed

1 file changed

+12
-0
lines changed

cmd/lint_cmd.go

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -686,6 +686,18 @@ func writeFixedFile(result *motor.RuleSetExecutionResult, fileName string) error
686686
return fmt.Errorf("no modified spec available")
687687
}
688688

689+
// Create backup file in /tmp/ with vacuum prefix
690+
backupFileName := filepath.Join("/tmp", "vacuum-"+filepath.Base(fileName)+".bak")
691+
originalContent, err := os.ReadFile(fileName)
692+
if err != nil {
693+
return fmt.Errorf("failed to read original file %s: %w", fileName, err)
694+
}
695+
696+
err = os.WriteFile(backupFileName, originalContent, fileInfo.Mode())
697+
if err != nil {
698+
return fmt.Errorf("failed to create backup file %s: %w", backupFileName, err)
699+
}
700+
689701
// Write back to the original file with original permissions
690702
err = os.WriteFile(fileName, result.ModifiedSpec, fileInfo.Mode())
691703
if err != nil {

0 commit comments

Comments
 (0)