logoalt Hacker News

zanderwohl • today at 2:17 PM • 10 replies • view on HN

I have not understood, and still do not understand, why everyone locks themselves into github's CI/CD pipeline. It's not hard to set up checks that run on a generic docker setup. I have a home server that I use for all my builds and checks, with a github actions config to run manually if I can't VPN into my home network.

Besides being more reliable, it's just faster to run on a machine you control.


Replies

fidotron • today at 2:30 PM

One reason is it lets you access Windows build machines for free when you no longer have any around.

I would not underestimate how strategically important that will prove to be for Microsoft moving forward.

➕ show 1 reply
flohofwoe • today at 2:25 PM

Maintaining Windows and macOS self hosted GH (or GL) runners is a hassle I really don't want to deal with anymore (been there done that).

999900000999 • today at 2:22 PM

Because I don’t want to maintain a server and pay for it.

I have a few GitHub actions that have ran for years without issue. You add a yaml file to your repo and it’s done.

As a hobbyist, I’m happy.

I would never do any real work with actions though.

core-utility • today at 2:53 PM

If you're a small/FOSS project, it's not worth the time overhead to set up and maintain and troubleshoot.

If you're a large project, companies generally get more value paying for SaaS and letting devs do dev, rather than troubleshooting Jenkins for the billionth time.

The real value self-host brings is somewhere in the middle, where you need paid-level features with 0 fiat (and can pay in time instead).

jasbury • today at 2:21 PM

Because that model does not scale for teams of developers who need a consistent view of CI health, build health, and PR readiness

tombot • today at 2:25 PM

Even if you still use the actions the CI / CD minutes can still happen on a self hosted machine. https://docs.github.com/en/actions/concepts/runners/self-hos...

baq • today at 2:27 PM

It's probably the biggest, bestest, hardestest proof of 'worse is better' anyone could think of. The system is so dumb and inconsistent and simplistic it's actually a selling point: 'everyone in my team knows yaml' is an argument I kept hearing, but this conveniently ignores the fact that a) yaml is a serialization format, not a business logic description language b) the values in the yamls are a cursed mix of shell, whatever js variant it is c) actions themselves are mixes of scripts that accept completely schemaless values, so good luck figuring things out (at least in the pre-LLM era, anyway).

It's like everyone collectively agreed that assembly is bad, yes, but building CI/CD in assembly is actually good.

woodruffw • today at 2:30 PM

There’s a great deal to be said for having (inter alia) matrices, job dependencies, and cross-platform runners already working and available. Docker won’t immediately provide those things.

adamddev1 • today at 2:56 PM

Forgejo actions with a self-hosted runner works amazing for me.

80fj0348i • today at 2:20 PM

[dead]