Gitlab Runner and executors on Mac

Hello there.

What’s your best practices with using your Mac as a Gitlab Runner? Can you build and sign apps using docker rather than the shell executor? I’m curious if we’re doing something wrong there ourselves or if there’s some better way to do things.



When it comes to having a MacOS GitLab Runner the shell executor is a good choice. The Docker executor won’t work for building iOS or MacOS apps as you cannot run MacOS inside a container .


That’s what I thought :slight_smile: Thank you for your reply, I wasn’t sure if there was any other way around it. :slight_smile:

1 Like

Pardon my ignorance on this, as I’m used to Linux based containers on a CI/CD system; how does the shell executor work? Is it like any other shell environment where you script your Application in order to test it, or is it different?

1 Like

Compared to the docker executor, the shell executor just logins to a shell belonging to the user the executor is started from. So your environment isn’t 100% reproducible like in a docker one, but for macOS we must use the system’s environment, for example to sign, notarize or just build since there’s no macOS docker image.

1 Like