Rescale CLI Commands
This section provides a list of various commands the Rescale CLI App supports. You can also go through the Rescale CLI Tutorial for additional information on using CLI commands. Please note the following -
-
If you have set up the API key according to methods 2 or 3 in the Simplifying CLI Commands page, you may omit
[-p <api-token>]
from the below commands. -
If you wish to get help on Rescale CLI Commands, you can use the
-h
flag. Example -java -jar /usr/local/bin/rescale.jar -h
Rescale Cores/Software Information
You can obtain information about Rescale Core Types and the Softwares available using the following commands and flags :
COMMAND | java -jar /usr/local/bin/rescale.jar list-info -<flag-type> [-p <api-token>] |
FLAGS | DESCRIPTION |
-c |
Retrieves information about RESCALE core types |
-a |
Retrieves information about softwares available |
Job Management
Submit a job Submits a job on the Rescale platform. You can login to the Rescale platform to check the submitted job.
COMMAND | java -jar /usr/local/bin/rescale.jar submit [-p <api-token>] -i <input-script> |
FLAGS | DESCRIPTION |
1) -q or --quiet |
Suppresses all logging output that would normally go to STDOUT. This is useful when piping the script output to another script. |
2) -E or --end-to-end |
Runs the job end-to-end : uploading input files, submitting the job, monitoring for the results and downloading the results files. |
3) -f <file1> <file2> ... <fileN> |
Filter output files to be downloaded after the job finishes. This flag can be used with submit only while running an end-to-end job. |
Stop a job
Submits a request to cleanly shutdown the currently running job
COMMAND | java -jar /usr/local/bin/rescale.jar stop [-p <api-token>] -j <job-id> |
Delete a job
Submits a request to delete a completed job
COMMAND | java -jar /usr/local/bin/rescale.jar delete [-p <api-token>] -j <job-id> |
Check job status Requests the specified job's status. Place in a loop to monitor continuously. It is recommended that an exponential backoff algorithm is used to monitor jobs that take long.
COMMAND | java -jar /usr/local/bin/rescale.jar status [-p <api-token>] -j <job-id> |
File transfer
Download files from a completed job
Downloads all the result files after the job run.
COMMAND | java -jar /usr/local/bin/rescale.jar sync [-p <api-token>] -j <job-id> |
FLAGS | DESCRIPTION |
-s <file1> <file2> ... <fileN> |
Output file filtering using "string pattern matching" searching. (Since it happens on the server side, searching more robust and faster - Recommended) |
-f <file1> <file2> ... <fileN> |
Output file filtering using "glob" (Happens on the client side). * is a wildcard that will match any string of characters and ? is a wildcard that will match any single character |
--exclude <file1>,<file2>, ... ,<fileN> |
Excludes the specified files from downloading. |
-n <job-id> |
To sync all jobs newer than a specific job. App will create individual directories as - rescale_job_<job-ID> |
-d <sync-time> |
For continuous syncing, the user may specify a sync time. The time in seconds would determine the delay time between two sync attempts |
Download files from a running job
Downloads a specific file from a running job. It downloads a copy of the file (as it exists at that time) to the user's local directory in which they executed the command. Second, it would adds that same time-sensitive copy of the file to the job's output, whose name is formatted "download_{timestamp}_{original_filename}".
COMMAND | java -jar /usr/local/bin/rescale.jar download-file [-p <api_key>] -j <job_id> -f <filename> |
FLAGS | DESCRIPTION |
-f <file1> <file2> ... <fileN> |
Output file filtering using "string pattern matching" (Happens on the client side). * is a wildcard that will match any string of characters and ? is a wildcard that will match any single character |
Upload files to Rescale cloud storage
COMMAND | java -jar /usr/local/bin/rescale.jar upload -p <api-token> -f <file1> ... <fileN> |
FLAGS | DESCRIPTION |
-e |
To see an extended set of metadata during upload |
--quiet |
To suppress non-json output from the command, if the CLI is being embedded in a larger script. |