2020-07-27T23:52:33 UTC marked a milestone at Foundries, the 1000th build of the LMP was triggered. This got me nostalgic and I’ve put together a list of our "greatest hits". These builds represent pivotal moments in our history.
Like any greatest hits list there’s sure to be some controversy on the ordering. So here they are chronologically:
Epoch - Build 1
This was one of our classic "CI test do not merge" changes and the logs have since been deleted. It does highlight an important point. Automation was always in our DNA. We built the company this way for survival - we were too small to not automate.
OTA - Build 274
This was a pivotal moment when we decided to get serious about device updates. Ricardo single handedly made this work in the LMP. This build marks the beginning of our collaboration with meta-update, Aktualizr, and OTA Community Edition. Shortly after getting OTA builds working, we stopped using LAVA and were able to use our OTA builds instead.
RISC-V Support - Build 327
In another heroic act of coding, Ricardo was able to add LMP support for qemuriscv64 and the Freedom u540. This proved our platform could run on 3 different CPU architectures and also handle 32-bit (armhf) and 64-bit code.
Aktualizr-lite - Build 569
We were starting to find the Uptane and OTA Community Edition approach wasn’t matching up exactly with our vision. We worked with the upstream community and aktualizr-lite was born.
Aktualizr + docker-apps - Build 597
Yet another moment of upstream-first mentality, we worked with Aktualizr to introduce a new kind of "package manager" to handle Docker. This was our first attempt at managing containers as part of the OTA process.
Migration to Aktualizr-lite - Build 622
This build marked the migration from using Aktualizr and Uptane to Aktualizr-lite and our new backend service we call "ota-lite". This was when the Factory really started coming to life.
Wireguard VPN - Build 914
This build included the wireguard module and userspace tools used in our recommended solution for accessing remote devices. This has turned out to be a powerful feature that’s helping ourselves and our users.
Fioconfig and Fiotest- Build 947
One build but 2 huge features. Both fioconfig and fiotest landed in this build. Fiotest marked a new approach for device testing that our customers can also use in the same simple manner. Fioconfig was a longstanding request everyone had to help manage configuration of devices.
This build is probably the most satisfying build yet for me. This build is pretty close to the vision we all had when build #1 was first kicked off.