Skip to content

ecmwf/tracksuite

Repository files navigation

ECMWF Software EnginE Maturity Level Licence Latest Release

InstallationDocumentationOverview

Important

This software is Incubating and subject to ECMWF's guidelines on Software Maturity.

Tracksuite offers command-line tools and a Python API to allow users to track and deploy ecFlow suites through git.

Installation

To install tracksuite using pip (requires python, ecFlow (optional) and pip):

python -m pip install .

Documentation

To initialise the remote target git repository:

usage: tracksuite-init [-h] --target TARGET [--backup BACKUP] [--host HOST] [--user USER] [--force]

Remote suite folder initialisation tool

optional arguments:
-h, --help       show this help message and exit
--target TARGET  Target directory
--backup BACKUP  Backup git repository
--host HOST      Target host
--user USER      Deploy user
--force          Force push to remote

To stage and deploy a suite:

usage: tracksuite-deploy [-h] --stage STAGE --local LOCAL --target TARGET [--backup BACKUP] [--host HOST] [--user USER]
                    [--push] [--message MESSAGE]

Suite deployment tool

optional arguments:
-h, --help         show this help message and exit
--stage STAGE      Staged suite
--local LOCAL      Path to local git repository (will be created if doesn't exist)
--target TARGET    Path to target git repository on host
--backup BACKUP    URL to backup git repository
--host HOST        Target host
--user USER        Deploy user
--push             Push staged suite to target
--message MESSAGE  Git message

To revert the suite to a previous state:

usage: tracksuite-revert [-h] [--host HOST] [--user USER] [--message MESSAGE] [--backup BACKUP] [--no_prompt] target n_state

Revert a git repository to a previous state.

positional arguments:
target             Path to target git repository on host
n_state            Number of states to revert back

options:
-h, --help         show this help message and exit
--host HOST        Target host
--user USER        Deploy user
--message MESSAGE  Git message
--backup BACKUP    URL to backup git repository
--no_prompt        No prompt, --force will go through without user input

To update the suite definition in the target git repository from the suite running on the ecFlow server (requires ecFlow):

usage: tracksuite-update-defs [-h] [--definition DEFINITION] --target TARGET --local LOCAL --backup BACKUP [--host HOST] [--user USER] [--port PORT] name

Update suite definition on target from ecflow server

positional arguments:
name                  Ecflow suite name

options:
-h, --help            show this help message and exit
--definition DEFINITION
                        Name of the definition file to update
--target TARGET       Path to target git repository on host
--local LOCAL         Path to local git repository. DEFAULT: $TMP
--backup BACKUP       URL to backup git repository
--host HOST           Target host
--user USER           Deploy user
--port PORT           Ecflow port

To replace an ecFlow suite on an ecFlow server while preserving some attributes from the already deployed suite:

usage: tracksuite-replace [-h] --def-file DEF_FILE [--host HOST] [--port PORT] [--enable-ssl] [--node NODE] [--sync-variables] [--skip-status] [--skip-attributes] [--skip-repeat] name

Replace suite on server and keep some attributes from the old one

positional arguments:
name                 Ecflow suite name

options:
-h, --help           show this help message and exit
--def-file DEF_FILE  Name of the definition file to update
--host HOST          Target host
--port PORT          Ecflow port
--enable-ssl         Enable SSL connection
--node NODE          Path to the node to replace
--sync-variables     Synchronise variables
--skip-status        Don't synchronise status
--skip-attributes    Don't synchronise attributes
--skip-repeat        Don't synchronise repeat

Overview

About

Track and Deploy workflows and suites

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •  

Languages