chant describe
Synopsis
Section titled “Synopsis”chant describe <component> [path] [flags]Description
Section titled “Description”chant describe prints the effective, fully-resolved configuration for a
single named component (its resolved property bag and the resources it
produces), offline from source with no live calls.
Where chant list shows inventory and chant graph shows edges, describe
shows the resolved detail for one thing. It is most useful with
layered configuration, where it gives the
effective config for a component after every spread and override, so you don’t
merge the layers by hand.
<component> is a named export:
- An exact entity name (e.g.
webDeployment) describes that one declarable. - A composite instance (e.g.
prodAppfromWebApp(...)) describes the group of resources it produces (prodAppDeployment,prodAppService, …), each with its resolved props.
path is the project directory (default .).
| Flag | Type | Default | Description |
|---|---|---|---|
-f, --format | string | text | Output format: text or json |
--components | boolean | false | Describe a discovered component instead of a lexicon resource |
chant describe prodApp srcchant describe prodApp src --format jsonchant describe webDeployment # a single declarable, in the current dirchant describe search-service --components # a discovered Component, in the current dirchant describe search-service src --components --format json--components
Section titled “--components”chant describe <name> --components looks up one discovered Component by its name field (not its export name) and prints its full JSON contract projection. It is the same document chant build would hand to the interpret driver, and it validates against component.schema.json.
{ "name": "search-service", "archetype": "service", "dependsOn": ["shared-alb"], "build": { "kind": "docker-build", "context": ".", "into": "archive" }, "deploy": [ "..." ]}The --json output carries the full per-resource breakdown:
{ "component": "prodApp", "composite": true, "resources": [ { "name": "prodAppDeployment", "lexicon": "k8s", "entityType": "K8s::Apps::Deployment", "kind": "resource", "props": { "metadata": { "...": "..." }, "spec": { "replicas": 6 } } } ]}Not yet supported
Section titled “Not yet supported”describe v1 is the resolved view. Two capabilities are deferred until there is
demand for them:
--explain— per-property provenance (which layer set each value, and what it overrode). Cheap only once chant owns the merge (a blesseddeepMerge), which is itself deferred.--diff <a> <b>— compare the effective config across two environments/stacks.
Exit Codes
Section titled “Exit Codes”| Code | Meaning |
|---|---|
| 0 | Described successfully |
| 1 | Component not found, or an error |