diff --git a/apiserver/controllers/controllers.go b/apiserver/controllers/controllers.go index f778ea81..092fd4ab 100644 --- a/apiserver/controllers/controllers.go +++ b/apiserver/controllers/controllers.go @@ -115,10 +115,7 @@ func (a *APIController) handleWorkflowJobEvent(w http.ResponseWriter, r *http.Re signature := r.Header.Get("X-Hub-Signature-256") hookType := r.Header.Get("X-Github-Hook-Installation-Target-Type") - controllerInfo, err := a.r.GetControllerInfo(r.Context()) - if err != nil { - log.Printf("failed to get controller info for metics labels: %q", err) - } + controllerInfo := a.r.GetControllerInfo(r.Context()) if err := a.r.DispatchWorkflowJob(hookType, signature, body); err != nil { if errors.Is(err, gErrors.ErrNotFound) { diff --git a/apiserver/controllers/metrics.go b/apiserver/controllers/metrics.go index 53526842..8c518342 100644 --- a/apiserver/controllers/metrics.go +++ b/apiserver/controllers/metrics.go @@ -37,11 +37,7 @@ func (c *GarmCollector) Describe(ch chan<- *prometheus.Desc) { } func (c *GarmCollector) Collect(ch chan<- prometheus.Metric) { - controllerInfo, err := c.runner.GetControllerInfo(auth.GetAdminContext()) - if err != nil { - log.Printf("error on fetching controllerInfo: %s", err) - // continue anyway - } + controllerInfo := c.runner.GetControllerInfo(auth.GetAdminContext()) c.CollectInstanceMetric(ch, controllerInfo.Hostname, controllerInfo.ControllerID.String()) c.CollectHealthMetric(ch, controllerInfo.Hostname, controllerInfo.ControllerID.String()) diff --git a/runner/runner.go b/runner/runner.go index 94d99efc..7ee881b9 100644 --- a/runner/runner.go +++ b/runner/runner.go @@ -66,6 +66,11 @@ func NewRunner(ctx context.Context, cfg config.Config) (*Runner, error) { creds[ghcreds.Name] = ghcreds } + controllerInfo := params.ControllerInfo{ + ControllerID: ctrlId.ControllerID, + } + controllerInfo.Hostname, _ = os.Hostname() + poolManagerCtrl := &poolManagerCtrl{ controllerID: ctrlId.ControllerID.String(), config: cfg, @@ -81,6 +86,7 @@ func NewRunner(ctx context.Context, cfg config.Config) (*Runner, error) { poolManagerCtrl: poolManagerCtrl, providers: providers, credentials: creds, + controllerInfo: controllerInfo, } if err := runner.loadReposOrgsAndEnterprises(); err != nil { @@ -268,23 +274,8 @@ type Runner struct { controllerInfo params.ControllerInfo } -func (r *Runner) GetControllerInfo(ctx context.Context) (params.ControllerInfo, error) { - if r.controllerInfo == (params.ControllerInfo{}) { - var err error - r.controllerInfo, err = r.store.ControllerInfo() - if err != nil { - return params.ControllerInfo{}, errors.Wrap(err, "fetching controller info") - } - } - if r.controllerInfo.Hostname == "" { - var err error - r.controllerInfo.Hostname, err = os.Hostname() - if err != nil { - // this returns a partial controller info, but it's better than nothing - return r.controllerInfo, errors.Wrap(err, "fetching hostname") - } - } - return r.controllerInfo, nil +func (r *Runner) GetControllerInfo(ctx context.Context) params.ControllerInfo { + return r.controllerInfo } func (r *Runner) ListCredentials(ctx context.Context) ([]params.GithubCredentials, error) {