Current release: v2.0.1.
Set Up a Shell Executor
Shell executors are useful when you need permanent executors that you can reuse across builds. For the latest information about how to work with a Shell executor in Orka, see Using a GitLab Shell Executor to Run CI/CD Pipelines in Orka.Set Up a Custom Executor
Custom executors are useful when you need to work with ephemeral executors and automate their management. With a custom executor, an executor is created before the pipeline is run and destroyed after the pipeline is complete. For the latest information about how to work with a custom executor in Orka, see Using a GitLab Custom Executor to Run CI/CD Pipelines in Orka.Cache restoration and artifact downloading require the
gitlab-runner binary to be present inside the Orka VM. If your pipeline logs show “Missing gitlab-runner. Extracting cache is disabled.” or “Missing gitlab-runner. Artifacts downloading is disabled.”, install the gitlab-runner binary in your base image before creating your VM config.Run concurrent builds
By default, the config template setsconcurrent = 1, which means only one build runs at a time. To run multiple builds simultaneously, update two settings in your config.toml:
concurrent(global): the total number of jobs that can run at the same time across all runners.limit(per runner, under[[runners]]): the maximum number of jobs this specific runner handles concurrently.
Custom executor environment variables
The custom executor reads its configuration from environment variables, set either as GitLab CI/CD variables (Settings → CI/CD → Variables, for anything the runner scripts need during job execution) or passed to the runner container at startup (for anything needed at the container level, likeORKA_ENDPOINT). Mask ORKA_TOKEN and ORKA_SSH_KEY_FILE in GitLab since they’re sensitive.
Beyond a single executor
- Image caching. If cold starts on a new base image are slow, see Image Caching to pre-cache it on specific nodes ahead of time.
- Burst capacity. If a fixed pool isn’t enough during peak build periods, Orka Burst adds on-demand elastic capacity without a long-term hardware commitment.
Troubleshooting
If your build script itself fails, that’s a script problem, not an integration problem. The custom executor distinguishes build failures (your script’s exit code) from system failures (infrastructure, always exit code 1). For anything not covered here, check the runner logs (
gitlab-runner --debug run) before contacting support.
Support
Open a ticket in the MacStadium Portal and include yourgitlab-runner --debug run output.
