This repository contains the NCF framework. This framework aims at easing the development and use of the configuration management tool CFEngine 3.
There are several levels in this framework, from 10 to 60, representing a layer, with each layer being a fundation for higher levels. The higher the lever, the higher the abstraction level.
- 10_ncf_internals: this directory contains the mechanics and glue to make the framework work. You should be very rarely modified, and is generic.
- 20_cfe_basics: this directory contains libraries that can be reused; most notably the CFEngine Standard Library (cfengine_stdlib.cf)
- 30_generic_methods: this directory contains reusable bundles, that performs unit tasks, and are completely generic.
- 40_it_ops_knowledge: this directory contains default values for services, like packages name of a specific service accross diferent distribution, path to binaries, default configuration values of services, etc
- 50_techniques: this directory contains Techniques, which are the know-how of configuring a services
- 60_services: this directory contains the configurations of services, with parameters and conditions. This level is specific for each organisation.
Each level contains at least 3 subfolders:
- ncf: the files shipped with the framework
- local: local imlementation, organisation specific. This folder is always ignored in git
- d-c: extension point for the framework, for the Design-Center
Each level uses items from the lower level (lower number) or from its own level.