Bagikan melalui


AppCenterDistribute@3 - App Center mendistribusikan tugas v3

Gunakan tugas ini untuk mendistribusikan build aplikasi kepada penguji dan pengguna melalui Visual Studio App Center.

Sintaks

# 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 - Koneksi layanan App Center
string. Wajib diisi.

Memilih koneksi layanan untuk Visual Studio App Center. Untuk membuatnya, klik Manage tautan dan buat koneksi layanan baru.


appSlug - Simpul aplikasi
string. Wajib diisi.

Simpul aplikasi dalam format {username}/{app_identifier}. Untuk menemukan {username} dan {app_identifier} untuk aplikasi, klik namanya dari App Center, dan URL yang dihasilkan dalam format https://appcenter.ms/users/**{username}**/apps/**{app_identifier}**. Jika Anda menggunakan org, simpul aplikasi memiliki format {orgname}/{app_identifier}.


appFile - Jalur file biner
Alias input: app. string. Wajib diisi.

Jalur relatif dari akar repositori ke file APK/AAB atau IPA yang ingin Anda terbitkan.


buildVersion - Versi build
string.

Versi build dari biner pengunggahan yang perlu ditentukan untuk .zip dan .msi. Nilai ini akan diabaikan kecuali platformnya adalah WPF atau WinForms.


symbolsOption - Jenis simbol
Alias input: symbolsType. string. Nilai yang diizinkan: Apple, Android, dan UWP. Nilai default: Apple.

Menyertakan file simbol untuk menerima pelacakan tumpukan yang dilambangkan di Diagnostik App Center.


symbolsOption - Jenis simbol
Alias input: symbolsType. string. Nilai yang diizinkan: Apple, Android. Nilai default: Apple.

Menyertakan file simbol untuk menerima pelacakan tumpukan yang dilambangkan di Diagnostik App Center.


symbolsPath - Jalur simbol
string. Pilihan. Gunakan saat symbolsType == AndroidNative || symbolsType = Windows.

Jalur relatif dari akar repositori ke folder simbol.


appxsymPath - Jalur simbol (*.appxsym)
string. Pilihan. Gunakan saat symbolsType = UWP.

Jalur relatif ke file simbol APPXSYM. Jalur mungkin berisi kartubebas.


symbolsDsymFiles - Jalur dSYM
Alias input: dsymPath. string. Pilihan. Gunakan saat symbolsType = Apple.

Jalur relatif dari akar repositori ke folder dSYM. Jalur mungkin berisi kartubebas.


symbolsMappingTxtFile - File pemetaan
Alias input: mappingTxtPath. string. Pilihan. Gunakan saat symbolsType = Android.

Jalur relatif dari root repositori ke file Android mapping.txt .


nativeLibrariesPath - Jalur File Pustaka Asli
string. Pilihan. Gunakan saat symbolsType == Android.

Jalur relatif dari akar repositori ke pustaka asli tambahan yang ingin Anda terbitkan (misalnya file .so).


symbolsIncludeParentDirectory - Sertakan semua item dalam folder induk
Alias input: packParentFolder. boolean. Pilihan. Gunakan saat symbolsType = Apple.

Mengunggah file atau folder simbol terpilih dan semua item lainnya di dalam folder induk yang sama. Ini diperlukan untuk aplikasi React Native.


releaseNotesOption - Membuat catatan rilis
Alias input: releaseNotesSelection. string. Wajib diisi. Nilai yang diizinkan: input (Masukkan Catatan Rilis), file (Pilih File Catatan Rilis). Nilai default: input.

Catatan rilis akan dilampirkan ke rilis dan ditunjukkan kepada penguji di halaman penginstalan.


releaseNotesInput - Catatan rilis
string. Diperlukan saat releaseNotesSelection = input.

Catatan rilis untuk versi ini.


releaseNotesFile - File catatan rilis
string. Diperlukan saat releaseNotesSelection = file.

Memilih file teks yang dikodekan UTF-8 yang berisi catatan rilis untuk versi ini.


isMandatory - Mengharuskan pengguna memperbarui ke rilis ini
boolean. Nilai default: false.

App Center Distribute SDK diperlukan untuk mengamanatkan pembaruan. Penguji secara otomatis diminta untuk memperbarui.


destinationType - Tujuan rilis
string. Wajib diisi. Nilai yang diizinkan: groups, store. Nilai default: groups.

Setiap rilis didistribusikan ke grup atau toko.


distributionGroupId - ID Tujuan
Alias input: destinationGroupIds. string. Pilihan. Gunakan saat destinationType = groups.

ID grup distribusi yang akan menerima rilis build. Biarkan kosong untuk menggunakan grup default, dan gunakan koma atau titik koma untuk memisahkan beberapa ID.


destinationStoreId - ID Tujuan
string. Diperlukan saat destinationType = store.

ID penyimpanan distribusi yang akan menerima rilis build.


isSilent - Jangan beri tahu penguji. Rilis masih akan tersedia untuk diinstal.
boolean. Pilihan. Gunakan saat destinationType = groups.

Penguji tidak menerima email untuk rilis baru.


symbolsPdbFiles - Jalur simbol (*.pdb)
Alias input: pdbPath. string. Pilihan. Gunakan saat symbolsType = UWP. Nilai default: **/*.pdb.

Jalur relatif dari akar repositori ke file simbol PDB. Jalur mungkin berisi kartubebas.


Opsi kontrol tugas

Semua tugas memiliki opsi kontrol selain input tugas mereka. Untuk informasi selengkapnya, lihat Opsi kontrol dan properti tugas umum.

Variabel output

Tidak ada.

Keterangan

Gunakan tugas ini untuk mendistribusikan build aplikasi kepada penguji dan pengguna melalui App Center.

Contoh

Contoh alur ini membangun aplikasi Android, menjalankan pengujian, dan menerbitkan aplikasi menggunakan 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'

Persyaratan

Persyaratan Deskripsi
Jenis alur YAML, Build klasik, Rilis klasik
Berjalan pada Agen, DeploymentGroup
Permintaan Tidak ada
Kemampuan Tugas ini tidak memenuhi tuntutan untuk tugas berikutnya dalam pekerjaan.
Pembatasan perintah Apa pun
Variabel yang dapat diatur Apa pun
Versi agen 2.206.1 atau lebih tinggi
Kategori tugas Sebarkan
Persyaratan Deskripsi
Jenis alur YAML, Build klasik, Rilis klasik
Berjalan pada Agen, DeploymentGroup
Permintaan Tidak ada
Kemampuan Tugas ini tidak memenuhi tuntutan untuk tugas berikutnya dalam pekerjaan.
Pembatasan perintah Apa pun
Variabel yang dapat diatur Apa pun
Versi agen 2.144.0 atau lebih tinggi
Kategori tugas Sebarkan
Persyaratan Deskripsi
Jenis alur YAML, Build klasik, Rilis klasik
Berjalan pada Agen, DeploymentGroup
Permintaan Tidak ada
Kemampuan Tugas ini tidak memenuhi tuntutan untuk tugas berikutnya dalam pekerjaan.
Pembatasan perintah Apa pun
Variabel yang dapat diatur Apa pun
Versi agen Semua versi agen yang didukung.
Kategori tugas Sebarkan