61 lines
2.2 KiB
Markdown
61 lines
2.2 KiB
Markdown
---
|
|
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.
|