Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Verwenden Sie diese Aufgabe, um einen Xcode-Arbeitsbereich unter macOS zu erstellen, zu testen oder zu archivieren und optional eine App zu verpacken.
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.
Eingänge
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
. Beispielsweise führtclean build
einen sauberen Build aus. Siehe Apple: Erstellen über die Befehlszeile mit Xcode FAQ.
configuration
-
Konfiguration
string
. Standardwert: $(Configuration)
.
Gibt die zu erstellende Xcode-Projekt- oder Arbeitsbereichskonfiguration an. Geben Sie bei Verwendung einer Variablen einen Wert (z. B. Release
) 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 xcodebuild -showsdks
aus, um die gültige Liste der SDKs anzuzeigen. Geben Sie bei Verwendung einer Variablen einen Wert (z. B. iphonesimulator
) auf der Registerkarte Variablen an.
xcWorkspacePath
-
Arbeitsbereich oder Projektpfad
string
. Standardwert: **/*.xcodeproj/project.xcworkspace
.
Wahlfrei. 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 in erweiterten Argumenten -target flag
angeben. Beispiel: MyApp/MyApp.xcworkspace
oder MyApp/MyApp.xcodeproj
.
scheme
-
Schema-
string
.
Wahlfrei. Gibt einen Xcode-Schemanamen an. Muss ein freigegebenes Schema sein (freigegebenes Kontrollkästchen unter verwalteten 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 Default
aus, um die Standardversion von Xcode auf dem Agentcomputer zu verwenden. Die Angabe einer Versionsnummer (z. B. Xcode 9
) basiert auf dem Speicherort der Version, die von Umgebungsvariablen auf dem Agentcomputer festgelegt werden soll (z. B. XCODE_9_DEVELOPER_DIR=/Applications/Xcode_9.0.0.app/Contents/Developer
). Wählen Sie Specify path
aus, um einen bestimmten Pfad zum Xcode-Entwicklerverzeichnis bereitzustellen.
xcodeDeveloperDir
-
Xcode-Entwicklerpfad
string
. Wahlfrei. Wird verwendet, 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 Agentcomputer installiert werden.
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
. Wahlfrei. Wird verwendet, wenn packageApp == true
.
Gibt ein Verzeichnis an, in dem erstellte Archive platziert werden.
exportPath
-
Exportpfad
string
. Wahlfrei. Wird verwendet, wenn packageApp == true
. Standardwert: output/$(SDK)/$(Configuration)
.
Gibt das Ziel für das aus dem Archiv exportierte Produkt an.
exportOptions
-
Exportoptionen
string
. Wahlfrei. Wird verwendet, 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 Plist
aus, um eine plist-Datei anzugeben, die Exportoptionen enthält. Wählen Sie Specify
aus, um eine bestimmte Exportmethode und Team-IDbereitzustellen.
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
. Wahlfrei. Wird verwendet, wenn exportOptions == specify
.
Gibt die 10-stellige Team-ID des Apple Developer Portals an, die während des Exports verwendet werden soll.
exportOptionsPlist
-
Exportoptionen
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
. Wahlfrei. Wird verwendet, wenn packageApp == true
.
Gibt zusätzliche Befehlszeilenargumente an, die während des Exports 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 Do not code sign
aus, um die Signatur zu deaktivieren. Wählen Sie Project defaults
aus, um nur die Signaturkonfiguration des Projekts zu verwenden. Wählen Sie Manual signing
aus, um die manuelle Signatur zu erzwingen und optional eine Signaturidentität und ein Bereitstellungsprofil anzugeben. Wählen Sie Automatic signing
aus, um die automatische Signatur zu erzwingen und optional eine Entwicklungsteam-ID anzugeben. Wenn Ihr Projekt signieren muss, verwenden Sie die Installieren von Apple... Aufgaben, um Zertifikate und Bereitstellungsprofile vor dem Xcode-Build zu installieren.
signingIdentity
-
Signieren der Identität
string
. Wahlfrei. Wird verwendet, wenn signingOption = manual
.
Gibt eine Signaturidentitätsüberschreibung an, mit der der Build signiert werden soll. Das Entsperren des Standardschlüsselbunds auf dem Agentcomputer ist möglicherweise erforderlich. Wenn kein Wert eingegeben wird, wird die Einstellung des Xcode-Projekts verwendet.
provisioningProfileUuid
-
Bereitstellungsprofil-UUID-
string
. Wahlfrei. Wird verwendet, 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 einzigen Arbeitsbereich (iOS, tvOS, watchOS) anzugeben.
teamId
-
Team-ID
string
. Wahlfrei. Wird verwendet, wenn signingOption = auto
.
Erforderlich, wenn Sie Mitglied mehrerer Entwicklungsteams sind. Gibt die 10-stellige Team-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 UI-Tests 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, sind keine Simulatoren oder Geräte ausgerichtet.
destinationPlatform
-
benutzerdefinierte Zielplattform
string
. Wahlfrei. Wird verwendet, wenn destinationPlatformOption == custom
.
Gibt die Plattform eines Zielgeräts an, die für UI-Tests verwendet wird, wenn das generische Buildgerät ungültig ist.
destinationTypeOption
-
Zieltyp
string
. Wahlfrei. Wird verwendet, wenn destinationPlatformOption != default && destinationPlatformOption != macOS
. Zulässige Werte: simulators
(Simulator), devices
(verbundenes Gerät). Standardwert: simulators
.
Gibt den Zieltyp an, der zum Testen der Benutzeroberfläche verwendet wird. Geräte müssen mit dem Mac verbunden sein, der den Build über eine Kabel- oder Netzwerkverbindung durchführt. Weitere Informationen finden Sie unter Geräte und Simulatoren in Xcode.
destinationSimulators
-
Simulator
string
. Wahlfrei. Wird verwendet, wenn destinationPlatformOption != default && destinationPlatformOption != macOS && destinationTypeOption == simulators
. Standardwert: iPhone 7
.
Gibt einen Xcode-Simulatornamen an, der für UI-Tests 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 installierten Simulatoren auf dem gehosteten macOS Preview-Agent.
destinationDevices
-
Gerät
string
. Wahlfrei. Wird verwendet, wenn destinationPlatformOption != default && destinationPlatformOption != macOS && destinationTypeOption == devices
.
Gibt den Namen des Geräts an, das zum Testen der Benutzeroberfläche verwendet wird, z. B. Raisa's iPad
.
args
-
Argumente
string
.
Wahlfrei. Gibt zusätzliche Befehlszeilenargumente an, mit denen erstellt werden soll. Diese Eingabe eignet sich zum Angeben -target
oder -project
Argumente anstelle eines Arbeitsbereichs/Projekts und schemas. Siehe Apple: Erstellen über die Befehlszeile mit Xcode FAQ.
workingDirectory
-
Arbeitsverzeichnis
Eingabealias: cwd
.
string
.
Wahlfrei. 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
.
Wahlfrei. Gibt einen relativen Pfad zum Arbeitsverzeichnis an, in dem die Buildausgabe (Binärdateien) platziert werden. Beispiel: output/$(SDK)/$(Configuration)
oder output/$(TestSDK)/$(TestConfiguration)
. Archiv- und Exportpfade werden separat konfiguriert. Geben Sie Werte auf der Registerkarte Variablenan.
useXcpretty
-
Xcpretty- verwenden
boolean
. Standardwert: false
.
Gibt an, ob xcpretty
verwendet werden soll, um xcodebuild
Ausgabe zu formatieren, und generiert JUnit-Testergebnisse.
xcpretty
muss auf dem Agentcomputer installiert werden (es ist auf vom 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 ihren Aufgabeneingaben über Steuerungsoptionen. Weitere Informationen finden Sie unter Steuerelementoptionen und allgemeinen Aufgabeneigenschaften.
Ausgabevariablen
Keiner.
Bemerkungen
Verwenden Sie diese Aufgabe, um einen Xcode-Arbeitsbereich unter macOS zu erstellen.
Beispiele
Anforderungen
Anforderung | BESCHREIBUNG |
---|---|
Pipelinetypen | YAML, klassischer Build |
Läuft auf | Agent, DeploymentGroup |
Anforderungen | Self-hosted agents must have capabilities that match the following anforderungen to run jobs that use this task: xcode: |
Funktionen | Dieser Vorgang erfüllt keine Anforderungen für nachfolgende Vorgänge im Auftrag. |
Befehlseinschränkungen | Jegliche |
Settable-Variablen | Jegliche |
Agentversion | Alle unterstützten Agentversionen. |
Vorgangskategorie | Bauen |