I am a huge fan of gitlab. We are in the process of moving our github org over. We love!! the gitlab ci tools. We use them extensively for mobile cicd. The gitlab ci runner is super easy to get running and coordinates well with a host and vm setup. We run it on a mac min sitting on my desk and have never had any issues with it.
My only nitpick is the regex matching they do to mask protected environment variables from ci logs is not sufficient. It won't match + scrub aws secret keys in the logs, which seems like a pretty glaring problem in a cicd setup.