Configuration
Monoverse reads configuration from monoverse.{yaml,json,toml} at the repository root.
Project settings
Each project is defined in the projects map. The project key is the project name used in CLI commands.
| Key | Description | Notes |
|---|---|---|
type | The type of the project. | rust, node, helm, toml, versionfile, yaml |
path | The path to the project. | Defaults to repository root if omitted. |
manifest_path | The path to the manifest file of the project. | Overrides the default manifest path. |
tag_prefix | Prefix for tag creation. | Defaults to <project-name>-. |
selector | Selector for the version field. | Required for toml and yaml project types. |
dependents | Dependent files to update on release. | See Dependents. |
Project types
rust: A Rust project with aCargo.tomlmanifest file.node: A Node.js project with apackage.jsonmanifest file.helm: A Helm chart with aChart.yamlmanifest file. Usesversionfor release detection, updatesversionto the next CalVer, and updatesappVersionif present.toml: Any generic project with a TOML manifest file. Requiresmanifest_pathandselector.versionfile: Any generic project with a version file that only contains the version number. Requiresmanifest_path.yaml: Any generic project with a YAML manifest file. Requiresmanifest_pathandselector.
Examples
YAML:
projects:
server:
type: rust
path: server
client:
type: node
path: client
TOML:
[projects.server]
type = "rust"
path = "server"
[projects.client]
type = "node"
path = "client"