Basic usage
Once installed, there will be four programs present in the installation folder:
clcserverUsed for commands that communicate with the CLC Server. Most of this section is about the use of this command.
clcresultparserUsed to parse the location of data from the text file generated when the
-Ooption is included in theclcservercommand. This command is most useful when connecting analyses in a scripted pipeline.clcserverkeystoreA helper tool enabling passwords to be handled securely.
clcserversslstoreA helper tool for listing SSL certificates.
Getting help for the clcserver command
When the clcserver tool is run either with no arguments or with an incomplete set of arguments, information is returned that can be used to build up a complete command to submit to the CLC Server.
Examples of such commands and the type of information returned when they are run:
clcserverRunning just the
clcservercommand with no arguments returns general information and options.clcserver -S <server> -U <username> -W <password or token> -P <port>Running this command returns a list of the commands that can be run on the CLC Server supplied as the value to the "-S" option.
For grid setups, the information returned includes a list of grid presets, but will not usually include import, export or analysis tools. Add a preset using the
-Goption (described below) to see the list of commands that can be submitted using that preset.clcserver -S <server> -U <username> -W <password or token> -A <task name>A command of this form returns a list of the configurable options for the task specified using the
"-A"option. For grid setups, the-Goption will generally need to be included.
The clcserver command - details
The clcserver program requires the first three flags below, which provide information about the connection to the server. Providing port information is optional if the default listening port, 7777, is being used.
- -S <hostname or IP address of the server>
- -U <user name>
- The username to log into the server with.
- -W <password or token>
- Providing a token avoids sending the password as human readable text. See Handling passwords for further details.
- -P <port the server runs on>
- When omitted, port 7777 is used.
Commands to run on the server are supplied using:
- -A <command name>
When this option is supplied but without all the required parameters for the specified command, the information returned includes a list of all configurable parameters, and a message about missing required parameters.
When all required parameters for the command have been included, the job is submitted for execution. Default values are used for any optional parameters not specified explicitly.
Notes about inputs, outputs and exports:
The location of input data for an analysis, and the locations to save outputs or exported results to, are specified using URLs. Of note:
- One input parameter is needed for each input being provided.
- A single parameter specifies the folder to save all the CLC outputs under.
- A single parameter specifies the folder to save the exported file(s) under.
- -O <filename>
- A file with the name specified will be created, and a summary of the steps carried out and the locations of outputs will be recorded there. The locations are written in a form that is understood by the clcresultparser command. By default, this file is placed in your working directory.
- -G <grid preset name>
- The grid preset to use. Relevant only for CLC Servers configured to send jobs to grid nodes for execution. For standard setups, where jobs are not executed on a CLC Server master node, this option will be required for most commands.
- -L <cloud preset name>
- The cloud preset to use when sending the job to a CLC Genomics Cloud setup on AWS. Relevant only for CLC Servers with the Cloud Server Plugin installed, an AWS Connection configured, and at least one cloud preset configured.
Options available for managing and querying jobs and results include:
- -Y
- Execute the command asynchronously. The returned process ID can be used to query for status and results by using the -I and -R flags, respectively.
- -I <process IDs>
- Return information about the listed processes. If a list of process IDs is not provided, information about all processes submitted by the current user are returned.
- -R <process IDs>
- Returns the results of the finished processes. Results for a given process can only be retrieved once using this option. To cancel a specific process use
-R <process ID> -R cancel. To cancel all processes owned by current user, use
-R cancel-all. Using that option as an administrative user will cancel all processes.
Other optional flags available for the clcserver command are:
- -C <integer>
- Specify the column width of the help output.
- -D <boolean>
- Enables debug mode when set to true, providing more elaborate output and error messages.
- -H
- Display general help instructions.
- -V
- Display the version number of CLC Server Command Line Tools.
Hint: When launching multiple tasks via a script, putting sleep 10 between the commands can help keep the memory needed for the waiting command to a minimum. It can also be worth checking that the number of user processes allowed is sufficient (ulimit setting).
