Find answers by task

Cloud Mac Help Center: Troubleshoot from connection to builds

First identify whether the issue involves setup, connection, tools, pipelines, storage, or rental management. Then check node details, credentials, ports, disk space, and system tasks in order. Each path lists what to check, what to do, and what to include in a support ticket.

6 task categories
Setup, connection, tools, CI/CD, storage, rental
5-step diagnosis
Narrow down from node scope to a specific task
2 support options
Console tickets and support email
Diagnostic board

Record facts before changing settings

Check in order
  1. 01
    Verify order and node Record the data center, hostname, and order status
  2. 02
    Confirm credential status Check keys, expiration, and the latest rotation
  3. 03
    Verify the network path Distinguish DNS, port, and local network issues
  4. 04
    Check available resources Check disk space, memory, and background tasks
  5. 05
    Preserve redacted evidence Collect the time, commands, exit codes, and log excerpts
Recommended record Node · Time · Command · Exit code
Task entry points

Go straight to the path for your current task

You do not need to read every document from start to finish. Choose the closest task first, then follow the checks on its card. For order status, expiration, and credential details, use the current console view as the source of truth.

Initial setup

From order confirmation to first acceptance check

Verify the selected model, data center, and rental term, then wait for automatic provisioning and credential issuance. On first access, record node details and verify the command line, graphical interface, and Xcode environment separately.

  • Confirm the order status and expiration time
  • Verify the host fingerprint before starting the first session
  • Save acceptance results, but never save credentials in plain text
Open console
Remote access

Start an SSH or VNC session

SSH is suited to command-line work, automation, and tunneling; VNC is suited to tasks requiring the macOS graphical interface. Verify the node and credentials first, then check your local network and port.

  • Always verify the host fingerprint on first connection
  • When disconnected, first distinguish your local network from the node session
  • Do not retain sensitive connection details on shared devices
View connection guide
Developer tools

Verify Xcode and the build environment

Use commands to record the Xcode version, active developer directory, and toolchain status. Save the current output before changing versions so project issues are not confused with environment changes.

  • Record xcodebuild -version Output
  • Confirm the disks containing the project, dependencies, and cache
  • Save the complete error summary before cleanup
View build troubleshooting
CI/CD

Verify the self-hosted runner

Confirm that the runner is online, labels match, and the working directory has the required permissions before running a minimal test task. Do not rerun the entire pipeline first, or the failing stage may be harder to identify.

  • Check runner labels and task conditions
  • Verify permissions for the working and cache directories
  • Preserve the failed task's exit code and redacted logs
View CI/CD troubleshooting
Storage management

Handle space, cache, and expansion needs

First distinguish project files, dependency caches, build artifacts, and logs by usage. If space keeps growing, choose +1TB SSD, +2TB SSD, or adjust the cleanup strategy based on actual growth.

  • Check free space and the largest directories
  • Distinguish rebuildable caches from business data
  • Back up important data before expanding storage
View resource management
Rental management

Review renewal, expiration, and offboarding

The order expiration time shown in the console is the operational reference. Check the status again after renewal. When ending a rental, move out code, keys, certificates, logs, and business data in advance.

  • Record the current expiration time and required term
  • Recheck the order status after renewal
  • Back up, revoke keys, and clean up before offboarding
View rental periods
Quick diagnostics

Select the check that is currently failing

Check from the outside in. Select the first failed item and the board will show the highest-priority path. If the previous item is unconfirmed, do not skip ahead and change system settings.

Prepare for diagnosis
  • Record when the issue occurred and the node's data center
  • Preserve original commands, exit codes, and redacted logs
  • Change one variable at a time and record the result
Check order 01–05
Resolution path Start with item 01

First verify the order status, target model, and data center in the console. Once the records match, continue with credentials, ports, disk space, and system tasks.

Record: Node / Time / Symptom / Recent change
Build issues

Lock down the toolchain before investigating the project

Build failures are rarely caused by a single variable. Record the tool versions and execution environment first, then investigate signing, caches, automation logs, and runner conditions to avoid overwriting the evidence with cleanup.

01

Confirm the Xcode version

Run the version query and record the active developer directory. If the project requires a different version, confirm compatibility before switching.

xcodebuild -version
xcode-select -p
swift --version
Acceptance: version, path, and project requirements match
02

Check the signing environment

Confirm that the build task can read the required certificates, provisioning profiles, and environment variables. Keep only names, times, and error summaries in tickets and logs; never submit valid keys.

security find-identity -v -p codesigning
env | sort
Acceptance: the target signing items are visible and permissions are correct
03

Clean DerivedData selectively

Save the first failed output, then clean only directories related to the target project. Do not start with a full-disk cleanup, which increases the next build time and removes comparison data.

du -sh ~/Library/Developer/Xcode/DerivedData
df -h
Acceptance: the error is reproducible or disappears after space is freed
04

Locate the failed Fastlane step

Break the logs down across lane, action, and underlying command. Record the first real error, exit code, and working directory instead of capturing only the final summary line.

bundle exec fastlane lane_name --verbose
echo $?
Acceptance: you can identify the failed action and first error
05

Check runner labels and permissions

Confirm that the self-hosted runner is online, task and runner labels match exactly, and the execution user has the correct permissions for the working, cache, and build directories.

whoami
pwd
ls -ld .
df -h
Acceptance: a minimal test task can be picked up and completed
Rental and resources

Manage expiration, storage growth, and multi-device needs separately

Renewal solves usage duration, storage expansion solves capacity, and Thunderbolt 5 linking supports specific multi-device workflows. These are independent options; record the current state and target result for each before taking action.

Renewal and expiration

View the current expiration time in the console order record, choose a renewal term, and complete checkout. Reopen the order afterward to verify its status and new expiration time; do not use a local calendar reminder instead of the order record.

Where to manage
Console order and rental records
Before action
Record the current expiration time and required term
After action
Verify the order status and updated expiration time

Storage expansion

Use directory usage and growth rate to assess the need first. Clean rebuildable caches before anything else; back up code, signing materials, build artifacts, and business data before deciding whether to add capacity.

+1TB SSD
Growing dependencies, caches, and build artifacts
+2TB SSD
Multiple projects, large assets, or longer retention
Where to manage
Available add-ons in the console order

Thunderbolt 5 linking

For workflows that clearly require multiple devices to work together. Before ordering, record the device count, connection target, data path, and acceptance method; each linked device is priced separately.

What to verify
Each physical node in the linked setup
Acceptance criteria
Target devices are recognized, the link is stable, and tasks run successfully
Where to manage
Select the corresponding add-on when configuring the order
Four rental-term prices for resource add-ons
Add-on Daily Weekly Monthly Quarterly
+1TB SSD $2.9 $7.9 $14.6 $39.7
+2TB SSD $5.8 $15.8 $29.2 $79.4
Thunderbolt 5 linking (per device) $1.1 $2.9 $5.3 $14.4
Term glossary

Eight common terms, explained by operational boundaries

Terms help teams align on operational scope. The definitions below focus on real-world use and distinguish product names, connection protocols, and automation roles.

Cloud Mac
A Mac resource accessed remotely over a network. ArmCLI Cloud Mac provides remotely accessible Apple Silicon physical nodes for development, builds, testing, and experiments.
Physical node
The actual hardware device delivered to you. Node details include the data center, hostname, connection information, and order status. Confirm the target before troubleshooting.
Dedicated
Each order corresponds to one dedicated physical Mac, and tenants do not share an operating-system instance. You remain responsible for your processes, permissions, keys, and business data.
Non-virtualized
Compute tasks run directly on the rented physical node rather than on a virtualized operating-system instance shared with other tenants.
VNC
A connection method for viewing and controlling the macOS graphical interface remotely. It suits tasks requiring windows, simulators, or graphical tools; connection details are available in the console order.
SSH
A protocol for command-line access, file transfer, port forwarding, and automation. Verify the host fingerprint on first connection and prefer key-based authentication.
self-hosted runner
A pipeline executor registered and operated by your team on a Cloud Mac. Whether it can accept a task depends on its online status, label conditions, permissions, and working-directory configuration.
Build cache
Intermediate data retained to reduce repeated downloads and compilation. Caches improve repeated-task performance but require capacity planning, invalidation rules, and regular checks.
Credentials and security

Once access is restored, close the credential loop

Restoring access does not end the investigation. Check for unusual sessions, rotate potentially exposed keys, remove temporary files, and confirm that data has been moved out and permissions revoked before offboarding.

View reliability and security notes
  1. 01 Rotate keys When personnel change, a device is lost, credentials are sent incorrectly, or unusual login activity appears, revoke the old keys and issue new ones.
  2. 02 Tighten permissions Give build tasks only the directory, command, and environment-variable access they need. Do not use long-lived privileged credentials as a substitute for configuration.
  3. 03 End unusual sessions Check the current user, active terminals, and background processes. End unexplained sessions and record the time and related task.
  4. 04 Redact logs Keep commands, times, exit codes, and error context; remove access tokens, private keys, certificate contents, business data, and internal addresses.
  5. 05 Complete offboarding cleanup Move out code and business data, revoke remote keys, delete temporary caches and sensitive files, and verify the rental status in the console.
Escalate to support

Submit a reproducible, verifiable issue in three steps

The more complete the information, the easier it is to avoid repeated checks. Complete the minimum checks in the task guide first, then submit the node, time, commands, and redacted logs.

  1. 01

    Run the relevant task guide first

    Confirm whether the issue concerns connection, the toolchain, CI/CD, storage, or rental management. Record each completed step and result, and do not change multiple variables in the same test.

  2. 02

    Prepare a minimal issue package

    Include the node and data center, time of occurrence, command, exit code, first error, recent changes, and steps already tried. Redact the logs first.

  3. 03

    Submit a console ticket

    If you have an active order, use a console ticket so the issue is linked to the node and service record. For pre-purchase questions or if you cannot access the console, contact the service team.

How to describe an urgent issue

Put “unable to connect,” “build blocked,” or “order status issue” in the subject. Include the node, start time, affected task, and redacted evidence in the body. Never send valid credentials through public channels.

Get started

Choose your workload size, then configure a dedicated physical Mac

Three model tiers are available across five data centers: Singapore, Japan (Tokyo), South Korea (Seoul), Hong Kong, and the US East. Availability is based on the console's real-time status.

3 model tiers 5 data centers Daily, weekly, monthly, or quarterly rentals