Allow to use different runners on the same gitlab yml
Description
I am building a react native app, which compiles for both ios and android. The runners that needs to build the ios package are installed on a osx based computer, while that is not needed for android, that build process needs a different environment. In order to optimize computation time, I would like to build the android part of the build under a linux based container and another part of the build on a different runner. The benefit is saving resources on your infrastructure by wisdomly choose which runner should take the job.
Proposal
In my opinion it can be though in two different ways. One is configuring that in the job configuration on the gitlab-ci.yml with some tags to match runners. The other would be configuring runners to projects in the admin area, with some constraints to filter jobs via tags or some other field. Or maybe combining both.
Links to related issues and merge requests / references
I searched in the issue database but I couldn't find something similar.