bookingcom / shipper

Kubernetes native multi-cluster canary or blue-green rollouts using Helm
Apache License 2.0
734 stars 38 forks source link

Don't block when resolving chart versions #327

Open parhamdoustdar opened 4 years ago

parhamdoustdar commented 4 years ago

Right now, when repo.FetchChartVersions is called, it waits for 2 seconds as a timeout.

This caused an incident when we tried to take down one of the chart repositories that Shipper depends on. As a large number of old releases were still around and were referring to this chart repository, the queues got clogged and we had to bring the chart repository back online.

Instead of having a delay, we should:

This would pretty much mean to remove the select statement from repo.FetchChartVersions, and move it to repo.Start, and add an argument like timeout to it.