cmd/govulncheck: move HTML to static folder
The Go template use by the -html flag is moved to cmd/govulncheck/static
to make it easier to modify these files.
Change-Id: Ib63e6a207b5b592b0d0d7f91bb85a05c0e3e37de
Reviewed-on: https://go-review.googlesource.com/c/vuln/+/403574
Reviewed-by: Julie Qiu <julieqiu@google.com>
TryBot-Result: Gopher Robot <gobot@golang.org>
Reviewed-by: Jonathan Amsterdam <jba@google.com>
Run-TryBot: Julie Qiu <julie@golang.org>
diff --git a/cmd/govulncheck/html.go b/cmd/govulncheck/html.go
index a4b382d..3f29f43 100644
--- a/cmd/govulncheck/html.go
+++ b/cmd/govulncheck/html.go
@@ -8,6 +8,7 @@
package main
import (
+ "embed"
"fmt"
"html/template"
"io"
@@ -15,10 +16,13 @@
"golang.org/x/vuln/vulncheck"
)
+//go:embed static/*
+var staticContent embed.FS
+
func html(w io.Writer, r *vulncheck.Result, callStacks map[*vulncheck.Vuln][]vulncheck.CallStack, moduleVersions map[string]string, topPackages map[string]bool, vulnGroups [][]*vulncheck.Vuln) error {
- tmpl, err := template.New("govulncheck").Funcs(template.FuncMap{
+ tmpl, err := template.New("govulncheck.tmpl").Funcs(template.FuncMap{
"funcName": funcName,
- }).Parse(templateSource)
+ }).ParseFS(staticContent, "static/govulncheck.tmpl")
if err != nil {
return err
}
@@ -62,45 +66,3 @@
}
return tmpl.Execute(w, vulns)
}
-
-var templateSource = `
-<!DOCTYPE html>
-<html lang="en">
-<meta charset="utf-8">
-<title>govulncheck Results</title>
-<style>
-body {
- font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu,
- 'Helvetica Neue', Arial, sans-serif;
-}
-list-style-type: none;
-</style>
-
-
-<body>
- {{range .}}
- <h2>{{.ID}}</h2>
- <table>
- <tr><td>Package</td><td>{{.PkgPath}}</td></tr>
- <tr><td>Your version</td><td>{{.CurrentVersion}}</td></tr>
- <tr><td>Fixed version</td><td>{{.FixedVersion}}</td></tr>
- <tr><td>Reference</td><td>{{.Reference}}</td></tr>
- <tr><td>Description</td><td>{{.Details}}</td></tr>
- </table>
-
- {{range .Stacks}}
- <details>
- <summary>{{.Summary}}</summary>
- <ul>
- {{range .Stack}}
- <li>{{.Function | funcName}}</li>
- {{end}}
- </ul>
- </details>
- {{end}}
- {{else}}
- No vulnerabilities found.
- {{end}}
-</body>
-</html>
-`
diff --git a/cmd/govulncheck/static/govulncheck.tmpl b/cmd/govulncheck/static/govulncheck.tmpl
new file mode 100644
index 0000000..4f7261d
--- /dev/null
+++ b/cmd/govulncheck/static/govulncheck.tmpl
@@ -0,0 +1,40 @@
+
+<!DOCTYPE html>
+<html lang="en">
+<meta charset="utf-8">
+<title>govulncheck Results</title>
+<style>
+body {
+ font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu,
+ 'Helvetica Neue', Arial, sans-serif;
+}
+list-style-type: none;
+</style>
+
+
+<body>
+ {{range .}}
+ <h2>{{.ID}}</h2>
+ <table>
+ <tr><td>Package</td><td>{{.PkgPath}}</td></tr>
+ <tr><td>Your version</td><td>{{.CurrentVersion}}</td></tr>
+ <tr><td>Fixed version</td><td>{{.FixedVersion}}</td></tr>
+ <tr><td>Reference</td><td>{{.Reference}}</td></tr>
+ <tr><td>Description</td><td>{{.Details}}</td></tr>
+ </table>
+
+ {{range .Stacks}}
+ <details>
+ <summary>{{.Summary}}</summary>
+ <ul>
+ {{range .Stack}}
+ <li>{{.Function | funcName}}</li>
+ {{end}}
+ </ul>
+ </details>
+ {{end}}
+ {{else}}
+ No vulnerabilities found.
+ {{end}}
+</body>
+</html>