I was working to bridge a major gap that I discuss in my previous post. My places had no way to exchange secret keys to create a private network. While solving that naturally my CI/CD pipeline hit the Alpha reality that Tangled.org is moving from Nix Runners to their MicroVM runners. I had to overhaul my pipeline which they refer to as a Spindle.
The Tangled.org team created a feature called Mill spindle. It allows your mill to orchestrate other spindles as runners. This led to another small project I created I named Sleeping Beauty. A new engine outside the Nix, and MicroVM I named "Host" which runs on the host machine so I could run the Linux, Windows and MacOS installer pipelines using the hardware specific certs/signing keys to build and publish the release available on fileorbit.cloud. I forked the tangled/core repo so I could remove UNIX specific signals logic and made it use a factory to keep all that good stuff but allow me to inject windows specific install requirements.
Sometimes things happen for a reason. Necessity is the greatest inventor ;).
I realized to do this I needed to self-host my own spindle. Now I have spindle.fileorbit.cloud/mill which all my other runners listen to a web-socket connection to be told to run the pipeline.
I originally started with a beefy spindle host on Digital Ocean but it was a $48 server and I am on budget. I managed to say screw it run it as a $4 server and see if I can push the limits. It took some modifications via my forked tangle/core repo. I sacrificed my Windows Gaming PC with 80 GB RAM and an older Thread Ripper CPU to become my workhorse for running my spindle executors the mill calls outside of the installer spindles. So now I am primarily on an Ubuntu computer, which is refreshing, thank god for Steam making games compatible. Oxygen Not Included and ToTK have been my go toos while my pipelines run.
After a week of solving my pipeline so I can deploy to my cloud hosted safety-net nodes, I now have what the Mill feature promised. I run spindles on each machine so I can have MacOS, and Linux installers build and ship on each machine signed with those local machines certs. Sometimes issues force you to make it better than you found it.
I am grateful for Oppi.li and Dawn for giving me guidance along the way. Show the Tangled team some love on their Discord server, they are a great community.
Until next time, peace nerds and normies,
~ Triforce
P.S checkout the original post this started as but became a ramble.
Check it out - Necessity is the greatest inventor!