Workspace and CLI

The workspace is the directory where you work on every layer, and the CLI is the tool you do it with. A server that only runs a product needs neither.

The workspace

splent_workspace/
├── splent_framework/          the framework
├── splent_cli/                the CLI
├── splent_feature_<name>/     a feature you are editing
├── splent_spl_<name>/         a product line you are editing
├── <product>/                 your products
├── .splent_cache/             read-only snapshots of pinned features, and downloaded models
└── .env                       your tokens and workspace settings

The CLI

make setup in splent_cli/ builds the CLI’s container and opens its shell, with the workspace mounted at /workspace. Every splent command runs there, and reaches Docker to run the products.

The commands follow the layers. spl:* works on product lines, feature:* on features, product:* on products and their containers, and the release commands on delivery. splent doctor checks the whole workspace.

Sources of truth

Four files hold the state of a product, and the CLI reads and writes them for you.

File Holds
pyproject.toml The product’s features, versions and settings
The UVL model What the line allows
splent.manifest.json The state of each feature in the product
The env files How the product runs on this machine

Go deeper


Back to top

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