Don't think this exists right now, but any thoughts on a declarative way to handle retries?
For example, I'm using Dagger primarily for a bunch of CI tests. Even if my tests are 1% flaky, at scale that adds up to a ton a day.
I could manually implement retries, but a large benefit of Dagger is that everything's declarative.
Maybe something like:
return dag
.container()
.from("hexpm/elixir:1.18.4")
.withExec(["mix", "test"], {retries: 5})
.exitCode()
or
return dag
.container()
.from("hexpm/elixir:1.18.4")
.withRetries(5)
.withExec(["mix", "test"])
.exitCode()
or
return dag
.container()
.from("hexpm/elixir:1.18.4")
.withExec(["mix", "test"])
.exitCodeWithRetries(5)
etc.
Not really sure how it'd fit in best.