In the context of the Timoni project (https://github.com/stefanprodan/timoni/), an instance refers to a Helm release. It is a specific deployment of a module or application with its own set of values and configuration. Instances can be created, managed, and deleted using the Timoni CLI.
Here are the possible options for working with instances in Timoni:
- Create an instance: To create an instance, you can use the
timoni apply
command, which takes the name of the instance, the module URL, the semantic version, and the path to the values file as arguments. For example:
timoni apply my-instance oci://my-module-url -v 1.0.0 -f path/to/values.cue
The values file allows you to override the default values included in the module. For example:
values : {
ingress : {
enabled : true
className : " nginx "
host : " app.example.com "
}
autoscaling : enabled : true
monitoring : enabled : true
}
- Delete an instance: To delete an instance, you can use the
timoni delete
command, which takes the name of the instance and the namespace as arguments. For example:
timoni delete my-instance -n my-namespace
- List instances: To list all instances in a namespace, you can use the
timoni list
command, which takes the namespace as an argument. For example:
timoni list -n my-namespace
- Inspect an instance: To inspect the details of an instance, you can use the
timoni inspect
command, which takes the name of the instance, the namespace, and the type of resource to inspect (module, values, or resources) as arguments. For example:
timoni inspect module my-instance -n my-namespace
- Status of an instance: To check the status of an instance, you can use the
timoni status
command, which takes the name of the instance and the namespace as arguments. For example:
timoni status my-instance -n my-namespace
For more information on instances and other Timoni concepts, you can refer to the Timoni documentation website (https://timoni.sh/).
Note: The concept of instances in Timoni is similar to the concept of objects in object-oriented programming (OOP). In OOP, an object is an instance of a class with a unique name and property values. Similarly, in Timoni, an instance is a deployment of a module with its own set of values and configuration.