github multi-org self-hosted runners

ran into an isse today. i have an nvidia jetson orin 64 MB and it works great. usually with projects that I have that are built towards x86_64, it's pretty easy to get them to build towards ARM64. even if you're using github action workflows, you'll just use a QEMU emulator.  even chatgpt can build this workflow pretty easily for  you these days.

however if you're using the free default github instances for action workflow ci/cd, then you're probably not going to be able to build big multi-arch builds.

sometimes your build can last for hours and hours and just be eating up all sorts of resorces just stalling out. so i decided to instead break up my build workflow into task by architecture: one for x86_64 and one for ARM64. i would then run the x86_64 build on a large github hosted runner, because that should be fine, and then I pointed my ARM64 build towards my nvidia jetson agx orin 64 gb instance.

herein lies the dilemna. i currently have a self-hosted runner on my jetson for a different github org. i looked up more than a few different options on spreading out the same running, via permissions, through different github orgs. i didn't make much headway on this point. but I did see someone say they could run multiple listeners in some forum.

so, much in the spirit of rebooting 3x, i just made a brand new self-hosted runner for my new org, for ARM64 in a new directory on my jetson.  i installed it and configured i there, and it works great. as long as your self hosted runners are in in isolated directories, it looks like you should be good to go to run as many as you wish on the same device.

 

This article was updated on September 30, 2024