Xcode@2 - Xcode Build v2 タスク

このタスクを使用して、macOS で Xcode ワークスペースを構築します。

構文

# Xcode Build v2
# Build an Xcode workspace on Mac OS.
- task: Xcode@2
  inputs:
    actions: 'build' # string. Required. Actions. Default: build.
    #configuration: '$(Configuration)' # string. Configuration. Default: $(Configuration).
    #sdk: '$(SDK)' # string. SDK. Default: $(SDK).
    #xcWorkspacePath: '**/*.xcodeproj/*.xcworkspace' # string. Workspace/Project Path. Default: **/*.xcodeproj/*.xcworkspace.
    #scheme: # string. Scheme. 
    #packageApp: true # boolean. Create App Package. Default: true.
  # Package Options
    packageTool: 'xcodebuild' # 'xcrun' | 'xcodebuild'. Required. Create Package (IPA) using. Default: xcodebuild.
    #archivePath: # string. Optional. Use when packageTool == xcodebuild. Archive Path. 
    #exportPath: 'output/$(SDK)/$(Configuration)' # string. Optional. Use when packageTool == xcodebuild. Export Path. Default: output/$(SDK)/$(Configuration).
    #exportOptions: 'auto' # 'auto' | 'plist' | 'specify'. Optional. Use when packageTool == xcodebuild. Export Options. Default: auto.
    #exportMethod: 'development' # string. Required when exportOptions == specify. Export Method. Default: development.
    #exportTeamId: # string. Optional. Use when exportOptions == specify. Team ID. 
    #exportOptionsPlist: # string. Required when exportOptions == plist. Export Options Plist. 
  # Signing & Provisioning
    #xcode8AutomaticSigning: false # boolean. Automatic Signing. Default: false.
    #teamId: # string. Optional. Use when xcode8AutomaticSigning = true. Team ID. 
    #signMethod: 'file' # 'file' | 'id'. Override Using. Default: file.
    #iosSigningIdentity: # string. Optional. Use when signMethod = id. Signing Identity. 
    #unlockDefaultKeychain: false # boolean. Optional. Use when signMethod = id. Unlock Default Keychain. Default: false.
    #defaultKeychainPassword: # string. Optional. Use when signMethod = id. Default Keychain Password. 
    #provProfileUuid: # string. Optional. Use when signMethod = id. Provisioning Profile UUID. 
    #p12: # string. Optional. Use when signMethod = file. P12 Certificate File. 
    #p12pwd: # string. Optional. Use when signMethod = file. P12 Password. 
    #provProfile: # string. Optional. Use when signMethod = file. Provisioning Profile File. 
    #removeProfile: false # boolean. Optional. Use when signMethod = file. Remove Profile After Build. Default: false.
  # Advanced
    #args: # string. Arguments. 
    #cwd: # string. Working Directory. 
    outputPattern: 'output/$(SDK)/$(Configuration)' # string. Required. Output Directory. Default: output/$(SDK)/$(Configuration).
    #xcodeDeveloperDir: # string. Xcode Developer Path. 
    #useXcpretty: false # boolean. Use xcpretty. Default: false.
    #publishJUnitResults: false # boolean. Publish to VSTS/TFS. Default: false.
  # xctool (deprecated)
    #useXctool: # boolean. Use xctool. 
    #xctoolReporter: # string. xctool Test Reporter Format.

入力

actions - アクション
string. 必須です。 既定値: build

アクションのスペース区切りのリストを指定します。 有効なオプションは buildcleantestanalyzearchive です。 たとえば、 build clean はクリーンビルドを実行します。 「Apple: Building from the command line with Xcode FAQ」を参照してください。


configuration - 構成
string. 既定値: $(Configuration)

ビルドする Xcode プロジェクトまたはワークスペースの構成を指定します。 変数を使用する場合は、[変数] タブで値 (例: Release) を指定します。


sdk - Sdk
string. 既定値: $(SDK)

指定した SDK に対して Xcode プロジェクトまたはワークスペースをビルドします。 を実行 xcodebuild -showsdks して、SDK の有効な一覧を表示します。


xcWorkspacePath - ワークスペース/プロジェクト パス
string. 既定値: **/*.xcodeproj/*.xcworkspace

省略可能。 リポジトリ ルートから Xcode ワークスペースまたはプロジェクトへの相対パスを指定します。 たとえば、MyApp/MyApp.xcworkspaceMyApp/MyApp.xcworkspace/MyApp.xcodeproj などです。
[高度な引数] で を使用-target flagする場合は、空白のままにします。


scheme - スキーム
string.

省略可能。 Xcode スキーム名を指定します。 共有スキームである必要があります (Xcode の [マネージド スキーム ] の下の [共有] チェックボックス)。 Workspace が指定されている場合は必須。


packageApp - アプリ パッケージの作成
boolean. 既定値: true

IPA をビルドの一部として生成するかどうかを指定します。 Xcode 7 と Xcode 8 を使用してアーカイブをエクスポートする場合は、「 パッケージ オプション」 セクションの追加の入力を確認してください。


packageTool - を使用してパッケージ (IPA) を作成する
string. 必須です。 使用できる値: xcrun (xcrun (Apple では非推奨)) xcodebuild 、(xcodebuild アーカイブとエクスポート)。 既定値: xcodebuild

IPA の生成に使用するツールを指定します。


archivePath - アーカイブ パス
string. 省略可能。 の場合は packageTool == xcodebuildを使用します。

作成されたアーカイブが配置されるディレクトリを指定します。


exportPath - エクスポート パス
string. 省略可能。 の場合は packageTool == xcodebuildを使用します。 既定値: output/$(SDK)/$(Configuration)

アーカイブからエクスポートされた製品の宛先を指定します。


exportOptions - エクスポート オプション
string. 省略可能。 の場合は packageTool == xcodebuildを使用します。 許可値: autoplistspecify。 既定値: auto

アーカイブを エクスポートするときにエクスポート オプション を渡す方法を指定します。


exportMethod - Export メソッド
string. exportOptions == specify の場合に必要です。 既定値: development

Xcode がアーカイブのエクスポートに使用する方法を指定します。 たとえば、app-storepackagead-hocenterprisedevelopment などです。


exportTeamId - チーム ID
string. 省略可能。 の場合は exportOptions == specifyを使用します。

エクスポートに使用する Apple Developer Portal の 10 桁のチーム ID を指定します。


exportOptionsPlist - エクスポート オプション Plist
string. exportOptions == plist の場合に必要です。

アーカイブ エクスポートを構成する plist ファイルへのパスを指定します。


xcode8AutomaticSigning - 自動署名
boolean. 既定値: false

自動署名用に Xcode 8 または Xcode 9 プロジェクトが構成されている場合は、この入力を使用します。


teamId - チーム ID
string. 省略可能。 の場合は xcode8AutomaticSigning = trueを使用します。

10 桁の開発者チーム ID を指定します。 これは、複数の開発チームのメンバーである場合に必要です。


signMethod - を使用してオーバーライドする
string. 使用できる値: file (ファイル コンテンツ) id 、(識別子)。 既定値: file

この入力は、ビルドで既定とは異なる署名またはプロビジョニング方法を使用する場合に使用します。 P12 証明書とプロビジョニング プロファイルを使用することを選択 File Contents します。 既定のキーチェーンとプレインストールされたプロファイルから署名設定を取得することを選択Identifiersします。 既定のビルド設定をオーバーライドしない場合は、対応するフィールドを空白のままにします。


iosSigningIdentity - 署名 ID
string. 省略可能。 の場合は signMethod = idを使用します。

ビルドの署名に使用される署名 ID オーバーライドを指定します。 既定では、Xcode プロジェクトの設定が使用されます。 [既定のキーチェーンのロック解除 ] を選択する必要がある場合があります。


unlockDefaultKeychain - 既定のキーチェーンのロックを解除する
boolean. 省略可能。 の場合は signMethod = idを使用します。 既定値: false

既定のキーチェーンのロックを解除することで、ユーザー操作が許可されないエラーを解決します。


defaultKeychainPassword - 既定のキーチェーン パスワード
string. 省略可能。 の場合は signMethod = idを使用します。

既定のキーチェーンのロックを解除するパスワードを指定します。


provProfileUuid - プロビジョニング プロファイル UUID
string. 省略可能。 の場合は signMethod = idを使用します。

ビルドに使用するインストール済みプロビジョニング プロファイルの UUID を指定します。 異なるスキームまたはターゲットを持つ個別のビルド タスクを使用して、1 つのワークスペース (iOS、WatchKit、tvOS) でターゲットごとにプロビジョニング プロファイルを指定します。


p12 - P12 証明書ファイル
string. 省略可能。 の場合は signMethod = fileを使用します。

ビルドに使用する署名証明書を含む PKCS12 形式の P12 証明書ファイルへの相対パスを指定します。


p12pwd - P12 パスワード
string. 省略可能。 の場合は signMethod = fileを使用します。

P12 証明書ファイルのパスワードを指定します (指定されている場合)。 ビルド変数を使用して暗号化します。


provProfile - プロファイル ファイルのプロビジョニング
string. 省略可能。 の場合は signMethod = fileを使用します。

ビルドに使用するプロビジョニング プロファイルオーバーライドを含むファイルへの相対パスを指定します。 異なるスキームまたはターゲットを持つ個別のビルド タスクを使用して、1 つのワークスペース (iOS、WatchKit、tvOS) でターゲットごとにプロビジョニング プロファイルを指定します。


removeProfile - ビルド後にプロファイルを削除する
boolean. 省略可能。 の場合は signMethod = fileを使用します。 既定値: false

ビルドの完了後に、プロビジョニング プロファイル ファイルの内容をビルド エージェントから削除します。 ユーザーごとに 1 つのエージェントを実行している場合にのみチェック。


args - 引数
string.

ビルドに使用する追加のコマンド ライン引数を指定します。 この入力は、ワークスペースとスキームを指定する代わりに または -project を使用-targetする場合に便利です。


cwd - 作業ディレクトリ
string.

ビルド実行の作業ディレクトリを指定します。 既定値はリポジトリのルートです。


outputPattern - 出力ディレクトリ
string. 必須です。 既定値: output/$(SDK)/$(Configuration)

ビルド出力 (バイナリ) を配置する相対パスを指定します。


xcodeDeveloperDir - Xcode 開発者パス
string.

省略可能。 システムの既定値でない場合は、Xcode Developer フォルダーへのパスを指定します。 システムに複数のバージョンの Xcode がインストールされている場合に使用します。 (例: /Applications/Xcode 7.app/Contents/Developer)。


useXcpretty - xcpretty を使用する
boolean. 既定値: false

出力を書式設定 xcodebuild し、JUnit テスト結果レポートを生成します。 エージェント ホストにインストールする必要があります。 xcpretty の詳細については、こちらを参照してください。


publishJUnitResults - VSTS/TFS に発行する
boolean. 既定値: false

を使用して xctool 生成された JUnit テスト結果は、VSTS/TFS に発行されます。


useXctool - xctool を使用する
boolean.

の代わりに xcodebuildを使用xctoolします。 エージェント ホストにインストールする必要があります。 xctool の詳細については、こちらを参照してください。
メモ:xctool は非推奨であり、Xcode 8 では機能しません。


xctoolReporter - xctool Test Reporter Format
string.

テスト アクションが指定され、[use xctool]\(xctool を使用する\) がオンになっているときに使用するレポーター形式をテストします。 テスト結果の発行タスクと互換性のあるファイル形式を生成するには、 を指定 junit:output-file-path-here.xml します。 指定すると、 plain が自動的に追加されます。 xctool エージェント ホストにインストールする必要があります。 xctool の詳細については、こちらを参照してください。
メモ:xctool は非推奨であり、Xcode 8 では機能しません。


タスク制御オプション

すべてのタスクには、タスク入力に加えて制御オプションがあります。 詳細については、「 コントロール オプションと一般的なタスク プロパティ」を参照してください。

出力変数

[なし] :

必要条件

要件 説明
パイプラインの種類 YAML、クラシック ビルド
実行日 エージェント、DeploymentGroup
確認要求 セルフホステッド エージェントには、このタスクを使用するジョブを実行するために、次の要求に一致する機能が必要です。
Capabilities このタスクは、ジョブ内の後続のタスクに対する要求を満たしていません。
コマンドの制限 Any
設定可能な変数 Any
エージェントのバージョン サポートされているすべてのエージェント バージョン。
タスクのカテゴリ Build