diff --git a/cmd/build.go b/cmd/build.go
index 659de86e0598b60c975a9ea2c29bb813a7e9b076_Y21kL2J1aWxkLmdv..9c106668a7a94ea79572d37532180aade5f61a88_Y21kL2J1aWxkLmdv 100644
--- a/cmd/build.go
+++ b/cmd/build.go
@@ -10,6 +10,7 @@
 type BuildCmd struct {
 	Args struct {
 		DryRun bool `short:"d" long:"dry-run" description:"if set only prints commands but do not run them"`
+		Keep   bool `short:"k" long:"keep" descriptions:"Keep the temporary files"`
 	}
 	PositionnalArgs struct {
 		Namespace string `required:"yes" positional-arg-name:"namespace"`
@@ -34,7 +35,7 @@
 	if err != nil {
 		return fmt.Errorf("failed to create temp dir: %w", err)
 	}
-	if !cmd.Args.DryRun {
+	if !cmd.Args.Keep {
 		defer func() {
 			if err := os.RemoveAll(tmpDir); err != nil {
 				Logger.Err(err).Str("tempdir", tmpDir).Msg("failed to remove temp dir")