Development¶
Here are discussed some of the choices made during the development of the project (coding styles for different languages, pattern used in Cylc, etc).
You’ll also find some guidelines on how to add a new task or configuration option to the workflow.
Note
- It is assumed that you have a basic understanding of:
Cylc,
Python, R and Bash.
For further information on Cylc, please consult their User Guide .
- Workflow design choices
- Following Cylc’s best practices
- Jinja2 templating
- Rose for configuration management
- Task inheritance to avoid code duplication
- Run setup is done at the first cyclepoint
- Tasks can run in specific conda environments
dataflow/andqc/directories for results- Data tables are stored in plain text CSV files
- Libraries/packages to be favored
- InfluxDB is an optional dependency
- Coding style
- Adding a task to the workflow
- Adding an item to user configuration