Skip to content
This repository has been archived by the owner on Nov 9, 2017. It is now read-only.
samuel edited this page Apr 17, 2012 · 9 revisions

Kokki

Kokki is a configuration management framework. It can be used standalone or as a part of a more complex system.

Installation

Stable releases can be installed using:

easy_install kokki

or:

pip install kokki

Source

You can find the current version at http://github.com/samuel/kokki

Overview

.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.

resource

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.

Quick Examples

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()
Clone this wiki locally