Skip to content

Commit

Permalink
docs: Add module instance to spec
Browse files Browse the repository at this point in the history
Signed-off-by: Stefan Prodan <[email protected]>
  • Loading branch information
stefanprodan committed Jan 9, 2024
1 parent 29e23f5 commit 53429ba
Showing 1 changed file with 17 additions and 1 deletion.
18 changes: 17 additions & 1 deletion docs/module.md
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ employ custom blueprints for generating modules.
Timoni further assists in vendoring and keeping Kubernetes APIs and CRDs schemas
up-to-date.

## Module Artifacts and Metadata
## Module Artifacts

A module is packaged as an OCI artifact that contains the contents of the module
directory compressed as a gzipped tarball.
Expand Down Expand Up @@ -100,6 +100,22 @@ Example of a module's OCI manifest:
}
```

## Module Instance

A Timoni instance represent a module instantiation on a Kubernetes cluster.
The instance holds the inventory of the Kubernetes objects deployed on the cluster,
the OCI reference of the module, and the user-supplied configuration values.

In the cluster, the instance is stored as a Kubernetes secret of type `timoni.sh/instance`.
The secret's name contains the instance name in the format `timoni.<instance name>`,
and the secret's namespace is the instance namespace.

Timoni offers a set of commands for inspecting the instance state:

- `timoni inspect module` - displays the module URL, digest, and version
- `timoni inspect values` - displays the instance config values
- `timoni inspect resources` - displays the Kubernetes objects managed by the instance

## Module Development

For an overview of CUE and the reasons why we chose it as the configuration language for Timoni,
Expand Down

0 comments on commit 53429ba

Please sign in to comment.