Skip to content
/ cylc Public
forked from cylc/cylc-flow

Cylc, a workflow engine for cycling (and non-cycling) systems.

License

Notifications You must be signed in to change notification settings

wxtim/cylc

This branch is 4 commits ahead of, 109 commits behind cylc/cylc-flow:master.

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Jan 21, 2025
d385f67 Â· Jan 21, 2025
Jan 7, 2025
Jan 13, 2025
Jan 13, 2025
Jun 12, 2019
Apr 26, 2023
Oct 14, 2024
Jan 21, 2025
Oct 4, 2021
Jul 28, 2020
Jan 3, 2024
Jan 3, 2024
Apr 26, 2023
Feb 15, 2022
Oct 23, 2024
Jan 8, 2025
Nov 25, 2024
Sep 22, 2016
Aug 25, 2022
Nov 23, 2021
Jan 1, 2025
Aug 3, 2020
Nov 13, 2024
May 23, 2024
Sep 26, 2024
Nov 13, 2024
Nov 13, 2024
Nov 23, 2021
Sep 30, 2024

Repository files navigation

PyPI Anaconda-Server Badge chat forum Documentation

Cylc (pronounced silk) is a general purpose workflow engine that also manages cycling systems very efficiently. It is used in production weather, climate, and environmental forecasting on HPC, but is not specialized to those domains.

Quick Start

Installation | Documentation

# install cylc
conda install cylc-flow

# extract an example to run
cylc get-resources examples/integer-cycling

# install and run it
cylc vip integer-cycling  # vip = validate, install and play

# watch it run
cylc tui integer-cycling

The Cylc Ecosystem

  • cylc-flow - The core Cylc Scheduler for defining and running workflows.
  • cylc-uiserver - The web-based Cylc graphical user interface for monitoring and controlling workflows.
  • cylc-rose - Provides integration with Rose.

Migrating From Cylc 7

Migration Guide | Migration Support

Cylc 8 can run most Cylc 7 workflows in compatibility mode with little to no changes, go through the migration guide for more details.

Quick summary of major changes:

  • Python 2 -> 3.
  • Internal communications converted from HTTPS to ZMQ (TCP).
  • PyGTK GUIs replaced by:
    • Terminal user interface (TUI) included in cylc-flow.
    • Web user interface provided by the cylc-uiserver package.
  • A new scheduling algorithm with support for branched workflows.
  • Command line changes:
    • cylc run <id> -> cylc play <id>
    • cylc restart <id> -> cylc play <id>
    • rose suite-run -> cylc install; cylc play <id>
  • The core package containing Cylc scheduler program has been renamed cylc-flow.
  • Cylc review has been removed, the Cylc 7 version remains Cylc 8 compatible.

Citations & Publications

DOI JOSS CISE

Copyright and Terms of Use

License

Copyright (C) 2008-2025 NIWA & British Crown (Met Office) & Contributors.

Cylc is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

Cylc is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with Cylc. If not, see GNU licenses.

Contributing

Contributors Commit activity Last commit

Contributions welcome:

This repository contains some code that was generated by GitHub Copilot.

About

Cylc, a workflow engine for cycling (and non-cycling) systems.

Resources

License

Security policy

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 70.3%
  • Shell 23.2%
  • HTML 6.2%
  • Emacs Lisp 0.1%
  • Vim Script 0.1%
  • Dockerfile 0.1%