Freigeben über


Xcode@4 – Xcode v4-Aufgabe

Verwenden Sie diese Aufgabe, um einen Xcode-Arbeitsbereich unter macOS zu erstellen, zu testen oder zu archivieren und optional eine App zu packen.

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.

Eingaben

actions - Aktionen
string. Erforderlich. Standardwert. build.

Gibt eine durch Leerzeichen getrennte Liste von Aktionen an. Gültige Optionen sind build, clean, test, analyze und archive. Führt beispielsweise einen sauberenclean build Build aus. Weitere Informationen finden Sie unter Apple: Erstellen über die Befehlszeile mit Xcode FAQ.


configuration - Konfiguration
string. Standardwert. $(Configuration).

Gibt die zu erstellende Xcode-Projekt- oder Arbeitsbereichskonfiguration an. Wenn Sie eine Variable verwenden, geben Sie einen Wert (z. ReleaseB. ) auf der Registerkarte Variablen an .


sdk - SDK
string. Standardwert. $(SDK).

Gibt ein SDK an, das beim Erstellen des Xcode-Projekts oder -Arbeitsbereichs verwendet werden soll. Führen Sie in der macOS-Terminalanwendung aus xcodebuild -showsdks , um die gültige Liste der SDKs anzuzeigen. Wenn Sie eine Variable verwenden, geben Sie einen Wert (z. iphonesimulatorB. ) auf der Registerkarte Variablen an .


xcWorkspacePath - Arbeitsbereichs- oder Projektpfad
string. Standardwert. **/*.xcodeproj/project.xcworkspace.

Optional. Gibt einen relativen Pfad vom Stamm des Repositorys zum Xcode-Arbeitsbereich oder -Projekt an. Wenn Sie einen Wert angeben, müssen Sie auch das Schema angeben. Geben Sie keinen Wert an, wenn Sie unter Erweiterte Argumente angeben -target flag . Zum Beispiel: MyApp/MyApp.xcworkspace oder MyApp/MyApp.xcodeproj.


scheme - Schema
string.

Optional. Gibt einen Xcode-Schemanamen an. Muss ein freigegebenes Schema sein (Kontrollkästchen freigegeben unter Verwaltete Schemas in Xcode). Wenn Sie kein Schema angeben und der angegebene Arbeitsbereich über ein einzelnes freigegebenes Schema verfügt, wird das Arbeitsbereichsschema verwendet.


xcodeVersion - Xcode-Version
string. Zulässige Werte: 8 (Xcode 8), 9 (Xcode 9), default, specifyPath (Pfad angeben). Standardwert. default.

Gibt die Zielversion von Xcode an. Wählen Sie aus Default , um die Standardversion von Xcode auf dem Agentcomputer zu verwenden. Die Angabe einer Versionsnummer (z. B. ) basiert auf dem Speicherort der Version, Xcode 9XCODE_9_DEVELOPER_DIR=/Applications/Xcode_9.0.0.app/Contents/Developerder durch Umgebungsvariablen auf dem Agentcomputer festgelegt werden soll (z. B. ). Wählen Sie diese Option aus Specify path , um einen bestimmten Pfad zum Xcode-Entwicklerverzeichnis anzugeben.


xcodeDeveloperDir - Xcode-Entwicklerpfad
string. Optional. Verwenden Sie , wenn xcodeVersion == specifyPath.

Gibt einen Pfad zu einem bestimmten Xcode-Entwicklerverzeichnis an (z. B /Applications/Xcode_9.0.0.app/Contents/Developer. ). Diese Eingabe ist nützlich, wenn mehrere Versionen von Xcode auf dem Agent-Computer installiert sind.


packageApp - Erstellen eines App-Pakets
boolean. Standardwert. false.

Gibt an, ob eine IPA-App-Paketdatei als Teil des Builds generiert werden soll.


archivePath - Archivpfad
string. Optional. Verwenden Sie , wenn packageApp == true.

Gibt ein Verzeichnis an, in dem erstellte Archive platziert werden.


exportPath - Exportpfad
string. Optional. Verwenden Sie , wenn packageApp == true. Standardwert. output/$(SDK)/$(Configuration).

Gibt das Ziel für das aus dem Archiv exportierte Produkt an.


exportOptions - Exportoptionen
string. Optional. Verwenden Sie , wenn packageApp == true. Zulässige Werte: auto (Automatisch), plist, specify. Standardwert. auto.

Gibt Optionen zum Exportieren des Archivs an. Wenn der Standardwert von Automatic ausgewählt ist, wird die Exportmethode automatisch aus dem Archiv erkannt. Wählen Sie diese Option aus Plist , um eine plist-Datei mit Exportoptionen anzugeben. Wählen Sie diese Option aus Specify , um eine bestimmte Exportmethode und team-ID anzugeben.


exportMethod - Exportmethode
string. Erforderlich, wenn exportOptions == specify. Standardwert. development.

Gibt die Methode an, die Xcode zum Exportieren des Archivs verwendet. Zum Beispiel: app-store, package, ad-hoc, enterprise oder development.


exportTeamId - Team-ID
string. Optional. Verwenden Sie , wenn exportOptions == specify.

Gibt die 10-stellige Team-ID des Apple Developer Portal an, die während des Exports verwendet werden soll.


exportOptionsPlist - Exportoptionen plist
string. Erforderlich, wenn exportOptions == plist.

Gibt den Pfad zur plist-Datei an, die Optionen enthält, die während des Exports verwendet werden sollen.


exportArgs - Exportieren von Argumenten
string. Optional. Verwenden Sie , wenn packageApp == true.

Gibt zusätzliche Befehlszeilenargumente an, die beim Export verwendet werden.


signingOption - Signaturstil
string. Zulässige Werte: nosign (Kein Codezeichen), default (Project-Standardwerte), manual (Manuelle Signatur), auto (Automatische Signatur). Standardwert. nosign.

Gibt die Methode zum Signieren des Builds an. Wählen Sie aus Do not code sign , um die Signatur zu deaktivieren. Wählen Sie aus Project defaults , um nur die Signaturkonfiguration des Projekts zu verwenden. Wählen Sie diese Option aus Manual signing , um die manuelle Signatur zu erzwingen, und geben Sie optional eine Signaturidentität und ein Bereitstellungsprofil an. Wählen Sie diese Option aus Automatic signing , um die automatische Signatur zu erzwingen, und geben Sie optional eine Entwicklungsteam-ID an. Wenn Für Ihr Projekt eine Signatur erforderlich ist, verwenden Sie die Aufgaben Apple... installieren , um Zertifikate und Bereitstellungsprofile vor dem Xcode-Build zu installieren.


signingIdentity - Signaturidentität
string. Optional. Verwenden Sie , wenn signingOption = manual.

Gibt eine Überschreibung der Signaturidentität an, mit der der Build signiert werden soll. Möglicherweise ist das Entsperren des Standardschlüsselbundes auf dem Agentcomputer erforderlich. Wenn kein Wert eingegeben wird, wird die Einstellung des Xcode-Projekts verwendet.


provisioningProfileUuid - Bereitstellungsprofil-UUID
string. Optional. Verwenden Sie , wenn signingOption = manual.

Gibt die UUID eines installierten Bereitstellungsprofils an, das für den Build verwendet wird. Verwenden Sie separate Buildaufgaben mit verschiedenen Schemas oder Zielen, um Bereitstellungsprofile nach Ziel in einem einzelnen Arbeitsbereich (iOS, tvOS, watchOS) anzugeben.


teamId - Team-ID
string. Optional. Verwenden Sie , wenn signingOption = auto.

Erforderlich, wenn Sie Mitglied mehrerer Entwicklungsteams sind. Gibt die 10-stellige Entwicklungsteam-ID an.


destinationPlatformOption - Zielplattform
string. Zulässige Werte: default, iOS (iOS und watchOS), tvOS, macOS, custom. Standardwert. default.

Gibt die Plattform des Zielgeräts an, die für Benutzeroberflächentests verwendet wird, wenn das generische Buildgerät ungültig ist. Wählen Sie Custom aus, um eine Plattform anzugeben, die nicht in der Liste enthalten ist. Wenn Default ausgewählt ist, werden keine Simulatoren oder Geräte als Ziel verwendet.


destinationPlatform - Benutzerdefinierte Zielplattform
string. Optional. Verwenden Sie , wenn destinationPlatformOption == custom.

Gibt die Plattform eines Zielgeräts an, die für Benutzeroberflächentests verwendet wird, wenn das generische Buildgerät ungültig ist.


destinationTypeOption - Zieltyp
string. Optional. Verwenden Sie , wenn destinationPlatformOption != default && destinationPlatformOption != macOS. Zulässige Werte: simulators (Simulator), devices (Verbundenes Gerät). Standardwert. simulators.

Gibt den Zieltyp an, der für Benutzeroberflächentests verwendet wird. Geräte müssen über eine Kabel- oder Netzwerkverbindung mit dem Mac verbunden sein, der den Build ausführt. Weitere Informationen finden Sie unter Geräte und Simulatoren in Xcode.


destinationSimulators - Simulator
string. Optional. Verwenden Sie , wenn destinationPlatformOption != default && destinationPlatformOption != macOS && destinationTypeOption == simulators. Standardwert. iPhone 7.

Gibt einen Xcode-Simulatornamen an, der für Benutzeroberflächentests verwendet wird. Beispiel iPhone X : (iOS und watchOS) oder Apple TV 4K (tvOS). Eine optionale Zielbetriebssystemversion kann im Format OS=<versionNumber>angegeben werden, z. B iPhone X,OS=11.1. . Erfahren Sie mehr über installierte Simulatoren im gehosteten macOS Preview-Agent.


destinationDevices - Gerät
string. Optional. Verwenden Sie , wenn destinationPlatformOption != default && destinationPlatformOption != macOS && destinationTypeOption == devices.

Gibt den Namen des Geräts an, das für Benutzeroberflächentests verwendet wird, z. B Raisa's iPad. .


args - Argumente
string.

Optional. Gibt zusätzliche Befehlszeilenargumente an, mit denen erstellt werden soll. Diese Eingabe ist nützlich, um argumente anstelle -project eines Arbeitsbereichs/Projekts und schemas anzugeben-target. Weitere Informationen finden Sie unter Apple: Erstellen über die Befehlszeile mit Xcode FAQ.


workingDirectory - Arbeitsverzeichnis
Eingabealias: cwd. string.

Optional. Gibt das Arbeitsverzeichnis an, in dem der Build ausgeführt werden soll. Wenn kein Wert eingegeben wird, wird der Stamm des Repositorys verwendet.


outputPattern - Ausgabeverzeichnis
string.

Optional. Gibt einen relativen Pfad zum Arbeitsverzeichnis an, in dem die Buildausgabe (Binärdateien) platziert wird. Beispiel: output/$(SDK)/$(Configuration) oder output/$(TestSDK)/$(TestConfiguration). Archiv- und Exportpfade werden separat konfiguriert. Geben Sie Werte auf der Registerkarte Variablen an.


useXcpretty - Verwenden von xcpretty
boolean. Standardwert. false.

Gibt an, ob zum Formatieren xcodebuild der Ausgabe verwendet xcpretty werden soll, und generiert JUnit-Testergebnisse. xcpretty muss auf dem Agent-Computer installiert sein (Er ist auf VSTS gehosteten Build-Agents vorinstalliert). Weitere Informationen finden Sie unter xcpretty .


publishJUnitResults - Veröffentlichen von Testergebnissen in VSTS/TFS
boolean. Standardwert. false.

Wenn xcpretty aktiviert ist, gibt diese Eingabe an, ob die JUnit-Testergebnisse in VSTS/TFS veröffentlicht werden sollen.


Aufgabensteuerungsoptionen

Alle Aufgaben verfügen zusätzlich zu den Aufgabeneingaben über Steuerungsoptionen. Weitere Informationen finden Sie unter Steuerungsoptionen und allgemeine Aufgabeneigenschaften.

Ausgabevariablen

Keine.

Hinweise

Verwenden Sie diese Aufgabe, um einen Xcode-Arbeitsbereich unter macOS zu erstellen.

Beispiele

Anforderungen

Anforderung BESCHREIBUNG
Pipelinetypen YAML, Klassischer Build
Wird ausgeführt auf Agent, DeploymentGroup
Forderungen Selbstgehostete Agents müssen über Funktionen verfügen, die den folgenden Anforderungen entsprechen , um Aufträge auszuführen, die diese Aufgabe verwenden: xcode
Capabilities Diese Aufgabe erfüllt keine Anforderungen an nachfolgende Aufgaben im Auftrag.
Befehlseinschränkungen Any
Einstellbare Variablen Any
Agent-Version Alle unterstützten Agent-Versionen.
Aufgabenkategorie Entwickeln