diff --git a/Dockerfile b/Dockerfile
index cf79235..9a990c5 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -12,5 +12,4 @@ FROM alpine:3
RUN export PATH=$PATH:/app
WORKDIR /app
COPY --from=builder /src/bin/wonderwall /app/wonderwall
-COPY --from=builder /src/templates /app/templates/
ENTRYPOINT ["/app/wonderwall"]
diff --git a/pkg/router/errorhandler.go b/pkg/router/errorhandler.go
index c12c034..364c23b 100644
--- a/pkg/router/errorhandler.go
+++ b/pkg/router/errorhandler.go
@@ -1,6 +1,7 @@
package router
import (
+ _ "embed"
"html/template"
"net/http"
"net/url"
@@ -18,6 +19,20 @@ type ErrorPage struct {
RetryURI string
}
+//go:embed templates/error.gohtml
+var errorGoHtml string
+var errorTemplate *template.Template
+
+func init() {
+ var err error
+
+ errorTemplate = template.New("error")
+ errorTemplate, err = errorTemplate.Parse(errorGoHtml)
+ if err != nil {
+ log.Fatalf("parsing error template: %+v", err)
+ }
+}
+
func (h *Handler) respondError(w http.ResponseWriter, r *http.Request, statusCode int, cause error) {
logger := httplog.LogEntry(r.Context())
logger.Error().Stack().Err(cause).Msgf("error in route: %+v", cause)
@@ -35,12 +50,6 @@ func (h *Handler) respondError(w http.ResponseWriter, r *http.Request, statusCod
func (h *Handler) defaultErrorResponse(w http.ResponseWriter, r *http.Request, statusCode int) {
w.WriteHeader(statusCode)
- t, err := template.ParseFiles("templates/error.html")
- if err != nil {
- log.Errorf("parsing error template: %+v", err)
- return
- }
-
loginCookie, err := h.getLoginCookie(r)
if err != nil {
loginCookie = nil
@@ -50,7 +59,10 @@ func (h *Handler) defaultErrorResponse(w http.ResponseWriter, r *http.Request, s
CorrelationID: middleware.GetReqID(r.Context()),
RetryURI: request.RetryURI(r, h.Config.Ingress, loginCookie),
}
- _ = t.Execute(w, errorPage)
+ err = errorTemplate.Execute(w, errorPage)
+ if err != nil {
+ log.Errorf("executing error template: %+v", err)
+ }
}
func (h *Handler) customErrorRedirect(w http.ResponseWriter, r *http.Request, statusCode int) error {
diff --git a/templates/error.html b/pkg/router/templates/error.gohtml
similarity index 92%
rename from templates/error.html
rename to pkg/router/templates/error.gohtml
index 3ba3a1e..c8f4473 100644
--- a/templates/error.html
+++ b/pkg/router/templates/error.gohtml
@@ -1,5 +1,5 @@
-
+
+ Innloggingsfeil | nav.no
Det har dessverre skjedd en feil i forbindelse med innlogging
- Trykk her for å gå tilbake til nav.no
- eller trykk her for å prøve igjen.
+ Trykk her for å gå tilbake til nav.no
+ eller trykk her for å prøve igjen.
Request ID: {{.CorrelationID}}
@@ -253,4 +179,4 @@
-
\ No newline at end of file
+