Dela via


Xcode@4 – Xcode v4-uppgift

Använd den här uppgiften för att skapa, testa eller arkivera en Xcode-arbetsyta på macOS och eventuellt paketera en app.

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.

Ingångar

actions - Åtgärder
string. Obligatoriskt. Standardvärde: build.

Anger en utrymmesavgränsad lista över åtgärder. Giltiga alternativ är build, clean, test, analyzeoch archive. Till exempel utförclean build en ren version. Se Apple: Building från kommandoraden med vanliga frågor och svar om Xcode.


configuration - Konfiguration
string. Standardvärde: $(Configuration).

Anger Xcode-projekt- eller arbetsytekonfigurationen som ska skapas. När du använder en variabel anger du ett värde (till exempel Release) på fliken Variabler.


sdk - SDK
string. Standardvärde: $(SDK).

Anger en SDK som ska användas när du skapar Xcode-projektet eller arbetsytan. Från macOS-terminalprogrammet kör du xcodebuild -showsdks för att visa den giltiga listan över SDK:er. När du använder en variabel anger du ett värde (till exempel iphonesimulator) på fliken Variabler.


xcWorkspacePath - Arbetsyta eller projektsökväg
string. Standardvärde: **/*.xcodeproj/project.xcworkspace.

Valfritt. Anger en relativ sökväg från lagringsplatsens rot till Xcode-arbetsytan eller projektet. Om du anger ett värde måste du också ange schemat. Ange inte ett värde om du anger -target flag i Avancerade argument. Till exempel MyApp/MyApp.xcworkspace eller MyApp/MyApp.xcodeproj.


scheme - schema
string.

Valfritt. Anger ett Xcode-schemanamn. Måste vara ett delat schema (delad kryssruta under hanterade scheman i Xcode). Om du inte anger något schema och den angivna arbetsytan har ett enda delat schema används arbetsyteschemat.


xcodeVersion - Xcode-version
string. Tillåtna värden: 8 (Xcode 8), 9 (Xcode 9), default, specifyPath (Ange sökväg). Standardvärde: default.

Anger målversionen av Xcode. Välj Default för att använda standardversionen av Xcode på agentdatorn. Om du anger ett versionsnummer (till exempel Xcode 9) förlitar du dig på att versionens plats anges av miljövariabler på agentdatorn (till exempel XCODE_9_DEVELOPER_DIR=/Applications/Xcode_9.0.0.app/Contents/Developer). Välj Specify path för att ange en specifik sökväg till Xcode-utvecklarkatalogen.


xcodeDeveloperDir - Xcode-utvecklarsökväg
string. Valfritt. Använd när xcodeVersion == specifyPath.

Anger en sökväg till en specifik Xcode-utvecklarkatalog (till exempel /Applications/Xcode_9.0.0.app/Contents/Developer). Den här indatan är användbar när flera versioner av Xcode är installerade på agentdatorn.


packageApp - Skapa
boolean. Standardvärde: false.

Anger om en IPA-apppaketfil ska genereras som en del av bygget.


archivePath - Arkivsökväg
string. Valfritt. Använd när packageApp == true.

Anger en katalog där skapade arkiv placeras.


exportPath - Exportera sökväg
string. Valfritt. Använd när packageApp == true. Standardvärde: output/$(SDK)/$(Configuration).

Anger målet för den produkt som exporteras från arkivet.


exportOptions - Exportera alternativ
string. Valfritt. Använd när packageApp == true. Tillåtna värden: auto (automatisk), plist, specify. Standardvärde: auto.

Anger alternativ för att exportera arkivet. När standardvärdet för Automatic har valts identifieras exportmetoden automatiskt från arkivet. Välj Plist för att ange en plist-fil som innehåller exportalternativ. Välj Specify för att ange en specifik exportmetod och team-ID.


exportMethod - Export-metod
string. Krävs när exportOptions == specify. Standardvärde: development.

Anger den metod som Xcode använder för att exportera arkivet. Till exempel: app-store, package, ad-hoc, enterpriseeller development.


exportTeamId - team-ID
string. Valfritt. Använd när exportOptions == specify.

Anger det Apple Developer Portal 10-teckens team-ID som ska användas under exporten.


exportOptionsPlist - Exportera alternativ plist
string. Krävs när exportOptions == plist.

Anger sökvägen till plist-filen som innehåller alternativ som ska användas under exporten.


exportArgs - Exportera argument
string. Valfritt. Använd när packageApp == true.

Anger ytterligare kommandoradsargument som används under exporten.


signingOption - signeringsformat
string. Tillåtna värden: nosign (Koda inte), default (standardvärden för project), manual (manuell signering), auto (automatisk signering). Standardvärde: nosign.

Anger metoden för att signera bygget. Välj Do not code sign för att inaktivera signering. Välj Project defaults om du bara vill använda projektets signeringskonfiguration. Välj Manual signing för att framtvinga manuell signering och om du vill ange en signeringsidentitet och etableringsprofil. Välj Automatic signing för att framtvinga automatisk signering och ange eventuellt ett utvecklingsteam-ID. Om projektet kräver signering använder du Installera Apple... uppgifter för att installera certifikat och etableringsprofiler före Xcode-versionen.


signingIdentity - signeringsidentitet
string. Valfritt. Använd när signingOption = manual.

Anger en åsidosättning av signeringsidentitet som bygget ska signeras med. Du kan behöva låsa upp standardnyckelringen på agentdatorn. Om inget värde anges används Xcode-projektets inställning.


provisioningProfileUuid - Etableringsprofil UUID
string. Valfritt. Använd när signingOption = manual.

Anger UUID för en installerad etableringsprofil som används för bygget. Använd separata bygguppgifter med olika scheman eller mål för att ange etableringsprofiler efter mål på en enda arbetsyta (iOS, tvOS, watchOS).


teamId - team-ID
string. Valfritt. Använd när signingOption = auto.

Krävs om du är medlem i flera utvecklingsteam. Anger utvecklingsteamets ID på 10 tecken.


destinationPlatformOption - Målplattform
string. Tillåtna värden: default, iOS (iOS och watchOS), tvOS, macOS, custom. Standardvärde: default.

Anger målenhetens plattform som används för gränssnittstestning när den allmänna byggenheten inte är giltig. Välj Custom för att ange en plattform som inte ingår i listan. När Default har valts är inga simulatorer eller enheter riktade.


destinationPlatform - Anpassad målplattform
string. Valfritt. Använd när destinationPlatformOption == custom.

Anger en målenhets plattform som används för gränssnittstestning när den allmänna byggenheten inte är giltig.


destinationTypeOption - Måltyp
string. Valfritt. Använd när destinationPlatformOption != default && destinationPlatformOption != macOS. Tillåtna värden: simulators (simulator), devices (ansluten enhet). Standardvärde: simulators.

Anger måltypen som används för gränssnittstestning. Enheter måste vara anslutna till mac-datorn som utför bygget via en kabel- eller nätverksanslutning. Mer information finns i Enheter och simulatorer i Xcode.


destinationSimulators - simulator
string. Valfritt. Använd när destinationPlatformOption != default && destinationPlatformOption != macOS && destinationTypeOption == simulators. Standardvärde: iPhone 7.

Anger ett Xcode-simulatornamn som används för användargränssnittstestning. Till exempel iPhone X (iOS och watchOS) eller Apple TV 4K (tvOS). En valfri mål-OS-version kan anges i formatet OS=<versionNumber>, till exempel iPhone X,OS=11.1. Läs mer om installerade simulatorer på den värdbaserade macOS Preview-agenten.


destinationDevices - Enhet
string. Valfritt. Använd när destinationPlatformOption != default && destinationPlatformOption != macOS && destinationTypeOption == devices.

Anger namnet på den enhet som används för användargränssnittstestning, till exempel Raisa's iPad.


args - argument
string.

Valfritt. Anger ytterligare kommandoradsargument som ska skapas med. Dessa indata är användbara för att ange -target eller -project argument i stället för en arbetsyta/ett projekt och schema. Se Apple: Building från kommandoraden med vanliga frågor och svar om Xcode.


workingDirectory - Arbetskatalog
Indataalias: cwd. string.

Valfritt. Anger arbetskatalogen där bygget ska köras. Om inget värde anges används lagringsplatsens rot.


outputPattern - utdatakatalog
string.

Valfritt. Anger en relativ sökväg till arbetskatalogen där byggutdata (binärfiler) placeras. Till exempel: output/$(SDK)/$(Configuration) eller output/$(TestSDK)/$(TestConfiguration). Arkiv- och exportsökvägar konfigureras separat. Ange värden på fliken Variabler.


useXcpretty - Använd xcpretty
boolean. Standardvärde: false.

Anger om du vill använda xcpretty för att formatera xcodebuild utdata och genererar JUnit-testresultat. xcpretty måste installeras på agentdatorn (den är förinstallerad på VSTS-värdbaserade byggagenter). Mer information finns i xcpretty.


publishJUnitResults - Publicera testresultat till VSTS/TFS
boolean. Standardvärde: false.

Om xcpretty är aktiverat anger indata om JUnit-testresultaten ska publiceras till VSTS/TFS.


Kontrollalternativ för aktivitet

Alla aktiviteter har kontrollalternativ utöver sina aktivitetsindata. Mer information finns i Kontrollalternativ och vanliga uppgiftsegenskaper.

Utdatavariabler

Ingen.

Anmärkningar

Använd den här uppgiften för att skapa en Xcode-arbetsyta på macOS.

Exempel

Krav

Krav Beskrivning
Pipelinetyper YAML, klassisk version
Körs på Agent, DeploymentGroup
kräver Lokalt installerade agenter måste ha funktioner som matchar följande kräver att köra jobb som använder den här uppgiften: xcode
funktioner Den här aktiviteten uppfyller inte några krav på efterföljande uppgifter i jobbet.
Kommandobegränsningar Vilken som helst
variabler som kan Vilken som helst
Agentversion Alla agentversioner som stöds.
Aktivitetskategori Skapa