cmd/vulnreport: add format command
Change-Id: Ib8b170ba8ca857b62431ee41a423cd9ab1a58ade
Reviewed-on: https://go-review.googlesource.com/c/vulndb/+/382514
Trust: Jonathan Amsterdam <jba@google.com>
Run-TryBot: Jonathan Amsterdam <jba@google.com>
TryBot-Result: Gopher Robot <gobot@golang.org>
Reviewed-by: Julie Qiu <julie@golang.org>
diff --git a/cmd/vulnreport/main.go b/cmd/vulnreport/main.go
index 566000c..1818484 100644
--- a/cmd/vulnreport/main.go
+++ b/cmd/vulnreport/main.go
@@ -40,6 +40,8 @@
fmt.Fprintf(flag.CommandLine.Output(), " create [githubIssueNumber]: creates a new vulnerability YAML report\n")
fmt.Fprintf(flag.CommandLine.Output(), " lint [filename.yaml]: lints a vulnerability YAML report\n")
fmt.Fprintf(flag.CommandLine.Output(), " newcve [filename.yaml]: creates a CVE report from the provided YAML report\n")
+ fmt.Fprintf(flag.CommandLine.Output(), " fix [filename.yaml]: fixes a YAML report\n")
+ fmt.Fprintf(flag.CommandLine.Output(), " formats [filename.yaml]: reformats a YAML report\n")
flag.PrintDefaults()
}
@@ -80,6 +82,10 @@
if err := fix(name); err != nil {
log.Fatal(err)
}
+ case "format":
+ if err := format(name); err != nil {
+ log.Fatal(err)
+ }
default:
flag.Usage()
log.Fatalf("unsupported command: %q", cmd)
@@ -169,6 +175,15 @@
return nil
}
+func format(filename string) (err error) {
+ derrors.Wrap(&err, "format(%q)", filename)
+ r, err := report.Read(filename)
+ if err != nil {
+ return err
+ }
+ return r.Write(filename)
+}
+
func fix(filename string) (err error) {
defer derrors.Wrap(&err, "fix(%q)", filename)
r, err := report.Read(filename)