uselagoon / remote-controller

A group of controllers for handling Lagoon builds and tasks in Kubernetes or Openshift
5 stars 1 forks source link

refactor: split queue process out #229

Closed shreddedbacon closed 1 year ago

shreddedbacon commented 1 year ago

Checklist

Refactoring build queue process to reduce the amount of times that events trigger actions when QoS is enabled.

There were points in the event cycle where when a build completes, it would pick an item from the queue, but if there was also a pending build in the namespace that triggered the event, it would start a build in that namespace too. This allowed clusters to exceed the QoS limit.

This also introduces some additional changes to the way the queue is handled with the sorting function working as it should now by sorting by priority and creation time, and also allows events to trigger period updates of the pending items in a blocking operation