Reproducible research data analysis platform

Flexible

Run many computational workflow engines.

Scalable

Support for remote compute clouds.

Reusable

Containerise once, reuse elsewhere. Cloud-native.

Free

Free Software. MIT licence. Made with at CERN.

Examples
Get started
1

Structure your analysis

version: 0.7.1
inputs:
files:
- code/mycode.py
- inputs/mydata.csv
parameters:
myparameter: myvalue
workflow:
type: cwl
file: workflow/myworkflow.cwl
outputs:
files:
- results/myplot.png
more
2

Select a REANA cluster...

$export REANA_SERVER_URL=https://reana.cern.ch/
$export REANA_ACCESS_TOKEN=XXXXXXX

...or install your own

# install kubectl 1.16+, kind 0.8+ and helm 3.0+
$sudo dpkg -i kubectl*.deb kind*.deb kubernetes-helm*.deb
# create Kubernetes cluster (or use your own!)
$wget https://raw.githubusercontent.com/reanahub/reana/maint-0.7/etc/kind-localhost-30443.yaml
$kind create cluster --config kind-localhost-30443.yaml
$wget https://raw.githubusercontent.com/reanahub/reana/maint-0.7/scripts/prefetch-images.sh
$sh prefetch-images.sh
# deploy REANA using Helm
$helm repo add reanahub https://reanahub.github.io/reana
$helm repo update
$helm install reana reanahub/reana --wait
# create an admin user
$wget https://raw.githubusercontent.com/reanahub/reana/maint-0.7/scripts/create-admin-user.sh
$sh create-admin-user.sh default reana john.doe@example.org mysecretpassword
more
3

Run your analysis

# create new virtual environment
$virtualenv ~/.virtualenvs/myreana
$source ~/.virtualenvs/myreana/bin/activate
# install REANA client
$pip install reana-client
# create new workflow
$reana-client create -n my-analysis
$export REANA_WORKON=my-analysis
# upload input code and data to workspace
$reana-client upload ./code ./data
# start computational workflow
$reana-client start
# check its progress
$reana-client status
# list workspace files
$reana-client ls
# open interactive notebook session
$reana-client open jupyter
# download output results
$reana-client download results/plot.png
more
Documentation

Researchers

Find out how you can use REANA to describe, run, preserve and reuse your analyses.

User Guide

Administrators

Install and manage the REANA reusable analysis platform on your own compute cloud.

Administrator Guide

Developers

Understand REANA source code, adapt it to your needs, contribute changes back.

Developer Guide
Latest news

REANA 0.7.1

11 November 2020

Allows specifying HTCondor queue options. Fixes minor issues with REANA<->GitLab synchronisation and restarting CWL and Yadage workflows.

Presented "Analysis Reproducibility with REANA on Kubernetes" as part of the CERN Cloud Containers webinar series. [webinar] [event]
REANA presented at the 24th Conference on Computing in High Energy and Nuclear Physics, 4-8 November 2019, Adelaide, Australia. [poster] [event]
REANA presented at the 15th eScience IEEE International Conference, 24-27 September 2019, San Diego, USA. [poster] [paper]
REANA featured in the CERN Courier March/April 2019 thematic issue on Open Science. [paper]
An opinion piece "Open is not enough" about REANA and reproducible science solutions in particle physics published in Nature Physics 15 (2019) 113–119. [paper]
For all latest news follow us on Twitter
Roadmap

Current

What we work on now

User quotas

Collect CPU and HDD consumption information for users running notebooks and workflows.

Near-term

What we plan to work on next

Live logs

Introduce live job log streaming for CLI and Web UI.

LHC community

Introduce abstract dataset concept to handle a set of related files.

Use various remote storage backends for workflow workspace.

Future

What is coming later

Abstraction of data storage

Use various remote storage backends for workflow workspace.

User groups and authorisations

Introduce OpenID Connect to support more authentication mechanisms.

Introduce user groups and role-based authorisation control models.