This looks great! I hate it when I have to commit and push a new change for a simple bug.
That being said, how does this differ from something like act [1] (besides the fact this is for Gitlab)?
Heh, yeah, besides being a different programming language, how is node different from Java? :-D
I, too, would value "the one CI yaml to rule them all" but given how much faster GitLab is moving than GitHub, there's almost no prayer of them trying to have some kind of common behavior.
I actually had the best experience using circleci's local runner (back when we were using it for CI) as far as "run binary, perform build" goes. I have yet to see gitlab-runner successfully execute a local build :-(