Изначально gitlab-ci делался максимально простым, поэтому он лёгок в изучении, но почти всё - делается чем-то внешним. В частности, очень многие его интегрируют с ansible и аналогами.
github actions чуть интереснее, пример знакомства
GitHub Actions Tutorial - Basic Concepts and CI/CD Pipeline with Docker
Нужно учитывать что actions это не только ci/cd.
А ещё мне оно очень напоминает jenkins pipelines.