Xcode@3 - Xcode Build v3 task
Use this task to build an Xcode workspace on macOS.
Inputs
actions
- Actions
string
. Required. Default value: build
.
Specifies a space-delimited list of actions. Valid options are build
, clean
, test
, analyze
, and archive
. For example: build clean
performs a clean build. See the Apple: Building from the command line with Xcode FAQ.
configuration
- Configuration
string
. Default value: $(Configuration)
.
Specifies the Xcode project or workspace configuration to build. When using a variable, specify a value (for example, Release
) on the Variables tab.
sdk
- SDK
string
. Default value: $(SDK)
.
Builds an Xcode project or workspace against the specified SDK. Run xcodebuild -showsdks
to see a valid list of SDKs.
xcWorkspacePath
- Workspace/Project Path
string
. Default value: **/*.xcodeproj/*.xcworkspace
.
Optional. Specifies the relative path from the repo root to the Xcode workspace or project. For example: MyApp/MyApp.xcworkspace
or MyApp/MyApp.xcworkspace/MyApp.xcodeproj
. Leave blank if you intend to use -target flag
under Advanced Arguments.
scheme
- Scheme
string
.
Optional. Specifies the Xcode scheme name. Must be a shared scheme (shared checkbox under Managed Schemes in Xcode). Required if Workspace is specified.
packageApp
- Create App Package
boolean
. Default value: true
.
Specifies whether an IPA is generated as a part of the build. For exporting archives with Xcode 7 and Xcode 8, review additional inputs in the Package Options section.
archivePath
- Archive Path
string
.
Optional. Specifies a directory where created archives are placed.
exportPath
- Export Path
string
. Default value: output/$(SDK)/$(Configuration)
.
Optional. Specifies the destination for the product exported from the archive.
exportOptions
- Export Options
string
. Allowed values: auto
, plist
, specify
. Default value: auto
.
Specifies a way to pass in Export Options when exporting the archive.
exportMethod
- Export Method
string
. Required when exportOptions == specify
. Default value: development
.
Specifies the method Xcode uses to export the archive. For example, app-store
, package
, ad-hoc
, enterprise
, or development
.
exportTeamId
- Team ID
string
. Optional. Use when exportOptions == specify
.
Specifies the Apple Developer Portal 10-digit team ID to use for the export.
exportOptionsPlist
- Export Options Plist
string
. Required when exportOptions == plist
.
Specifies the path to a plist file that configures archive exporting.
exportArgs
- Export Arguments
string
.
Specifies additional command line arguments used to export.
xcode8AutomaticSigning
- Automatic Signing
boolean
. Default value: false
.
Use this input if you have an Xcode 8 or Xcode 9 project configured for Automatic Signing.
teamId
- Team ID
string
. Optional. Use when xcode8AutomaticSigning = true
.
Specifies the 10-digit developer team ID. This is required if you are a member of multiple development teams.
signMethod
- Override Using
string
. Allowed values: file
(File Contents), id
(Identifiers). Default value: file
.
Use this input if the build uses a signing or provisioning method that is different than the default. Choose File Contents
to use a P12 certificate and provisioning profile. Choose Identifiers
to retrieve signing settings from the default keychain and pre-installed profiles. Leave the corresponding fields blank if you do not wish to override the default build settings.
iosSigningIdentity
- Signing Identity
string
. Optional. Use when signMethod = id
.
Specifies the signing identity override that is used to sign the build. Defaults to the Xcode project setting. Unlock Default Keychain may need to be selected.
unlockDefaultKeychain
- Unlock Default Keychain
boolean
. Optional. Use when signMethod = id
. Default value: false
.
Resolves User interaction is not allowed errors by unlocking the default keychain.
defaultKeychainPassword
- Default Keychain Password
string
. Optional. Use when signMethod = id
.
Specifies the password to unlock the default keychain.
provProfileUuid
- Provisioning Profile UUID
string
. Optional. Use when signMethod = id
.
Specifies the UUID of an installed provisioning profile to use for the build. Use separate build tasks with different schemes or targets to specify provisioning profiles by target in a single workspace (iOS, WatchKit, tvOS).
p12
- P12 Certificate File
string
. Optional. Use when signMethod = file
.
Specifies the relative path to a PKCS12 formatted P12 certificate file that contains a signing certificate to be used for the build.
p12pwd
- P12 Password
string
. Optional. Use when signMethod = file
.
Specifies the password to a P12 certificate file. Use a build variable to encrypt.
provProfile
- Provisioning Profile File
string
. Optional. Use when signMethod = file
.
Specifies the relative path to a file containing a provisioning profile override to be used for the build. Use separate build tasks with different schemes or targets to specify provisioning profiles by target in a single workspace (iOS, WatchKit, tvOS).
removeProfile
- Remove Profile After Build
boolean
. Optional. Use when signMethod = file
. Default value: false
.
Removes the contents of the provisioning profile file from the build agent after the build is complete. Only check if you are running one agent per user.
args
- Arguments
string
.
Specifies additional command line arguments used to build. This input is useful if you want to use -target
or -project
instead of specifying a workspace and scheme.
cwd
- Working Directory
string
.
Specifies the working directory for build runs. Defaults to the root of the repository.
outputPattern
- Output Directory
string
. Required. Default value: output/$(SDK)/$(Configuration)
.
Specifies the relative path where build output (binaries) are placed.
xcodeDeveloperDir
- Xcode Developer Path
string
.
Optional. Specifies the path to the Xcode Developer folder if it's not the system default. For use when multiple versions of Xcode are installed on a system. For example: /Applications/Xcode 7.app/Contents/Developer
.
useXcpretty
- Use xcpretty
boolean
. Default value: false
.
Formats xcodebuild
output and generates a JUnit test results report. Must be installed on agent hosts. Learn more about xcpretty.
publishJUnitResults
- Publish to VSTS/TFS
boolean
. Default value: false
.
JUnit test results that were produced using xctool
are published to VSTS/TFS.
Task control options
All tasks have control options in addition to their task inputs. For more information, see Control options and common task properties.
Output variables
None.
Requirements
Requirement | Description |
---|---|
Pipeline types | YAML, Classic build |
Runs on | All |
Demands | Self-hosted agents must have capabilities that match the following demands to run jobs that use this task: xcode |
Capabilities | This task does not satisfy any demands for subsequent tasks in the job. |
Command restrictions | Any |
Settable variables | Any |
Agent version | All supported agent versions. |
Task category | Build |