forked from ungleich-public/cdist
67 lines
1.8 KiB
Text
67 lines
1.8 KiB
Text
|
## What do I need [from puppet?]
|
||
|
|
||
|
### Abstraction of package managers
|
||
|
|
||
|
I don't want to care about apt, rpm, yum, pacman, etc. I just
|
||
|
want to ensure, some package exists or does not exist.
|
||
|
|
||
|
|
||
|
### Common tasks already done
|
||
|
|
||
|
- [LIBRARY] All the helper types like
|
||
|
- file
|
||
|
- ssh_keys
|
||
|
- package
|
||
|
- service
|
||
|
- user
|
||
|
|
||
|
### PORTABILITY
|
||
|
- [PORTABILITY] clients for every unix
|
||
|
- mostly ruby + facter in puppet
|
||
|
|
||
|
### Other
|
||
|
- Modules: Nice to put stuff together
|
||
|
- and reuse
|
||
|
- [CONDITIONS] facter is cool
|
||
|
- the DSL
|
||
|
- with many bugs
|
||
|
- templates
|
||
|
- Client/Server approach is nice to have
|
||
|
- Clients only get the part of the documentation, that's
|
||
|
relevant to them
|
||
|
- detect impossible/unsafe things:
|
||
|
- creating a file twice
|
||
|
- installing and removing a package
|
||
|
- and report location of occurence
|
||
|
- parse afterwards?
|
||
|
|
||
|
--------------------------------------------------------------------------------
|
||
|
what is puppet? [FOR ME]
|
||
|
|
||
|
A configuration deployment assistant,
|
||
|
a DSL that allows you define the objectives.
|
||
|
A webserver with fileserver capabilities.
|
||
|
A client based scheduled polling infrastructure.
|
||
|
|
||
|
--------------------------------------------------------------------------------
|
||
|
What do I miss from puppet?
|
||
|
|
||
|
- speed
|
||
|
- elegance
|
||
|
- clean design
|
||
|
- documentation
|
||
|
- the "no surprise" factor
|
||
|
- easy to use "data memory" (i.e. external ressources)
|
||
|
- easy integration into installation process
|
||
|
- copy identity to master
|
||
|
- multi master setups
|
||
|
- development configurations / tests
|
||
|
- editing of configuration files
|
||
|
- similar to cfengine
|
||
|
- replace bug squasher with bug avoidance
|
||
|
- qmail did not need one either
|
||
|
- push infrastructure
|
||
|
- real / meaningful error messages
|
||
|
|
||
|
|