On the server: conf/manifests/init - the central entry point - is a shell script - defines mapping from types to hosts - will be called by cdist and the name will be available for tracking in cdist core functions conf/manifests/* (all other) - same function as above - but won't be called by cdist - method to seperate configuration parts conf/types// - provide standard types - have required and optional arguments - are independent of hosts - may make use of other types to realise a new type - how to overwrite stuff? - overwrite in own tree? - needs knowledge of inherited provider - similar to current situation in puppet, but more like reusable defines - or may implement some functionality on their own conf/explorers/ - explorers to be run on the target hosts Differences manifests vs. types manifests types main purpose map config to host provide functionality can change config no (prevent conflicts) yes (allow inheritance) specificness site specific (globally) reusable