Condividi tramite


AppCenterDistribute@3 - Attività distribuzione v3 di App Center

Usare questa attività per distribuire le compilazioni di app ai tester e agli utenti tramite Visual Studio App Center.

Sintassi

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

Input

serverEndpoint - Connessione al servizio App Center
string. Obbligatorio.

Seleziona la connessione al servizio per Visual Studio App Center. Per crearne uno, fare clic sul Manage collegamento e creare una nuova connessione al servizio.


appSlug - Lumaca dell'app
string. Obbligatorio.

L'app slug è nel formato di {username}/{app_identifier}. Per individuare e {app_identifier} per un'app, fare clic sul relativo nome da App Center e l'URL risultante {username} è nel formato di https://appcenter.ms/users/**{username}**/apps/**{app_identifier}**. Se si usano le organizzazioni, l'app è del formato {orgname}/{app_identifier}.


appFile - Percorso file binario
Alias di input: app. string. Obbligatorio.

Percorso relativo dalla radice del repository al file APK/AAB o IPA da pubblicare.


buildVersion - Versione di compilazione
string.

Versione di compilazione del file binario di caricamento che deve essere specificata per .zip e .msi. Questo valore verrà ignorato a meno che la piattaforma non sia WPF o WinForms.


symbolsOption - Tipo simboli
Alias di input: symbolsType. string. Valori consentiti: Apple, Android, UWP. Valore predefinito: Apple.

Include i file di simboli per ricevere tracce dello stack simbolico in Diagnostica di App Center.


symbolsOption - Tipo simboli
Alias di input: symbolsType. string. Valori consentiti: Apple, Android. Valore predefinito: Apple.

Include i file di simboli per ricevere tracce dello stack simbolico in Diagnostica di App Center.


symbolsPath - Percorso simboli
string. facoltativo. Usare quando symbolsType == AndroidNative || symbolsType = Windows.

Percorso relativo dalla radice del repository alla cartella simboli.


appxsymPath - Percorso simboli (*.appxsym)
string. facoltativo. Usare quando symbolsType = UWP.

Percorso relativo del file di simboli APPXSYM. Il percorso può contenere caratteri jolly.


symbolsDsymFiles - Percorso dSYM
Alias di input: dsymPath. string. facoltativo. Usare quando symbolsType = Apple.

Percorso relativo dalla radice del repository alla cartella dSYM. Il percorso può contenere caratteri jolly.


symbolsMappingTxtFile - File di mapping
Alias di input: mappingTxtPath. string. facoltativo. Usare quando symbolsType = Android.

Percorso relativo dalla radice del repository al file di mapping.txt Android.


nativeLibrariesPath - Percorso file della libreria nativa
string. facoltativo. Usare quando symbolsType == Android.

Percorso relativo dalla radice del repository alle librerie native aggiuntive da pubblicare (ad esempio file .so).


symbolsIncludeParentDirectory - Includere tutti gli elementi nella cartella padre
Alias di input: packParentFolder. boolean. facoltativo. Usare quando symbolsType = Apple.

Carica il file o la cartella dei simboli selezionati e tutti gli altri elementi all'interno della stessa cartella padre. Questa operazione è necessaria per le app React Native.


releaseNotesOption - Creare note sulla versione
Alias di input: releaseNotesSelection. string. Obbligatorio. Valori consentiti: input (Immettere note sulla versione), file (Selezionare File note sulla versione). Valore predefinito: input.

Le note sulla versione verranno associate alla versione e visualizzate ai tester nella pagina di installazione.


releaseNotesInput - Note sulla versione
string. Obbligatorio quando releaseNotesSelection = input.

Note sulla versione per questa versione.


releaseNotesFile - File note sulla versione
string. Obbligatorio quando releaseNotesSelection = file.

Seleziona un file di testo codificato UTF-8 che contiene le note sulla versione per questa versione.


isMandatory - Richiedere agli utenti di aggiornare questa versione
boolean. Valore predefinito: false.

App Center Distribute SDK necessario per richiedere un aggiornamento. I tester vengono richiesti automaticamente per l'aggiornamento.


destinationType - Destinazione rilascio
string. Obbligatorio. Valori consentiti: groups, store. Valore predefinito: groups.

Ogni versione viene distribuita a gruppi o a un archivio.


distributionGroupId - ID destinazione
Alias di input: destinationGroupIds. string. facoltativo. Usare quando destinationType = groups.

ID dei gruppi di distribuzione che riceveranno la versione di compilazione. Lasciare vuoto l'uso del gruppo predefinito e usare virgole o punti e virgola per separare più ID.


destinationStoreId - ID destinazione
string. Obbligatorio quando destinationType = store.

ID dell'archivio di distribuzione che riceverà la versione di compilazione.


isSilent - Non inviare notifiche ai tester. La versione sarà comunque disponibile per l'installazione.
boolean. facoltativo. Usare quando destinationType = groups.

I tester non ricevono un messaggio di posta elettronica per le nuove versioni.


symbolsPdbFiles - Percorso simboli (*.pdb)
Alias di input: pdbPath. string. facoltativo. Usare quando symbolsType = UWP. Valore predefinito: **/*.pdb.

Percorso relativo dalla radice del repository ai file dei simboli PDB. Il percorso può contenere caratteri jolly.


Opzioni di controllo delle attività

Tutte le attività dispongono di opzioni di controllo oltre ai relativi input attività. Per altre informazioni, vedere Opzioni di controllo e proprietà comuni delle attività.

Variabili di output

Nessuno.

Osservazioni

Usare questa attività per distribuire le compilazioni di app ai tester e agli utenti tramite App Center.

Esempio

Questa pipeline di esempio crea un'app Android, esegue test e pubblica l'app usando 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'

Requisiti

Requisito Descrizione
Tipi di pipeline YAML, build classica, versione classica
Esecuzione in Agente, DeploymentGroup
Richieste Nessuno
Capabilities Questa attività non soddisfa le richieste per le attività successive nel processo.
Restrizioni dei comandi Qualsiasi
Variabili impostabili Qualsiasi
Versione agente 2.206.1 o versione successiva
Categoria attività Distribuisci
Requisito Descrizione
Tipi di pipeline YAML, build classica, versione classica
Esecuzione in Agente, DeploymentGroup
Richieste Nessuno
Capabilities Questa attività non soddisfa le richieste per le attività successive nel processo.
Restrizioni dei comandi Qualsiasi
Variabili impostabili Qualsiasi
Versione agente 2.144.0 o versione successiva
Categoria attività Distribuisci
Requisito Descrizione
Tipi di pipeline YAML, build classica, versione classica
Esecuzione in Agente, DeploymentGroup
Richieste Nessuno
Capabilities Questa attività non soddisfa le richieste per le attività successive nel processo.
Restrizioni dei comandi Qualsiasi
Variabili impostabili Qualsiasi
Versione agente Tutte le versioni dell'agente supportate.
Categoria attività Distribuire