Download multiple artifact patterns
- Dominant language
- Go
- Stars
- 1.1k
- Forks
- 378
- Avg merge
- 2d 6h
- Merged PRs (30d)
- 74
Description
I would like to be able to download artifacts from multiple patterns in a single command.
i.e. turn this:
```sh
buildkite-agent artifact download "tmp/rspec.json" .
buildkite-agent artifact download "tmp/rspec-*.json" .
```
into this:
```sh
buildkite-agent artifact download "tmp/rspec.json" "tmp/rspec-*.json" .
```
or something.
I don't think the download command currently supports filesystem globs (#1087) so options like `tmp/rspec{,-*}.json` and `tmp/rspec.json;tmp/rspec-*.json` don't work.
The workaround is to use subsequent commands, but that's less efficient because it's more processes and round trips to the APIs. It'd be super nice if we figured out how to do parallel artifact downloads, too.
Contributor guide
Research direction
Start at the implementation and argument handling for the `artifact download` command, then reproduce the two single-pattern commands from the issue. Compare that behavior with the proposed multi-pattern invocation and determine the supported completion criteria, including whether parallel downloads are part of the change.】【。
Written by the indexing model from the issue text.
Assessment
- Tech stack
- go
- Domain
- cli
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100