PublishBuildArtifacts@1 - 發佈組建成品 v1 工作
在組建管線中使用這項工作,將組建成品發佈至 Azure Pipelines、TFS 或檔案共用。
在組建管線中使用這項工作,將組建成品發佈至 Azure Pipelines、TFS 或檔案共用。
語法
# 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.
輸入
PathtoPublish
-
發佈 路徑
string
。 必須的。 預設值:$(Build.ArtifactStagingDirectory)
。
指定要發佈的資料夾或檔案路徑。 這可以是與存放庫根目錄相對的完整路徑或路徑。 不支援通配符。 支援 變數。 範例: $(Build.ArtifactStagingDirectory)
. 如需詳細資訊,請參閱管線中的 成品 - 概觀。
ArtifactName
-
成品名稱
string
。 必須的。 預設值:drop
。
指定要在發佈位置中建立的成品名稱。 不允許下列特殊字元:+
、%
、{
、}
publishLocation
-
成品發佈位置
輸入別名:ArtifactType
。
string
。 必須的。 允許的值:Container
(Azure Pipelines)、FilePath
(檔案共用)。 預設值:Container
。
指定是否要將成品儲存在 Azure Pipelines (Container),或將它複製到必須可從組建代理程式存取的檔案共用 (FilePath)。 輸入別名:ArtifactType
是 publishLocation
的替代名稱,可以交替使用。 如需詳細資訊,請參閱 Azure Pipelines 中的 成品。
MaxArtifactSize
-
成品大小上限
string
。 預設值:0
。
要以位元組為單位發佈的成品大小上限。 如果您不想設定任何限制,請放置 0。
TargetPath
-
檔案共享路徑
string
。
ArtifactType = FilePath
時為必要項。
指定您要複製檔案之檔案共享的路徑。 路徑必須是完整路徑,或相對於存放庫根目錄的有效路徑。 不支援將成品從Linux或macOS代理程式發佈至檔案共用。 範例: \\my\share\$(Build.DefinitionName)\$(Build.BuildNumber)
.
Parallel
-
平行複製
boolean
。 選擇性。
ArtifactType = FilePath
時使用 。 預設值:false
。
指定是否要使用多個線程平行複製檔案,以取得更大的潛在輸送量。 如果未啟用此設定,將會使用單一線程。
ParallelCount
-
平行計數
string
。 選擇性。
ArtifactType = FilePath && Parallel = true
時使用 。 預設值:8
。
指定用來執行複本的平行處理原則程度(線程數目)。 此值必須至少為 1,且不能大於 128。 根據組建代理程式的CPU功能選擇值。
在上傳之前,請先 StoreAsTar
- Tar 成品
boolean
。 預設值:false
。
在上傳之前,將發佈路徑中的所有檔案新增至 tar 封存。 這可讓您保留 UNIX 檔案許可權。 使用extractTars
工作的 選項自動擷取下載的專案。 Windows 代理程式上會忽略此設定。
FileCopyOptions
-
檔案複製選項
string
。 選擇性。
ArtifactType = FilePath
時使用 。
將其他選項傳遞至 Robocopy 命令。 例如,遞迴迷你模式 **/*
。
工作控制選項
除了工作輸入之外,所有工作都有控制選項。 如需詳細資訊,請參閱 控制項選項和一般工作屬性。
輸出變數
沒有。
備註
備註
您無法使用 Bin、App_Data 和 IIS 保留的其他資料夾名稱作為成品名稱,因為此內容無法回應 Web 要求。 如需詳細資訊,請參閱 ASP.NET Web 專案資料夾結構。
範例
steps:
- task: CopyFiles@2
inputs:
contents: '_buildOutput/**'
targetFolder: $(Build.ArtifactStagingDirectory)
- task: PublishBuildArtifacts@1
inputs:
pathToPublish: $(Build.ArtifactStagingDirectory)
artifactName: MyBuildOutputs
需求
要求 | 說明 |
---|---|
管線類型 | YAML,傳統組建 |
執行於 | Agent、DeploymentGroup |
需求 | 沒有 |
功能 | 此工作不符合作業中後續工作的任何需求。 |
命令限制 | 任意 |
Settable 變數 | 任意 |
代理程式版本 | 1.91.0 或更新 |
工作類別 | 效用 |
另請參閱
- 檔案比對模式參考
- 如何使用這項工作來發佈成品
- 瞭解如何使用 詳細信息記錄 進行 疑難解答。