External applications

Non-interactive command line applications and scripts can be integrated into the CLC environment by configuring them as external applications. Once configured and installed, external applications are available to launch via the graphical menu system of a CLC Workbench or via the CLC Server Command Line Tools. External applications can also be included in workflows, allowing complex, reproducible analyses involving CLC tools and other, non-CLC tools to be easily configured and launched by end users.

There are two types of external application:

The CLC Server administrator controls which tools are made available as external applications, which parameters are adjustable when launching the tool, and who should have access.

Figure 12.1 shows an overview of the actions and data flow that occur when a standard external application is launched on the CLC Server via a CLC Workbench. The data flow can be summarized as follows:

  1. An end user specifies input data and sets values for parameters when launching the external application from a CLC Workbench or CLC Server Command Line Tools.
  2. The CLC Server exports the input data from the CLC Server to a temporary file.
  3. The CLC Server launches the underlying application (standard external applications) or the container containing the underlying application (containerized external applications), and provides the parameter values specified by the user and the input data from the temporary file. The underlying tool or container runs as a separate process to the CLC Server. That process is owned by the same user that owns the CLC Server process.
  4. When the command line application has finished, results are handled as specified in the external application configuration. Usually this involves results being imported into the CLC environment and saved to the location specified by the user when the external application was launched.
  5. Results imported into the CLC environment are available for viewing and further analysis, for example using a CLC Workbench.

Temporary files are created outside the CLC environment during the execution of third party (non-CLC) tools and are deleted after the process completes.

Image commandlinedetails
Figure 12.1: An overview of the flow of a standard external application when launched from a CLC Genomics Workbench.

Key information about external applications