From 02357de288efe4cf71b52315e6b4e3d36c6cbf82 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Maxime=20=E2=80=9Cpep=E2=80=9D=20Buquet?= Date: Sat, 14 Jul 2018 01:28:44 +0100 Subject: [PATCH] Chef series 0 WIP MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Maxime “pep” Buquet --- content/posts/chef-series-0.md | 61 ++++++++++++++++++++++++++++++++++ 1 file changed, 61 insertions(+) create mode 100644 content/posts/chef-series-0.md diff --git a/content/posts/chef-series-0.md b/content/posts/chef-series-0.md new file mode 100644 index 0000000..2315997 --- /dev/null +++ b/content/posts/chef-series-0.md @@ -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: 10712 removed lines: 26589 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.