A repository outage can stop new users from building the repository (as well as from-scratch continuous builds). To provide reliable builds, Bazel's downloader relies on manually specifying mirrors for every archive that is downloaded. It would be good if bazel-deps could integrate with this.
As a user, I'd expect to either specify multiple resolvers, or specify a mirror URL (eg a Google Cloud Storage bucket). bazel-deps could then write all working URLs into workspace.bzl. Since Bazel doesn't yet provide it (as far as I'm aware) there should be some recommendation for how to populate the mirror for a given build - for example, bazel-deps could output a list of files to be mirrored.
I don't think the underlying maven_jar supports mirrors. Possibly gerrit's maven_jar.bzl could be adjusted to use Bazel's downloader (it currently shells out to curl) and upstreamed into Bazel.
A repository outage can stop new users from building the repository (as well as from-scratch continuous builds). To provide reliable builds, Bazel's downloader relies on manually specifying mirrors for every archive that is downloaded. It would be good if
bazel-deps
could integrate with this.As a user, I'd expect to either specify multiple resolvers, or specify a mirror URL (eg a Google Cloud Storage bucket).
bazel-deps
could then write all working URLs intoworkspace.bzl
. Since Bazel doesn't yet provide it (as far as I'm aware) there should be some recommendation for how to populate the mirror for a given build - for example,bazel-deps
could output a list of files to be mirrored.I don't think the underlying
maven_jar
supports mirrors. Possibly gerrit's maven_jar.bzl could be adjusted to use Bazel's downloader (it currently shells out tocurl
) and upstreamed into Bazel.