Skip to content

Commit 4e08de4

Browse files
authored
feat: avoid overwrite the exist Dockerfile (#21)
1 parent 0e089ff commit 4e08de4

File tree

1 file changed

+10
-0
lines changed

1 file changed

+10
-0
lines changed

cmd/new-dockerfile/main.go

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,8 @@ func main() {
2828
flag.BoolVar(&quiet, "quiet", false, "Disable all log output except errors")
2929
var write bool
3030
flag.BoolVar(&write, "write", false, "Write the Dockerfile to disk at ./Dockerfile")
31+
var overwrite bool
32+
flag.BoolVar(&overwrite, "overwrite", false, "Overwrite the Dockerfile if it already exists")
3133
flag.Parse()
3234

3335
level := slog.LevelInfo
@@ -46,6 +48,14 @@ func main() {
4648
log := slog.New(handler)
4749
df := dockerfile.New(log)
4850

51+
// jump out if users don't want to overwrite the Dockerfile
52+
if write && !overwrite {
53+
if _, err := os.Stat(filepath.Join(path, "Dockerfile")); err == nil {
54+
log.Error("Dockerfile already exists. Use --overwrite to overwrite it.")
55+
return
56+
}
57+
}
58+
4959
viper.SetConfigName("new-dockerfile")
5060
viper.SetConfigType("yaml")
5161
viper.SetConfigType("yml")

0 commit comments

Comments
 (0)