chrs: ChRIS CLI Client

crates.io version MIT License Publish test

chrs is a (fast) command-line client for ChRIS.

Rewrite it in Rust.

chrs succeeds caw

Well, there's hope. Right now, the only thing chrs can do is upload files.

Installation

There are two ways to install chrs.

Download

Pre-compiled binaries are automatically built and uploaded to Github Releases. Get the latest version here:

https://github.com/FNNDSC/chrs/releases/latest

This is the easiest installation method, however there is no mechanism for automatic updates.

Get from Crates.io

Use cargo to get and build the package from crates.io:

shell cargo install chrs

If necessary, add the bin folder to $PATH:

shell echo 'export PATH=$HOME/.cargo/bin:$PATH' >> ~/.bashrc source ~/.bashrc

Usage Example

Upload some local files and directories to ChRIS under the path chrisuser/uploads/my-data:

shell chrs --address http://localhost:8000/api/v1/ \ --username chrisuser --password chris1234 \ upload --path "my-data" file1.nii nested/file2.nii folder_of_stuff/

Relative path structures are preserved, so the following upload paths will be created:

Known Problems

Relative paths to parent directories, e.g. ../filename, are not supported.

TODO