Partilhar via


AppCenterDistribute@3 - App Center distribuir tarefa v3

Use esta tarefa para distribuir compilações de aplicativos para testadores e usuários por meio do Visual Studio App Center.

Sintaxe

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

Insumos

serverEndpoint - de conexão de serviço do App Center
string. Obrigatório.

Seleciona a conexão de serviço para o Visual Studio App Center. Para criar uma, clique no link Manage e crie uma nova conexão de serviço.


appSlug - App slug
string. Obrigatório.

O aplicativo slug está no formato de {username}/{app_identifier}. Para localizar {username} e {app_identifier} de um aplicativo, clique em seu nome do App Center e o URL resultante está no formato de https://appcenter.ms/users/**{username}**/apps/**{app_identifier}**. Se você estiver usando orgs, o aplicativo slug é do formato {orgname}/{app_identifier}.


appFile - caminho do arquivo binário
Alias de entrada: app. string. Obrigatório.

O caminho relativo da raiz do repositório para o arquivo APK/AAB ou IPA que você deseja publicar.


buildVersion - Versão de compilação
string.

A versão de compilação do binário de upload que precisa ser especificado para .zip e .msi. Esse valor será ignorado, a menos que a plataforma seja WPF ou WinForms.


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

Inclui arquivos de símbolos para receber rastreamentos de pilha simbólicos no Diagnóstico do App Center.


symbolsPath - Caminho dos símbolos
string. Opcional. Use quando symbolsType == AndroidNative || symbolsType = Windows.

O caminho relativo da raiz do repositório para a pasta de símbolos.


appxsymPath - Caminho dos símbolos (*.appxsym)
string. Opcional. Use quando symbolsType = UWP.

O caminho relativo para o arquivo de símbolos APPXSYM. O caminho pode conter curingas.


symbolsDsymFiles - caminho dSYM
Alias de entrada: dsymPath. string. Opcional. Use quando symbolsType = Apple.

O caminho relativo da raiz do repositório para a pasta dSYM. O caminho pode conter curingas.


do arquivo de mapeamento symbolsMappingTxtFile -
Alias de entrada: mappingTxtPath. string. Opcional. Use quando symbolsType = Android.

O caminho relativo da raiz do repositório para o arquivo mapping.txt do Android.


nativeLibrariesPath - de caminho de arquivo da biblioteca nativa
string. Opcional. Use quando symbolsType == Android.

O caminho relativo da raiz do repositório para as bibliotecas nativas adicionais que você deseja publicar (por exemplo, arquivos .so).


symbolsIncludeParentDirectory - Incluir todos os itens na pasta pai
Alias de entrada: packParentFolder. boolean. Opcional. Use quando symbolsType = Apple.

Carrega o arquivo ou pasta de símbolos selecionados e todos os outros itens dentro da mesma pasta pai. Isso é necessário para aplicativos React Native.


releaseNotesOption - Criar notas de versão
Alias de entrada: releaseNotesSelection. string. Obrigatório. Valores permitidos: input (Inserir Notas de Versão), file (Selecionar Arquivo de Notas de Versão). Valor padrão: input.

As notas de versão serão anexadas à versão e mostradas aos testadores na página de instalação.


releaseNotesInput - Notas de versão
string. Necessário quando releaseNotesSelection = input.

As notas de versão para esta versão.


releaseNotesFile - Arquivo de notas de versão
string. Necessário quando releaseNotesSelection = file.

Seleciona um arquivo de texto codificado UTF-8 que contém as notas de versão para esta versão.


isMandatory - Exigir que os usuários atualizem para esta versão
boolean. Valor padrão: false.

O SDK de distribuição do App Center é necessário para exigir uma atualização. Os testadores são automaticamente solicitados a atualizar.


destinationType - Destino de lançamento
string. Obrigatório. Valores permitidos: groups, store. Valor padrão: groups.

Cada versão é distribuída para grupos ou uma loja.


distributionGroupId - IDs de destino
Alias de entrada: destinationGroupIds. string. Opcional. Use quando destinationType = groups.

As IDs dos grupos de distribuição que receberão a versão de compilação. Deixe-o vazio para usar o grupo padrão e use vírgulas ou ponto-e-vírgula para separar várias IDs.


destinationStoreId - ID de destino
string. Necessário quando destinationType = store.

As IDs do repositório de distribuição que receberá a versão de compilação.


isSilent - Não notifique os testadores. A versão ainda estará disponível para instalação.
boolean. Opcional. Use quando destinationType = groups.

Os testadores não recebem um e-mail para novas versões.


Opções de controlo de tarefas

Todas as tarefas têm opções de controle, além de suas entradas de tarefas. Para obter mais informações, consulte Opções de controle de e propriedades de tarefas comuns.

Variáveis de saída

Nenhum.

Observações

Use esta tarefa para distribuir compilações de aplicativos para testadores e usuários por meio do App Center.

Exemplos

Este pipeline de exemplo cria um aplicativo Android, executa testes e publica o aplicativo usando o 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'

Requerimentos

Requisito Descrição
Tipos de pipeline YAML, Construção clássica, Versão clássica
Funciona em Agente, DeploymentGroup
Exigências Nenhum
Capacidades Esta tarefa não satisfaz quaisquer exigências para tarefas subsequentes no trabalho.
Restrições de comando Qualquer
Variáveis configuráveis Qualquer
Versão do agente 2.206.1 ou superior
Categoria de tarefa Desplegar
Requisito Descrição
Tipos de pipeline YAML, Construção clássica, Versão clássica
Funciona em Agente, DeploymentGroup
Exigências Nenhum
Capacidades Esta tarefa não satisfaz quaisquer exigências para tarefas subsequentes no trabalho.
Restrições de comando Qualquer
Variáveis configuráveis Qualquer
Versão do agente 2.144.0 ou superior
Categoria de tarefa Desplegar
Requisito Descrição
Tipos de pipeline YAML, Construção clássica, Versão clássica
Funciona em Agente, DeploymentGroup
Exigências Nenhum
Capacidades Esta tarefa não satisfaz quaisquer exigências para tarefas subsequentes no trabalho.
Restrições de comando Qualquer
Variáveis configuráveis Qualquer
Versão do agente Todas as versões de agente suportadas.
Categoria de tarefa Desplegar