Skip to main content

Python port of the iRODS icommands

Project description

# Python port of the iRODS icommands.
## Install
pip3 install --user pyicmd

## Usage
usage: pyicmd [--host HOST] [--port PORT] [--user USER] [--passwd PASSWD]
[--zone ZONE] [--version]

Python port of the iRODS icommands.

Supports irods_environment.json file created by iinit. File can be at its
default location ('~/.irods/irods_environment.json') or set via the

If user is set via the command line irods_environment.json is ignored
and given (or default) command line arguments are used to open the session.

positional arguments:
cmd The icommand to run:
rm [file(s)] Remove the files listed from the iRODS server
ls [path] List the files and folders at the given path
put [loc] [file(s)] Copy file(s) and folder(s) from the local computer to [loc] on the server
get [files(s)] [loc] Copy file(s) and folder(s) from the server to [loc] on the local computer
test Test the connection to the iRODS server.
To learn more about a function, type pyicmd [cmd] -h

optional arguments:
--host HOST Address of iRODS server
--port PORT iRODS server port
--user USER iRODS username
--passwd PASSWD iRODS user password
--zone ZONE iRODS zone
--version show programs version number and exit

## Speed Test
By default, icommands uses multi-threading for uploads greater than ~35MB. pyicmd does not currently support multiple threaded uploads, causing it to be slower for large files.
![Speed Test](assets/UploadTimes.png)

# Contributing
## Testing
Tests for the API are written in pytest format and can be run

make test

Tests require a valid iRODS server and configured irods_environment.json file created by iinit. [This iRODS docker container]( was used to run the tests.

## Code Standard
Code should follow [Python's PEP8 style guide]( All contributions should pass standard pylint tests. These can be run using:

make lint

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for pyicmd, version 1.0.3
Filename, size File type Python version Upload date Hashes
Filename, size pyicmd-1.0.3-py3-none-any.whl (7.6 kB) File type Wheel Python version py3 Upload date Hashes View
Filename, size pyicmd-1.0.3.tar.gz (4.7 kB) File type Source Python version None Upload date Hashes View

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Huawei Huawei PSF Sponsor Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page