|photo by Samuel John|
BuildBot is a continuous integration server written in Python. Continuous integration is a practice of building your application on every commit. Building includes running tests, linting, acceptance tests and packaging the application. You might wonder why got through all this trouble?
When you work in a team it is useful to know that changes made by different team members work well with each other. If they don’t it is much easier to figure out why — if the delta is small.
But you might wonder why do that if you are writing you application by yourself. The answer is simple: You are the only one who does all the development, operations and business development. The more you automate the more time you will have to spend on things that actually bring money.
In the next post I will show how to setup continuous delivery pipeline which is a fancy way of saying continuous integration with automated deployment of the product.
Why BuildBot and not Jenkins?
I come from Java world and Jenkins is ubiquitous in that world. Jenkins has nice GUI to run jobs and configure things. But it imposes its ways on you. I don’t like that. I want minimum restrictions.
BuildBot gives me that. It is simple. Does the job. And since we are working with Python lands itself well to expansion.
How To Setup BuildBot
I will not go into step by step setup. They have good documentation for setting it up if you are doing it by hand. What I will do is provide a playbook to setup a vm with master and slave already configured.
How To Use It With Your Setup
First you need to read through this awesome tutorial. Then you can start configuring your own builders and schedulers.