2. FeaturesΒΆ
But cdist ticks differently, here is the feature set that makes it unique:
- Simplicity
There is only one type to extend cdist called type
- Design
Type and core cleanly separated
Sticks completely to the KISS (keep it simple and stupid) paradigm
Meaningful error messages - do not lose time debugging error messages
Consistency in behaviour, naming and documentation
No surprise factor: Only do what is obviously clear, no magic
Define target state, do not focus on methods or scripts
Push architecture: Instantly apply your changes
- Small core
cdist's core is very small - less code, less bugs
- Fast development
Focus on straightforwardness of type creation is a main development objective Batteries included: A lot of requirements can be solved using standard types
- Modern Programming Language
cdist is written in Python
- Requirements, Scalability
No central server needed, cdist operates in push mode and can be run from any computer
- Requirements, Scalability, Upgrade
cdist only needs to be updated on the master, not on the target hosts
- Requirements, Security
Uses well-know SSH as transport protocol
- Requirements, Simplicity
Requires only shell and SSH server on the target
- UNIX
Reuse of existing tools like cat, find, mv, ...
- UNIX, familiar environment, documentation
Is available as manpages and HTML
- UNIX, simplicity, familiar environment
cdist is configured in POSIX shell