fix: pass provider

This commit is contained in:
Kevin Franklin Kim 2023-10-18 16:37:11 +02:00
parent 276725bb9b
commit 6e6dca86c8
No known key found for this signature in database
2 changed files with 4 additions and 4 deletions

View File

@ -183,7 +183,7 @@ func WithHTTPHealthzService(enabled bool) Option {
func WithHTTPReadmeService(enabled bool) Option {
return func(inst *Server) {
if config.GetBool(inst.Config(), "service.readme.enabled", enabled)() {
svs := service.NewDefaultHTTPReadme(inst.Logger(), &inst.readmers)
svs := service.NewDefaultHTTPReadme(inst.Logger(), inst.readmers)
inst.initServices = append(inst.initServices, svs)
inst.AddAlwaysHealthzers(svs)
}

View File

@ -14,7 +14,7 @@ const (
DefaultHTTPReadmePath = "/readme"
)
func NewHTTPReadme(l *zap.Logger, name, addr, path string, readmers *[]interfaces.Readmer) *HTTP {
func NewHTTPReadme(l *zap.Logger, name, addr, path string, readmers func() []interfaces.Readmer) *HTTP {
handler := http.NewServeMux()
handler.HandleFunc(path, func(w http.ResponseWriter, r *http.Request) {
switch r.Method {
@ -22,7 +22,7 @@ func NewHTTPReadme(l *zap.Logger, name, addr, path string, readmers *[]interface
w.Header().Add("Content-Type", "text/markdown")
w.WriteHeader(http.StatusOK)
md := &markdown.Markdown{}
for _, readmer := range *readmers {
for _, readmer := range readmers() {
md.Print(readmer.Readme())
}
_, _ = w.Write([]byte(md.String()))
@ -33,7 +33,7 @@ func NewHTTPReadme(l *zap.Logger, name, addr, path string, readmers *[]interface
return NewHTTP(l, name, addr, handler)
}
func NewDefaultHTTPReadme(l *zap.Logger, readmers *[]interfaces.Readmer) *HTTP {
func NewDefaultHTTPReadme(l *zap.Logger, readmers func() []interfaces.Readmer) *HTTP {
return NewHTTPReadme(
l,
DefaultHTTPReadmeName,