PublishBuildArtifacts@1 - 빌드 아티팩트 v1 작업 게시
빌드 파이프라인에서 이 작업을 사용하여 빌드 아티팩트가 Azure Pipelines, TFS 또는 파일 공유에 게시됩니다.
Azure DevOps Services 사용하는 경우 성능 향상을 위해 파이프라인 아티팩트 다운로드 및 파이프라인 아티팩트 게시를 사용하는 것이 좋습니다.
빌드 파이프라인에서 이 작업을 사용하여 빌드 아티팩트가 Azure Pipelines, TFS 또는 파일 공유에 게시됩니다.
Syntax
# 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.
# 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.
# Publish Build Artifacts v1
# Publish build artifacts to Azure Pipelines/TFS or a 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.
입력
PathtoPublish
- 게시할 경로
string
. 필수 요소. 기본값은 $(Build.ArtifactStagingDirectory)
입니다.
게시할 폴더 또는 파일 경로를 지정합니다. 정규화된 경로 또는 리포지토리의 루트에 상대적인 경로일 수 있습니다. 와일드카드는 지원되지 않습니다. 변수가 지원됩니다. 예: $(Build.ArtifactStagingDirectory)
. 자세한 내용은 파이프라인의 아티팩트 - 개요를 참조하세요.
ArtifactName
- 아티팩트 이름
string
. 필수 요소. 기본값은 drop
입니다.
게시 위치에 만들 아티팩트 이름을 지정합니다. 다음 특수 문자는 허용되지 +
않습니다. , , %
, {
}
publishLocation
- 아티팩트 게시 위치
입력 별칭: ArtifactType
. string
. 필수 요소. 허용되는 값: Container
(Azure Pipelines), FilePath
(파일 공유). 기본값은 Container
입니다.
아티팩트 를 Azure Pipelines(컨테이너)에 저장할지 또는 빌드 에이전트에서 액세스할 수 있어야 하는 파일 공유(FilePath)에 복사할지를 지정합니다. 자세한 내용은 Azure Pipelines의 아티팩트 를 참조하세요.
publishLocation
- 아티팩트 게시 위치
입력 별칭: ArtifactType
. string
. 필수 요소. 허용되는 값: Container
(Azure Pipelines/TFS), FilePath
(파일 공유). 기본값은 Container
입니다.
아티팩트 를 Azure Pipelines(컨테이너)에 저장할지 또는 빌드 에이전트에서 액세스할 수 있어야 하는 파일 공유(FilePath)에 복사할지를 지정합니다. 자세한 내용은 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
- 업로드하기 전에 아티팩트 타르
boolean
. 기본값은 false
입니다.
업로드하기 전에 게시 경로의 모든 파일을 tar 보관 파일에 추가합니다. 이렇게 하면 UNIX 파일 권한을 유지할 수 있습니다. DownloadBuildArtifacts 작업의 옵션을 사용하여 extractTars
다운로드한 항목을 자동으로 추출합니다. 이 설정은 Windows 에이전트에서 무시됩니다.
FileCopyOptions
- 파일 복사 옵션
string
. 선택 사항입니다. 를 사용하는 경우 ArtifactType = FilePath
를 사용합니다.
Robocopy 명령에 추가 옵션을 전달합니다. 예를 들어 재귀 미니매치 패턴 **/*
입니다.
작업 제어 옵션
모든 작업에는 작업 입력 외에 제어 옵션이 있습니다. 자세한 내용은 컨트롤 옵션 및 일반적인 작업 속성을 참조하세요.
출력 변수
없음
설명
참고
이 콘텐츠는 웹 요청에 대한 응답으로 제공되지 않으므로 IIS에서 예약한 Bin, App_Data 및 기타 폴더 이름을 아티팩트 이름으로 사용할 수 없습니다. 자세한 내용은 ASP.NET 웹 프로젝트 폴더 구조를 참조하세요.
예제
steps:
- task: CopyFiles@2
inputs:
contents: '_buildOutput/**'
targetFolder: $(Build.ArtifactStagingDirectory)
- task: PublishBuildArtifacts@1
inputs:
pathToPublish: $(Build.ArtifactStagingDirectory)
artifactName: MyBuildOutputs
요구 사항
요구 사항 | Description |
---|---|
파이프라인 유형 | YAML, 클래식 빌드 |
실행 중 | 에이전트, DeploymentGroup |
요청 | 없음 |
Capabilities | 이 작업은 작업의 후속 작업에 대한 요구를 충족하지 않습니다. |
명령 제한 사항 | 모두 |
Settable 변수 | 모두 |
에이전트 버전 | 1.91.0 이상 |
작업 범주 | 유틸리티 |
추가 정보
- 파일 일치 패턴 참조
- 이 작업을 사용하여 아티팩트 게시를 어떻게 할까요?
- 문제 해결을 위해 자세한 정보 표시 로그를 사용하는 방법을 알아봅니다.