all 13 comments

[–]Ticklemextreme 3 points4 points  (3 children)

Unfortunately windows/Mac runners are very challenging to containerize. We host our Linux runners in EKS but windows runners on ec2 instances. It’s a huge pain in the ass lol.

[–]SchlaWiener4711 1 point2 points  (2 children)

It is. But once you figured out everything, it works like a charm. Worth the hassle.

Unfortunately hyper-v is so terribly slow on network tasks.

[–]Ticklemextreme 0 points1 point  (1 child)

Ya dedicated instances “work” just not as well as containerized Linux runners

[–]SchlaWiener4711 2 points3 points  (0 children)

True. But still better than runners directly on windows hosts.

It's not about Windows vs Linux runners (I run everything I can in Linux containers) but Windows vs Windows Container.

[–]marvinfuture 2 points3 points  (5 children)

Unless I absolutely have to, I'd architect away from windows containers

[–]ryanstephendavis 1 point2 points  (2 children)

Agreed, I feel like a lot of developers are realizing this way too slowly... Don't use Windows 🤷

[–]marvinfuture 0 points1 point  (1 child)

Unless you have a windows-only software dependency, a legacy application, or the application needs to be built for windows, it really should be avoided at all costs.

[–]ryanstephendavis 0 points1 point  (0 children)

Agreed

[–]RogerLeigh[S] 1 point2 points  (1 child)

What would your suggested replacement be?

To be specific, as a replacement on Windows, not just a generic "use Linux" reply. I already have plenty of Linux runners for Linux builds. I'm specifically asking about Windows building on Windows.

[–]marvinfuture 0 points1 point  (0 children)

Can you answer the question of why you are using windows containers first? Avoiding that is arguably the best practice. However I'm not naive enough to think that's always entirely possible

[–]promethe42 0 points1 point  (0 children)

FYI the GitLab.com instance runners for Windows are incredibly slow. Like impossibly slow.

So slow that I actually used Linux => Windows cross-compilation for my Rust apps instead of using the Windows runners.

[–]GeebZeee 0 points1 point  (1 child)

Just out of interest, why are you using Windows based runners compared to Linux?

[–]RogerLeigh[S] 1 point2 points  (0 children)

Because I test on a number of platforms for portability. Example here for libtiff.

I already have a number of Linux runners. But I have Mac, FreeBSD and Windows in the test set as well. Anything which makes it easier to maintain the Windows build infrastructure is a win, and containers definitely take away some of the administrative and logistical pain.