Creating a new Manifest
To create a blank manifest run:
genesystem new
Structure
A configuration manifest is a description of changes to make to a host system, and at its simplest looks something like this:
{
"name": "manifest",
"version": "0.0.1",
"metadata": {
"gene_system": {
"version": "0.4.0"
}
},
"steps": [
{
"name": "say hello",
"exe": {
"install": {
"cmd": [
"echo \"hello\""
]
},
"remove": {
"cmd": [
"echo goodbye"
]
}
},
"tags": "example step"
}
]
}
Below is a description of the root level manifest attributes, each of which is required:
name
is the name of the configuration manifestversion
refers to the version of the configuration. You might want to increment this number as you make changes to the manifest.metadata
contains data about the manifest, notably the gene_system > version attribute which governs the minimum version of the Gene System gem required to execute the manifeststeps
an array of step objects that configure a host machine.