Home
Kokki is a configuration management framework. It can be used standalone or as a part of a more complex system.
Stable releases can be installed using:
easy_install kokki
or:
pip install kokki
You can find the current version at http://github.com/samuel/kokki
.A kokki configuration is composed of a few pieces, kept in a Kitchen
:
configuration file(s)
specifies cookbook paths and roles. Can either use a single Python file for the configuration or a directory of Python files.
cookbooks
a collection of recipes and extra resources and providers. A pre-written collection of recipes is included with kokki.
recipe
a script that includes a various resources describing the expected state of a system. These are usually kept within a cookbook.
describes a piece of the system configuration state (e.g. described a file, a user, etc..). The default Resources are in
kokki/resources
.Recipe specific resources are described within the
resources
directory within a recipe.
provider
os/platform specific code to bring the system to the state given by a resource. Most of the ones you'll need are provided by the default Kokki installation and can be found in
kokki/providers
.
As a library:
from kokki import *
with Environment() as env:
Package("vim", action="upgrade")
File("/etc/hosts",
owner = "root",
group = "root",
content =
"127.0.0.1 localhost\n"
"255.255.255.255 broadcasthost\n"
"::1 localhost\n"
"fe80::1%lo0 localhost\n")
env.run()