quaint-telephone-89068
02/03/2023, 4:11 PMshfmt or the Python GRPC plugin). The jobs run in containers where we could pre-install all of the tools we use to avoid these errors, but at the moment Pants only supports either finding a pre-installed binary (via BinaryPathRequest) or downloading the binary (via ExternalToolRequest), and the tools that give us trouble are all set up as `ExternalToolRequest`s.
Describe the solution you'd like
It would be nice if subsystems extending ExternalTool generically supported a boolean setting to flip from downloading the tool to finding the pre-downloaded tool.
EDIT: Or maybe instead of a boolean setting, an optional string setting for the binary name to look up on the PATH.
Describe alternatives you've considered
We've considered self-hosting an S3 bucket, sticking all our binaries in it, and configuring our `default_url_template`s to point at it - but it sounds like binaries.pantsbuild.org is already effectively doing that for some binaries, and we still see flakiness pulling from it 😢
pantsbuild/pants