From 95b43af88e7246ecb389392dcd7d1227ceac6172 Mon Sep 17 00:00:00 2001 From: Javier Marcos Date: Wed, 20 Jan 2021 16:14:58 +0100 Subject: [PATCH] Grab packs and schedule only if dashboard is enabled --- admin/handlers/templates.go | 33 +++++++++++++++++++-------------- 1 file changed, 19 insertions(+), 14 deletions(-) diff --git a/admin/handlers/templates.go b/admin/handlers/templates.go index b683a543..e3af148e 100644 --- a/admin/handlers/templates.go +++ b/admin/handlers/templates.go @@ -926,19 +926,24 @@ func (h *HandlersAdmin) NodeHandler(w http.ResponseWriter, r *http.Request) { nodeEnv = e } } - // Get query packs for this environment - packs, err := h.Envs.NodePacksEntries([]byte(nodeEnv.Packs), node.Platform) - if err != nil { - h.Inc(metricAdminErr) - log.Printf("error getting packs: %v", err) - return - } - // Get the schedule for this environment - schedule, err := h.Envs.NodeStructSchedule([]byte(nodeEnv.Schedule), node.Platform) - if err != nil { - h.Inc(metricAdminErr) - log.Printf("error getting schedule: %v", err) - return + // If dashboard enabled, retrieve packs and schedule + dashboardEnabled := h.Settings.NodeDashboard() + var packs environments.PacksEntries + var schedule environments.ScheduleConf + if dashboardEnabled { + packs, err = h.Envs.NodePacksEntries([]byte(nodeEnv.Packs), node.Platform) + if err != nil { + h.Inc(metricAdminErr) + log.Printf("error getting packs: %v", err) + return + } + // Get the schedule for this environment + schedule, err = h.Envs.NodeStructSchedule([]byte(nodeEnv.Schedule), node.Platform) + if err != nil { + h.Inc(metricAdminErr) + log.Printf("error getting schedule: %v", err) + return + } } // Prepare template data templateData := NodeTemplateData{ @@ -949,7 +954,7 @@ func (h *HandlersAdmin) NodeHandler(w http.ResponseWriter, r *http.Request) { TagsForNode: tags, Environments: h.allowedEnvironments(ctx[sessions.CtxUser], envAll), Platforms: platforms, - Dashboard: h.Settings.NodeDashboard(), + Dashboard: dashboardEnabled, Packs: packs, Schedule: schedule, }