Partage via


Xcode@4 - Tâche Xcode v4

Utilisez cette tâche pour générer, tester ou archiver un espace de travail Xcode sur macOS et éventuellement empaqueter une application.

Syntaxe

# 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.

Entrées

actions - Actions
string. Obligatoire. Valeur par défaut : build.

Spécifie une liste d’actions délimitées en espace. Les options valides sont build, clean, test, analyze et archive. Par exemple,clean build effectue une build propre. Consultez le FAQ Apple : Génération à partir de la ligne de commande avec Xcode.


configuration - Configuration
string. Valeur par défaut : $(Configuration).

Spécifie le projet Xcode ou la configuration de l’espace de travail à générer. Lorsque vous utilisez une variable, spécifiez une valeur (par exemple, Release) sous l’onglet Variables .


sdk - SDK
string. Valeur par défaut : $(SDK).

Spécifie un KIT de développement logiciel (SDK) à utiliser lors de la génération du projet ou de l’espace de travail Xcode. À partir de l’application terminal macOS, exécutez xcodebuild -showsdks pour afficher la liste valide des kits SDK. Lorsque vous utilisez une variable, spécifiez une valeur (par exemple, iphonesimulator) sous l’onglet Variables .


xcWorkspacePath - Chemin d’accès de l’espace de travail ou du projet
string. Valeur par défaut : **/*.xcodeproj/project.xcworkspace.

Optionnel. Spécifie un chemin relatif de la racine du dépôt vers l’espace de travail ou le projet Xcode. Si vous spécifiez une valeur, vous devez également spécifier le schéma. Ne spécifiez pas de valeur si vous spécifiez -target flag dans Arguments avancés. Par exemple, MyApp/MyApp.xcworkspace ou MyApp/MyApp.xcodeproj.


scheme - Régime
string.

facultatif. Spécifie un nom de schéma Xcode. Doit être un schéma partagé (case à cocher partagée sous Schémas managés dans Xcode). Si vous ne spécifiez pas de schéma et que l’espace de travail spécifié a un schéma partagé unique, le schéma d’espace de travail sera utilisé.


xcodeVersion - Version de Xcode
string. Valeurs autorisées : 8 (Xcode 8), 9 (Xcode 9), default, specifyPath (Spécifier le chemin). Valeur par défaut : default.

Spécifie la version cible de Xcode. Sélectionnez Default pour utiliser la version par défaut de Xcode sur l’ordinateur agent. La spécification d’un numéro de version (par exemple, Xcode 9) s’appuie sur l’emplacement de la version à définir par les variables d’environnement sur l’ordinateur agent (par exemple, XCODE_9_DEVELOPER_DIR=/Applications/Xcode_9.0.0.app/Contents/Developer). Sélectionnez Specify path pour fournir un chemin d’accès spécifique au répertoire du développeur Xcode.


xcodeDeveloperDir - Chemin du développeur Xcode
string. Optionnel. Utilisez quand xcodeVersion == specifyPath.

Spécifie un chemin d’accès à un répertoire de développeur Xcode spécifique (par exemple, /Applications/Xcode_9.0.0.app/Contents/Developer). Cette entrée est utile lorsque plusieurs versions de Xcode sont installées sur l’ordinateur agent.


packageApp - Créer un package d’application
boolean. Valeur par défaut : false.

Spécifie si un fichier de package d’application IPA doit être généré dans le cadre de la build.


archivePath - Chemin d’archivage
string. Optionnel. Utilisez quand packageApp == true.

Spécifie un répertoire dans lequel les archives créées sont placées.


exportPath - Chemin d’exportation
string. facultatif. Utilisez quand packageApp == true. Valeur par défaut : output/$(SDK)/$(Configuration).

Spécifie la destination du produit exporté à partir de l’archive.


exportOptions - Options d’exportation
string. facultatif. Utilisez quand packageApp == true. Valeurs autorisées : auto (Automatique), plist, specify. Valeur par défaut : auto.

Spécifie les options d’exportation de l’archive. Lorsque la valeur par défaut de Automatic est sélectionnée, la méthode d’exportation est automatiquement détectée à partir de l’archive. Sélectionnez Plist pour spécifier un fichier plist contenant des options d’exportation. Sélectionnez Specify pour fournir une méthode d’exportation et un ID d’équipe spécifiques.


exportMethod - Export, méthode
string. Obligatoire lorsque exportOptions == specify. Valeur par défaut : development.

Spécifie la méthode utilisée par Xcode pour exporter l’archive. Par exemple : app-store, package, ad-hoc, enterprise ou development.


exportTeamId - ID d’équipe
string. facultatif. Utilisez quand exportOptions == specify.

Spécifie l’ID d’équipe à 10 caractères du portail des développeurs Apple à utiliser pendant l’exportation.


exportOptionsPlist - Options d’exportation plist
string. Obligatoire lorsque exportOptions == plist.

Spécifie le chemin d’accès au fichier plist qui contient des options à utiliser pendant l’exportation.


exportArgs - Exporter des arguments
string. Optionnel. Utilisez quand packageApp == true.

Spécifie les arguments de ligne de commande supplémentaires utilisés pendant l’exportation.


signingOption - Style de signature
string. Valeurs autorisées : nosign (Ne pas coder le signe), default (Valeurs par défaut du projet), manual (Signature manuelle), auto (Signature automatique). Valeur par défaut : nosign.

Spécifie la méthode de signature de la build. Sélectionnez Do not code sign pour désactiver la signature. Sélectionnez Project defaults pour utiliser uniquement la configuration de signature du projet. Sélectionnez Manual signing pour forcer la signature manuelle et éventuellement spécifier une identité de signature et un profil d’approvisionnement. Sélectionnez Automatic signing pour forcer la signature automatique et éventuellement spécifier un ID d’équipe de développement. Si votre projet nécessite une signature, utilisez les tâches Installer Apple... pour installer des certificats et des profils d’approvisionnement avant la build Xcode.


signingIdentity - Identité de signature
string. Optionnel. Utilisez quand signingOption = manual.

Spécifie un remplacement d’identité de signature avec lequel signer la build. Le déverrouillage du trousseau par défaut sur l’ordinateur de l’agent peut être nécessaire. Si aucune valeur n’est entrée, le paramètre du projet Xcode est utilisé.


provisioningProfileUuid - UUID de profil d’approvisionnement
string. Optionnel. Utilisez quand signingOption = manual.

Spécifie l’UUID d’un profil d’approvisionnement installé utilisé pour la build. Utilisez des tâches de génération distinctes avec différents schémas ou cibles pour spécifier des profils de provisionnement par cible dans un espace de travail unique (iOS, tvOS, watchOS).


teamId - ID d’équipe
string. Optionnel. Utilisez quand signingOption = auto.

Obligatoire si vous êtes membre de plusieurs équipes de développement. Spécifie l’ID d’équipe de développement à 10 caractères.


destinationPlatformOption - Plateforme de destination
string. Valeurs autorisées : default, iOS (iOS et watchOS), tvOS, macOS, custom. Valeur par défaut : default.

Spécifie la plateforme de l’appareil de destination utilisée pour les tests d’interface utilisateur lorsque l’appareil de build générique n’est pas valide. Choisissez Custom de spécifier une plateforme non incluse dans la liste. Quand Default est sélectionné, aucun simulateur ou appareil n’est ciblé.


destinationPlatform - Plateforme de destination personnalisée
string. Optionnel. Utilisez quand destinationPlatformOption == custom.

Spécifie la plateforme d’un appareil de destination utilisée pour les tests de l’interface utilisateur lorsque l’appareil de build générique n’est pas valide.


destinationTypeOption - Type de destination
string. facultatif. Utilisez quand destinationPlatformOption != default && destinationPlatformOption != macOS. Valeurs autorisées : simulators (Simulateur), devices (Appareil connecté). Valeur par défaut : simulators.

Spécifie le type de destination utilisé pour le test de l’interface utilisateur. Les appareils doivent être connectés au Mac effectuant la génération via un câble ou une connexion réseau. Pour plus d’informations, consultez Appareils et simulateurs dans Xcode.


destinationSimulators - Simulateur
string. Optionnel. Utilisez quand destinationPlatformOption != default && destinationPlatformOption != macOS && destinationTypeOption == simulators. Valeur par défaut : iPhone 7.

Spécifie un nom de simulateur Xcode utilisé pour les tests de l’interface utilisateur. Par exemple, iPhone X (iOS et watchOS) ou Apple TV 4K (tvOS). Une version facultative du système d’exploitation cible peut être spécifiée au format OS=<versionNumber>, par iPhone X,OS=11.1exemple . En savoir plus sur les simulateurs installés sur l’agent d’évaluation macOS hébergé.


destinationDevices - Appareil
string. Optionnel. Utilisez quand destinationPlatformOption != default && destinationPlatformOption != macOS && destinationTypeOption == devices.

Spécifie le nom de l’appareil utilisé pour le test de l’interface utilisateur, par exemple Raisa's iPad.


args - Arguments
string.

Optionnel. Spécifie des arguments de ligne de commande supplémentaires avec lesquels générer. Cette entrée est utile pour spécifier des -target arguments ou -project au lieu d’un espace de travail/projet et d’un schéma. Consultez le FAQ Apple : Génération à partir de la ligne de commande avec Xcode.


workingDirectory - Répertoire de travail
Alias d’entrée : cwd. string.

Optionnel. Spécifie le répertoire de travail dans lequel exécuter la build. Si aucune valeur n’est entrée, la racine du dépôt est utilisée.


outputPattern - Répertoire de sortie
string.

Optionnel. Spécifie un chemin d’accès relatif au répertoire de travail où la sortie de build (binaires) est placée. Par exemple, output/$(SDK)/$(Configuration) ou output/$(TestSDK)/$(TestConfiguration). Les chemins d’archivage et d’exportation sont configurés séparément. Spécifiez des valeurs sous l’onglet Variables.


useXcpretty - Utiliser xcpretty
boolean. Valeur par défaut : false.

Spécifie s’il faut utiliser pour mettre xcpretty en forme xcodebuild la sortie et génère les résultats des tests JUnit. xcpretty doit être installé sur l’ordinateur agent (il est préinstallé sur les agents de build hébergés par VSTS). Pour plus d’informations, consultez xcpretty .


publishJUnitResults - Publier les résultats des tests sur VSTS/TFS
boolean. Valeur par défaut : false.

Si xcpretty est activé, cette entrée spécifie s’il faut publier les résultats du test JUnit sur VSTS/TFS.


Options de contrôle des tâches

Toutes les tâches ont des options de contrôle en plus de leurs entrées de tâches. Pour plus d’informations, consultez Options de contrôle et propriétés de tâche courantes.

Variables de sortie

Aucun.

Notes

Utilisez cette tâche pour créer un espace de travail Xcode sur macOS.

Exemples

Spécifications

Condition requise Description
Types de pipelines YAML, build classique
S’exécute sur Agent, DeploymentGroup
Demandes Les agents auto-hébergés doivent avoir des fonctionnalités qui correspondent aux exigences suivantes pour exécuter des travaux qui utilisent cette tâche : xcode
Capabilities Cette tâche ne répond à aucune demande pour les tâches suivantes dans le travail.
Restrictions de commande Quelconque
Variables paramétrables Quelconque
Version de l’agent Toutes les versions d’agent prises en charge.
Catégorie de la tâche Build