Megosztás a következőn keresztül:


AppCenterDistribute@3 – Az App Center 3- os verziós feladat terjesztése

Ezzel a feladattal alkalmazás buildeket oszthat ki tesztelők és felhasználók számára a Visual Studio App Centeren keresztül.

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.

Bevitelek

serverEndpoint - App Center szolgáltatáskapcsolat
string. Kötelező.

Kiválasztja a Visual Studio App Center szolgáltatáskapcsolatát. Ha létre szeretne hozni egyet, kattintson a Manage hivatkozásra, és hozzon létre egy új szolgáltatáskapcsolatot.


appSlug - Alkalmazáscsomó
string. Kötelező.

Az alkalmazáscsúcs formátuma {username}/{app_identifier}. Egy alkalmazás megkereséséhez {username}{app_identifier} és kereséséhez kattintson a nevére az App Centerből, és az eredményként kapott URL-cím formátuma https://appcenter.ms/users/**{username}**/apps/**{app_identifier}**a következő: . Ha szervezeteket használ, az alkalmazáscsúcs formátuma {orgname}/{app_identifier}.


appFile - Bináris fájl elérési útja
Bemeneti alias: app. string. Kötelező.

Az adattár gyökerétől a közzétenni kívánt APK/AAB- vagy IPA-fájl relatív elérési útja.


buildVersion - Buildverzió
string.

A feltöltési bináris buildverziója, amelyet meg kell adni a és .msiszámára.zip. Ezt az értéket a rendszer figyelmen kívül hagyja, kivéve, ha a platform WPF vagy WinForms.


symbolsOption - Szimbólumok típusa
Bemeneti alias: symbolsType. string. Engedélyezett értékek: Apple, Android, UWP. Alapértelmezett érték: Apple.

Szimbólumfájlokat tartalmaz a szimbolikus verem-nyomkövetések fogadásához az App Center diagnosztika szolgáltatásban.


symbolsOption - Szimbólumok típusa
Bemeneti alias: symbolsType. string. Engedélyezett értékek: Apple, Android. Alapértelmezett érték: Apple.

Szimbólumfájlokat tartalmaz a szimbolikus verem-nyomkövetések fogadásához az App Center diagnosztika szolgáltatásban.


symbolsPath - Szimbólumok elérési útja
string. Választható. Használja a következőt: symbolsType == AndroidNative || symbolsType = Windows.

A relatív elérési út az adattár gyökerétől a szimbólumok mappáig.


appxsymPath - Szimbólumok elérési útja (*.appxsym)
string. Választható. Használja a következőt: symbolsType = UWP.

Az APPXSYM szimbólumfájl relatív elérési útja. Az elérési út helyettesítő karaktereket tartalmazhat.


symbolsDsymFiles - dSYM elérési útja
Bemeneti alias: dsymPath. string. Választható. Használja a következőt: symbolsType = Apple.

A relatív elérési út az adattár gyökerétől a dSYM mappáig. Az elérési út helyettesítő karaktereket tartalmazhat.


symbolsMappingTxtFile - Leképezési fájl
Bemeneti alias: mappingTxtPath. string. Választható. Használja a következőt: symbolsType = Android.

Az adattár gyökerétől az Android fájlig mapping.txt vezető relatív elérési út.


nativeLibrariesPath - Natív tárfájl elérési útja
string. Választható. Használja a következőt: symbolsType == Android.

Az adattár gyökerétől a további közzétenni kívánt natív kódtárakig (pl. .so fájlok) vezető relatív elérési út.


symbolsIncludeParentDirectory - Az összes elem belefoglalása a szülőmappába
Bemeneti alias: packParentFolder. boolean. Választható. Használja a következőt: symbolsType = Apple.

Feltölti a kijelölt szimbólumfájlt vagy mappát, valamint az összes többi elemet ugyanabban a szülőmappában. Ez React Native alkalmazásokhoz szükséges.


releaseNotesOption - Kibocsátási megjegyzések létrehozása
Bemeneti alias: releaseNotesSelection. string. Kötelező. Engedélyezett értékek: input (Kibocsátási megjegyzések megadása) file (Válassza a Kibocsátási megjegyzések fájl lehetőséget). Alapértelmezett érték: input.

A kibocsátási megjegyzések a kiadáshoz lesznek csatolva, és a telepítési oldalon jelennek meg a tesztelők számára.


releaseNotesInput - Kibocsátási megjegyzések
string. Akkor szükséges, ha releaseNotesSelection = input.

A verzió kibocsátási megjegyzései.


releaseNotesFile - Kibocsátási megjegyzések fájlja
string. Akkor szükséges, ha releaseNotesSelection = file.

Kiválaszt egy UTF-8 kódolású szövegfájlt, amely tartalmazza az ehhez a verzióhoz tartozó kibocsátási megjegyzéseket.


isMandatory - A felhasználók frissítésének megkövetelése erre a kiadásra
boolean. Alapértelmezett érték: false.

A frissítés megköveteléséhez szükséges App Center Distribute SDK. A rendszer automatikusan felkéri a tesztelőket a frissítésre.


destinationType - Kiadás célja
string. Kötelező. Engedélyezett értékek: groups, store. Alapértelmezett érték: groups.

Az egyes kiadások csoportokba vagy áruházakba kerülnek.


distributionGroupId - Célazonosítók
Bemeneti alias: destinationGroupIds. string. Választható. Használja a következőt: destinationType = groups.

Azon terjesztési csoportok azonosítói, akik megkapják a build kiadását. Hagyja üresen az alapértelmezett csoport használatához, és használjon vesszőket vagy pontosvesszőket több azonosító elválasztásához.


destinationStoreId - Célazonosító
string. Akkor szükséges, ha destinationType = store.

Annak a terjesztési tárolónak az azonosítói, amelyek megkapják a build kiadását.


isSilent - Ne értesítse a tesztelőket. A kiadás továbbra is telepíthető lesz.
boolean. Választható. Használja a következőt: destinationType = groups.

A tesztelők nem kapnak e-mailt az új kiadásokról.


symbolsPdbFiles - Szimbólumok elérési útja (*.pdb)
Bemeneti alias: pdbPath. string. Választható. Használja a következőt: symbolsType = UWP. Alapértelmezett érték: **/*.pdb.

A relatív elérési út az adattár gyökerétől a PDB szimbólumfájlokig. Az elérési út helyettesítő karaktereket tartalmazhat.


Feladatvezérlési lehetőségek

Minden feladathoz tartoznak vezérlési lehetőségek is a feladat bemenetei mellett. További információ: Vezérlési beállítások és gyakori feladattulajdonságok.

Kimeneti változók

Nincsenek.

Megjegyzések

Ezzel a feladattal alkalmazás buildeket oszthat ki tesztelők és felhasználók számára az App Centeren keresztül.

Példák

Ez a példafolyamat létrehoz egy Android-alkalmazást, futtat teszteket, és közzéteszi az alkalmazást az App Center Distribute használatával.

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

Követelmények

Követelmény Leírás
Folyamattípusok YAML, klasszikus build, klasszikus kiadás
Futtatás: Ügynök, DeploymentGroup
Igények None
Képességek Ez a tevékenység nem felel meg a feladat későbbi tevékenységeire vonatkozó követelményeknek.
Parancskorlátozások Bármelyik
Változók beállítása Bármelyik
Ügynök verziója 2.206.1 vagy újabb
Feladatkategória Üzembe helyezés
Követelmény Leírás
Folyamattípusok YAML, klasszikus build, klasszikus kiadás
Futtatás: Ügynök, DeploymentGroup
Igények None
Képességek Ez a tevékenység nem felel meg a feladat későbbi tevékenységeire vonatkozó követelményeknek.
Parancskorlátozások Bármelyik
Változók beállítása Bármelyik
Ügynök verziója 2.144.0 vagy újabb
Feladatkategória Üzembe helyezés
Követelmény Leírás
Folyamattípusok YAML, klasszikus build, klasszikus kiadás
Futtatás: Ügynök, DeploymentGroup
Igények None
Képességek Ez a tevékenység nem felel meg a feladat későbbi tevékenységeire vonatkozó követelményeknek.
Parancskorlátozások Bármelyik
Változók beállítása Bármelyik
Ügynök verziója Minden támogatott ügynökverzió.
Feladatkategória Üzembe helyezés