Launching workflows from external sources

About launcher

If your analysis workflows are hosted on external sources such as source code repositories (GitHub, GitLab), digital repositories (CERN Open Data, Zenodo), or other locations on the web (generic URL), it is possible to launch your workflows directly from the REANA web interface. This technique is an alternative way of executing workflows using a command-line client.

For example, to launch a RooFit demo workflow from GitHub on REANA instance at CERN, you can click on the badge below:

RooFit plot example
Launch on REANA at CERN badge

After clicking on the above Launch-on-REANA@CERN badge, you will be redirected to the instance and presented with an intermediate launcher page where you can check desired parameters and click on the "Launch" button to execute this workflow.

Launcher arguments

The launcher functionality is available on /launch URL and looks like:


  • url, pointing to the external source where the analysis is hosted;
  • name (optional), providing the desired workflow run name (default=workflow);
  • specification (optional), pointing to the REANA specification file (default=reana.yaml);
  • parameters (optional), providing encoded list of parameter values for the workflow execution (default=none).

For example, the above badge for RooFit demo workflow is using this URL:

The arguments are explained in detail below. Please note that argument values should be properly encoded in order to comply with RFC 2396 URI standard.

url (required)

url is a required argument that points to the external source where your workflow is hosted. Below you can find supported external sources.

You can point to publicly available GitHub or GitLab repositories to launch a workflow. Below are examples of supported URL formats:

  • (to launch a particular branch)
  • (to launch a particular tag)
  • (to launch a particular commit hash)

You can also provide a generic URL to any hosting service, for example:

  • (to launch a workflow from its specification)
  • (to launch a workflow from a zip tarball)

name (optional)

The launch page accepts an optional name argument that will determine the desired name of the launched workflow. If the argument is missing, REANA will generate a name based on the URL of the external source, repository or branch name. Example usage:

specification (optional)

If your workflow uses a different REANA specification file than the default reana.yaml, you can specify the path to the desired specification file using the specification optional argument:

parameters (optional)

You can optionally send extra parameters for the workflow execution that would override the ones specified in your REANA specification file. For example, the RooFit demo example uses events parameter to determine how many events to generate. If you would like to override the default value of 20000 to, say, 30000, you can pass in a JSON format:

parameters={"events": "30000"}

Note that the value should be properly encoded, which gives:


Final URL looks like this:

Launcher badges

You may want to generate a custom "Launch-on-REANA" badge and include it in your source code repository so the analysis would be runnable with a single click.

The standard set of badges look as follows:

Launch on REANA

Launch on REANA at CERN

Launch with CWL on REANA at CERN

Launch with Yadage on REANA at CERN

Launch with Serial on REANA at CERN

Launch with Snakemake REANA at CERN

If you would like to generate your own custom badge, you can use external services such as or


You can include one of the above badges into your Markdown documentation pages using the following syntax:

[![Launch on REANA badge](](

This example points to the RooFit analysis demo. You should replace the url to point to your own analysis sources.


You can include one of the above badges into your HTML documentation pages using the following syntax:

<a href=""><img src="" alt="Launch on REANA badge"></a>