why should I use cdist?

Signed-off-by: Nico Schottelius <nico@brief.schottelius.org>
This commit is contained in:
Nico Schottelius 2012-11-21 09:44:38 +01:00
parent a1ed12b382
commit 9e9271fd4f
2 changed files with 38 additions and 0 deletions

View file

@ -11,6 +11,7 @@ cdist is an alternative to other configuration management systems like
[cfengine](http://www.cfengine.org/) [cfengine](http://www.cfengine.org/)
and [puppet](http://www.puppetlabs.com/). and [puppet](http://www.puppetlabs.com/).
* [[Why should I use cdist?|why]]
* [[Documentation|documentation]] * [[Documentation|documentation]]
* [[Supported Operating Systems|os]] * [[Supported Operating Systems|os]]
* [[Installation|install]] * [[Installation|install]]

37
docs/web/cdist/why.mdwn Normal file
View file

@ -0,0 +1,37 @@
[[!meta title="Why should I use cdist?"]]
There are several motivations to use cdist, these
are probably the most popular ones.
## Known language
Cdist is being configured in
[shell script](https://en.wikipedia.org/wiki/Shell_script).
Shell script is used by UNIX system engineers for decades.
So when cdist is introduced, your staff does not need to learn a new
[DSL](https://en.wikipedia.org/wiki/Domain-specific_language)
or programming language.
## Powerful language
Not only is shell scripting widely known by system engineers,
but it is also a very powerful language. Here are some features
which make daily work easy:
* Configuration can react dynamicly on explored values
* High level string manipulation (using sed, awk, grep)
* Conditional support (**if, case**)
* Loop support (**for, while**)
* Support for dependencies between cdist types
## More than shell scripting
If you compare regular shell scripting with cdist, there is one major
difference: When using cdist types,
the results are
[idempotent](https://en.wikipedia.org/wiki/Idempotence).
In practise, that means it does not matter in which order you
call cdist types, the result is always the same.
[[!tag cdist unix]]