A Buildkite plugin that provisions ephemeral macOS virtual machines on GetMac Cloud for your CI/CD jobs.
Each Buildkite job gets a fresh macOS VM that is automatically created before the build and deleted after it completes.
curljqssh
steps:
- command: "make test"
plugins:
- getmac-io/getmac#main:
project-id: "2f8aa35f-b1d7-4425-bb26-889dfe92cb53"Your GetMac Cloud project ID.
The macOS image to use for the VM.
The machine type for the VM.
The region to provision the VM in.
Path to the SSH private key used to connect to the VM.
The GetMac Cloud API URL.
Enable debug logging.
Your GetMac Cloud API key. Set this as a Buildkite pipeline environment variable or agent environment hook for security — do not put it in your pipeline YAML.
- pre-command hook: Creates a new macOS VM via the GetMac API and waits for it to boot.
- command hook: Connects to the VM via SSH and executes the build command.
- pre-exit hook: Deletes the VM to clean up resources.
steps:
- label: ":mac: Build & Test"
command: "swift test"
plugins:
- getmac-io/getmac#main:
project-id: "2f8aa35f-b1d7-4425-bb26-889dfe92cb53"
image: "macos-tahoe"
machine-type: "mac-m4-c4-m8"
region: "eu-central-ltu-1"MIT