Description
Current status:
Windows - These required a lot of work because our windows buildbot story has always been a :dumpster-fire: . Previously, we had someone build windows VMs, used cygwin to install a bunch of compiler versions, and then whatever was installed was just what we got. Updating the system meant potentially upgrading the compiler versions and breaking everything. It was awful. Also, the windows VMs often get wedged and must be restarted. I have recently managed to streamline Windows VM creation via Packer, and figured out the proper KVM recipes to be able to run docker-on-windows-in-KVM on our amdci machines. This means that we can build the system toolchains as docker images that get deployed onto the machines, providing reproducibility, and we can destroy the docker container after each build, which should provide a lot more reliability. We will definitely need help creating the windows docker images and spearheading buildkite windows development, as I believe it’s mostly in powershell.
Next steps:
We need to build windows docker images that contain the mingw32 build tools and windows platform SDK headers and whatnot necessary to build Julia. We need to also build a set of powershell instructions to build and package Julia inside of that docker container, and then integrate the whole thing into buildkite. This will involve some powershell scripting and some buildkite plugin development, I bet.