A lightweight, fun Continuous Integration server written with Kohana 3.1
Ciko is a lightweight continuous integration server written in Kohana.
It’s best used with a single developer on your local machine while doing development. It’s aim is to be an easy to use continuous integration server that a freelance developer can use independently.
Clone this repository (recommended location is a system-wide location like /usr/local/ciko/
). If you want to look at project runs, you’ll need to setup a webserver pointing at the docroot/
folder.
Ciko is best used as a post-commit git hook on your local machine:
If you are using Ciko on your local machine for your local projects:
/path/to/ciko/minion ciko:run --project=ciko
You can also use it as a remote server with a post-receive hook. You’ll need to do a POST request to /ciko/run/<project-slug>
:
curl -d "" http://example.com/ciko/run/<project-slug>
Configuration in Ciko is easy and pretty self-explanatory:
Model_Ciko_Project
objects. See the example config for detailsYou can specify reporters in the ciko config. Currently there is none written, but there is an easy interface for them and should be easy to make one for your specific need.
A reporter should take the output from a runner job, and turn it into a human readable format. An example is a Clover reporter that reads a clover.xml and gives you code coverage percentages.
A notifier is similar to a reporter, except it can send an email out, or notify IRC.
The git notifier tags the repository saying it ran a CI build on the repository. The tag name will be in the syntax of ciko-#<build-number>
.
It will also push the tag to the cloned repository, so make sure the machine (and user) ciko is running under has permission to do that.
Ciko is designed to be fast, lightweight and easy to use. It doesn’t:
And it never will.