Skip to main content

docker compose testing env orchestrator

Project description

Uber-Compose

Lightweight docker compose extension to control environment for tests


Summary for README:


1. Описание

Uber-Compose — это расширение для Docker Compose, предназначенное для управления тестовыми окружениями. Оно позволяет автоматически поднимать, настраивать и контролировать окружения для тестов, интегрируясь с фреймворком Vedro через плагин. Основная цель — упростить и ускорить подготовку инфраструктуры для end-to-end и интеграционных тестов.


2. Установка

pip install uber-compose

или добавить в requirements.txt:

uber-compose

3. Использование с Vedro

  1. Добавьте плагин в ваш vedro.cfg.py:
from uber_compose import VedroUberCompose, ComposeConfig, Environment, Service

class Config(vedro.Config):
    class Plugins(vedro.Config.Plugins):
        class UberCompose(VedroUberCompose):
            enabled = True
            # Определите сервисы и окружения
            default_env = Environment(
                Service("db"),
                Service("api"),
            )
            compose_cfgs = {
                "default": ComposeConfig(
                    compose_files="docker-compose.yml",
                ),
                "dev": ComposeConfig(
                    compose_files="docker-compose.yml:docker-compose.dev.yml",
                ),
            }
  1. Запуск тестов с управлением окружением:

Плагин автоматически поднимет нужные сервисы перед запуском тестов и выключит их после.

  1. CLI параметры:
  • --uc-fr — форсировать перезапуск окружения
  • --uc-v — уровень логирования

Продвинутые возможности:

  • --uc-default | --uc-dev — выбрать ComposeConfig для окружения
  • --uc-external-services — использовать внешние сервисы

Project details


Download files

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

Source Distribution

uber_compose-1.2.1.tar.gz (33.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

uber_compose-1.2.1-py3-none-any.whl (44.6 kB view details)

Uploaded Python 3

File details

Details for the file uber_compose-1.2.1.tar.gz.

File metadata

  • Download URL: uber_compose-1.2.1.tar.gz
  • Upload date:
  • Size: 33.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.18

File hashes

Hashes for uber_compose-1.2.1.tar.gz
Algorithm Hash digest
SHA256 3df0babb0b858a36295e0e9f160d157386221b3945ab41492f54687a23cd1481
MD5 8d39af13267439a6be2c9ed8433b4ecc
BLAKE2b-256 8d5239a7cdff3a3a58746de2f2e7e3d8c6a6865c9b55fdd85cbc3475d7d91018

See more details on using hashes here.

File details

Details for the file uber_compose-1.2.1-py3-none-any.whl.

File metadata

  • Download URL: uber_compose-1.2.1-py3-none-any.whl
  • Upload date:
  • Size: 44.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.18

File hashes

Hashes for uber_compose-1.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 56f559c38b8ef0a7a2bbd1b5be52548f337b1377b9813e334590725d4742eec2
MD5 50623afea476c61403418c8e5cb98cdf
BLAKE2b-256 251c0da4e7f713c07d0edc6952f1b3c8482e9012c87133d8e21c2c2fa38df293

See more details on using hashes here.

Supported by

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