Yocto Project Summit 2022
Building and testing Yocto in an automated fashion with GitHub Actions and self hosted runners
Our CEO, Alex Lennon, has been speaking at the Yocto Project Summit this year on how to build and test Yocto Layers with GitHub Actions,
“I’ve been maintaining meta-mono for some years now. This is a a Yocto / OpenEmbedded layer which provides support for Mono, an “open source implementation of Microsoft’s .NET Framework based on the ECMA standards for C# and the Common Language Runtime”. Also, more recently, Microsoft’s dotNet is supported, “a free, cross-platform, open source developer platform for building many different types of applications. With . NET, you can use multiple languages, editors, and libraries to build for web, mobile, desktop, games, and IoT”
Over the years I’ve had quite a lot of trouble ensuring that new releases of Mono ran properly for the community. It was taking a lot of my time to build for different architectures, with different releases of Yocto, and to test and make sure things were minimally OK.
I’ve tried some different approaches over time, including cloud build providers and my own Jenkins installations.
But now I’ve finally come to where I’ve always wanted to be: With GitHub Actions workflows, leveraging self hosted runners on my own cloud hardware to build and test.
When contributors create a pull request multiple builds are kicked off (qemu-x86-64 and qemu-arm). These are then run up in architecture-specic QEMU virtual machines and a set of simple tests run using the Yocto Test Environment.
It makes life much easier doing some pre-qualification for contributions and makes me feel more confident that I can keep things working.”