Xcodebuild Action
This action runs xcodebuild with the given options.
Note that this action needs to run on macOS. All other platforms will fail!
Inputs
See action.yml for an overview of all inputs.
For more information about the various inputs, also see man xcodebuild.
Notes:
- If you are missing an input, you can pass them in the
build-settingsinput. These will be passed along toxcodebuildas is. - If an enum input validation fails because you use a value not yet known to this action, set
disable-enum-validationtotrue.
Outputs
unprocessed-command
The unprocessed command from which the executed command was resolved. E.g. paths are not resolved in this one.
executed-command
The command that was executed by this action. This will also be printed to the action output.
Example Usage
Example using a Swift Package
Note: If you have multiple products in your package, Xcode will auto-generate a my-tool-Package scheme, where my-tool is the name of your package. If you only have one product, or wish to only build a specific product, you can use the product name as scheme directly.
with:
spm-package: './'
scheme: my-tool-Package
destination: platform=macOS
action: test
Example using an Xcode project (xcodeproj)
This will run tests configured with the MyApp scheme inside a MyApp Xcode project.
with:
project: MyApp.xcodeproj
scheme: MyApp
destination: platform=macOS
action: test
Example using an Xcode workspace (xcworkspace)
This will run tests configured with the MyApp scheme inside a MyApp Xcode workspace.
Note for CocoaPods: Restoring the CocoaPods dependencies has to be done before running this action.
with:
workspace: MyApp.xcworkspace
scheme: MyApp
destination: platform=macOS
action: test