Click here to load reader
Upload
martin-simons
View
277
Download
1
Embed Size (px)
DESCRIPTION
CFEngine is developing at a remarkable speed within CFEngine 3, packaging CFEngine for Debian was lagging. So I initiated a global team in order to make sure that an up to date version of CFEngine is available for the popular Debian Linux distribution. Please find us on: http://lnkd.in/bd8cZe4 Goal: Create a mechanism for continous delivery, following the heartbeat of the Upsteam project The presentation covers the way we organized the project: Github as a cornerstone Issue tracking Pull requests Building the package from the git repository Testing the package Moving towards (co)maintainership Results: Demonstration of a build from the repository In the course of the project we encountered several issues we had to resolve in cooperation with the upstream project. The result of the effort is that we now have a framework that enables us to create standardized CFEngine packages for all major distibutions.
Citation preview
The CFEngine Packaging Team
Config Management CampGent
4 February 2014
Tuesday, February 4th 2014 Martin Simons, Webhuis at Config Management Camp Gent 2
Martins' Bio
● Developer since 1984● Masters in Economics BIK (IT management)● Webhuis, owner● Systems Administration as of 2000● CFEngine started with CFEngine 2 in 2007
Tuesday, February 4th 2014 Martin Simons, Webhuis at Config Management Camp Gent 3
Agenda
● Historic overview● The CFEngine approach● Native implementation● Debian-team CFEngine● Continuous delivery and operation
Tuesday, February 4th 2014 Martin Simons, Webhuis at Config Management Camp Gent 4
CFEngine ecosystem● Vital part of company's ecosystem● Client – Server● Linux / Unix / BSD● CFEngine community
Free and Open SourceGPLRich, offers database support
● CFEngine Enterprise Edition● Rudder
Tuesday, February 4th 2014 Martin Simons, Webhuis at Config Management Camp Gent 5
Debian
Advantages● Huge installed base (10% webservers globally)● Stable, proven technology● True open source● Community driven
Disadvantages● Lagging towards new developments● Rigid and demanding● Long release cycle
Tuesday, February 4th 2014 Martin Simons, Webhuis at Config Management Camp Gent 6
Intitial Goals
● Gain acceptance on the maintainer side● Bring CFEngine in line with Debian standards● Build a package as feature rich as possible● Create a vehicle for future releases
Tuesday, February 4th 2014 Martin Simons, Webhuis at Config Management Camp Gent 7
Private Agenda :-)
● Database support in Community● Support for Raspberry Pi, raspbian● LDAP support
Tuesday, February 4th 2014 Martin Simons, Webhuis at Config Management Camp Gent 8
Debian-team
Founded june 2013● Debian offered an outdated release, 3.0.5!● Only one maintainer (now team member)● Upstream did not comply with Debian standards
(now do)● Project page
https://github.com/Webhuis/Cfengine-debian● Not only Debian, When we're done the solution is
usable for every main package manager
Tuesday, February 4th 2014 Martin Simons, Webhuis at Config Management Camp Gent 9
Community effort
● Makes CFEngine more generic● Obey by FHS rules and regulations● Required upstream changes, already applied● Beneficial to CFEngine● Debian package implies true Open Source● Back ports in 3.5 will disappear in CFEngine 3.6● Applicable to all package management systems
Tuesday, February 4th 2014 Martin Simons, Webhuis at Config Management Camp Gent 10
Moving forward with CFEngine
● The Debian-team prepare for an up to date CFEngine release
● A mechanism following the heart beat of the upstream project
● Aimed at Debian Jessie, first release● Backport to Wheezy● Other Linux brands are in scope
Tuesday, February 4th 2014 Martin Simons, Webhuis at Config Management Camp Gent 11
Debian-team and project page
● Frequent meetings through Hangout● Members in and outside of CFEngine,
Normation and Volunteers.● https://github.com/Webhuis/Cfengine-debian● Wiki
https://github.com/Webhuis/Cfengine-debian/wiki
Tuesday, February 4th 2014 Martin Simons, Webhuis at Config Management Camp Gent 12
Simple build script
#!/bin/bash
git clone https://github.com/Webhuis/Cfengine-debian.git
cd Cfengine-debian
git checkout -b pristine-tar origin/pristine-tar
git checkout -b upstream origin/upstream
git checkout master
git buildpackage -uc -us
Tuesday, February 4th 2014 Martin Simons, Webhuis at Config Management Camp Gent 13
Small in line video of a build
● Switch to VLC
Tuesday, February 4th 2014 Martin Simons, Webhuis at Config Management Camp Gent 14
Call for acion
● Get more information at http://www.cfengine.com● Try Rudder and ncf● Try a free Enterprise version of CFEngine (25 license pack
free, unlimited and full featured use) at http://cfengine.com/evaluate-enterprise
● Join the conversation at our community mailing list: http://cfengine.com/community-forum
● Watch Mark Burgess' video's● Buy Diego Zambonis' book● Keep track of free CFEngine Webinars