Xcode@4 – úloha Xcode v4
Pomocí této úlohy můžete sestavit, otestovat nebo archivovat pracovní prostor Xcode v systému macOS a volitelně zabalit aplikaci.
Syntax
# Xcode v4
# Build, test, or archive an Xcode workspace on macOS. Optionally package an app.
- task: Xcode@4
inputs:
actions: 'build' # string. Required. Actions. Default: build.
#configuration: '$(Configuration)' # string. Configuration. Default: $(Configuration).
#sdk: '$(SDK)' # string. SDK. Default: $(SDK).
#xcWorkspacePath: '**/*.xcodeproj/project.xcworkspace' # string. Workspace or project path. Default: **/*.xcodeproj/project.xcworkspace.
#scheme: # string. Scheme.
#xcodeVersion: 'default' # '8' | '9' | 'default' | 'specifyPath'. Xcode version. Default: default.
#xcodeDeveloperDir: # string. Optional. Use when xcodeVersion == specifyPath. Xcode developer path.
# Package options
#packageApp: false # boolean. Create app package. Default: false.
#archivePath: # string. Optional. Use when packageApp == true. Archive path.
#exportPath: 'output/$(SDK)/$(Configuration)' # string. Optional. Use when packageApp == true. Export path. Default: output/$(SDK)/$(Configuration).
#exportOptions: 'auto' # 'auto' | 'plist' | 'specify'. Optional. Use when packageApp == true. 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. Optional. Use when packageApp == true. Export arguments.
# Signing & provisioning
#signingOption: 'nosign' # 'nosign' | 'default' | 'manual' | 'auto'. Signing style. Default: nosign.
#signingIdentity: # string. Optional. Use when signingOption = manual. Signing identity.
#provisioningProfileUuid: # string. Optional. Use when signingOption = manual. Provisioning profile UUID.
#teamId: # string. Optional. Use when signingOption = auto. Team ID.
# Devices & simulators
#destinationPlatformOption: 'default' # 'default' | 'iOS' | 'tvOS' | 'macOS' | 'custom'. Destination platform. Default: default.
#destinationPlatform: # string. Optional. Use when destinationPlatformOption == custom. Custom destination platform.
#destinationTypeOption: 'simulators' # 'simulators' | 'devices'. Optional. Use when destinationPlatformOption != default && destinationPlatformOption != macOS. Destination type. Default: simulators.
#destinationSimulators: 'iPhone 7' # string. Optional. Use when destinationPlatformOption != default && destinationPlatformOption != macOS && destinationTypeOption == simulators. Simulator. Default: iPhone 7.
#destinationDevices: # string. Optional. Use when destinationPlatformOption != default && destinationPlatformOption != macOS && destinationTypeOption == devices. Device.
# Advanced
#args: # string. Arguments.
#workingDirectory: # string. Alias: cwd. Working directory.
#outputPattern: # string. Output directory.
#useXcpretty: false # boolean. Use xcpretty. Default: false.
#publishJUnitResults: false # boolean. Publish test results to VSTS/TFS. Default: false.
Vstupy
actions
- Akce
string
. Povinná hodnota. Výchozí hodnota: build
.
Určuje seznam akcí oddělených mezerami. Platné možnosti jsou build
, clean
, test
, analyze
a archive
. Napříkladclean build
provede čisté sestavení. Podívejte se na článek Apple: Vytváření z příkazového řádku s nejčastějšími dotazy k Xcode.
configuration
- Konfigurace
string
. Výchozí hodnota: $(Configuration)
.
Určuje konfiguraci projektu nebo pracovního prostoru Xcode, který se má sestavit. Při použití proměnné zadejte hodnotu (například Release
) na kartě Proměnné .
sdk
- SDK
string
. Výchozí hodnota: $(SDK)
.
Určuje sadu SDK, která se má použít při sestavování projektu nebo pracovního prostoru Xcode. V aplikaci Terminál pro macOS spuštěním příkazu xcodebuild -showsdks
zobrazte seznam platných sad SDK. Při použití proměnné zadejte hodnotu (například iphonesimulator
) na kartě Proměnné .
xcWorkspacePath
- Cesta k pracovnímu prostoru nebo projektu
string
. Výchozí hodnota: **/*.xcodeproj/project.xcworkspace
.
Nepovinný parametr. Určuje relativní cestu z kořenového adresáře úložiště k pracovnímu prostoru nebo projektu Xcode. Pokud zadáte hodnotu, musíte zadat také schéma. Nezadávejte hodnotu, pokud zadáváte -target flag
v části Upřesnit argumenty. Příkladem je MyApp/MyApp.xcworkspace
nebo MyApp/MyApp.xcodeproj
.
scheme
- Schéma
string
.
Nepovinný parametr. Určuje název schématu Xcode. Musí se jednat o sdílené schéma (sdílené zaškrtávací políčko v části Spravovaná schémata v Xcode). Pokud nezadáte schéma a zadaný pracovní prostor má jedno sdílené schéma, použije se schéma pracovního prostoru.
xcodeVersion
- Verze Xcode
string
. Povolené hodnoty: 8
(Xcode 8), 9
(Xcode 9), default
, specifyPath
(Zadejte cestu). Výchozí hodnota: default
.
Určuje cílovou verzi Xcode. Vyberte Default
, jestli chcete na počítači agenta použít výchozí verzi Xcode. Zadání čísla verze (například ) závisí na umístění verze nastavené Xcode 9
proměnnými prostředí na počítači agenta (například XCODE_9_DEVELOPER_DIR=/Applications/Xcode_9.0.0.app/Contents/Developer
). Vyberte Specify path
, pokud chcete zadat konkrétní cestu k adresáři Xcode developer.
xcodeDeveloperDir
- Cesta pro vývojáře Xcode
string
. Nepovinný parametr. Použijte, když xcodeVersion == specifyPath
.
Určuje cestu ke konkrétnímu vývojářskému adresáři Xcode (například /Applications/Xcode_9.0.0.app/Contents/Developer
). Tento vstup je užitečný, když je na počítači agenta nainstalováno více verzí Xcode.
packageApp
- Vytvoření balíčku aplikace
boolean
. Výchozí hodnota: false
.
Určuje, jestli se má jako součást sestavení vygenerovat soubor balíčku aplikace IPA.
archivePath
- Cesta k archivu
string
. Nepovinný parametr. Použijte, když packageApp == true
.
Určuje adresář, do kterého jsou umístěny vytvořené archivy.
exportPath
- Exportovat cestu
string
. Nepovinný parametr. Použijte, když packageApp == true
. Výchozí hodnota: output/$(SDK)/$(Configuration)
.
Určuje cíl produktu exportovaného z archivu.
exportOptions
- Možnosti exportu
string
. Nepovinný parametr. Použijte, když packageApp == true
. Povolené hodnoty: auto
(Automaticky), plist
, specify
. Výchozí hodnota: auto
.
Určuje možnosti pro export archivu. Pokud je vybrána výchozí hodnota Automatic
, metoda exportu se automaticky zjistí z archivu. Tuto možnost vyberte Plist
, pokud chcete zadat soubor plist obsahující možnosti exportu. Vyberte Specify
, pokud chcete zadat konkrétní metodu exportu a ID týmu.
exportMethod
- Metoda exportu
string
. Vyžaduje se, když exportOptions == specify
. Výchozí hodnota: development
.
Určuje metodu, kterou Xcode používá k exportu archivu. Příklad: app-store
, package
, ad-hoc
, enterprise
nebo development
.
exportTeamId
- ID týmu
string
. Nepovinný parametr. Použijte, když exportOptions == specify
.
Určuje 10místné ID týmu portálu Apple Developer Portal, které se použije při exportu.
exportOptionsPlist
- Soubor plist možností exportu
string
. Vyžaduje se, když exportOptions == plist
.
Určuje cestu k souboru plist obsahující možnosti, které se mají použít během exportu.
exportArgs
- Export argumentů
string
. Nepovinný parametr. Použijte, když packageApp == true
.
Určuje další argumenty příkazového řádku použité při exportu.
signingOption
- Styl podepisování
string
. Povolené hodnoty: nosign
(Nepodepisovat kód), default
(Výchozí nastavení Projectu), manual
(Ruční podepisování), auto
(Automatické podepisování). Výchozí hodnota: nosign
.
Určuje metodu podepsání sestavení. Výběrem Do not code sign
zakážete podepisování. Vyberte Project defaults
, že chcete použít jenom konfiguraci podepisování projektu. Tuto možnost vyberte Manual signing
, pokud chcete vynutit ruční podepisování, a volitelně zadejte podpisovou identitu a profil zřizování. Tuto možnost vyberte Automatic signing
, pokud chcete vynutit automatické podepisování, a volitelně zadejte ID vývojového týmu. Pokud váš projekt vyžaduje podepsání, použijte úlohy Nainstalovat Apple... k instalaci certifikátů a zřizovacích profilů před sestavením Xcode.
signingIdentity
- Podpisová identita
string
. Nepovinný parametr. Použijte, když signingOption = manual
.
Určuje přepsání podpisové identity, kterým se má sestavení podepsat. Může se vyžadovat odemknutí výchozího řetězce klíčů na počítači agenta. Pokud není zadána žádná hodnota, použije se nastavení projektu Xcode.
provisioningProfileUuid
- UUID zřizovacího profilu
string
. Nepovinný parametr. Použijte, když signingOption = manual
.
Určuje UUID nainstalovaného zřizovacího profilu použitého pro sestavení. Pomocí samostatných úloh sestavení s různými schématy nebo cíli můžete určit zřizovací profily podle cíle v jednom pracovním prostoru (iOS, tvOS, watchOS).
teamId
- ID týmu
string
. Nepovinný parametr. Použijte, když signingOption = auto
.
Vyžaduje se, pokud jste členem více vývojových týmů. Určuje 10místné ID vývojového týmu.
destinationPlatformOption
- Cílová platforma
string
. Povolené hodnoty: default
, iOS
(iOS a watchOS), tvOS
, , macOS
. custom
Výchozí hodnota: default
.
Určuje platformu cílového zařízení, která se použije k testování uživatelského rozhraní v případě, že obecné sestavení zařízení není platné. Zvolte Custom
, jestli chcete zadat platformu, která není uvedená v seznamu. Pokud Default
je vybraná možnost, nebudou cílem žádné simulátory ani zařízení.
destinationPlatform
- Vlastní cílová platforma
string
. Nepovinný parametr. Použijte, když destinationPlatformOption == custom
.
Určuje platformu cílového zařízení, která se použije k testování uživatelského rozhraní v případě, že obecné sestavení zařízení není platné.
destinationTypeOption
- Typ cíle
string
. Nepovinný parametr. Použijte, když destinationPlatformOption != default && destinationPlatformOption != macOS
. Povolené hodnoty: simulators
(Simulátor), devices
(Připojené zařízení). Výchozí hodnota: simulators
.
Určuje typ cíle, který se používá k testování uživatelského rozhraní. Zařízení musí být připojená k počítači Mac, který provádí sestavení prostřednictvím kabelového nebo síťového připojení. Další informace najdete v tématu Zařízení a simulátory v Xcode.
destinationSimulators
- Simulátor
string
. Nepovinný parametr. Použijte, když destinationPlatformOption != default && destinationPlatformOption != macOS && destinationTypeOption == simulators
. Výchozí hodnota: iPhone 7
.
Určuje název simulátoru Xcode, který se používá k testování uživatelského rozhraní. Například iPhone X
(iOS a watchOS) nebo Apple TV 4K
(tvOS). Volitelnou cílovou verzi operačního systému je možné zadat ve formátu OS=<versionNumber>
, například iPhone X,OS=11.1
. Přečtěte si další informace o nainstalovaných simulátorech v hostovaném agentu macOS Preview.
destinationDevices
- Zařízení
string
. Nepovinný parametr. Použijte, když destinationPlatformOption != default && destinationPlatformOption != macOS && destinationTypeOption == devices
.
Určuje název zařízení používaného k testování uživatelského rozhraní, například Raisa's iPad
.
args
- Argumenty
string
.
Nepovinný parametr. Určuje další argumenty příkazového řádku, se kterými se má sestavit. Tento vstup je užitečný při zadávání -target
argumentů nebo -project
místo pracovního prostoru/projektu a schématu. Podívejte se na článek Apple: Vytváření z příkazového řádku s nejčastějšími dotazy k Xcode.
workingDirectory
- Pracovní adresář
Alias vstupu: cwd
. string
.
Nepovinný parametr. Určuje pracovní adresář, ve kterém se má sestavení spustit. Pokud není zadaná žádná hodnota, použije se kořen úložiště.
outputPattern
- Výstupní adresář
string
.
Nepovinný parametr. Určuje relativní cestu k pracovnímu adresáři, do kterého se umístí výstup sestavení (binární soubory). Příklad: output/$(SDK)/$(Configuration)
nebo output/$(TestSDK)/$(TestConfiguration)
. Cesty k archivaci a exportu se konfigurují samostatně. Zadejte hodnoty na kartě Proměnné.
useXcpretty
- Použití xcpretty
boolean
. Výchozí hodnota: false
.
Určuje, jestli se má použít xcpretty
k formátování xcodebuild
výstupu, a vygeneruje výsledky testu JUnit. xcpretty
musí být nainstalovaný na počítači agenta (je předinstalovaný na agentech sestavení hostovaných službou VSTS). Další informace najdete v tématu xcpretty .
publishJUnitResults
- Publikování výsledků testů do VSTS/TFS
boolean
. Výchozí hodnota: false
.
Pokud xcpretty
je povolená, tento vstup určuje, jestli se mají výsledky testu JUnit publikovat do VSTS/TFS.
Možnosti řízení úkolů
Všechny úkoly mají kromě vstupů úkolů i možnosti řízení. Další informace najdete v tématu Možnosti ovládacích prvků a běžné vlastnosti úlohy.
Výstupní proměnné
Žádné
Poznámky
Pomocí této úlohy můžete vytvořit pracovní prostor Xcode v systému macOS.
Příklady
Požadavky
Požadavek | Popis |
---|---|
Typy kanálů | YAML, klasický build |
Běží na | Agent, DeploymentGroup |
Požadavky | Agenti v místním prostředí musí mít funkce , které odpovídají následujícím požadavkům na spouštění úloh, které používají tuto úlohu: xcode |
Možnosti | Tento úkol nesplňuje žádné požadavky na následné úkoly v úloze. |
Omezení příkazů | Všechny |
Nastavitelné proměnné | Všechny |
Verze agenta | Všechny podporované verze agenta. |
Kategorie úloh | Sestavení |