Skip to content

TheRoddyWMS/Roddy

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CircleCI FOSSA Status

What is Roddy?

Roddy is a framework for development and management of workflows on a batch processing cluster. It has been developed at the German Cancer Research Center (DKFZ) in Heidelberg in the eilslabs group and is used by a number of in-house workflows such as the PanCancer Alignment Workflow and the ACEseq workflow. The development is now continued in the Omics IT and Data Management Core Facility (ODCF) at the DKFZ.

NOTE: This software is intended for research-use only!

de.NBI logoYour opinion matters! The development of Roddy is supported by the German Network for Bioinformatic Infrastructure (de.NBI). By completing this very short survey you support our efforts to improve this tool.

No new features will be implemented for Roddy! We will continue to fix bugs occurring with currently existing workflows. On the long run, existing workflows should be migrated to other workflow management systems.

Workflows

The following workflows have been developed at the DKFZ based on Roddy as workflow management system:

The following plugins are available as support for the workflows:

  • COWorkflowBasePlugin with basic control code for many of the workflows
  • PluginBase just the plugin base-class from which other plugins are derived
  • DefaultPlugin with the wrapInScript.sh that wraps all Roddy cluster jobs

Documentation

You can find the documentation at Read the Docs, including

Contributing to Roddy

If you would like to contribute code you can do so through GitHub by forking the repository and sending a pull request.

When submitting code, please make every effort to follow existing conventions and style in order to keep the code as readable as possible.

Some basic information:

  • We use Semantic Versioning 2.0.
    • Release versions are named according to the pattern \d\.\d\.\d(-(RC)?\d+.
    • The first three levels are the "major", "minor", and "patch" number. The patch number is occasionally also called "build" number.
    • Additionally, to the major, minor, and patch numbers, a "revision" number -\d+ can be attached.
    • It is possible to tag release candidate using suffixes -RC\d+
  • We use Github-Flow as branching models.
  • Additionally, to the "master" branch for long-term support of older versions, it is possible to have dedicated release branches.
    • Release branches should be named according to the pattern ReleaseBranch_\d+\.\d+(\.\d+).
  • Issues can be marked with the following labels
    • in progress
    • bug::candidate
    • bug::minor
    • bug::normal
    • bug::critical

Change Log

The change log is managed in a separate file CHANGELOG.md.

License

By contributing your code, you agree to license your contribution under the terms of the MIT License (Roddy license).

If you are adding a new file, it should have a header like this:

/**
 * Copyright 2024 German Cancer Research Center (DKFZ).
 * 
 * Distributed under the MIT License (license terms are at https://www.github.com/TheRoddyWMS/Roddy/LICENSE.txt).
 */