Allow configuration of job backoff interval
GARM has a backoff interval when consuming queued jobs. This backoff is intended to allow any potential idle runners to pick up a job before GARM attempts to spin up a new one. This change allows users to set a custom backoff interval or disable it altogether by setting it to 0. Signed-off-by: Gabriel Adrian Samfira <gsamfira@cloudbasesolutions.com>
This commit is contained in:
parent
8f0d44742e
commit
892a62bfe4
8 changed files with 90 additions and 31 deletions
|
|
@ -38,6 +38,7 @@ func dbControllerToCommonController(dbInfo ControllerInfo) (params.ControllerInf
|
|||
WebhookURL: dbInfo.WebhookBaseURL,
|
||||
ControllerWebhookURL: url,
|
||||
CallbackURL: dbInfo.CallbackURL,
|
||||
MinimumJobAgeBackoff: dbInfo.MinimumJobAgeBackoff,
|
||||
}, nil
|
||||
}
|
||||
|
||||
|
|
@ -70,7 +71,8 @@ func (s *sqlDatabase) InitController() (params.ControllerInfo, error) {
|
|||
}
|
||||
|
||||
newInfo := ControllerInfo{
|
||||
ControllerID: newID,
|
||||
ControllerID: newID,
|
||||
MinimumJobAgeBackoff: 30,
|
||||
}
|
||||
|
||||
q := s.conn.Save(&newInfo)
|
||||
|
|
@ -115,6 +117,10 @@ func (s *sqlDatabase) UpdateController(info params.UpdateControllerParams) (para
|
|||
dbInfo.WebhookBaseURL = *info.WebhookURL
|
||||
}
|
||||
|
||||
if info.MinimumJobAgeBackoff != nil {
|
||||
dbInfo.MinimumJobAgeBackoff = *info.MinimumJobAgeBackoff
|
||||
}
|
||||
|
||||
q = tx.Save(&dbInfo)
|
||||
if q.Error != nil {
|
||||
return errors.Wrap(q.Error, "saving controller info")
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue