Sdílet prostřednictvím


AppCenterDistribute@3 – Distribuce úlohy App Center v3

Tuto úlohu použijte k distribuci sestavení aplikací testerům a uživatelům přes 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.

Vstupy

serverEndpoint - Připojení služby App Center
string. Povinná hodnota.

Vybere připojení služby pro Visual Studio App Center. Pokud ho chcete vytvořit, klikněte na Manage odkaz a vytvořte nové připojení služby.


appSlug - Slug aplikace
string. Povinná hodnota.

Slug aplikace je ve formátu {username}/{app_identifier}. Pokud chcete najít {username} aplikaci a {app_identifier} , klikněte na její název v App Center a výsledná adresa URL je ve formátu https://appcenter.ms/users/**{username}**/apps/**{app_identifier}**. Pokud používáte organizace, má slug aplikace formát {orgname}/{app_identifier}.


appFile - Cesta k binárnímu souboru
Vstupní alias: app. string. Povinná hodnota.

Relativní cesta z kořenového adresáře úložiště k souboru APK/AAB nebo IPA, který chcete publikovat.


buildVersion - Verze sestavení
string.

Verze sestavení nahrávajícího binárního souboru, která musí být zadána pro .zip a .msi. Tato hodnota bude ignorována, pokud platforma není WPF nebo WinForms.


symbolsOption - Typ symbolů
Vstupní alias: symbolsType. string. Povolené hodnoty: Apple, Android, UWP. Výchozí hodnota: Apple.

Obsahuje soubory symbolů pro příjem symbolických trasování zásobníku v diagnostice app center.


symbolsOption - Typ symbolů
Vstupní alias: symbolsType. string. Povolené hodnoty: Apple, Android. Výchozí hodnota: Apple.

Obsahuje soubory symbolů pro příjem symbolických trasování zásobníku v diagnostice app center.


symbolsPath - Cesta k symbolům
string. Nepovinný parametr. Použijte, když symbolsType == AndroidNative || symbolsType = Windows.

Relativní cesta z kořenového adresáře úložiště do složky symbols.


appxsymPath - Cesta k symbolům (*.appxsym)
string. Nepovinný parametr. Použijte, když symbolsType = UWP.

Relativní cesta k souboru symbolů APPXSYM Cesta může obsahovat zástupné cardy.


symbolsDsymFiles - Cesta dSYM
Vstupní alias: dsymPath. string. Nepovinný parametr. Použijte, když symbolsType = Apple.

Relativní cesta z kořenového adresáře úložiště do složky dSYM. Cesta může obsahovat zástupné cardy.


symbolsMappingTxtFile - Soubor mapování
Vstupní alias: mappingTxtPath. string. Nepovinný parametr. Použijte, když symbolsType = Android.

Relativní cesta z kořenového adresáře úložiště k souboru Androidu mapping.txt


nativeLibrariesPath - Cesta k souboru nativní knihovny
string. Nepovinný parametr. Použijte, když symbolsType == Android.

Relativní cesta z kořenového adresáře úložiště k dalším nativním knihovnám, které chcete publikovat (např. soubory .so).


symbolsIncludeParentDirectory - Zahrnout všechny položky v nadřazené složce
Vstupní alias: packParentFolder. boolean. Nepovinný parametr. Použijte, když symbolsType = Apple.

Nahraje soubor nebo složku vybraných symbolů a všechny ostatní položky ve stejné nadřazené složce. To se vyžaduje u React Native aplikací.


releaseNotesOption - Vytvoření poznámek k verzi
Vstupní alias: releaseNotesSelection. string. Povinná hodnota. Povolené hodnoty: input (Zadejte poznámky k verzi) file (vyberte Soubor poznámek k verzi). Výchozí hodnota: input.

Poznámky k verzi se přiloží k verzi a zobrazí se testerům na stránce instalace.


releaseNotesInput - Poznámky
string. Vyžaduje se, když releaseNotesSelection = input.

Poznámky k verzi pro tuto verzi


releaseNotesFile - Soubor s poznámkou k verzi
string. Vyžaduje se, když releaseNotesSelection = file.

Vybere textový soubor s kódováním UTF-8, který obsahuje poznámky k verzi pro tuto verzi.


isMandatory - Vyžadovat, aby uživatelé aktualizovali na tuto verzi
boolean. Výchozí hodnota: false.

Sada App Center Distribute SDK potřebná k vyžadování aktualizace. Testerům se automaticky zobrazí výzva k aktualizaci.


destinationType - Cíl verze
string. Povinná hodnota. Povolené hodnoty: groups, store. Výchozí hodnota: groups.

Každá verze se distribuuje do skupin nebo do úložiště.


distributionGroupId - Id cíle
Vstupní alias: destinationGroupIds. string. Nepovinný parametr. Použijte, když destinationType = groups.

ID distribučních skupin, které obdrží vydání buildu. Pokud chcete použít výchozí skupinu, ponechte ji prázdnou a k oddělení více ID použijte čárky nebo středníky.


destinationStoreId - ID cíle
string. Vyžaduje se, když destinationType = store.

ID distribučního úložiště, které obdrží vydání buildu.


isSilent - Neoznamujte testerům. Verze bude stále k dispozici k instalaci.
boolean. Nepovinný parametr. Použijte, když destinationType = groups.

Testeři nedostávají e-mail pro nové verze.


symbolsPdbFiles - Cesta k symbolům (*.pdb)
Vstupní alias: pdbPath. string. Nepovinný parametr. Použijte, když symbolsType = UWP. Výchozí hodnota: **/*.pdb.

Relativní cesta z kořenového adresáře úložiště k souborům symbolů PDB. Cesta může obsahovat zástupné cardy.


Možnosti ovládání úloh

Všechny úlohy mají kromě vstupů také možnosti ovládání. Další informace najdete v tématu Možnosti ovládacího prvku a běžné vlastnosti úlohy.

Výstupní proměnné

Žádné

Poznámky

Tuto úlohu použijte k distribuci sestavení aplikací testerům a uživatelům prostřednictvím App Center.

Příklady

Tento ukázkový kanál sestaví aplikaci pro Android, spustí testy a publikuje aplikaci pomocí 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'

Požadavky

Požadavek Popis
Typy kanálů YAML, classic build, verze Classic
Spustí se Agent, DeploymentGroup
Požadavky Žádné
Možnosti Tento úkol nesplňuje žádné požadavky na následné úkoly v úloze.
Omezení příkazů Všechny
Nastavitelné proměnné Všechny
Verze agenta 2.206.1 nebo vyšší
Kategorie úloh Nasadit
Požadavek Popis
Typy kanálů YAML, classic build, verze Classic
Spustí se Agent, DeploymentGroup
Požadavky Žádné
Možnosti Tento úkol nesplňuje žádné požadavky na následné úkoly v úloze.
Omezení příkazů Všechny
Nastavitelné proměnné Všechny
Verze agenta 2.144.0 nebo vyšší
Kategorie úloh Nasadit
Požadavek Popis
Typy kanálů YAML, classic build, verze Classic
Spustí se Agent, DeploymentGroup
Požadavky Žádné
Možnosti Tento úkol nesplňuje žádné požadavky na následné úkoly v úloze.
Omezení příkazů Všechny
Nastavitelné proměnné Všechny
Verze agenta Všechny podporované verze agenta.
Kategorie úloh Nasazení