As part of a personal project involving Raspberry Pi 400s and Microshift I’ve created a not-aptly-named repo on GitHub called ignition-configs which automates the setup of the local Fedora workstation for provisioning Fedora CoreOS on sdcards. The goal being that, with a minor edit to the Ansible inventory and a single make
command, one can automatically generate an sdcard which will boot into Fedora CoreOS and run a Microshift “cluster” for edge use-cases.
The project is still in early phases and is by no means “production ready”, but is in a useful state and will only become more useful as I work through some of the planned improvements, such as caching, post-provisioning clean-ups, and eventually, a custom ostree
which includes everything necessary to actually execute microshift. The current state is that everything is prepared, including a microshift.service
systemd unit which will start microshift using the podman method described here. As of now the user is required to log into the system once booted and conduct a package layering exercise to get cri-o
installed before they can enable and start the microshift service.
My overarching goal with this project is to make it easy for even novice users in Fedora’s ecosystem to provision and make use of otherwise sophisticated technologies, for experimentation or edge use-cases.
I’m sure there are larger implications for Fedora CoreOS here, even if I don’t readily see them. At the very least I wanted to share with this community my own usage in the hopes that you all who are working on Fedora CoreOS, specifically in the ARM space, can delight in the fact that someone took an interest.
If there is already a project within Fedora CoreOS around doing this sort of thing, I’m happy to review and potentially submit pull requests where my own implementations make sense or can be of use.
Here are some screenshots of the Raspberry Pi 400 running microshift on Fedora CoreOS 35 for happy feels