product:up

Start the active product and all its declared features using Docker Compose.


Development environment

Start (dev)

splent product:up --dev

Uses, in order:

  • docker-compose.dev.yml (preferred)
  • docker-compose.yml (fallback)

Production environment

Start (prod)

splent product:up --prod

Uses, in order:

  • docker-compose.prod.yml (preferred)
  • docker-compose.yml (fallback)

Description

This command:

  • Reads the declared features from the active product pyproject.toml.
  • Resolves the UVL dependency order for all declared features.
  • Launches each feature’s Docker Compose stack in UVL dependency order from:
    • <workspace>/.splent_cache/features/<feature>/docker/
  • After each feature launch, waits for its health checks to pass before starting the next feature. This ensures that dependent services (e.g., a mail feature that depends on redis) only start once their dependencies are healthy.
  • Launches the product Docker Compose stack last from:
    • <workspace>/<product>/docker/

Each stack is started with docker compose up -d using an isolated compose project name derived from the component name and the environment. If a service does not define a health check, it is considered ready immediately after container creation.

Progress is shown per service as it launches:

    ⏳ redis ✓
    ⏳ nginx waiting... ✓
    ⏳ my_first_app ✓

A means the service started (and is healthy, if it declares a health check). A means the service failed to start — error details are printed inline and the pipeline is aborted before launching the product.


Requirements

  • A product must be selected (SPLENT_APP set).
  • The product must contain pyproject.toml.
  • Each component (feature/product) must provide a Docker Compose file under its docker/ directory.

Back to top

splent. Distributed by an LGPL license v3. Contact us: drorganvidez@us.es