From 0e71cd2515586d7118198754ab664db6bc70f47a Mon Sep 17 00:00:00 2001 From: Dmitry Vyukov Date: Thu, 7 Nov 2024 16:01:02 +0100 Subject: pkg/manager: dedup HTML page creation code Add a common function that is used to create all HTML pages. This removes some duplication, and allows to prevent more duplication in future, and to keep things consistent. --- pkg/manager/http.go | 96 ++++++++++------------------------------------------- 1 file changed, 18 insertions(+), 78 deletions(-) (limited to 'pkg') diff --git a/pkg/manager/http.go b/pkg/manager/http.go index 37b12458d..76458f75e 100644 --- a/pkg/manager/http.go +++ b/pkg/manager/http.go @@ -952,14 +952,22 @@ type UIInput struct { Cover int } -var summaryTemplate = pages.Create(` +func createPage(title, body string) *template.Template { + return pages.Create(fmt.Sprintf(` - {{.Name}} syzkaller + %v {{HEAD}} + +%v + +`, template.HTMLEscaper(title), body)) +} + +var summaryTemplate = createPage("syzkaller", ` {{.Name }} syzkaller [config] {{.Revision}} @@ -1074,18 +1082,9 @@ var summaryTemplate = pages.Create(` var textarea = document.getElementById("log_textarea"); textarea.scrollTop = textarea.scrollHeight; - `) -var vmsTemplate = pages.Create(` - - - - {{.Name }} syzkaller - {{HEAD}} - - - +var vmsTemplate = createPage("VMs", ` @@ -1105,18 +1104,9 @@ var vmsTemplate = pages.Create(` {{end}}
VM Info:
- `) -var syscallsTemplate = pages.Create(` - - - - {{.Name }} syzkaller - {{HEAD}} - - - +var syscallsTemplate = createPage("syscalls", ` @@ -1134,17 +1124,9 @@ var syscallsTemplate = pages.Create(` {{end}}
Per-syscall coverage:
- `) -var crashTemplate = pages.Create(` - - - - {{.Description}} - {{HEAD}} - - +var crashTemplate = createPage("crash", ` {{.Description}} {{if .Triaged}} @@ -1173,16 +1155,9 @@ Report: {{.Triaged}} {{end}} - `) -var corpusTemplate = pages.Create(` - - - - syzkaller corpus - {{HEAD}} - +var corpusTemplate = createPage("corpus", ` @@ -1203,7 +1178,6 @@ var corpusTemplate = pages.Create(` {{end}}
- `) type UIPrioData struct { @@ -1216,14 +1190,7 @@ type UIPrio struct { Prio int32 } -var prioTemplate = pages.Create(` - - - - syzkaller priorities - {{HEAD}} - - +var prioTemplate = createPage("syscall priorities", ` @@ -1237,7 +1204,6 @@ var prioTemplate = pages.Create(` {{end}}
Priorities for {{$.Call}}:
- `) type UIFallbackCoverData struct { @@ -1250,14 +1216,7 @@ type UIFallbackCall struct { Errnos []int } -var fallbackCoverTemplate = pages.Create(` - - - - syzkaller coverage - {{HEAD}} - - +var fallbackCoverTemplate = createPage("coverage", ` @@ -1272,7 +1231,6 @@ var fallbackCoverTemplate = pages.Create(` {{end}}
Call
- `) type UIRawCallCover struct { @@ -1281,15 +1239,7 @@ type UIRawCallCover struct { UpdateIDs []int } -var rawCoverTemplate = pages.Create(` - - - - syzkaller raw cover - {{HEAD}} - - - +var rawCoverTemplate = createPage("raw coverage", ` @@ -1307,7 +1257,6 @@ var rawCoverTemplate = pages.Create(` {{end}}
Raw cover
- `) type UIJobList struct { @@ -1322,15 +1271,7 @@ type UIJobInfo struct { Execs int32 } -var jobListTemplate = pages.Create(` - - - - {{.Title}} - {{HEAD}} - - - +var jobListTemplate = createPage("job list", ` @@ -1346,5 +1287,4 @@ var jobListTemplate = pages.Create(` {{end}}
{{.Title}} ({{len .Jobs}}):
- `) -- cgit mrf-deployment