Chef series 0 WIP

Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
This commit is contained in:
Maxime “pep” Buquet 2018-07-14 01:28:44 +01:00
parent 026a9f7e8e
commit 02357de288
1 changed files with 61 additions and 0 deletions

View File

@ -0,0 +1,61 @@
---
title: "Catching up with Chef"
date: 2018-08-31T12:00:00+01:00
author: "pep."
tags: [Configuration Management, Chef, Collabora]
---
When I arrived at [Collabora][0], I was introduced to [Chef][1]. At the time I
did know a bit of [Ansible][2], that I had used here and there for personal
projects. Both are [configuration mangement systems][3].
[0]: https://collabora.com
[1]: https://chef.io
[2]: https://ansible.com
[3]: https://en.wikipedia.org/wiki/Configuration_management
Every company has a technical debt lurking around the corner, and for us it
was, and still is the case with our so-called Chef _cookbooks_, and _recipes_.
To place this beginning of a rant in context, at Collabora we use Debian
extensively. We employ a fair number of Debian Developers, and it is not
uncommon to have debianisms taken for granted internally.
At the time, Jessie was still stable, and had (has) _chef 11.12.8-2_, Stretch
arrived a few months later, with _chef 12.14.60-2_ packaged. The server
part of chef is not packaged, but there is an alternative implementation
called _goiardi_ that we use. It plans to implement chef-server 12 when
reaching 1.0.
Meanwhile, the official project has released _chef 14.3.42_, and _chef-server
12.17.69_ at the time of writing, with plenty of new features, but also bug
fixes, that I would love to be able to benefit from.
To add to this, we do not test our cookbooks automatically, and the only
viable way to test changes is to actually deploy them and run the client. Good
fun.
We use a client/server architecture. We don't use chef-zero. _why?_
---
I'm going to fix a few objectives to myself to:
- update at least the chef-client that we use on stretch
- get rid of jessies
- setup test with CI on gitlab
And report all that.
## Objectives
I already started cleaning up the repository:
> added lines: <span style="color: green;">10712</span> removed lines: <span style="color: red;">26589</span> total lines: -15877
I was the one to commit most of the cookbooks when I arrived, because they
weren't versioned, which explains the huge number of added lines.
---
I am not going to release all sources for what I do unfortunately, but I will
try to detail the steps of how I did it for each part of the objectives.