What is Kanku?

kanku is designed to give you a better integration of your kiwi images built by the Open Build Service in your development and testing workflow.

You can find pre-build images for various linux distribution in devel:kanku:images

Modes

kanku can run in two modes

  • Developer mode (on your laptop/workstation) while developing.
  • Server mode (on a dedicated Server for QA) to run jobs periodically or triggerd by e.g. events on a rabbitmq bus.

Developer mode

In a simple configuration file in YAML format you can specify the location of your kiwi image and actions to be executed after downloading the image and starting a Virtual Machine using the downloaded image. You can configure one or multiple jobs per project. These jobs consists of one or more tasks which use a handler module and the given options. With the kanku command line tool you can easily

  • create a new VM based on the configured image
  • run commands on the VM via SSH or serial console
  • use salt-ssh to configure your VM
  • access the created VM via ssh
  • share your project/source directory with the VM

Server mode

In server mode you have three ways to trigger a job:

  • scheduled - kanku-scheduler triggers the job in a defined time period
  • triggerd - kanku-triggerd triggers the job at a defined event (e.g. via rabbitmq)
  • manually - You can trigger a job via the WebUI

As the job configuration is very similar to the developer mode, you can easily adopt the configurations used in developer mode.

The results can be shown via WebUI or with the kanku command line tool in a terminal