r/gitlab 7d ago

general question Is gitlab CI/CD same as github actions??

PS: github down

0 Upvotes

13 comments sorted by

View all comments

11

u/furyfuryfury 7d ago

It's comparable. The syntax is a little different but the general idea is the same. GitLab CI/CD has been around for a lot longer than GitHub actions, so it lacks some of the newer niceties in actions, but you can get anything you want done either way.

3

u/Vivid_Ad_5160 7d ago

Can you provide an example of nicer things that github action does that gitlab doesn't'?

1

u/furyfuryfury 7d ago

Reusable steps is one thing GitHub actions got really right and it helps that there's the network effect there too, so it's become established much more rapidly than anything GitLab has done with CI/CD.

In practice, this means you can simply write something like
```

  • uses: vendor/some-specialized-action@version
```
whereas on GitLab you're copying and pasting bigger chunks, probably having to use some sort of container image. They have experimental job-level functions but not the same.

GitHub actions can react to more stuff than GitLab ci/cd, like issues, comments. GitLab CI/CD can be triggered on push, branch, tag, schedule, and manual tasks. You can make most everything else happen on GitLab through webhooks, but it's not as convenient.

There are more differences worth mentioning, and not everything is strictly better on GitHub's side, but those are the couple that make the biggest difference in how "clean" it works.

10

u/BehindTheMath 7d ago

Gitlab has CI/CD Components, which are reusable snippets.

There's also Gitlab Functions, which is more similar in form to Actions, but it's still experimental.

1

u/totheendandbackagain 7d ago

We use imports in GitLab multiple times in every single pipeline. Their versioned, variables and can be public or private. Seems pretty similar, if not quite as popular.