UPDATE: The latest builds and instructions are now at the 32-bit Arm Chef Infra and Cinc Client Builds for Linux landing page.
Chef Infra Client 16.1.0 has been released and here are new 32-bit ARM builds. I’m providing Cinc community builds of the same versions considering these are all technically “unsupported” builds either way. There is a small omnibus patch to use Ruby 2.7.1 for building against the master branch. This patch may not get upstreamed for awhile, switching back to Ruby 2.6.6 works fine too.
The Cinc build is a series of patches applied on top of the Chef code. I’ve slightly modified the patch for my builds to reuse the omnibus-toolchain from the Chef build and patch the code from the download version of the Chef code and not cache things for future builds. These build scripts build and install Ruby, the latest omnibus-toolchain, download and build Chef, get the Cinc patches and apply them to a clean copy of the same Chef code base and then build that. You can edit the script to disable Chef or Cinc depending on your preference if you don’t want one of them.
Build Instructions
If you want full instructions explained, here they are:
Please note the ld.so.preload instructions for Raspbian 10. Here are the updated single scripts to do a full build as the omnibus
user:
Chef Infra 16.1.0
- CentOS: RPM-chef-cinc-16.1.0.sh and run
nohup bash RPM-chef-cinc-16.1.0.sh &
- Debian/Raspbian/Ubuntu: DEB-chef-cinc-16.1.0.sh and run
nohup bash DEB-chef-cinc-16.1.0.sh &
And tail -f nohup.out
to watch the output. The Raspberry Pi Zero is extremely slow to build, you may need to renice
the build processes and enable swap to keep it from dying.
Chef Infra Client 16.1.0 32-bit ARM DEB and RPM Packages
- The 32-bit CentOS ARMv7hl package (Raspberry Pi 3 (A, A+, B+)):
- The 32-bit Debian/Raspbian/Ubuntu ARMv6l packages (Raspberry Pi 1/0 series):
- The 32-bit Debian/Raspbian/Ubuntu ARMv7l package (Raspberry Pi 3/4 series (Raspberry Pi 2 is untested but should work):
Cinc Infra Client 16.10.287 32-bit ARM DEB and RPM Packages
- The 32-bit CentOS ARMv7hl package (Raspberry Pi 3 (A, A+, B+)):
- The 32-bit Debian/Raspbian/Ubuntu ARMv6l packages (Raspberry Pi 1/0 series):
- The 32-bit Debian/Raspbian/Ubuntu ARMv7l package (Raspberry Pi 3/4 series (Raspberry Pi 2 is untested but should work):
Chef LEDs Handler Cookbook
If you’re using these builds you might be interested in the LEDs Handler cookbook. At the beginning of the Chef client run the LEDs blink a heartbeat pattern and at the end of the client run the LEDs are disabled. If the Chef client run fails the LEDs all stay on. It’s pretty simple but it’s a fun notification that the nodes are converging. It also works with Mac laptops running Linux, lighting up their keyboards when the Chef client is active.