-
Notifications
You must be signed in to change notification settings - Fork 0
Commands Reference
- setup
- lane
- xcodegen
- install_tools
- swiftlint
- match_signing
- brew_install
- cache_spm / restore_spm_cache
- save_build_artifacts
- test_with_qlty
- upload_qlty_coverage
- export_coverage
Initialize build environment: checkout, workspace, Ruby/Bundler, SPM cache.
| Parameter | Type | Default | Description |
|---|---|---|---|
checkout |
boolean | true |
Run git checkout |
bundle_install |
boolean | true |
Install Ruby gems |
persist_workspace |
boolean | true |
Persist workspace for downstream jobs |
xcode_project |
string | "" |
Project name for SPM cache key |
with_spm |
boolean | false |
Setup environment for SPM packages |
scripts |
steps | [] |
Additional steps during setup |
steps:
- ios-orb/setup:
checkout: true
bundle_install: true
persist_workspace: trueRun a Fastlane lane.
| Parameter | Type | Default | Description |
|---|---|---|---|
named |
string | — | Lane name to execute |
steps:
- ios-orb/lane:
named: testInstall XcodeGen (if missing) and generate the Xcode project.
| Parameter | Type | Default | Description |
|---|---|---|---|
spec |
string | project.yml |
Path to XcodeGen spec |
quiet |
boolean | true |
Suppress XcodeGen output |
steps:
- ios-orb/xcodegen:
spec: project.yml
quiet: trueInstall Homebrew formulas (only if not already available).
| Parameter | Type | Default | Description |
|---|---|---|---|
tools |
string | xcodegen swiftlint |
Space-separated formula list |
steps:
- ios-orb/install_tools:
tools: xcodegen swiftlint xcresultparserRun SwiftLint with optional strict mode. Installs via Homebrew if missing.
| Parameter | Type | Default | Description |
|---|---|---|---|
strict |
boolean | false |
Treat warnings as errors |
config |
string | "" |
Path to SwiftLint config |
reporter |
string | "" |
Reporter type (xcode, json, etc.) |
steps:
- ios-orb/swiftlint:
strict: true
config: .swiftlint.ymlSync code signing via Fastlane Match. Supports multiple types in a single step.
| Parameter | Type | Default | Description |
|---|---|---|---|
type |
string | appstore |
Comma-separated match types (development, adhoc, appstore, enterprise) |
readonly |
boolean | false |
Run match in read-only mode |
app_identifier |
string | "" |
Bundle ID (inferred from Matchfile if empty) |
steps:
- ios-orb/match_signing:
type: "adhoc,appstore"
readonly: falseInstall a Homebrew formula with optional caching.
| Parameter | Type | Default | Description |
|---|---|---|---|
formula |
string | — | Homebrew formula name |
reinstall |
boolean | false |
Force reinstall even if present |
with_cache |
boolean | true |
Cache the install |
Cache and restore Swift Package Manager dependencies.
| Parameter | Type | Default | Description |
|---|---|---|---|
xcode_project |
string | "" |
Project name for cache key |
key |
string | auto | Custom cache key override |
path |
string | .build |
Path to cache |
Store build logs, diagnostics, and test results as CircleCI artifacts.
| Parameter | Type | Default | Description |
|---|---|---|---|
logs_path |
string | ~/Library/Logs/scan |
Path to scan logs |
build_logs_path |
string | ~/Library/Logs/DiagnosticReports/ |
Path to diagnostic reports |
test_output_path |
string | ./fastlane/test_output |
Path to test output |
Run tests and upload coverage to Qlty Cloud. This is the v3 successor to the
removed test_with_code_climate command. Runs optional pretest steps, restores
the SPM cache, executes a Fastlane lane or custom test steps, exports cobertura
XML from the xcresult bundle, and publishes via qltysh/qlty-orb.
| Parameter | Type | Default | Description |
|---|---|---|---|
lane |
string | "" |
Fastlane lane to run |
pretest_steps |
steps | [] |
Steps to run before tests |
test_steps |
steps | [] |
Steps that execute tests (non-Fastlane) |
xcode_project |
string | "" |
Project name for SPM cache key |
result_bundle_path |
string | TestResults.xcresult |
Path to xcresult bundle |
coverage_file |
string | coverage.xml |
Exported cobertura XML path |
qlty_tag |
string | "" |
Optional Qlty coverage tag (e.g. unit, ui) |
qlty_skip_errors |
boolean | false |
Make Qlty upload errors non-fatal |
steps:
- ios-orb/test_with_qlty:
lane: tests
xcode_project: MyApp
result_bundle_path: TestResults.xcresult
coverage_file: coverage.xml
qlty_tag: unit
qlty_skip_errors: falseUpload a coverage file to Qlty Cloud via the official qltysh/qlty-orb.
Requires the QLTY_COVERAGE_TOKEN environment variable in your CircleCI
context (obtain from qlty.sh project settings).
| Parameter | Type | Default | Description |
|---|---|---|---|
file |
string | coverage.xml |
Path to coverage file |
format |
enum | "" |
Report format: cobertura, lcov, clover, jacoco, simplecov, coverprofile, qlty, or auto-detect |
tag |
string | "" |
Optional coverage report tag |
token |
env_var_name | QLTY_COVERAGE_TOKEN |
Env var holding the Qlty token |
skip_errors |
boolean | false |
Make upload errors non-fatal |
steps:
- ios-orb/upload_qlty_coverage:
file: coverage.xml
format: cobertura
tag: unit
skip_errors: falseExport code coverage to cobertura-compatible XML. Supports both SPM
(llvm-cov) and Xcode (xcresultparser) coverage sources.
| Parameter | Type | Default | Description |
|---|---|---|---|
type |
enum | — | Coverage source: spm or xcode
|
result_bundle |
string | TestResults.xcresult |
Path to xcresult bundle (Xcode only) |
steps:
- ios-orb/export_coverage:
type: xcode
result_bundle: TestResults.xcresultios-orb · Orb Registry · Report an Issue · Maintained by @kevnm67
Getting Started
Reference
Guides
Quick Commands
# Check latest published version
circleci orb info kevnm67/ios-orb | grep Latest
# Pack orb source locally
circleci orb pack src/ > orb.yml
# Validate orb
circleci orb validate orb.yml