I had a copy of this repo at my old company's GitLab server. While on Github, it is using CircleCI, but the Gitlab files have been left-in for a reference. Technically, this repo can be dropped in at gitlab.com and it would work, granted the runner tags are modified.
If I recall correctly, it was optimized to be the de-facto standard on how to setup the CI pipeline architecture.
https://github.com/muratkeremozcan/angular-playground