update readme

Signed-off-by: Nico Schottelius <nico@kr.ethz.ch>
This commit is contained in:
Nico Schottelius 2011-03-04 10:58:26 +01:00
parent 054cb7e611
commit f227f1bba2
1 changed files with 39 additions and 29 deletions

View File

@ -1,5 +1,7 @@
[[!meta title="cdist - configuration management"]]
[[!toc levels=2]]
## Introduction
cdist configures your system and is similar to
@ -11,21 +13,20 @@ and [puppet](http://www.puppetlabs.com/), but
it ticks differently:
* cdist sticks completly to the KISS (keep it simple and stupid) paradigma
* cdist's core is very small (currently around 400 lines of code)
* cdist's core is very small (< 1k lines of code)
* There is only one type to extend cdist called ***type***.
* One main development target: ***It must be incredible easy to add new types.***
* cdist is UNIX
* It reuses existing tools like cat, find, mv, ...
* cdist's documentation is bundled as manpages
* cdist is written in POSIX shell
* No special requirements like high level interpreters needed on server or target
MAIN AIM: It MUST be incredible easy/dumb to add new types.
### Architecture
* Push mode (server pushes configuration)
* Pull mode (client triggers configuration)
* Pull mode planned (client triggers configuration)
* User defines configuration in shell scripts (called ***manifests***)
* Cdist generates internal configuration (cconfig style) and afterwards applies configuration
@ -56,35 +57,48 @@ but is not. Or: The reason why I began to write cdist.
### Server
* A posix like shell
* SSH-Client (for push architecture)
* SSH-Server (for pull architecture)
* SSH-Client
### Client
### Client ("target host")
* A posix like shell
* SSH-Client (for pull architecture)
* SSH-Server (for push architecture)
* SSH-Server
## Installation
Cdist stable always in master
## Getting cdist
* Create a new unpriviliged user (probably "cdist")
* Become that user, execute the following code:
You can clone cdist from git, which gives you the advantage of having
a version control in place for development of your own stuff as well.
git clone git://git.schottelius.org/cdist
cd cdist
export PATH=$PATH:$(pwd -P)/bin
There are at least two branches available:
* 1.0: stable branch of version 1.0
* next: preparing next cdist version
Other branches may be available as well for features or bugfixes, but they
may vanish at any point.
### Installation
To install cdist, execute the following commands:
git clone git://git.schottelius.org/cdist
cd cdist
export PATH=$PATH:$(pwd -P)/bin
### Update
As the stable branch always contains the stable code, you can upgrade
cdist using
git pull
If there are any incompatibilities, at least the minor version (1.0 -> 1.1)
will change and thus a git pull will never break your cdist installation
(in theory).
That's it.
Operation on the server is run as "cdist" user.
Operation on the client is run as "root" user.
## Update
git pull && make install
## Support
### IRC
@ -96,7 +110,3 @@ You can join the development ***IRC channel***
Bug reports, questions, patches, etc. should be send to the
[cdist mailing list](http://l.schottelius.org/mailman/listinfo/cdist).
## Commercial Support
To be done.