Docs Operation reference apple operations
apple operations#
10 operations. Generated from assets/operations.json; all areas.
On this page (10)
apple.devices#
Apple devices on the Mac
Read Simulator and connected physical-device inventories using Xcode on a configured SSH Mac.
Annotations: read-only, idempotent, open world.
| Argument | Type | Required | Default | Details |
|---|---|---|---|---|
remote | string | yes | non-empty |
tomaccoctl call apple.devices '{"remote":"<remote>"}'
apple.project#
Read Xcode project
Read targets, schemes and configurations from an Xcode project on a configured SSH Mac.
Annotations: read-only, idempotent, open world.
| Argument | Type | Required | Default | Details |
|---|---|---|---|---|
remote | string | yes | non-empty | |
project | string | yes |
tomaccoctl call apple.project '{"remote":"<remote>","project":"<project>"}'
apple.build#
Build native iOS app
Synchronize an optional local project, then build the selected Xcode scheme on the Mac.
Annotations: writes, not idempotent, open world.
| Argument | Type | Required | Default | Details |
|---|---|---|---|---|
remote | string | yes | non-empty | |
path | string | Optional local project to sync before execution | ||
project | string | yes | ||
scheme | string | yes | non-empty | |
configuration | string | "debug" | one of debug, release | |
destination | string | yes | ||
team_id | string | |||
allow_provisioning_updates | boolean | false | ||
timeout | integer | 3600 | 30 to 86400 |
tomaccoctl call apple.build '{"remote":"<remote>","project":"<project>","scheme":"<scheme>","destination":"<destination>"}'
apple.test#
Run XCTest / XCUITest
Run native XCTest/XCUITest and fetch the result bundle even when tests fail.
Annotations: writes, not idempotent, open world.
| Argument | Type | Required | Default | Details |
|---|---|---|---|---|
remote | string | yes | non-empty | |
path | string | Optional local project to sync before execution | ||
project | string | yes | ||
scheme | string | yes | non-empty | |
configuration | string | "debug" | one of debug, release | |
destination | string | yes | ||
team_id | string | |||
allow_provisioning_updates | boolean | false | ||
timeout | integer | 3600 | 30 to 86400 | |
only_testing | array of string | up to 100 items |
tomaccoctl call apple.test '{"remote":"<remote>","project":"<project>","scheme":"<scheme>","destination":"<destination>"}'
apple.archive#
Create iOS archive
Archive a native Xcode application and return the exact remote archive path.
Annotations: writes, not idempotent, open world.
| Argument | Type | Required | Default | Details |
|---|---|---|---|---|
remote | string | yes | non-empty | |
path | string | Optional local project to sync before execution | ||
project | string | yes | ||
scheme | string | yes | non-empty | |
configuration | string | "release" | one of debug, release | |
destination | string | |||
team_id | string | |||
allow_provisioning_updates | boolean | false | ||
timeout | integer | 3600 | 30 to 86400 |
tomaccoctl call apple.archive '{"remote":"<remote>","project":"<project>","scheme":"<scheme>"}'
apple.export#
Export and fetch IPA
Export an existing xcarchive with a supplied ExportOptions.plist and download resulting IPAs.
Annotations: writes, not idempotent, open world.
| Argument | Type | Required | Default | Details |
|---|---|---|---|---|
remote | string | yes | non-empty | |
archive | string | yes | ||
export_options | string | yes | ||
allow_provisioning_updates | boolean | false | ||
timeout | integer | 3600 | 30 to 86400 |
tomaccoctl call apple.export '{"remote":"<remote>","archive":"<archive>","export_options":"<export_options>"}'
apple.simulator#
Control Apple Simulator
Boot, shut down, install, launch, terminate, open a URL or capture an actual Apple Simulator on the Mac.
Annotations: destructive, not idempotent, open world.
| Argument | Type | Required | Default | Details |
|---|---|---|---|---|
remote | string | yes | non-empty | |
device | string | yes | ||
action | string | yes | one of boot, shutdown, install, launch, terminate, openurl, screenshot | |
app | string | |||
bundle_id | string | |||
url | string |
tomaccoctl call apple.simulator '{"remote":"<remote>","device":"<device>","action":"boot"}'
apple.device#
Control iPhone on the Mac
Install or launch a native app or terminate a process on a physical iPhone using devicectl.
Annotations: destructive, not idempotent, open world.
| Argument | Type | Required | Default | Details |
|---|---|---|---|---|
remote | string | yes | non-empty | |
device | string | yes | ||
action | string | yes | one of install, launch, terminate | |
app | string | |||
bundle_id | string | |||
pid | integer | 1 to 2147483647 |
tomaccoctl call apple.device '{"remote":"<remote>","device":"<device>","action":"install"}'
apple.profile#
Instruments recording
Record an Instruments template against a process using Xcode and download the trace plus its table of contents.
Annotations: writes, not idempotent, open world.
| Argument | Type | Required | Default | Details |
|---|---|---|---|---|
remote | string | yes | non-empty | |
device | string | yes | ||
process | string | yes | non-empty | |
template | string | "Time Profiler" | ||
seconds | integer | 10 | 1 to 600 |
tomaccoctl call apple.profile '{"remote":"<remote>","device":"<device>","process":"<process>"}'
apple.store#
Upload App Store build
Validate or upload an IPA with altool and an App Store Connect API key already present on the Mac.
Annotations: writes, not idempotent, open world.
| Argument | Type | Required | Default | Details |
|---|---|---|---|---|
remote | string | yes | non-empty | |
ipa | string | yes | ||
action | string | "validate" | one of validate, upload | |
key_id | string | yes | ||
issuer | string | yes | ||
key_directory | string | yes |
tomaccoctl call apple.store '{"remote":"<remote>","ipa":"<ipa>","key_id":"<key_id>","issuer":"<issuer>","key_directory":"<key_directory>"}'