PublishPipelineArtifact@1 - 파이프라인 아티팩트 v1 작업 게시
이 작업을 사용하여 파일 또는 디렉터리를 현재 실행의 명명된 아티팩트로 게시(업로드)합니다.
이 작업을 사용하여 파일 또는 디렉터리를 현재 실행의 명명된 아티팩트로 게시(업로드)합니다.
구문론
# 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 아티팩트(Artifacts)를 참조하세요.
artifact
-
아티팩트 이름
입력 별칭: artifactName
.
string
;
게시할 아티팩트 이름을 지정합니다. 선택한 이름(예: drop
)일 수 있습니다. 설정하지 않으면 기본값은 작업 범위가 지정된 고유 ID입니다.
중요합니다
아티팩트 이름에는 \
, /
, "
, :
, <
, >
, |
, *
또는 ?
포함될 수 없습니다.
publishLocation
-
아티팩트 게시 위치
입력 별칭: 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
입니다.
잠재적 처리량을 높이기 위해 여러 스레드를 사용하여 파일을 병렬로 복사할지 여부를 지정합니다. 이 설정을 사용하도록 설정하지 않으면 하나의 스레드가 사용됩니다.
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.
유사한 오류 메시지가 표시됩니다.
publish
및 download
키워드는 PublishPipelineArtifact@1 및 DownloadPipelineArtifact@2 작업의 바로 가기입니다. 자세한 내용은 steps.publish 및 steps.download 참조하세요.
팁 (조언)
.artifactignore 파일을 사용하여 게시할 파일을 제어할 수 있습니다.
아티팩트 게시에 문제가 있습니다. 자세한 로그를 보려면 어떻게 해야 하나요?
파이프라인에 대한 자세한 로그를 사용하도록 설정하려면 다음을 수행합니다.
- 파이프라인을 편집하고 변수 선택합니다.
- 이름
System.Debug
값true
사용하여 새 변수를 추가합니다. - 저장
어떤 변수를 사용할 수 있나요?
A: $(Build.SourcesDirectory)
및 $(Agent.BuildDirectory)
파이프라인에서 사용할 수 있는 변수는 거의 없습니다. 변수는 식 또는 스크립트로 사용할 수 있습니다.
변수정의, 미리 정의된 변수 및 클래식 릴리스 및 아티팩트 변수 다양한 형식의 변수에 대해 알아봅니다.
이 작업을 통해 yaml 파이프라인의 배포 작업에서 아티팩트 게시를 할 수 있지만 다운스트림 파이프라인에서 사용할 수 없나요?
A: 배포 작업에는 원본 분기의 컨텍스트가 없으므로 아티팩트를 게시하는 데 적합하지 않습니다. 주로 아티팩트 사용으로 설계되었습니다. 해결 방법은 해당 논리를 별도의 작업(배포 작업에 대한 종속성 포함)으로 격리하는 것입니다.
요구 사항
요구 사항 | 설명 |
---|---|
파이프라인 유형 | YAML, 클래식 빌드, 클래식 릴리스 |
다음에서 실행 | 에이전트, DeploymentGroup |
요구 | 없음 |
기능 | 이 작업은 작업의 후속 작업에 대한 요구 사항을 충족하지 않습니다. |
명령 제한 | 어느 것이든 |
settable 변수 | 어느 것이든 |
에이전트 버전 | 2.199.0 이상 |
작업 범주 | 유틸리티 |
요구 사항 | 설명 |
---|---|
파이프라인 유형 | YAML, 클래식 빌드, 클래식 릴리스 |
다음에서 실행 | 에이전트, DeploymentGroup |
요구 | 없음 |
기능 | 이 작업은 작업의 후속 작업에 대한 요구 사항을 충족하지 않습니다. |
명령 제한 | 어느 것이든 |
settable 변수 | 어느 것이든 |
에이전트 버전 | 2.199 이상 |
작업 범주 | 유틸리티 |
요구 사항 | 설명 |
---|---|
파이프라인 유형 | YAML, 클래식 빌드, 클래식 릴리스 |
다음에서 실행 | 에이전트, DeploymentGroup |
요구 | 없음 |
기능 | 이 작업은 작업의 후속 작업에 대한 요구 사항을 충족하지 않습니다. |
명령 제한 | 어느 것이든 |
settable 변수 | 어느 것이든 |
에이전트 버전 | 2.159.2 이상 |
작업 범주 | 유틸리티 |
참고하십시오
- 빌드 아티팩트 시작하기를 원하세요? Azure Pipelines의 아티팩트 참조