このタスクを使用して、ファイルまたはディレクトリを現在の実行の名前付き成果物として発行 (アップロード) します。
このタスクを使用して、ファイルまたはディレクトリを現在の実行の名前付き成果物として発行 (アップロード) します。
構文
# 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
-
ファイルまたはディレクトリ パスの
入力エイリアス: path
。
string
. 必須。 既定値: $(Pipeline.Workspace)
.
発行するファイルまたはディレクトリのパスを指定します。 絶対または既定の作業ディレクトリを基準にして指定できます。 変数を含めることができますが、ワイルドカードはサポートされていません。 詳細については、「Azure Pipelines のアーティファクトの」を参照してください。
アーティファクト名を artifact
- する
入力エイリアス: artifactName
。
string
.
発行する成果物の名前を指定します。
drop
など、任意の名前を選択できます。 設定されていない場合、既定値はジョブにスコープが設定された一意の ID です。
重要
成果物名には、\
、/
、"
、:
、<
、>
、|
、*
、または ?
を含めることはできません。
publishLocation
-
Artifact publish location
入力エイリアス: artifactType
。
string
. 必須。 使用できる値: pipeline
(Azure Pipelines)、filepath
(ファイル共有)。 既定値: pipeline
.
成果物を Azure Pipelines に格納するか、パイプライン エージェントからアクセスできる必要があるファイル共有にコピーするかを指定します。
fileSharePath
-
ファイル共有パスの
string
.
artifactType = filepath
する場合に必要です。
成果物ファイルをコピーするファイル共有を指定します。 これには、\\my\\share\\$(Build.DefinitionName)\\$(Build.BuildNumber)
などの変数を含めることができます。 Linux または macOS エージェントからファイル共有への成果物の発行はサポートされていません (例: \\server\folderName
)。
parallel
-
並列コピー
boolean
. 任意
artifactType = filepath
するときに使用します。 既定値: false
.
スループットを向上させるために、複数のスレッドを使用してファイルを並列コピーするかどうかを指定します。 この設定が有効になっていない場合は、1 つのスレッドが使用されます。
parallelCount
-
並列カウント
string
. 任意
artifactType = filepath && parallel = true
するときに使用します。 既定値: 8
.
コピーを実行する並列処理の次数または使用されるスレッドの数を指定します。 値は 1 から 128 の間である必要があります。
カスタム プロパティの properties
-
string
.
成果物に関連付けるカスタム プロパティを指定します。 有効な JSON 文字列を、すべてのキーに user-
プレフィックスと共に使用します。
タスク コントロールのオプション
すべてのタスクには、タスク入力に加えて制御オプションがあります。 詳細については、「コントロール オプションと一般的なタスク プロパティを参照してください。
出力変数
なし。
注釈
発行は、クラシック リリース パイプラインではサポートされていません。
注
パイプライン成果物の発行は、オンプレミスではサポートされていません。 Azure DevOps Server または TFS 2018 を使用している場合は、ビルド成果物の発行 を使用してください。 Azure DevOps Server で使用すると、Pipeline Artifact Task is not supported in on-premises. Please use Build Artifact Task instead.
のようなエラー メッセージが表示されます。
publish
キーワードと download
キーワードは、PublishPipelineArtifact@1タスクとDownloadPipelineArtifact@2タスクのショートカットです。 詳細については、「steps.publish と steps.download」を参照してください。
ヒント
.artifactignore ファイルを使用して、発行するファイルを制御できます。
成果物の発行に関する問題が発生しています。 詳細なログを表示するにはどうすればよいですか?
パイプラインの詳細なログを有効にするには:
- パイプラインを編集し、[変数] 選択します
-
System.Debug
と値の名前を持つ新しい変数を追加true
- 保存
使用できる変数はどれですか?
A: $(Build.SourcesDirectory)
と $(Agent.BuildDirectory)
は、パイプラインで使用できる変数のほんの一部です。 変数は、式 またはスクリプトとして使用できます。
さまざまな種類の変数については、「変数の定義、定義済みの変数 、およびクラシック リリース変数と成果物変数 を参照してください。
このタスクでは、yaml パイプラインのデプロイ ジョブで成果物を発行できますが、ダウンストリーム パイプラインでは使用できません。
A: デプロイ ジョブにはソース ブランチのコンテキストがないため、成果物の発行には適していません。 主に成果物を使用するように設計されています。 回避策として、そのロジックを別のジョブ (デプロイ ジョブへの依存関係を含む) に分離します。
必要条件
要件 | 説明 |
---|---|
パイプラインの種類 | YAML、クラシック ビルド、クラシック リリース |
実行日 | エージェント、DeploymentGroup |
の需要 | なし |
機能の | このタスクは、ジョブ内の後続のタスクに対する要求を満たしていません。 |
コマンドの制限 | どれでも |
設定可能な変数 | どれでも |
エージェントのバージョン | 2.199.0 以上 |
タスク カテゴリ | 効用 |
要件 | 説明 |
---|---|
パイプラインの種類 | YAML、クラシック ビルド、クラシック リリース |
実行日 | エージェント、DeploymentGroup |
の需要 | なし |
機能の | このタスクは、ジョブ内の後続のタスクに対する要求を満たしていません。 |
コマンドの制限 | どれでも |
設定可能な変数 | どれでも |
エージェントのバージョン | 2.199 以上 |
タスク カテゴリ | 効用 |
要件 | 説明 |
---|---|
パイプラインの種類 | YAML、クラシック ビルド、クラシック リリース |
実行日 | エージェント、DeploymentGroup |
の需要 | なし |
機能の | このタスクは、ジョブ内の後続のタスクに対する要求を満たしていません。 |
コマンドの制限 | どれでも |
設定可能な変数 | どれでも |
エージェントのバージョン | 2.159.2 以上 |
タスク カテゴリ | 効用 |
こちらもご覧ください
- ビルド 成果物の使用を開始する方法 Azure Pipelines の成果物に関するページを参照してください。