diff options
author | Julien Dessaux | 2025-01-06 00:41:32 +0100 |
---|---|---|
committer | Julien Dessaux | 2025-01-06 00:41:32 +0100 |
commit | 6e069484cb0a911ba541e07bf04331fadbb76612 (patch) | |
tree | 3457c759d54ae91e5ac1e64fe0bbf9c4b8ac18f0 /pkg/webui/render.go | |
parent | feat(tfstated): add syscall.SIGTERM handling (diff) | |
download | tfstated-6e069484cb0a911ba541e07bf04331fadbb76612.tar.gz tfstated-6e069484cb0a911ba541e07bf04331fadbb76612.tar.bz2 tfstated-6e069484cb0a911ba541e07bf04331fadbb76612.zip |
feat(webui): bootstrap session handling and login process
Diffstat (limited to 'pkg/webui/render.go')
-rw-r--r-- | pkg/webui/render.go | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/pkg/webui/render.go b/pkg/webui/render.go new file mode 100644 index 0000000..23f5e51 --- /dev/null +++ b/pkg/webui/render.go @@ -0,0 +1,22 @@ +package webui + +import ( + "bytes" + "fmt" + "html/template" + "net/http" +) + +func render(w http.ResponseWriter, t *template.Template, status int, data any) { + var buf bytes.Buffer + if err := t.ExecuteTemplate(&buf, "base.html", data); err != nil { + w.WriteHeader(http.StatusInternalServerError) + _, _ = w.Write([]byte(fmt.Sprintf( + "%s: failed to execute template: %+v", + http.StatusText(http.StatusInternalServerError), + err))) + } else { + w.WriteHeader(status) + _, _ = buf.WriteTo(w) + } +} |