ChristofferNissen / helmper

Import Helm Charts to OCI registries, optionally with vulnerability patching
https://christoffernissen.github.io/helmper/
Apache License 2.0
239 stars 9 forks source link

Feature: Retrying failed connections #30

Closed tommy-dk closed 6 months ago

tommy-dk commented 6 months ago

Hello!

While running helmper it tries to communicate with various sources, services and registries. Sometimes they don't respond in a timely fashion, thus rendering a context deadline exceeded error and exiting abruptly halfway through the execution. See example here:

{"time":"2024-05-29T12:56:01.142365493Z","level":"ERROR","msg":"signing digest: Head \"https://xyz.azurecr.io/v2/openebs/provisioner-nfs/manifests/sha256-f8a913f70026e86dae967050b6cd3790b81dd7c9c580aab306c3a0f36ca49b18.sig\": context deadline exceeded"}

It would be very useful to be able to adjust the timeouts through configuration, but also that helmper uses an exponential backoff mechanism for retrying the failed connection.

ChristofferNissen commented 6 months ago

Ah, this is when running Cosign, I added this logic already for Helm. Thanks for raising this issue, will look into it 🙌