The Shining Path of Least Resistance


Chef 13 on the BeagleBone Black

Posted by mattray on May 12, 2017

Now that the Chef client 13 is available, I decided to upgrade my ARM build to the latest release. ARM is still not officially supported, but building was fairly straightforward. I had Chef 12.17.1 on the box already, but I needed to upgrade the build tooling first.

Ruby 2.4.1

Chef 13 is now using Ruby 2.4.1 in their build pipeline, so the first step was to build the latest. I already had an omnibus user and rbenv installed, so it was pretty simple:

  sudo su - omnibus
  export PATH="$HOME/.rbenv/bin:$PATH"
  eval "$(rbenv init -)"
  rbenv install 2.4.1
  rbenv global 2.4.1
  gem install bundler


Once Ruby 2.4.1 was installed, I decided to upgrade the omnibus-toolchain to the current release. I had to make a small patch (upstreamed), and build the latest:

  git clone
  cd omnibus-toolchain
  bundle install --without development
  bundle exec omnibus build omnibus-toolchain

Chef 13.1.12

Now I could finally get to installing Chef 13.1.12.

  export PATH="$HOME/.rbenv/bin:/opt/omnibus-toolchain/bin:$PATH"
  cd chef-13.1.12/omnibus/
  bundle install --without development
  bundle exec omnibus build chef -l debug

About 2 hours later I had my ARM Chef client .deb built. As the root user I installed it and ran it.

  root@beaglebone:/home/omnibus/chef-13.1.12/omnibus/pkg# dpkg -i chef_13.1.12+20170511092809-1_armhf.deb
  (Reading database ... 88226 files and directories currently installed.)
  Preparing to unpack chef_13.1.12+20170511092809-1_armhf.deb ...
  Unpacking chef (13.1.12+20170511092809-1) over (12.17.1+20161110041345-1) ...
  Setting up chef (13.1.12+20170511092809-1) ...
  Thank you for installing Chef!

Feel free to download the Chef 13.1.12 ARM client for the BeagleBone Black here: chef_13.1.12%2B20170511092809-1_armhf.deb


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: