Feature #12876
closed
[CLI] arvados-client command-line tool
Added by Tom Clegg almost 7 years ago.
Updated almost 7 years ago.
Description
Part of #12868.
Package an "arvados-client" program that does everything "arv" does (perhaps by shelling out to "arv" or one of the Python "arv-*" commands, depending on the subcommand)
Related issues
2 (2 open — 0 closed)
- Blocks Story #12868: Rearrange packages so "arv" runs a Go program that shells out to Python/Ruby code only if needed added
12876-arvados-client @ a6ee0e990641973aa4d79e550821eb42eab25ca4
...adds "arvados-client" package with "arvados-client" binary
- implements "arv-get" using the Go SDK
- runs "arv" to handle the other commands that are currently handled inside "arv"
- runs the appropriate Python/Ruby program ("arv-get", "arv-run-pipeline-instance", etc) to handle the non-builtin commands, just like "arv" does
todo:
- ensure error messages are useful, especially "unknown subcommand", "--help", and "subcommand implemented by a ruby/python program which is not found / not installed"
related:
- Go SDK doesn't cache the discovery doc, which makes "arv get" slow (perhaps comparable to rubygems overhead?) ...but that shortcoming should be addressed independently
- Related to Story #12308: [FUSE] Golang-based fuse driver added
12876-arvados-client @ b9851a978e1a1deb8853f7cd5b02acf7c55a24c8
If python pkg is not installed:
$ arvados-client keep ls
exec: "arv-ls": executable file not found in $PATH
Note: This subcommand uses the "arvados" Python module. If that is
not installed, try:
* "pip install arvados" (either as root or in a virtualenv), or
* "sudo apt-get install python-arvados-python-client", or
* see https://doc.arvados.org/install for more details.
If ruby pkg is not installed:
$ arvados-client pipeline run
exec: "arv-run-pipeline-instance": executable file not found in $PATH
Note: This subcommand uses the arvados-cli Ruby gem. If that is not
installed, try "gem install arvados-cli", or see
https://doc.arvados.org/install for more details.
This LGTM @ b9851a978e1a1deb8853f7cd5b02acf7c55a24c8
It works, and I looked at the code a bit, I see no big issues. Since this is a new piece of code, I see no real harm in merging now and improving it over time.
- Status changed from In Progress to Resolved
Also available in: Atom
PDF