Notes
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Utilisez cette tâche pour distribuer des builds d’application aux testeurs et aux utilisateurs via Visual Studio App Center.
Syntaxe
# App Center distribute v3
# Distribute app builds to testers and users via Visual Studio App Center.
- task: AppCenterDistribute@3
inputs:
serverEndpoint: # string. Required. App Center service connection.
appSlug: # string. Required. App slug.
appFile: # string. Alias: app. Required. Binary file path.
#buildVersion: # string. Build version.
releaseNotesOption: 'input' # 'input' | 'file'. Alias: releaseNotesSelection. Required. Create release notes. Default: input.
releaseNotesInput: # string. Required when releaseNotesSelection = input. Release notes.
#releaseNotesFile: # string. Required when releaseNotesSelection = file. Release notes file.
#isMandatory: false # boolean. Require users to update to this release. Default: false.
destinationType: 'groups' # 'groups' | 'store'. Required. Release destination. Default: groups.
#distributionGroupId: # string. Alias: destinationGroupIds. Optional. Use when destinationType = groups. Destination IDs.
#destinationStoreId: # string. Required when destinationType = store. Destination ID.
#isSilent: # boolean. Optional. Use when destinationType = groups. Do not notify testers. Release will still be available to install.
# Symbols
#symbolsOption: 'Apple' # 'Apple' | 'Android' | 'UWP'. Alias: symbolsType. Symbols type. Default: Apple.
#symbolsPath: # string. Optional. Use when symbolsType == AndroidNative || symbolsType = Windows. Symbols path.
#appxsymPath: # string. Optional. Use when symbolsType = UWP. Symbols path (*.appxsym).
#symbolsDsymFiles: # string. Alias: dsymPath. Optional. Use when symbolsType = Apple. dSYM path.
#symbolsMappingTxtFile: # string. Alias: mappingTxtPath. Optional. Use when symbolsType = Android. Mapping file.
#nativeLibrariesPath: # string. Optional. Use when symbolsType == Android. Native Library File Path.
#symbolsIncludeParentDirectory: # boolean. Alias: packParentFolder. Optional. Use when symbolsType = Apple. Include all items in parent folder.
Entrées
serverEndpoint
-
de connexion au service App Center
string
. Obligatoire.
Sélectionne la connexion de service pour Visual Studio App Center. Pour en créer un, cliquez sur le lien Manage
et créez une connexion de service.
appSlug
-
de l’application
string
. Obligatoire.
L’application est au format {username}/{app_identifier}
. Pour localiser {username}
et {app_identifier}
pour une application, cliquez sur son nom à partir de App Center, et l’URL résultante est au format de https://appcenter.ms/users/**{username}**/apps/**{app_identifier}**
. Si vous utilisez des organisations, l’application est au format {orgname}/{app_identifier}
.
appFile
-
chemin d’accès au fichier binaire
Alias d’entrée : app
.
string
. Obligatoire.
Chemin relatif de la racine du dépôt vers le fichier APK/AAB ou IPA que vous souhaitez publier.
buildVersion
-
Version de build
string
.
Version de build du binaire de chargement qui doit être spécifiée pour .zip
et .msi
. Cette valeur est ignorée, sauf si la plateforme est WPF ou WinForms.
type symboles symbolsOption
-
Alias d’entrée : symbolsType
.
string
. Valeurs autorisées : Apple
, Android
, UWP
. Valeur par défaut : Apple
.
Inclut des fichiers de symboles pour recevoir des traces de pile symboliques dans les diagnostics App Center.
chemin des symboles symbolsPath
-
string
. Optionnel. Utilisez quand symbolsType == AndroidNative || symbolsType = Windows
.
Chemin relatif de la racine du dépôt vers le dossier des symboles.
chemin des symboles appxsymPath
- (*.appxsym)
string
. Optionnel. Utilisez quand symbolsType = UWP
.
Chemin relatif du fichier de symboles APPXSYM. Le chemin d’accès peut contenir des caractères génériques .
symbolsDsymFiles
-
chemin dSYM
Alias d’entrée : dsymPath
.
string
. Optionnel. Utilisez quand symbolsType = Apple
.
Chemin relatif de la racine du dépôt vers le dossier dSYM. Le chemin d’accès peut contenir des caractères génériques .
symbolsMappingTxtFile
-
de fichier de mappage
Alias d’entrée : mappingTxtPath
.
string
. Optionnel. Utilisez quand symbolsType = Android
.
Chemin relatif de la racine du dépôt vers le fichier mapping.txt
d’Android.
nativeLibrariesPath
-
chemin d’accès au fichier de bibliothèque native
string
. Optionnel. Utilisez quand symbolsType == Android
.
Chemin relatif de la racine du dépôt vers les bibliothèques natives supplémentaires que vous souhaitez publier (par exemple, les fichiers .so).
symbolsIncludeParentDirectory
-
Inclure tous les éléments dans le dossier parent
Alias d’entrée : packParentFolder
.
boolean
. Optionnel. Utilisez quand symbolsType = Apple
.
Charge le fichier ou le dossier de symboles sélectionnés et tous les autres éléments du même dossier parent. Cela est nécessaire pour les applications React Native.
releaseNotesOption
-
Créer des notes de publication
Alias d’entrée : releaseNotesSelection
.
string
. Obligatoire. Valeurs autorisées : input
(Entrer les notes de publication), file
(sélectionner le fichier notes de publication). Valeur par défaut : input
.
Les notes de publication seront jointes à la version et affichées aux testeurs sur la page d’installation.
notes de publication releaseNotesInput
-
string
. Obligatoire lorsque releaseNotesSelection = input
.
Notes de publication de cette version.
releaseNotesFile
-
fichier de notes de publication
string
. Obligatoire lorsque releaseNotesSelection = file
.
Sélectionne un fichier texte encodé UTF-8 qui contient les notes de publication de cette version.
isMandatory
-
Exiger que les utilisateurs mettent à jour cette version
boolean
. Valeur par défaut : false
.
Le Kit de développement logiciel (SDK) De distribution App Center requis pour mandater une mise à jour. Les testeurs sont automatiquement invités à mettre à jour.
destinationType
-
destination release
string
. Obligatoire. Valeurs autorisées : groups
, store
. Valeur par défaut : groups
.
Chaque version est distribuée à des groupes ou à un magasin.
ID de destination distributionGroupId
-
Alias d’entrée : destinationGroupIds
.
string
. Optionnel. Utilisez quand destinationType = groups
.
ID des groupes de distribution qui recevront la version de build. Laissez-le vide pour utiliser le groupe par défaut et utilisez des virgules ou des points-virgules pour séparer plusieurs ID.
id de destination destinationStoreId
-
string
. Obligatoire lorsque destinationType = store
.
ID du magasin de distribution qui recevra la version de build.
isSilent
-
Ne pas avertir les testeurs. La version sera toujours disponible pour l’installation.
boolean
. Optionnel. Utilisez quand destinationType = groups
.
Les testeurs ne reçoivent pas d’e-mail pour les nouvelles versions.
Options de contrôle de la tâche
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.
Remarques
Utilisez cette tâche pour distribuer des builds d’application aux testeurs et aux utilisateurs via App Center.
- Inscrivez-vous d’abord sur App Center.
- Pour plus d’informations sur l’utilisation de cette tâche, consultez l’article de la documentation App Center Déployer des builds Azure DevOps avec App Center.
Exemples
Cet exemple de pipeline génère une application Android, exécute des tests et publie l’application à l’aide d’App Center Distribute.
# Android
# Build your Android project with Gradle.
# Add steps that test, sign, and distribute the APK, save build artifacts, and more:
# https://learn.microsoft.com/azure/devops/pipelines/ecosystems/android
pool:
vmImage: 'macOS-latest'
steps:
- script: sudo npm install -g appcenter-cli
- script: appcenter login --token {YOUR_TOKEN}
- task: Gradle@2
inputs:
workingDirectory: ''
gradleWrapperFile: 'gradlew'
gradleOptions: '-Xmx3072m'
publishJUnitResults: false
testResultsFiles: '**/TEST-*.xml'
tasks: build
- task: CopyFiles@2
inputs:
contents: '**/*.apk'
targetFolder: '$(build.artifactStagingDirectory)'
- task: PublishBuildArtifacts@1
inputs:
pathToPublish: '$(build.artifactStagingDirectory)'
artifactName: 'outputs'
artifactType: 'container'
# Run tests using the App Center CLI
- script: appcenter test run espresso --app "{APP_CENTER_SLUG}" --devices "{DEVICE}" --app-path {APP_FILE} --test-series "master" --locale "en_US" --build-dir {PAT_ESPRESSO} --debug
# Distribute the app
- task: AppCenterDistribute@3
inputs:
serverEndpoint: 'AppCenter'
appSlug: '$(APP_CENTER_SLUG)'
appFile: '$(APP_FILE)' # Relative path from the repo root to the APK or IPA file you want to publish
symbolsOption: 'Android'
releaseNotesOption: 'input'
releaseNotesInput: 'Here are the release notes for this version.'
destinationType: 'groups'
Spécifications
Besoin | Descriptif |
---|---|
Types de pipelines | YAML, Build Classique, Version Classique |
Exécutions sur | Agent, DeploymentGroup |
demandes | Aucun |
fonctionnalités de | Cette tâche ne répond à aucune demande de tâches ultérieures dans le travail. |
restrictions de commande | N'importe quel |
variables settables | N'importe quel |
Version de l’agent | 2.206.1 ou version ultérieure |
Catégorie de tâche | Déployer |
Besoin | Descriptif |
---|---|
Types de pipelines | YAML, Build Classique, Version Classique |
Exécutions sur | Agent, DeploymentGroup |
demandes | Aucun |
fonctionnalités de | Cette tâche ne répond à aucune demande de tâches ultérieures dans le travail. |
restrictions de commande | N'importe quel |
variables settables | N'importe quel |
Version de l’agent | 2.144.0 ou version ultérieure |
Catégorie de tâche | Déployer |
Besoin | Descriptif |
---|---|
Types de pipelines | YAML, Build Classique, Version Classique |
Exécutions sur | Agent, DeploymentGroup |
demandes | Aucun |
fonctionnalités de | Cette tâche ne répond à aucune demande de tâches ultérieures dans le travail. |
restrictions de commande | N'importe quel |
variables settables | N'importe quel |
Version de l’agent | Toutes les versions de l’agent prises en charge. |
Catégorie de tâche | Déployer |