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

File details

Details for the file mosaik.Multi_Project-0.1.0rc20210719000631-py3-none-any.whl.

File metadata

File hashes

Hashes for mosaik.Multi_Project-0.1.0rc20210719000631-py3-none-any.whl
Algorithm Hash digest
SHA256 6fa0afc242d2d55be7c1fdde7ce3c26de40b864f2df94bb63121abddc04110b6
MD5 f4351d63001dec5a955ca0b2000d993e
BLAKE2b-256 7462a6aa4a4a23813fb6ae698316a80f2efd3e5222e17a13f8a4d4b678b934b4

See more details on using hashes here.

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