Open akclace opened 5 days ago
The various config formats already in use in Clace are
The other options are YAML and a domain specific language (like HCL).
Clace has a CLI interface which can be considered a DSL. Using the CLI command as declarative interface will mean something like
app create
commands for all the apps. All options needs to be present in the output. The output should be sorted by app name and options also need to be sorted (for diffability) Further considerations for the CLI DSL option
Currently, Clace apps are created using a CLI interface. An UI interface to manage Clace apps will be added later. For complex installations, a declarative interface is required. The intent is to avoid ClickOps/ShellOps.
The declarative interface should be readable, expressive, idempotent and git compatible (diffable text format). Modularity, reusability, support for variables and parameters are other criteria to consider. Interoperability with CLI and UI is another consideration.