Add Nextflow apps through the visual interface
Overview
To run your Nextflow apps at scale using the full potential and benefits of the Seven Bridges execution environment, you can add a Nextflow app to the Seven Bridges Platform by simply uploading a zip file containing your Nextflow app files (code package) to a Platform project. Once uploaded, the app is added to the list of apps in the project can be executed as any other app on the Platform.
Nextflow app (code package) requirements
To make sure that the Nextflow app is properly added to the Platform, make sure that the app's code package meets the following requirements:
- Contains the
nextflow.config
file. The profiles section from this file is parsed and used as an input where you can select an appropriate profile when running the app. - Has a valid entrypoint. This means that there is either a file named
main.nf
, or there is only one .nf file at the root of application files in the code package. - Contains the
nextflow_schema.json
file that provides information about app inputs.
The code package can also contain the sb_nextflow_schema.yaml
file that provides configuration and optimization parameters specific for the app's execution on the Platform. You may have this file if you already tried to convert and push a Nextflow app to the Platform using the sbpack command-line utility. If sb_nextflow_schema.yaml
is available in the code package, the configuration parameters available in it take precedence over the same configuration parameters available in the native Nextflow files listed above.
Adding a Nextflow app
To add a Nextflow app to the Platform through the visual interface, follow the steps below:
- Navigate to a project on the Platform.
- Open the Apps tab.
- Click Create app. This opens the new app creation dialog.
- Under Select language, click Nextflow. The code package upload field is displayed.
- Browse or drag and drop the code package. The Name field is automatically populated based on your code package name.
- (Optional) Modify the app name.
- (Optional) Change the app slug.
- Click Create. This starts the process of uploading and adding the app to the Platform.
Note:
For the process to complete successfully, keep the window open until upload is completed.
Once everything is completed, you are taken to your app details. To test your app, click Run in the top-right corner. This creates a draft task where you can set your app inputs and run it.
Nextflow app input mapping
When a Nextflow app is added to the Platform, app inputs defined in nextflow_schema.json
are represented as corresponding visual elements in the Platform's visual interface. As expected, string inputs are usually represented as text input fields, enum and boolean inputs are dropdowns, etc. There are some specific input mappings related to string fields that you should be aware of:
- If input type is string and its
format
is defined aspath
orfile-path
, it will be displayed as a file input on the Platform. - If input type is string and its
format
is defined asdirectory-path
, it will be displayed as a directory input on the Platform.
This optimizes the use and visual representation of these inputs, and makes it easier to configure their values compared to their representation as plain string fields.
Updated 2 days ago