How do you Import data to Columbus using the Command Line Interface.
Image data can be imported to Columbus using an Acapella script. Click here to download all resources.
Two versions of the Script are available.
Standard Columbus systems should use import.script
ColumbusPlus systems should use the updated import-cluster.script
The above download also includes "ArrayScan TIF" image data if required.
The image data to be imported must be available to the server's file system. Essentially you can either copy the file/s to the server or you could mount a share to the server with the files residing on it. Perhaps one of the more common shares would be a Windows share to the Linux system, in which case please review this RedHat Technical Note.
Move the script to the server using a suitable application such as WinSCP.
Connect to the server's Command Line Interface, switch to the columbus user then change to the path containing the script file. If you run the script as the root user the data will fail to transfer, see error section below.
Input parameters to the script are specified by the -s option.
The full list of script parameters is as follows:
ScreenName: Name of the screen to upload data (if name not existing will be created)
ImportType: Name of the dataset type (take name from Columbus UI "import Type" option list on import page)
DatasetFolder: Folder containing the dataset
Host: Columbus host name or IP
User: Columbus user account name
Password: Columbus user account password
An additional parameter is available in the import-cluster.script
ForwardPath: directory where columbus intermediately stores imported images before transferring them to the cluster; typically "/OMERO/OMERO4_4/s3-upload"
The image import is executed by command line as follows substituting * with the actual value:
$ acapella -s User=* -s Password=* -s Host=* -s ImportType=* -s DatasetFolder=* -s ScreenName=* -s ForwardPath=* import-cluster.script
For instance in the following example an "ArrayScan TIF", in the path "/home/columbus/ImportTest", will be imported to Screen named "Test" using the "columbus" user. Image data being fowarded to the typcial ForwardPath.
$ acapella -s User="columbus" -s Password="columbus" -s Host="localhost" -s ImportType="ArrayScan TIF" -s DatasetFolder=/home/columbus/ImportTest -s ScreenName="Test" -s ForwardPath=/OMERO/OMERO4_4/s3-upload import-cluster.script
In the case of import.script the parameter ForwardPath should be omitted.
For detailed information on how to enable logging, please see the following FAQ post:
- Common errors of the form 'Could not load shared library...’ can be removed, details in this FAQ post:
- If script is run under root user the images will remain in /OMERO/OMERO4_4/s3_uploads and will not be transferred to the cluster share as images are owned by root. Errors of the form IOError(13, 'Permission denied') will be seen in /var/log/columbus/web/periodic-tasks.log. To avoid this switch to the columbus user before running the script:
$ su - columbus