共用方式為


PublishPipelineArtifact@1 - 發佈管線成品 v1 工作

使用此工作將檔案或目錄發佈(上傳)為目前執行的具名成品。

使用此工作將檔案或目錄發佈(上傳)為目前執行的具名成品。

這很重要

Azure DevOps Services 僅支援這項工作。 如果您在 Azure DevOps Server 上使用,如果您使用 Azure DevOps Server 或 TFS 2018,則會收到類似 Pipeline Artifact Task is not supported in on-premises. Please use Build Artifact Task instead. 使用 發佈組建成品 的錯誤訊息。

語法

# Publish Pipeline Artifacts v1
# Publish (upload) a file or directory as a named artifact for the current run.
- task: PublishPipelineArtifact@1
  inputs:
    targetPath: '$(Pipeline.Workspace)' # string. Alias: path. Required. File or directory path. Default: $(Pipeline.Workspace).
    #artifact: # string. Alias: artifactName. Artifact name. 
    publishLocation: 'pipeline' # 'pipeline' | 'filepath'. Alias: artifactType. Required. Artifact publish location. Default: pipeline.
    #fileSharePath: # 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.
    #properties: # string. Custom properties.
# Publish Pipeline Artifacts v1
# Publish (upload) a file or directory as a named artifact for the current run.
- task: PublishPipelineArtifact@1
  inputs:
    targetPath: '$(Pipeline.Workspace)' # string. Alias: path. Required. File or directory path. Default: $(Pipeline.Workspace).
    #artifact: # string. Alias: artifactName. Artifact name. 
    publishLocation: 'pipeline' # 'pipeline' | 'filepath'. Alias: artifactType. Required. Artifact publish location. Default: pipeline.
    #fileSharePath: # 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.

輸入

targetPath - 檔案或目錄路徑
輸入別名:pathstring。 必須的。 預設值:$(Pipeline.Workspace)

指定要發佈的檔案或目錄路徑。 可以是絕對或相對於預設工作目錄。 可以包含 變數,但不支援通配符。 如需詳細資訊,請參閱 Azure Pipelines 中的 成品


artifact - 成品名稱
輸入別名:artifactNamestring

指定要發佈的成品名稱。 它可以選擇您選擇的任何名稱,例如 drop。 如果未設定,則預設值是限定於作業的唯一標識符。

這很重要

成品名稱不能包含 \/":<>|*?


publishLocation - 成品發佈位置
輸入別名:artifactTypestring。 必須的。 允許的值:pipeline(Azure Pipelines)、filepath(檔案共用)。 預設值:pipeline

指定是要將成品儲存在 Azure Pipelines 中,還是將它複製到必須可從管線代理程式存取的檔案共用。


fileSharePath - 檔案共享路徑
stringartifactType = filepath時為必要項。

指定複製成品檔案的檔案共用。 這可以包含變數,例如 \\my\\share\\$(Build.DefinitionName)\\$(Build.BuildNumber)。 不支援將成品從 Linux 或 macOS 代理程式發行至檔案共用,例如 \\server\folderName


parallel - 平行複製
boolean。 選擇性。 artifactType = filepath時使用 。 預設值:false

指定是否要使用多個線程平行複製檔案,以取得更大的潛在輸送量。 如果未啟用此設定,將會使用一個線程。


parallelCount - 平行計數
string。 選擇性。 artifactType = filepath && parallel = true時使用 。 預設值:8

指定平行處理原則的程度,或用來執行複製的線程數目。 此值必須介於 1 到 128 之間。


properties - 自定義屬性
string

指定要與成品建立關聯的自定義屬性。 在所有索引鍵上使用具有前置詞 user- 的有效 JSON 字串。


工作控制選項

除了工作輸入之外,所有工作都有控制選項。 如需詳細資訊,請參閱 控制項選項和一般工作屬性

輸出變數

沒有。

備註

傳統發行管線不支持發佈。

備註

內部部署不支持發佈管線成品。 如果您使用 Azure DevOps Server 或 TFS 2018,請使用 發佈組建成品。 如果您在 Azure DevOps Server 上使用,您會收到類似 Pipeline Artifact Task is not supported in on-premises. Please use Build Artifact Task instead.的錯誤訊息。

publishdownload 關鍵詞是PublishPipelineArtifact@1和DownloadPipelineArtifact@2工作的快捷方式。 如需詳細資訊,請參閱 steps.publishsteps.download

小提示

您可以使用 .artifactignore 檔案來控制要發佈的檔案。

我在發佈成品時遇到問題。 如何檢視詳細記錄?

若要啟用管線的詳細記錄:

  1. 編輯管線,然後選取 [變數
  2. 使用名稱 System.Debug 和值新增變數 true
  3. 儲存

哪些變數可供我使用?

答:$(Build.SourcesDirectory)$(Agent.BuildDirectory) 只是您可以在管線中使用的幾個變數。 變數可作為 表示式 或腳本使用。

請參閱 定義變數預先定義的變數,以及 傳統版本和成品變數,以瞭解不同類型的變數。

工作可讓我在 yaml 管線中的部署作業中發佈成品,但我無法在下游管線中使用成品?

答:部署作業沒有來源分支的內容,因此不適合發佈成品。 它們主要是設計來取用成品。 因應措施是將該邏輯隔離成個別的作業(具有部署作業的相依性)。

需求

要求 說明
管線類型 YAML、傳統組建、傳統版本
執行於 Agent、DeploymentGroup
需求 沒有
功能 此工作不符合作業中後續工作的任何需求。
命令限制 任意
Settable 變數 任意
代理程式版本 2.199.0 或更新
工作類別 效用
要求 說明
管線類型 YAML、傳統組建、傳統版本
執行於 Agent、DeploymentGroup
需求 沒有
功能 此工作不符合作業中後續工作的任何需求。
命令限制 任意
Settable 變數 任意
代理程式版本 2.199 或更高版本
工作類別 效用
要求 說明
管線類型 YAML、傳統組建、傳統版本
執行於 Agent、DeploymentGroup
需求 沒有
功能 此工作不符合作業中後續工作的任何需求。
命令限制 任意
Settable 變數 任意
代理程式版本 2.159.2 或更高版本
工作類別 效用

另請參閱

  • 想要開始使用組建成品嗎? 請參閱 Azure Pipelines 中的成品。