Table of Contents
A plugin ts app to efficiently copy one or more obj storage directories.
tsdircopy
is a ChRIS-based application to efficiently copy the contents of one or more obj
storage directories, given by the --dir argument, to its output directory. This argument is a
string containing one or more directories separated by comma.
Unlike dircopy it doesn't create a new feed and unlike dsdircopy it doesn't require
a input dir positional argument.
python tsdircopy.py [-h] [--help] [--json] [--man] [--meta] [--savejson <DIR>] [-v <level>] [--verbosity <level>] [--version] <outputDir> --dir <DIR> [--plugininstances <instances>] [-f <filter>] [--filter <filter>] [-g] [--groupByInstance]
[-h] [--help] If specified, show help message and exit. [--json] If specified, show json representation of app and exit. [--man] If specified, print (this) man page and exit. [--meta] If specified, print plugin meta data and exit. [--savejson <DIR>] If specified, save json representation file to DIR and exit. [-v <level>] [--verbosity <level>] Verbosity level for app. Not used currently. [--version] If specified, print version number and exit. <outputDir> Output directory. --dir <DIR> Required, it's a string representing a comma-separated list of one or more directories. [--plugininstances <instances>] If specified, it's a string representing a comma-separated list of plugin instance ids. [-f <filter>] [--filter <filter>] If specified, it's a string representing a comma-separated list of regular expressions. [-g] [--groupByInstance] If specified then an output directory is created for each input plugin instance within this plugin app's output path
Getting inline help is:
docker run --rm fnndsc/pl-tsdircopy tsdircopy --man
You need you need to specify the output directories using the -v flag to docker run.
docker run --rm -u $(id -u) -v $(pwd)/out:/outgoing \
fnndsc/pl-tsdircopy tsdircopy /outgoing --dir <DIR>
Build the Docker container:
docker build -t local/pl-tsdircopy .
Run unit tests:
docker run --rm local/pl-tsdircopy nosetests
This example will copy all files in the cube/uploads and SERVICES/PACS/BCH directories into the output dir. Note: This is a utility 'ts' plugin that only works in the context of the ChRIS platform.
docker run --rm -v $(pwd)/out:/outgoing fnndsc/pl-tsdircopy \
tsdircopy /outgoing --dir 'cube/uploads,SERVICES/PACS/BCH'