Hacker News new | ask | show | jobs
by chainwax 1189 days ago
Unless Actions has gotten a lot more fleshed out since I last used it, I don't think it's as robust as Gitlab CI.
4 comments

- Github Action's design is much better, just look at [1] for example, there's a lot of low-hanging fruit in Gitlab that's not done for some reason

- I've had tons of issues with their kubernetes runners, hard to debug spurious system failures

- They still don't display the last N bytes of the logs when logs get long, just the first N bytes, which is entirely useless when a build fails

- It's awfully slow to navigate through pipelines, in particular child pipelines

- The `stages` things is just useless noise, I just wanna specify dependencies please, I don't want to be forced to also put each job in a stage, it's weird.

- You can't expose a secret only to a single job step; they don't really have finer granularity for job steps like Github Actions has -- they just generate a script.sh that's executed directly.

- Github has many more reusable actions from the community, I don't think Gitlab has that at all? At least not in a convenient way.

[1] https://gitlab.com/gitlab-org/gitlab/-/issues/395964

> Github has many more reusable actions from the community, I don't think Gitlab has that at all? At least not in a convenient way.

This is the big one.

Github’s ability and dominance in the social space means they have the most active actions ecosystems.

They made actions easier to import share and built marketplaces and now gobs of developers build value into it just for clout (and because they enjoy software of course).

If you think about it carefully, it’s actually a security nightmare. You have no idea what a random Github action you “uses:”d is doing, but in practice 90%+ of the time it doesn’t matter, you get good functionality and save time for free.

YES! We are getting awfully tempted to move at least my AI team to Github. We don't want to dedicate someone to figure out CI/CD/MLops pipelines, which would mostly amount to translating existing, published, official github action pipelines to something that can work on Gitlab. Our devops teams can help, but when in our case we need a pretty domain specific pipeline setup. Most of the pipeline related docs for Azure ML, for example, is based around very extensive github actions templates. It would take minutes to just deploy it there.

I mean in this particular case, it's unfair since microsoft would obviously favor github. But it's not like there's a marketplace where a community made version could be used as a replacement...

> The `stages` things is just useless noise, I just wanna specify dependencies please, I don't want to be forced to also put each job in a stage, it's weird.

You don't have to. GitLab supports dependencies. Using the `needs:` keyword.

It was released in August of 2019.

https://about.gitlab.com/releases/2019/08/22/gitlab-12-2-rel...

You still need both `needs: ...` and `stage: ...`

> In GitLab 14.0 and older, you can only refer to jobs in earlier stages.

> In GitLab 14.1 and later you can refer to jobs in the same stage as the job you are configuring.

Why bother with stages at all?

Oh my god their kubernetes runners are a nightmare sometimes. Even the configuration is arcane and the parameters can overlap, or not. It's crazy.
> The `stages` things is just useless noise, I just wanna specify dependencies please, I don't want to be forced to also put each job in a stage, it's weird.

I think there a few things like this in GitLab (like the ability to run pipelines against both commits and pull requests) - GitLab give you a lot of flexibility... but so far it's all just been extra bother to deal with.

I used to think this, but after having gotten used to Github Actions I’m moving everything over.

Ultimately I constantly felt like everything was half baked when using Gitlab. I still kind of feel that way with Github, but to a much lesser extend.

More importantly, they allow me to pay my $21/month monthly which means they get my business instead of ‘only pay per year’ Gitlab.

GitHub actions are great.

Gitlab CI is a bunch of weird hard to understand bolt on conf, undergirded by a defunct docker-machine project

I tried debugging some problems I was having with a runners. Turns out the default Ubuntu AMI was like 6 years old. Does anyone use this thing?

I disagree. Actions is really nice and I don’t have to set up and debug runners. In GitHub, I can have dedicated runners if I want, but99% of the time, I just use vanilla Ubuntu runners.

My fear though is that GitHub will Jack up their prices once I’m running everything. Right now they give 50k minutes per month, but that could change at any point. GitHub enterprise started out at $8/month and now it’s $20+.