XcodeStep

open class XcodeStep : BuildStep
fun BuildSteps.xcode(init: XcodeStep.() -> Unit): XcodeStep

An Xcode build step for running Xcode projects.

Example. Adds an Xcode build step with a scheme-based build.

buildType {
    // Other Build Type settings ...
    steps {
        // Other Build Steps ...
        xcode {
            name = "My Xcode step"
            projectPath = "SampleProject.xcodeproj"
            buildType = schemeBased {
                scheme = "SampleProject"
                outputDirectory = default()
            }
        }
} }

Example. Adds an Xcode build step with a scheme-based build with custom working directory, with custom Xcode path, output directory, build actions and additional command line parameters.

buildType {
    // Other Build Type settings ...
    steps {
        // Other Build Steps ...
        xcode {
            name = "My Xcode step"
            workingDir = "project"
            projectPath = "project/SampleProject.xcodeproj"
            xcodePath = "path/to/Xcode"
            buildType = schemeBased {
                scheme = "SampleProject"
                outputDirectory = custom {
                    path = "outputDir"
                }
            }
            buildActions = "clean build"
            runTests = true
            additionalCommandLineParameters = "-quiet"
        }
} }

Example. Adds an Xcode build step with a target-based build.

buildType {
    // Other Build Type settings ...
    steps {
        // Other Build Steps ...
        xcode {
            name = "My Xcode step"
            projectPath = "SampleProject.xcodeproj"
            buildType = targetBased {
                target = "MyTarget"
                configuration = "Debug"
                platform = "macosx"  // ... "iphoneos", "iphonesimulator"
                sdk = "mySDK"
                architecture = "myArchitecture"
            }
            buildActions = "clean build"
            runTests = true
        }
} }

See also

Constructors

Link copied to clipboard
fun XcodeStep(init: XcodeStep.() -> Unit)
Link copied to clipboard
fun XcodeStep()

Types

Link copied to clipboard
sealed class BuildType : CompoundParam<XcodeStep.BuildType>

Functions

Link copied to clipboard
fun booleanParameter(    customName: String? = null,     trueValue: String? = "true",     falseValue: String? = "false"): SingleDelegateProvider<Boolean>
Link copied to clipboard
fun clear()
Link copied to clipboard
fun clearConditions()

Deletes all configured build step conditions

Link copied to clipboard
fun <T : CompoundParam<T>> compoundParameter(customName: String? = null): CompoundDelegateProvider<T>
Link copied to clipboard
fun conditions(init: BuildStepConditions.() -> Unit = {})
Link copied to clipboard
fun <T : Parametrized> copyParamsTo(target: T): T

Copies parameters of this object to the specified target

Link copied to clipboard
open fun create(): BuildStep

Creates an instance of this build step via reflection using a no argument constructor, used during copying. Throws an error if this class doesn't have a default constructor. Subclasses can override it to create an instance without using a default constructor.

Link copied to clipboard
fun doubleParameter(customName: String? = null): SingleDelegateProvider<Double>
Link copied to clipboard
fun <E : Enum<E>> enumParameter(customName: String? = null, mapping: Map<E, String?>? = null): SingleDelegateProvider<E>
Link copied to clipboard
fun findRawParam(paramName: String): Parameter?
Link copied to clipboard
fun hasParam(paramName: String): Boolean
Link copied to clipboard
fun intParameter(customName: String? = null): SingleDelegateProvider<Int>
Link copied to clipboard
fun param(name: String, value: String)

Adds parameter with specified name and value

Link copied to clipboard
fun removeRawParam(paramName: String)
Link copied to clipboard
fun schemeBased(init: XcodeStep.BuildType.SchemeBased.() -> Unit = {}): XcodeStep.BuildType.SchemeBased
Link copied to clipboard
fun stringParameter(customName: String? = null): SingleDelegateProvider<String>
Link copied to clipboard
fun targetBased(init: XcodeStep.BuildType.TargetBased.() -> Unit = {}): XcodeStep.BuildType.TargetBased
Link copied to clipboard
open override fun toString(): String
Link copied to clipboard
open override fun validate(consumer: ErrorConsumer)

Validates this object and reports found errors to the provided consumer

Properties

Link copied to clipboard
var additionalCommandLineParameters: String?

Other command line parameters to be passed to the xcodebuild utility.

Link copied to clipboard
var buildActions: String?

Xcode build action(s). The default actions are clean and build. A space-separated list of the following actions is supported: clean, build, test, archive, installsrc, install; the order of actions will be preserved during execution. It is not recommended changing this field unless you are sure you want to change the number or order of actions. If your project is built under Xcode 5+, setting the runTests option automatically adds the test build action to the list (unless the option is already explicitly specified in the current field).

Link copied to clipboard
var buildType: XcodeStep.BuildType?

Select either a target-based (for project) or scheme-based (for project and workspace) build. Depending on the selection, the settings will vary.

Link copied to clipboard
var conditions: BuildStepConditions

Optional collection of build step execution conditions

Link copied to clipboard
var enabled: Boolean = true

Specifies whether the step is enabled, true by default

Link copied to clipboard
var executionMode: BuildStep.ExecutionMode

Build step execution mode

Link copied to clipboard
var id: String? = null

Optional id of the step. Usually the id is not required, however if a build configuration inherits from a template and wants to override a build step defined there, then both steps should have the same id.

Link copied to clipboard
var name: String

Build step name

Link copied to clipboard
val params: List<Parameter>
Link copied to clipboard
var projectPath: String?

The path to a (.xcodeproj) project file or a (.xcworkspace) workspace file, should be relative to the checkout directory. For Xcode 3 build, only the path to the project file is supported.

Link copied to clipboard
var runTests: Boolean?

Whether to run tests after your project is built.

Link copied to clipboard
var type: String

Build step type

Link copied to clipboard
var workingDir: String?

Build working directory for the executable, specify it if it is different from the checkout directory.

Link copied to clipboard
var xcodePath: String?

The path to Xcode on the agent. The build will be run using this Xcode.