Compartir vía


AppCenterDistribute@3: tarea distribuir v3 de App Center

Use esta tarea para distribuir compilaciones de aplicaciones a evaluadores y usuarios a través de Visual Studio App Center.

Syntax

# 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.
# 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. 
    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'. Alias: symbolsType. Symbols type. Default: Apple.
    #symbolsPath: # string. Optional. Use when symbolsType == AndroidNative || symbolsType = Windows. Symbols path. 
    #symbolsPdbFiles: '**/*.pdb' # string. Alias: pdbPath. Optional. Use when symbolsType = UWP. Symbols path (*.pdb). Default: **/*.pdb.
    #symbolsDsymFiles: # string. Alias: dsymPath. Optional. Use when symbolsType = Apple. dSYM path. 
    #symbolsMappingTxtFile: # string. Alias: mappingTxtPath. Optional. Use when symbolsType = Android. Mapping file. 
    #symbolsIncludeParentDirectory: # boolean. Alias: packParentFolder. Optional. Use when symbolsType = Apple. Include all items in parent folder.

Entradas

serverEndpoint - Conexión del servicio App Center
string. Obligatorio.

Selecciona la conexión de servicio para Visual Studio App Center. Para crear una, haga clic en el Manage vínculo y cree una nueva conexión de servicio.


appSlug - Aplicación slug
string. Obligatorio.

El slug de la aplicación tiene el formato de {username}/{app_identifier}. Para buscar {username} y {app_identifier} para una aplicación, haga clic en su nombre desde App Center y la dirección URL resultante tiene el formato .https://appcenter.ms/users/**{username}**/apps/**{app_identifier}** Si usa organizaciones, el slug de la aplicación tiene el formato {orgname}/{app_identifier}.


appFile - Ruta de acceso del archivo binario
Alias de entrada: app. string. Obligatorio.

Ruta de acceso relativa de la raíz del repositorio al archivo APK/AAB o IPA que desea publicar.


buildVersion - Versión de compilación
string.

Versión de compilación del binario de carga que debe especificarse para .zip y .msi. Este valor se ignorará, a menos que la plataforma sea WPF o WinForms.


symbolsOption - Tipo de símbolos
Alias de entrada: symbolsType. string. Valores permitidos: Apple, Android y UWP. Valor predeterminado: Apple.

Incluye archivos de símbolos para recibir seguimientos simbólicos de la pila en Diagnósticos de App Center.


symbolsOption - Tipo de símbolos
Alias de entrada: symbolsType. string. Valores permitidos: Apple, Android. Valor predeterminado: Apple.

Incluye archivos de símbolos para recibir seguimientos simbólicos de la pila en Diagnósticos de App Center.


symbolsPath - Ruta de acceso de símbolos
string. Opcional. Use cuando symbolsType == AndroidNative || symbolsType = Windows.

Ruta de acceso relativa de la raíz del repositorio a la carpeta de símbolos.


appxsymPath - Ruta de acceso de símbolos (*.appxsym)
string. Opcional. Use cuando symbolsType = UWP.

Ruta de acceso relativa al archivo de símbolos APPXSYM. La ruta de acceso puede contener caracteres comodín.


symbolsDsymFiles - ruta de acceso de dSYM
Alias de entrada: dsymPath. string. Opcional. Use cuando symbolsType = Apple.

Ruta de acceso relativa de la raíz del repositorio a la carpeta dSYM. La ruta de acceso puede contener caracteres comodín.


symbolsMappingTxtFile - Archivo de asignación
Alias de entrada: mappingTxtPath. string. Opcional. Use cuando symbolsType = Android.

Ruta de acceso relativa desde la raíz del repositorio al archivo de mapping.txt Android.


nativeLibrariesPath - Ruta de acceso del archivo de biblioteca nativa
string. Opcional. Use cuando symbolsType == Android.

Ruta de acceso relativa de la raíz del repositorio a las bibliotecas nativas adicionales que desea publicar (por ejemplo, archivos .so).


symbolsIncludeParentDirectory - Incluir todos los elementos en la carpeta primaria
Alias de entrada: packParentFolder. boolean. Opcional. Use cuando symbolsType = Apple.

Carga el archivo o carpeta de símbolos seleccionados y todos los demás elementos dentro de la misma carpeta primaria. Esto es obligatorio para las aplicaciones de React Native.


releaseNotesOption - Crear notas de la versión
Alias de entrada: releaseNotesSelection. string. Obligatorio. Valores permitidos: input (Escriba notas de la versión), file (seleccione Archivo de notas de la versión). Valor predeterminado: input.

Las notas de la versión se adjuntarán a la versión y se mostrarán a los evaluadores en la página de instalación.


releaseNotesInput - Notas
string. Necesario cuando releaseNotesSelection = input.

Notas de la versión de esta versión.


releaseNotesFile - Archivo de notas de la versión
string. Necesario cuando releaseNotesSelection = file.

Selecciona un archivo de texto codificado UTF-8 que contiene las notas de la versión de esta versión.


isMandatory - Requerir que los usuarios actualicen a esta versión
boolean. Valor predeterminado: false.

El SDK de Distribución de App Center necesario para exigir una actualización. A los evaluadores se les pide que se actualicen automáticamente.


destinationType - Destino de la versión
string. Obligatorio. Valores permitidos: groups, store. Valor predeterminado: groups.

Cada versión se distribuye a grupos o a un almacén.


distributionGroupId - Identificadores de destino
Alias de entrada: destinationGroupIds. string. Opcional. Use cuando destinationType = groups.

Los identificadores de los grupos de distribución que recibirán la versión de compilación. Déjelo vacío para usar el grupo predeterminado y use comas o punto y coma para separar varios identificadores.


destinationStoreId - Id. de destino
string. Necesario cuando destinationType = store.

Los identificadores del almacén de distribución que recibirán la versión de compilación.


isSilent - No notifique a los evaluadores. La versión seguirá estando disponible para instalarse.
boolean. Opcional. Use cuando destinationType = groups.

Los evaluadores no reciben un correo electrónico para nuevas versiones.


symbolsPdbFiles - Ruta de acceso de símbolos (*.pdb)
Alias de entrada: pdbPath. string. Opcional. Use cuando symbolsType = UWP. Valor predeterminado: **/*.pdb.

Ruta de acceso relativa de la raíz del repositorio a archivos de símbolos de PDB. La ruta de acceso puede contener caracteres comodín.


Opciones de control de tareas

Todas las tareas tienen opciones de control además de las entradas de tareas. Para obtener más información, vea Opciones de control y propiedades de tareas comunes.

Variables de salida

Ninguno.

Comentarios

Use esta tarea para distribuir compilaciones de aplicaciones entre evaluadores y usuarios a través de App Center.

Ejemplos

En esta canalización de ejemplo se compila una aplicación de Android, se ejecutan pruebas y se publica la aplicación con Distribución de App Center.

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

Requisitos

Requisito Descripción
Tipos de canalización YAML, compilación clásica, versión clásica
Se ejecuta en Agente, DeploymentGroup
Peticiones None
Capabilities Esta tarea no satisface ninguna demanda de tareas posteriores en el trabajo.
Restricciones de comandos Any
Variables que se pueden establecer Any
Versión del agente 2.206.1 o superior
Categoría de la tarea: Implementar
Requisito Descripción
Tipos de canalización YAML, compilación clásica, versión clásica
Se ejecuta en Agente, DeploymentGroup
Peticiones None
Capabilities Esta tarea no satisface ninguna demanda de tareas posteriores en el trabajo.
Restricciones de comandos Any
Variables que se pueden establecer Any
Versión del agente 2.144.0 o superior
Categoría de la tarea: Implementar
Requisito Descripción
Tipos de canalización YAML, compilación clásica, versión clásica
Se ejecuta en Agente, DeploymentGroup
Peticiones None
Capabilities Esta tarea no satisface ninguna demanda de tareas posteriores en el trabajo.
Restricciones de comandos Any
Variables que se pueden establecer Any
Versión del agente Todas las versiones de agente admitidas.
Categoría de la tarea: Implementación