Tuesday, 28 October 2014

Building Continuous Integration environment for OpenStack

http://www.cloudypoint.com/openstack/creating-continuous-integration-environment-openstack/
Building Continuous Integration environment for OpenStack
Though OpenStack is a large and complex project at present, its development community is structured very well in comparison to other large open source projects or proprietary development practice communities, to the degree that OpenStack is even considered a role model. It is particularly interesting to note how this community has developed an infrastructure for code review, testing and continuous integration.

In this series of posts, I will discuss continuous integration (CI), looking at how the OpenStack community adopted this practice and the advantages of integrating your own CI environment into OpenStack. I will give a brief description of each of the main components and what you need to know in order to kick off your own services. This is not intended to be a tutorial, but I will provide links to several useful tutorials in my last post.

The OpenStack CI environment includes a series of projects that contain unit tests, functional tests, integration tests, a patch review system and automatic builds. Most of those projects are hosted within the OpenStack Infrastructure project and managed by the OpenStack Infrastructure Team, but tools like Tempest, DevStack and Grenade are essential to provide required automation and the environment that makes CI effective. Those systems are integrated with the build and patch review system (Gerrit), in order to provide the appropriate verification for every change proposed to OpenStack projects. This can ensure that usability, policies, reliability, security, dependencies and other environmental characteristics are properly maintained. Behind all this, you need a cloud infrastructure to run it all.

No comments:

Post a Comment