Check Archive duration, dependency size, cache hit rate, and temporary disk usage.
What can you run on a dedicated cloud Mac?
Our only available configuration is CDNMac M4: M4, 16GB RAM, and 256GB SSD. Each order gives you a dedicated physical machine, not a virtual machine. Check your queue, storage, remote access, and memory needs before choosing a term, location, or add-on.
Consider how often you use SSH and VNC, how you sync code, background jobs, and workspace size.
Check branch concurrency, queue isolation, signing checks, log collection, and artifact retention.
First check whether model weights, context cache, and datasets fit within 16GB of unified memory.
- Chip
- M4
- Memory
- 16GB
- System drive
- 256GB SSD
- Machine type
- Dedicated physical machine
Register CDNMac M4 as a dedicated build runner
A good fit for teams already using GitHub Actions, GitLab CI, Jenkins, or their own scheduler. Register your cloud Mac as a self-hosted runner: repository events trigger jobs, and CDNMac M4 restores dependencies, runs tests and Xcode Archive, checks signing, and produces build artifacts.
A dedicated physical machine keeps its CPU, memory, storage, and working directory separate from other customers. This suits pipelines that need a fixed Xcode version, a stable cache directory, and a traceable workspace state. It won't resolve dependency conflicts or signing setup issues in your project.
-
01
Receive a repository event
Route jobs from the main branch, release branches, or manual triggers into a controlled queue.
-
02
Restore locked dependencies
Use lockfiles and verifiable caches first to keep the environment consistent.
-
03
Run Archive
Pin Xcode, Scheme, Configuration, and export settings.
-
04
Check and hand off artifacts
Keep essential logs and copy artifacts to storage managed by your team.
Manage triggers, caches, failure cleanup, and artifact retention separately
Automated builds are about more than moving a local command to a remote machine. Make every run reproducible, easy to debug, and clean up after itself—without committing sensitive signing credentials to your repository.
Route each branch to the right queue
Run continuous checks on the main branch, Archive and export release branches, and trigger fix branches as needed. Set concurrency rules for each job type to prevent workspaces from changing the same cache or DerivedData at the same time.
Validate caches against lockfiles
Manage Swift Package Manager, CocoaPods, Flutter, and JavaScript dependency caches separately. Include lockfile hashes, tool versions, and architecture in cache keys; fall back to a clean install when a cache misses.
Keep a timeline that helps reproduce issues
Record job start time, commit ID, Xcode version, failed stage, and exit code. Before uploading, remove tokens, private keys, certificate passwords, and other sensitive data.
Decide who stores artifacts, for how long, and when to delete them
Copy archives, symbol files, and export packages to controlled storage, then remove local temporary files according to your team's policy. Don't rely on the cloud Mac workspace as your only backup.
Use SSH for command-line work and VNC when you need a GUI
SSH works well for pulling code, installing dependencies, running builds, checking logs, and managing background jobs. Use VNC for tasks that need the macOS GUI, Xcode project settings, or visual debugging. Use separate credentials with least-privilege access, and never store long-lived access credentials in your repository.
Sync code through version control, controlled file transfer, or your team's existing workflow. Track processes, working directories, and output locations for long-running jobs so you can check their status after disconnecting. Before your rental ends, export code changes, build logs, archives, and other required artifacts.
Great for scripted workflows, with command history and exit status easy to retain.
Connect when you need a GUI, then disconnect when you're done.
Commit code changes and copy archives and logs to controlled storage.
Export what you need, remove temporary credentials, and check for unsynced changes.
Flutter and React Native still rely on Xcode for iOS builds
Cross-platform frameworks let you share application code, but iOS builds still require macOS, Xcode, native dependencies, and signing. Evaluate the framework and native build layers separately.
Track Dart, CocoaPods, and Xcode separately
Restore Dart dependencies first, then install CocoaPods and native plugins, and finally build and export with Xcode. Keep separate caches for the Flutter SDK, plugin lockfile, Pods, and DerivedData; don't use one cache key for every stage.
- Pin Flutter, Ruby, CocoaPods, and Xcode versions.
- Allow a clean install when the cache misses.
- Identify whether a failure occurred in the framework or native build layer.
Lock JavaScript dependencies alongside the native project
Your Node.js package manager handles JavaScript dependencies; CocoaPods and Xcode handle the native iOS build. Pin the package manager version, dependency lockfile, Pods state, and build settings to avoid differences between local and remote builds.
- Use separate node_modules directories and workspaces for each repository.
- After upgrading native modules, recheck Pods and Xcode settings.
- Store signing credentials securely; never commit them to your repository.
For model compatibility checks and prototype testing
Use CDNMac M4 to check Apple Silicon support in inference frameworks, test model conversion workflows, run small datasets, and validate app integrations. This does not guarantee throughput for arbitrary models, and the machine shouldn't run large-scale production inference until you verify its memory requirements.
The current configuration has 16GB RAM. Account for model weights, runtime overhead, context cache, input data, development tools, and system usage. Model file size alone is rarely enough to tell whether a workload will run reliably.
- Model weights
- Check actual memory use after loading, not just the download size.
- Context cache
- Cache usage can grow as context length increases.
- Runtime and tools
- Leave room for frameworks, conversion tools, IDEs, and the OS.
- Inputs and outputs
- For larger datasets, consider the +2TB SSD and load data in batches.
Start with the base configuration; add only what you need
We don't invent extra machine configurations to cover more use cases. Every workload starts with CDNMac M4, with fixed add-ons available for storage capacity or device-link workflows.
CDNMac M4
Mac mini M4 · 16GB RAM · 256GB SSD
-
01
Lightweight builds Single-repository checks, short queues, standard ArchiveCDNMac M4 base configuration
Start with the 256GB SSD and check that dependencies, caches, and artifacts fit your cleanup workflow.
-
02
Everyday development Long-lived workspaces, multiple projects, frequent GUI useCDNMac M4 + optional +1TB SSD
For development workflows that need more room for repositories, SDKs, dependency caches, and build archives.
-
03
Larger datasets or model experiments Model files, samples, conversion results, and batch outputsCDNMac M4 + optional +2TB SSD
This expands storage, not the 16GB RAM. Check memory requirements separately before ordering.
-
04
Multi-device workflows For workflows that may need high-speed connections between devicesEvaluate Thunderbolt 5 linking
Choose the linking add-on for each device, and first confirm the task topology, data direction, and software support.
| Workload | Base machine | What to consider | Check before ordering |
|---|---|---|---|
| Lightweight iOS builds | CDNMac M4 | Base 256GB SSD | Dependency size, cache cleanup, artifact size per build |
| Everyday remote development | CDNMac M4 | Add +1TB SSD if you need more capacity | Repository count, SDKs, archives, and total workspace size |
| Data or model experiments | CDNMac M4 | Add +2TB SSD if you need more capacity | Whether 16GB RAM can fit the model, cache, and runtime |
| Multi-device workflows | CDNMac M4 | Thunderbolt 5 linking | Device count, connection topology, and toolchain support |
If you need hardware outside the listed options, don't treat the base configuration as a substitute
If your project requires a chip not listed here, more than 16GB of memory, or a different built-in drive configuration, CDNMac M4 should not be presented as meeting that requirement. Share your actual needs, tool versions, data size, and concurrency model with our team for confirmation.
Only M4 is available; other chip configurations aren't listed.
The current configuration has 16GB RAM; storage add-ons don't increase memory.
The base system drive is a 256GB SSD; choose from the fixed storage add-ons to expand capacity.
Assess queueing, job isolation, and multiple orders first; don't assume one machine can run unlimited concurrent jobs.
Choose the next step for your project
Check the available configuration, compare six locations, then follow the guide to connect and verify your environment before ordering.
View plans and add-ons
Check the four rental terms, +1TB SSD, +2TB SSD, and Thunderbolt 5 linking prices for CDNMac M4.
View plansCompare six locations
Compare Singapore, Tokyo, Seoul, Hong Kong, the US East Coast, and the US West Coast.
Compare locationsPrepare for a secure first connection
Use the pre-order checklist to prepare code access, connection methods, your build environment, and an artifact export path.
Read the connection guideConfigure and order
Choose a rental term, location, and add-ons. Check the console for live availability and delivery details.
Configure your orderConfirmed that CDNMac M4 fits your workload?
Choose a rental term, one of six locations, and any add-ons during checkout. If you're unsure about memory, chip, or storage limits, check with our team first.