




A GenePattern pipeline defines a sequential series of modules to be run. Modules run from a pipeline work exactly the same as those run directly from GenePattern. If you are unfamiliar with GenePattern pipelines, see Concepts.
The following table summarizes the different ways you can work with GenePattern pipelines.
|
Run a pipeline |
Select a pipeline, enter its parameters, and click Run. For more information, see Running Modules and Pipelines. |
|
Pipeline properties include the pipeline’s author, the modules to be run and their parameters. If a pipeline has an end-user license agreement associated with it, you can view the license via the pipeline properties page. To display pipeline properties, click Modules & Pipelines, select the pipeline, and click Properties. For more information, see Displaying Pipeline Properties. |
|
|
Send pipelines to other users |
Zip files provide a convenient way to send pipelines to other GenePattern users.
For more information, see Exporting and Installing Modules & Pipelines Using Zip Files. |
|
Install pipelines from the repository |
The Broad Institute maintains a repository of modules, pipelines, and suites. To install pipelines from the Broad repository, click Modules & Pipelines>Install from Repository. For more information, see Installing Modules & Pipelines from the Repository. |
|
Create pipelines |
You can create an empty pipeline and add modules to it, create a pipeline by cloning an existing pipeline, or start with an analysis result file and have GenePattern create a pipeline that recreates that analysis result file. For more information, see Creating Pipelines. |
|
Edit pipelines |
You can edit a pipeline that you have created or clone a public pipeline and edit your copy of the public pipeline. For more information, see Editing Pipelines. |
|
Delete pipelines |
To delete a pipeline, click Modules & Pipelines>Manage. For more information, see Managing Modules & Pipelines. |
To view the definition of a pipeline, display its properties:
On this page, you can:
You can create a pipeline in several ways: from an analysis result file, from an existing pipeline, or from scratch (beginning with an empty pipeline).
To create a pipeline from an analysis result file:
GenePattern adds modules to the pipeline based on the following logic: add the module that created the result file; check the module’s input file parameters; if the input file for the module was the output file of a previous module, add the previous module; check that module’s input file parameters; continue to walk back through the chain of modules, adding modules to the pipeline, until reaching the initial input file.
To create a new copy of an existing pipeline:
To create a pipeline from scratch:
To edit a pipeline:
See the video tutorial: Exploring the New GenePattern Pipeline Designer.
When you create or edit a pipeline, GenePattern displays the pipeline designer:

From left to right:
The pipeline diagram toolbar provides the following options:
![]() |
Displays the basic pipeline properties in the Editing Pipeline panel, as shown here. For more information, see Editing Basic Pipeline Properties. |
![]() |
Saves your changes without closing the designer. |
![]() |
Saves your changes, closes the designer and runs the pipeline. |
![]() |
Loads the last saved version of the pipeline, overwriting any unsaved changes. |
![]() |
Displays this section of the GenePattern documentation. |
The remaining topics in this section describe how to use the pipeline designer:
To edit basic pipeline properties:
to display the basic pipeline properties in the editing panel.The Editing Pipeline panel displays the following properties:
To supply a help file, click Attach Documentation and select a (previously created) documentation file. GenePattern uploads the documentation file to the server and displays its name in the pipeline properties panel. Only one help file can be attached to the pipeline. To select a different file, click Attach Documentation.
License: To supply a text file containing an end user license agreement to the pipeline, click Attach License. Anyone using the pipeline will be prompted to accept or decline the license terms when they first run the pipeline, and their acceptance will be tracked in a database maintained at the Broad Institute. They will not have to accept the terms again unless and until a new version of the pipeline is created. Only one license file can be attached to the pipeline. To select a different license file, click Attach License. This is an optional property; as such it will often be empty.
Prompt When Run: Most modules in a pipeline have one or more parameters. You can supply values for these parameters or mark them as prompt-when-run. When the pipeline runs, GenePattern prompts the user for all prompt-when-run parameters. By default, GenePattern prompts the user for a parameter by displaying its name and description. Optionally, you can supply alternate text for the prompt. Click Display Prompt When Runs to view all prompt-when-run parameters in the pipeline and, optionally, modify the prompt text. For more information about setting parameter values, see Editing Module Properties and Setting File Input Parameters.
To add a module to the pipeline:
Note: If you add a module with an end-user license to your pipeline, users who have not accepted that module's license terms will be presented with a license-acceptance window before the pipeline will run.
To specify a file as input to a module in the pipeline, you must first add the file to the pipeline diagram. To add a file to the diagram:
The pipeline diagram uses color to distinguish between files, modules, and pipelines. Connections between objects show the flow of data through the pipeline. The following diagram shows a file, a module and a pipeline. The file (all_aml_train.gct) is used as an input file parameter (input.file) for the module. To delete an object and all of its connection, click its
delete icon.

To edit a module's properties:

![]() |
By default, a pipeline runs the most recent version of a module. The drop-down list shows all versions of the module that are installed on the GenePattern server. To have the pipeline run a different version of the module, select it from the list. |
![]() |
The Life Science Identifier (LSID) for this module. You cannot create or edit LSIDs. The GenePattern server automatically assigns an LSID to each version of a module. |
![]() |
Click the Documentation button to display the module documentation. |
![]() |
Warnings shown here must be addressed before you can save the pipeline. GenePattern highlights all parameters affected by the warnings. |
![]() |
All module parameters are listed here. Input file parameters are critical and are generally listed first. They control the flow of data through the pipeline. For more information, see Setting Input File Parameters. |
![]() |
Click the check box next to a parameter to mark it prompt-when-run. When the pipeline runs, GenePattern prompts the user for all prompt-when-run parameters in the pipeline. By default, GenePattern prompts the user for a parameter by displaying its name and description. Optionally, click Set Prompt When Run Display Settings to supply alternate text for the prompt. |
![]() |
For most parameters, you enter a value, select a value from a drop-down list, or use the default value supplied by GenePattern. |
In the pipeline diagram, the connections between modules show the flow of data through the pipeline. You modify the flow of data by modifying the input file parameters. The connections in the diagram are a graphical representation of the input file parameter settings. When you click on the module, the editing panel provides a textual representation of the same input file parameter settings.
You can supply the file for an input file parameter in one of three ways:
The following pipeline diagram uses the ComparativeMarkerSelection module to illustrate the different ways of supplying input file parameters:

![]() |
For the input.file parameter, use the output file generated by the PreprocessDataset module.
|
![]() |
For the cls.file parameter, prompt the user for input.
|
![]() |
For the confounding.variable.cls.file, specify the file all_aml_train_confound.cls.
|
The method you use to set the input file parameter depends on how you plan to supply the file:


Click Save or Save & Run to save your changes.
Reusing a user-supplied file: Occasionally, a pipeline requires that the same input file be specified for multiple parameters. For example, consider a pipeline with two modules:
You want to use the same input file for both the ComparativeMarkerSelection.input.file parameter and the ExtractComparativeMarkerResults.dataset.filename parameter. If the input file that you want to use is either the output file generated from another module (perhaps an expression dataset generated by the PreprocessDataset module) or an uploaded file, this is not a problem. You can connect the file that you want to use to both the ComparativeMarkerSelection.input.file parameter and the ExtractComparativeMarkerResults.dataset.filename parameter.
However, what happens if you want to prompt the user for the expression dataset file? If you mark the ComparativeMarkerSelection.input.file parameter as a prompt-when-run parameter, you still need an input file for ExtractComparativeMarkerResults.dataset.filename parameter. If you mark both parameters as prompt-when-run, you have to rely on your user to submit the same expression dataset file for both parameters. The workaround is to add the ConvertLineEndings module to your pipeline:
GenePattern orders modules in a pipeline based on their position in the diagram. The diagram is read from left to right and top to bottom, as you would read a book written in English.
You can reorder the modules in a pipeline by repositioning the modules in the diagram. Similarly, you can insert a module into a pipeline simply by adding it to the diagram and dragging it to the appropriate location. However, in either case, you are changing the flow of the data and, therefore, must delete and recreate any affected connections.
To reposition a module in the pipeline:

