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 (容器)中,还是将其复制到必须从生成代理访问的文件共享(FilePath)。 输入别名:ArtifactType
是 publishLocation
的替代名称,可以互换使用。 有关详细信息,请参阅 Azure Pipelines 中的Artifacts。
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,经典生成 |
运行时间 | 代理,DeploymentGroup |
需求 | 没有 |
功能 | 此任务不满足作业中后续任务的任何要求。 |
命令限制 | 任何 |
Settable 变量 | 任何 |
代理版本 | 1.91.0 或更高版本 |
任务类别 | 效用 |
另请参阅
- 文件匹配模式参考
- 如何使用此任务发布项目
- 了解如何使用 详细日志 进行 故障排除。