pkg/tool/file/append: create file if none exists.

Closes #469
https://github.com/cuelang/cue/pull/469

GitOrigin-RevId: 31a327c32d5b8f2cf5bfc83b55c6b78f27c25dcf
Change-Id: If04b565fa97bbb280c4ba515fc042645ade4ca9e
Reviewed-on: https://cue-review.googlesource.com/c/cue/+/7103
Reviewed-by: CUE cueckoo <cueckoo@gmail.com>
Reviewed-by: Marcel van Lohuizen <mpvl@golang.org>
diff --git a/pkg/tool/file/file.go b/pkg/tool/file/file.go
index 7c206ca..cdea97a 100644
--- a/pkg/tool/file/file.go
+++ b/pkg/tool/file/file.go
@@ -74,7 +74,7 @@
 		return nil, ctx.Err
 	}
 
-	f, err := os.OpenFile(filename, os.O_APPEND|os.O_WRONLY, os.FileMode(mode))
+	f, err := os.OpenFile(filename, os.O_CREATE|os.O_APPEND|os.O_WRONLY, os.FileMode(mode))
 	if err != nil {
 		return nil, err
 	}