Xcode@3 — задача сборки Xcode версии 3
Используйте эту задачу для создания рабочей области Xcode в macOS.
Синтаксис
# Xcode Build v3
# Build an Xcode workspace on macOS.
- task: Xcode@3
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
#archivePath: # string. Archive Path.
#exportPath: 'output/$(SDK)/$(Configuration)' # string. Export Path. Default: output/$(SDK)/$(Configuration).
#exportOptions: 'auto' # 'auto' | 'plist' | 'specify'. 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.
#exportArgs: # string. Export Arguments.
# 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.
Входные данные
actions
- Действия
string
. Обязательный. Значение по умолчанию: build
.
Указывает разделенный пробелами список действий. Допустимые параметры: build
, clean
, test
, analyze
и archive
. Например: build clean
выполняет чистую сборку. См. статью Apple: сборка из командной строки с помощью Xcode: вопросы и ответы.
configuration
- Конфигурации
string
. Значение по умолчанию: $(Configuration)
.
Указывает конфигурацию проекта или рабочей области Xcode для сборки. При использовании переменной укажите значение (например, Release
) на вкладке Переменные .
sdk
- SDK
string
. Значение по умолчанию: $(SDK)
.
Создает проект или рабочую область Xcode для указанного пакета SDK. Выполните команду 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 см. в разделе Параметры пакета .
archivePath
- Путь к архиву
string
.
Необязательный элемент. Указывает каталог, в который помещаются созданные архивы.
exportPath
- Путь к экспорту
string
. Значение по умолчанию: output/$(SDK)/$(Configuration)
.
Необязательный элемент. Указывает место назначения для продукта, экспортированного из архива.
exportOptions
- Параметры экспорта
string
. Допустимые значения: auto
, plist
, specify
. Значение по умолчанию: auto
.
Указывает способ передачи параметров экспорта при экспорте архива.
exportMethod
- Метод экспорта
string
. Требуется, если exportOptions == specify
. Значение по умолчанию: development
.
Указывает метод, используемый Xcode для экспорта архива. Примеры: app-store
, package
, ad-hoc
, enterprise
или development
.
exportTeamId
- Идентификатор команды
string
. Необязательный элемент. Используйте при exportOptions == specify
.
Указывает 10-значный идентификатор команды портала разработчика Apple для экспорта.
exportOptionsPlist
- Plist параметров экспорта
string
. Требуется, если exportOptions == plist
.
Указывает путь к PLIST-файлу, который настраивает экспорт архивов.
exportArgs
- Аргументы экспорта
string
.
Указывает дополнительные аргументы командной строки, используемые для экспорта.
xcode8AutomaticSigning
- Автоматическое подписывание
boolean
. Значение по умолчанию: false
.
Используйте эти входные данные, если у вас есть проект Xcode 8 или Xcode 9, настроенный для автоматического подписывания.
teamId
- Идентификатор команды
string
. Необязательный элемент. Используйте при xcode8AutomaticSigning = true
.
Указывает 10-значный идентификатор команды разработчика. Это необходимо, если вы являетесь членом нескольких команд разработчиков.
signMethod
- Переопределение с помощью
string
. Допустимые значения: file
(содержимое файла), id
(идентификаторы). Значение по умолчанию: file
.
Используйте эти входные данные, если в сборке используется метод подписывания или подготовки, отличный от метода по умолчанию. Выберите File Contents
использование сертификата P12 и профиля подготовки. Выберите Identifiers
получение параметров подписывания из стандартных связка ключей и предварительно установленных профилей. Оставьте соответствующие поля пустыми, если вы не хотите переопределять параметры сборки по умолчанию.
iosSigningIdentity
- Удостоверение подписывания
string
. Необязательный элемент. Используйте при signMethod = 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
.
Указывает относительный путь к файлу сертификата P12 в формате PKCS12, который содержит сертификат подписи, используемый для сборки.
p12pwd
- Пароль P12
string
. Необязательный элемент. Используйте при signMethod = file
.
Указывает пароль для файла сертификата P12. Используйте переменную сборки для шифрования.
provProfile
- Файл профиля подготовки
string
. Необязательный элемент. Используйте при signMethod = file
.
Указывает относительный путь к файлу с переопределением профиля подготовки, который будет использоваться для сборки. Используйте отдельные задачи сборки с разными схемами или целевыми объектами, чтобы указать профили подготовки по целевому объекту в одной рабочей области (iOS, WatchKit, tvOS).
removeProfile
- Удаление профиля после сборки
boolean
. Необязательный элемент. Используйте при signMethod = file
. Значение по умолчанию: false
.
Удаляет содержимое файла профиля подготовки из агента сборки после завершения сборки. Только проверка, если вы используете один агент для каждого пользователя.
args
- Аргументы
string
.
Указывает дополнительные аргументы командной строки, используемые для сборки. Эти входные данные полезны, если вы хотите использовать -target
или -project
вместо указания рабочей области и схемы.
cwd
- Рабочий каталог
string
.
Указывает рабочий каталог для выполнения сборки. По умолчанию используется корневой каталог репозитория.
outputPattern
- Выходной каталог
string
. Обязательный. Значение по умолчанию: output/$(SDK)/$(Configuration)
.
Указывает относительный путь, по которому размещаются выходные данные сборки (двоичные файлы).
xcodeDeveloperDir
- Путь разработчика Xcode
string
.
Необязательный элемент. Указывает путь к папке разработчика Xcode, если она не используется по умолчанию в системе. Используется при установке нескольких версий Xcode в системе. Например: /Applications/Xcode 7.app/Contents/Developer
.
useXcpretty
- Использование xcpretty
boolean
. Значение по умолчанию: false
.
Форматирует xcodebuild
выходные данные и создает отчет о результатах теста JUnit. Должен быть установлен на узлах агентов. Дополнительные сведения о xcpretty.
publishJUnitResults
- Публикация в VSTS/TFS
boolean
. Значение по умолчанию: false
.
Результаты теста JUnit, созданные с помощью xctool
, публикуются в VSTS/TFS.
Параметры управления задачами
Помимо входных данных, все задачи имеют параметры управления. Дополнительные сведения см. в разделе Параметры управления и общие свойства задачи.
Выходные переменные
Нет.
Требования
Требование | Описание |
---|---|
Типы конвейеров | YAML, классическая сборка |
Выполняется в | Агент, DeploymentGroup |
Требования | Локальные агенты должны иметь возможности , соответствующие следующим требованиям для выполнения заданий, использующих эту задачу: xcode |
Capabilities | Эта задача не удовлетворяет требованиям для последующих задач в задании. |
Ограничения команд | Любой |
Устанавливаемые переменные | Любой |
Версия агента | Все поддерживаемые версии агента. |
Категория задач | Сборка |