Xcode@2 - Xcode Build v2 작업

이 작업을 사용하여 macOS에서 Xcode 작업 영역을 빌드합니다.

Syntax

# 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입니다.

공백으로 구분된 작업 목록을 지정합니다. 유효한 옵션은 build, clean, test, analyzearchive입니다. 예를 들어 는 build clean 클린 빌드를 수행합니다. Xcode FAQ를 사용하여 명령줄에서 Apple: Building을 참조하세요.


configuration - 구성
string. 기본값은 $(Configuration)입니다.

빌드할 Xcode 프로젝트 또는 작업 영역 구성을 지정합니다. 변수를 사용하는 경우 변수 탭에서 값(예: Release) 을 지정합니다 .


sdk - Sdk
string. 기본값은 $(SDK)입니다.

지정된 SDK에 대해 Xcode 프로젝트 또는 작업 영역을 빌드합니다. 를 실행 xcodebuild -showsdks 하여 유효한 SDK 목록을 확인합니다.


xcWorkspacePath - 작업 영역/프로젝트 경로
string. 기본값은 **/*.xcodeproj/*.xcworkspace입니다.

선택 사항입니다. 리포지토리 루트에서 Xcode 작업 영역 또는 프로젝트로의 상대 경로를 지정합니다. 예를 들어 MyApp/MyApp.xcworkspace 또는 MyApp/MyApp.xcworkspace/MyApp.xcodeproj입니다.
고급 인수에서 사용 -target flag 하려는 경우 비워 둡니다.


scheme - 구성표
string.

선택 사항입니다. Xcode 스키마 이름을 지정합니다. 공유 스키마여야 합니다 (Xcode 의 관리 체계 아래 공유 확인란). 작업 영역을 지정하는 경우 필수입니다.


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사용합니다. 허용되는 값: auto, plist, specify. 기본값은 auto입니다.

보관 파일을 내보낼 때 내보내기 옵션을 전달하는 방법을 지정합니다.


exportMethod - 내보내기 메서드
string. 필요한 경우 exportOptions == specify입니다. 기본값은 development입니다.

Xcode에서 보관 파일을 내보내는 데 사용하는 메서드를 지정합니다. 예를 들어 app-store, package, ad-hoc, enterprise 또는 development입니다.


exportTeamId - 팀 ID
string. 선택 사항입니다. 을 사용할 때 exportOptions == specify사용합니다.

내보내기에서 사용할 Apple 개발자 포털 10자리 팀 ID를 지정합니다.


exportOptionsPlist - 내보내기 옵션 목록
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를 지정합니다. 서로 다른 체계 또는 대상이 있는 별도의 빌드 작업을 사용하여 단일 작업 영역(iOS, WatchKit, tvOS)에서 대상으로 프로비저닝 프로필을 지정합니다.


p12 - P12 인증서 파일
string. 선택 사항입니다. 을 사용할 때 signMethod = file사용합니다.

빌드에 사용할 서명 인증서가 포함된 PKCS12 형식의 P12 인증서 파일에 대한 상대 경로를 지정합니다.


p12pwd - P12 암호
string. 선택 사항입니다. 을 사용할 때 signMethod = file사용합니다.

지정된 경우 P12 인증서 파일의 암호를 지정합니다. 빌드 변수를 사용하여 암호화합니다.


provProfile - 프로비저닝 프로필 파일
string. 선택 사항입니다. 을 사용할 때 signMethod = file사용합니다.

빌드에 사용할 프로비저닝 프로필 재정의를 포함하는 파일의 상대 경로를 지정합니다. 서로 다른 체계 또는 대상이 있는 별도의 빌드 작업을 사용하여 단일 작업 영역(iOS, WatchKit, tvOS)에서 대상으로 프로비저닝 프로필을 지정합니다.


removeProfile - 빌드 후 프로필 제거
boolean. 선택 사항입니다. 을 사용할 때 signMethod = file사용합니다. 기본값은 false입니다.

빌드가 완료된 후 빌드 에이전트에서 프로비저닝 프로필 파일의 내용을 제거합니다. 사용자당 하나의 에이전트를 실행하는 경우에만 검사.


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 형식
string.

테스트 작업을 지정하고 xctool 사용을 확인할 때 사용할 보고자 형식을 테스트합니다. 테스트 결과 게시 태스크와 호환되는 파일 형식을 생성하려면 를 지정 junit:output-file-path-here.xml 합니다. 지정하면 plain 이 자동으로 추가됩니다. xctool 에이전트 호스트에 설치해야 합니다. xctool에 대해 자세히 알아보세요.
참고:xctool 는 더 이상 사용되지 않으며 Xcode 8에서는 작동하지 않습니다.


작업 제어 옵션

모든 작업에는 작업 입력 외에 제어 옵션이 있습니다. 자세한 내용은 컨트롤 옵션 및 일반적인 작업 속성을 참조하세요.

출력 변수

없음

요구 사항

요구 사항 Description
파이프라인 유형 YAML, 클래식 빌드
실행 중 에이전트, DeploymentGroup
요청 자체 호스팅 에이전트에는 이 작업을 사용하는 작업을 실행하기 위한 다음 요구 사항과 일치하는 기능이 있어야 합니다. xcode
Capabilities 이 작업은 작업의 후속 작업에 대한 요구를 충족하지 않습니다.
명령 제한 사항 모두
설정 가능한 변수 모두
에이전트 버전 지원되는 모든 에이전트 버전.
작업 범주 빌드