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.0.tar.gz (33.6 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.0-py3-none-any.whl (44.6 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: uber_compose-1.2.0.tar.gz
  • Upload date:
  • Size: 33.6 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.0.tar.gz
Algorithm Hash digest
SHA256 94c860c1563b226732028f2bb3587804cf4ec760e47651f258c25edd84d6883a
MD5 aa5c1bd7b3aa3d83bebf2c806de4b287
BLAKE2b-256 11d19c26db9daeb61c3ef4cef0165b4c22e45fbe9ed9e30d3c0f14fcbbf5dc6c

See more details on using hashes here.

File details

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

File metadata

  • Download URL: uber_compose-1.2.0-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.0-py3-none-any.whl
Algorithm Hash digest
SHA256 a54b2311b1df6bae74111eb7637e72cdb207513888b2cd135a0f76f091915bbf
MD5 47ea2b369136d664ce50b5a8021b74ea
BLAKE2b-256 a5d1c7e07aaf9cecea9e046b6d098d832b9d46c9755a0bca082fb4ea171c5f14

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