PublishBuildArtifacts@1 - Menerbitkan tugas build artefak v1
Gunakan tugas ini dalam alur build untuk menerbitkan artefak build ke Azure Pipelines, TFS, atau berbagi file.
Jika Anda menggunakan Azure DevOps Services, sebaiknya gunakan Unduh Artefak Alur dan Terbitkan Artefak Alur untuk performa yang lebih cepat.
Gunakan tugas ini dalam alur build untuk menerbitkan artefak build ke Azure Pipelines, TFS, atau berbagi file.
Sintaks
# Publish build artifacts v1
# Publish build artifacts to Azure Pipelines or a Windows file share.
- task: PublishBuildArtifacts@1
inputs:
PathtoPublish: '$(Build.ArtifactStagingDirectory)' # string. Required. Path to publish. Default: $(Build.ArtifactStagingDirectory).
ArtifactName: 'drop' # string. Required. Artifact name. Default: drop.
publishLocation: 'Container' # 'Container' | 'FilePath'. Alias: ArtifactType. Required. Artifact publish location. Default: Container.
#MaxArtifactSize: '0' # string. Max Artifact Size. Default: 0.
#TargetPath: # string. Required when ArtifactType = FilePath. File share path.
#Parallel: false # boolean. Optional. Use when ArtifactType = FilePath. Parallel copy. Default: false.
#ParallelCount: '8' # string. Optional. Use when ArtifactType = FilePath && Parallel = true. Parallel count. Default: 8.
# Advanced
#StoreAsTar: false # boolean. Tar the artifact before uploading. Default: false.
# Publish build artifacts v1
# Publish build artifacts to Azure Pipelines or a Windows file share.
- task: PublishBuildArtifacts@1
inputs:
PathtoPublish: '$(Build.ArtifactStagingDirectory)' # string. Required. Path to publish. Default: $(Build.ArtifactStagingDirectory).
ArtifactName: 'drop' # string. Required. Artifact name. Default: drop.
publishLocation: 'Container' # 'Container' | 'FilePath'. Alias: ArtifactType. Required. Artifact publish location. Default: Container.
#TargetPath: # string. Required when ArtifactType = FilePath. File share path.
#Parallel: false # boolean. Optional. Use when ArtifactType = FilePath. Parallel copy. Default: false.
#ParallelCount: '8' # string. Optional. Use when ArtifactType = FilePath && Parallel = true. Parallel count. Default: 8.
# Advanced
#FileCopyOptions: # string. Optional. Use when ArtifactType = FilePath. File copy options.
#StoreAsTar: false # boolean. Tar the artifact before uploading. Default: false.
# Publish build artifacts v1
# Publish build artifacts to Azure Pipelines or a Windows file share.
- task: PublishBuildArtifacts@1
inputs:
PathtoPublish: '$(Build.ArtifactStagingDirectory)' # string. Required. Path to publish. Default: $(Build.ArtifactStagingDirectory).
ArtifactName: 'drop' # string. Required. Artifact name. Default: drop.
publishLocation: 'Container' # 'Container' | 'FilePath'. Alias: ArtifactType. Required. Artifact publish location. Default: Container.
#TargetPath: # string. Required when ArtifactType = FilePath. File share path.
#Parallel: false # boolean. Optional. Use when ArtifactType = FilePath. Parallel copy. Default: false.
#ParallelCount: '8' # string. Optional. Use when ArtifactType = FilePath && Parallel = true. Parallel count. Default: 8.
# Advanced
#FileCopyOptions: # string. Optional. Use when ArtifactType = FilePath. File copy options.
# Publish build artifacts v1
# Publish build artifacts to Azure Pipelines or a Windows file share.
- task: PublishBuildArtifacts@1
inputs:
PathtoPublish: '$(Build.ArtifactStagingDirectory)' # string. Required. Path to publish. Default: $(Build.ArtifactStagingDirectory).
ArtifactName: 'drop' # string. Required. Artifact name. Default: drop.
publishLocation: 'Container' # 'Container' | 'FilePath'. Alias: ArtifactType. Required. Artifact publish location. Default: Container.
#TargetPath: # string. Required when ArtifactType = FilePath. File share path.
#Parallel: false # boolean. Optional. Use when ArtifactType = FilePath. Parallel copy. Default: false.
#ParallelCount: '8' # string. Optional. Use when ArtifactType = FilePath && Parallel = true. Parallel count. Default: 8.
# Publish Build Artifacts v1
# Publish build artifacts to Azure Pipelines/TFS or a file share.
- task: PublishBuildArtifacts@1
inputs:
PathtoPublish: '$(Build.ArtifactStagingDirectory)' # string. Required. Path to publish. Default: $(Build.ArtifactStagingDirectory).
ArtifactName: 'drop' # string. Required. Artifact name. Default: drop.
publishLocation: 'Container' # 'Container' | 'FilePath'. Alias: ArtifactType. Required. Artifact publish location. Default: Container.
#TargetPath: # string. Required when ArtifactType = FilePath. File share path.
#Parallel: false # boolean. Optional. Use when ArtifactType = FilePath. Parallel copy. Default: false.
#ParallelCount: '8' # string. Optional. Use when ArtifactType = FilePath && Parallel = true. Parallel count. Default: 8.
Input
PathtoPublish
- Jalur untuk diterbitkan
string
. Wajib diisi. Nilai default: $(Build.ArtifactStagingDirectory)
.
Menentukan folder atau jalur file untuk diterbitkan. Ini bisa menjadi jalur yang sepenuhnya memenuhi syarat atau jalur yang relatif terhadap akar repositori. Kartu bebas tidak didukung. Variabel didukung. Contoh: $(Build.ArtifactStagingDirectory)
. Untuk informasi selengkapnya, lihat Artefak dalam alur - gambaran umum.
ArtifactName
- Nama artefak
string
. Wajib diisi. Nilai default: drop
.
Menentukan nama artefak yang akan dibuat di lokasi penerbitan. Karakter khusus berikut tidak diperbolehkan: +
, , %
, {
}
publishLocation
- Lokasi penerbitan artefak
Alias input: ArtifactType
. string
. Wajib diisi. Nilai yang diizinkan: Container
(Azure Pipelines), FilePath
(Berbagi file). Nilai default: Container
.
Menentukan apakah akan menyimpan artefak di Azure Pipelines (Container), atau menyalinnya ke berbagi file (FilePath) yang harus dapat diakses dari agen build. Untuk informasi selengkapnya, lihat Artefak di Azure Pipelines.
publishLocation
- Lokasi penerbitan artefak
Alias input: ArtifactType
. string
. Wajib diisi. Nilai yang diizinkan: Container
(Azure Pipelines/TFS), FilePath
(Berbagi file). Nilai default: Container
.
Menentukan apakah akan menyimpan artefak di Azure Pipelines (Container), atau menyalinnya ke berbagi file (FilePath) yang harus dapat diakses dari agen build. Untuk informasi selengkapnya, lihat Artefak di Azure Pipelines.
MaxArtifactSize
- Ukuran Artefak Maks
string
. Nilai default: 0
.
Batas maksimum ukuran artefak yang akan diterbitkan dalam byte. Letakkan 0 jika Anda tidak ingin menetapkan batas apa pun.
TargetPath
- Jalur berbagi file
string
. Diperlukan saat ArtifactType = FilePath
.
Menentukan jalur ke berbagi file tempat Anda ingin menyalin file. Jalur harus merupakan jalur yang sepenuhnya memenuhi syarat atau jalur yang valid relatif terhadap direktori akar repositori Anda. Menerbitkan artefak dari agen Linux atau macOS ke berbagi file tidak didukung. Contoh: \\my\share\$(Build.DefinitionName)\$(Build.BuildNumber)
.
Parallel
- Salinan paralel
boolean
. Opsional. Gunakan saat ArtifactType = FilePath
. Nilai default: false
.
Menentukan apakah akan menyalin file secara paralel menggunakan beberapa utas untuk throughput potensial yang lebih besar. Jika pengaturan ini tidak diaktifkan, satu utas akan digunakan.
ParallelCount
- Jumlah paralel
string
. Opsional. Gunakan saat ArtifactType = FilePath && Parallel = true
. Nilai default: 8
.
Menentukan tingkat paralelisme (jumlah utas) yang digunakan untuk melakukan penyalinan. Nilai harus minimal 1 dan tidak lebih besar dari 128. Pilih nilai berdasarkan kemampuan CPU agen build.
StoreAsTar
- Tar artefak sebelum mengunggah
boolean
. Nilai default: false
.
Menambahkan semua file dari jalur publikasi ke arsip tar sebelum mengunggah. Ini memungkinkan Anda untuk mempertahankan izin file UNIX. Gunakan extractTars
opsi tugasDownloadBuildArtifacts untuk mengekstrak item yang diunduh secara otomatis. Pengaturan ini diabaikan pada agen Windows.
FileCopyOptions
- Opsi penyalinan file
string
. Pilihan. Gunakan saat ArtifactType = FilePath
.
Meneruskan opsi tambahan ke perintah Robocopy. Misalnya, pola **/*
minimatch rekursif .
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
Catatan
Anda tidak dapat menggunakan Bin, App_Data dan nama folder lain yang dicadangkan oleh IIS sebagai nama Artefak karena isi ini tidak dilayani sebagai respons terhadap permintaan Web. Silakan lihat Struktur Folder Proyek Web ASP.NET untuk detail selengkapnya.
Contoh
steps:
- task: CopyFiles@2
inputs:
contents: '_buildOutput/**'
targetFolder: $(Build.ArtifactStagingDirectory)
- task: PublishBuildArtifacts@1
inputs:
pathToPublish: $(Build.ArtifactStagingDirectory)
artifactName: MyBuildOutputs
Persyaratan
Persyaratan | Deskripsi |
---|---|
Jenis alur | YAML, Build klasik |
Berjalan pada | Agen, DeploymentGroup |
Permintaan | Tidak ada |
Kemampuan | Tugas ini tidak memenuhi tuntutan apa pun untuk tugas berikutnya dalam pekerjaan. |
Pembatasan perintah | Apa pun |
Variabel yang dapat diatur | Apa pun |
Versi agen | 1.91.0 atau lebih tinggi |
Kategori tugas | Utilitas |
Lihat juga
- Referensi pola pencocokan file
- Bagaimana cara menggunakan tugas ini untuk menerbitkan artefak
- Pelajari cara menggunakan log verbose untuk pemecahan masalah.