02 / AUTOMATE
A dedicated runner
for macOS builds
Register a dedicated physical node as a GitLab or GitHub self-hosted runner to bring commits, tests, archives, and artifact delivery into one pipeline. Nodes run year-round, 365 days a year; your team configures job scheduling, process supervision, and build cleanup for each project.
With 24GB of unified memory and a 512GB SSD, Shell M4 Plus gives dependency resolution, builds, and tests room to run while keeping repositories, dependency caches, and build artifacts on hand. Start with one concurrent job. Monitor CPU, memory pressure, and disk usage before increasing concurrency—logical concurrency doesn’t automatically translate to higher throughput.
- Run CI under a dedicated macOS user rather than sharing a working directory with interactive desktop use.
- Label runners with macOS, chip architecture, and Xcode version to keep jobs on the right runner.
- For jobs that need a GUI session or signing keychain, verify permissions in the same user session first.
- Only allow trusted repositories to run on a runner that holds release credentials. Isolate code from external contributors.