Skip to main content

Manage multiple mosaik projects with using common tooling.

Project description

mosaik.Multi-Project

Tooling for setting up and maintaining multiple (mosaik) projects.

Motivation

mosaik scenarios often contain multiple simulators. Sometimes, additional packages need to be developed alongside of them. Managing such a set of loosely coupled projects becomes laborious easily. This project provides tooling for some common operations on projects. These operations range from cloning the repository to building a docker image. Operations can be run in parallel on projects, enabling quite some automation.

Status

pipeline status coverage report libraries status license badge PyPI version Python Versions

Maturity

The code of this project was largely in operation in the Designetz project. There, it was used to maintain and develop components of the AI-powered power grid control room "System-Cockpit". The System-Cockpit consisted of about 12 mosaik simulators as well as about 18 support and infrastructure projects.

One-line Execution

mosaik.Multi-Project can be run as a container directly from GitLab.com:

docker run registry.gitlab.com/offis.energy/mosaik/mosaik.multi-project:latest --help

Prerequisites

  • Python 3.6+
  • git

Downloading

git clone git@gitlab.com:offis.energy/mosaik/mosaik.multi-project.git

Virtual Environment

python3 -m venv venv

Tox

venv/bin/python -m pip install -r requirements.d/venv.txt
venv/bin/python -m tox -e py39

Running

PYTHONPATH=. \
.tox_py38_bin_python mosaik_multi_project/multi_project/cli/main.py \
--help

Use Cases

Setup all projects in the config and update their requirements in parallel:

PYTHONPATH=. \
.tox_py38_bin_python mosaik_multi_project/multi_project/cli/main.py

Setup one project in the config and update its requirements:

PYTHONPATH=. \
.tox_py38_bin_python mosaik_multi_project/multi_project/cli/main.py \
--parallel False --project mosaik.EId --operation ALL

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page