Skip to content

The flex-container-orchestrator manages Aviso notifications and triggers the flexprep and flexpart containers, as well as the file aggregation script for Flexpart.

License

Notifications You must be signed in to change notification settings

MeteoSwiss/flex-container-orchestrator

Repository files navigation

flex-container-orchestrator

The flex-container-orchestrator manages the event driven workflow Flexpart IFS workflow, based on events from Aviso. The repo coordinates both flexprep (pre-processing of raw IFS data) and flexpart-ifs containers, ensuring all required lead time data is processed before launching Flexpart.

Getting started

Install dependencies & start the project locally

  1. Enter the project folder:
$ cd flex-container-orchestrator
  1. Install packages
$ poetry install
  1. Run the flex-container-orchestrator
$ poetry run python3 flex_container_orchestrator/main.py  --date {date} --time {time} --step {step} --location {location}

Run the tests and quality tools

  1. Run tests
$ poetry run pytest
  1. Run pylint
$ poetry run pylint flex_container_orchestrator
  1. Run mypy
$ poetry run mypy flex_container_orchestrator

Setup dev environment - Meteoswiss environment only

Instead of running the steps below manually, you can install mchbuild and then install, test and run the application:

$ pipx install mchbuild
$ cd flex-container-orchestrator
$ mchbuild local.build local.test
$ mchbuild local.run

Try it out at and stop it with Ctrl-C. More information can be found in :file:`.mch-ci.yml`.

Generate documentation

$ poetry run sphinx-build doc doc/_build

Then open the index.html file generated in flex-container-orchestrator/build/sphinx/html

Hint

All poetry run prefixes in the commands can be avoided if running them within the poetry shell

About

The flex-container-orchestrator manages Aviso notifications and triggers the flexprep and flexpart containers, as well as the file aggregation script for Flexpart.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published