Azure Pipelines를 사용하여 유니버설 패키지 게시 및 다운로드
Azure DevOps Services
유니버설 패키지를 사용하면 모든 형식의 파일을 패키지하고 팀과 공유할 수 있습니다. Azure Pipelines의 유니버설 패키지 작업을 사용하여 최대 4TB의 다양한 크기의 패키지를 압축, 게시 및 다운로드할 수 있습니다. 각 패키지는 이름 및 버전 번호로 고유하게 식별됩니다. Azure CLI 또는 Azure Pipelines를 사용하여 아티팩트 피드에서 패키지를 게시하고 사용할 수 있습니다.
메모
유니버설 패키지는 Azure DevOps Services에서만 사용할 수 있습니다.
파일 복사
Azure Pipelines의 유니버설 패키지 작업은 $(Build.ArtifactStagingDirectory)
기본 게시 디렉터리로 사용하도록 설정됩니다. 유니버설 패키지 게시를 준비하려면 게시할 파일을 해당 디렉터리로 이동합니다.
파일 복사 유틸리티 작업을 사용하여 해당 파일을 게시 디렉터리에 복사할 수도 있습니다.
유니버설 패키지 게시
유니버설 패키지를 Azure Artifacts 피드에 게시하려면 파이프라인의 YAML 파일에 다음 작업을 추가합니다.
- task: UniversalPackages@0
displayName: Publish a Universal Package
inputs:
command: publish
publishDirectory: '$(Build.ArtifactStagingDirectory)'
vstsFeedPublish: '<projectName>/<feedName>'
vstsFeedPackagePublish: '<Package name>'
packagePublishDescription: '<Package description>'
논쟁 | 묘사 |
---|---|
게시 디렉터리 | 게시할 파일의 위치입니다. |
vstsFeedPublish | 게시할 프로젝트 및 피드 이름입니다. 조직 범위 피드로 작업하는 경우 피드 이름만 지정합니다. |
vstsFeedPackagePublish | 패키지 이름입니다. 소문자여야 합니다. 문자, 숫자 및 대시만 사용합니다. |
패키지 게시 설명 | 패키지 콘텐츠에 대한 설명입니다. |
파이프라인에서 Azure Artifacts 피드에 패키지를 게시하려면 파이프라인 ID에 피드에 피드 게시자(기여자) 역할이 있어야 합니다. 자세한 내용은 파이프라인 사용 권한참조하세요.
외부 피드에 게시하려면 먼저 피드로 인증할 서비스 연결을 만들어야 합니다. 자세한 내용은 서비스 연결관리를 참조하세요.
패키지 버전 관리
유니버설 패키지는 의미 체계 버전 관리 사양을 따르며 이름 및 버전 번호로 식별할 수 있습니다. 의미 체계 버전 번호는 주, 부 및 패치의 세 가지 숫자 구성 요소인 Major.Minor.Patch
형식으로 구성됩니다.
이전 버전과 호환되는 새 기능이 추가되면 부 버전 번호가 증가합니다. 이 경우 부 버전을 증가시키고 패치 버전을 0(1.5.0
1.4.17
)으로 다시 설정합니다. 이전 버전과의 호환성을 손상시킬 수 있는 중요한 변경 내용이 있는 경우 주 버전 번호가 증가합니다. 이 경우 주 버전을 증가시키고 부 버전과 패치 버전을 0(3.0.0
2.6.5
)으로 다시 설정합니다. 이전 버전과의 호환성에 영향을 주지 않는 버그 수정 또는 기타 작은 변경 내용만 적용되면 패치 버전 번호가 증가해야 합니다(1.0.1
1.0.0
).
새 패키지를 게시할 때 유니버설 패키지 작업은 자동으로 다음 주 버전, 부 버전 또는 패치 버전을 선택합니다.
- YAML
- 클래식
패키지에 대한 버전 관리를 사용하도록 설정하려면 YAML 파일에 versionOption
입력을 추가합니다. 새 패키지 버전을 게시하는 옵션은 major
, minor
, patch
또는 custom
.
custom
선택하면 패키지 버전을 수동으로 지정할 수 있습니다. 다른 옵션은 피드에서 최신 패키지 버전을 가져오고 선택한 버전 세그먼트를 1씩 증분합니다. 따라서 testPackage 1.0.0이 있고, 주요 옵션을 선택하면, 새 패키지는 testPackage 2.0.0이 될 것입니다.
부 옵션을 선택하면 패키지 버전이 1.1.0 패치 옵션을 선택하면 패키지 버전이 1.0.1 .
custom
옵션을 선택하는 경우 다음과 같이 versionPublish
값을 지정해야 합니다.
- task: UniversalPackages@0
displayName: Publish a Universal Package
inputs:
command: publish
publishDirectory: '$(Build.ArtifactStagingDirectory)'
vstsFeedPublish: '<projectName>/<feedName>'
vstsFeedPackagePublish: '<Package name>'
versionOption: custom
versionPublish: '<Package version>'
packagePublishDescription: '<Package description>'
논쟁 | 묘사 |
---|---|
디렉토리 게시 | 게시할 파일의 위치입니다. |
vstsFeedPublish | 게시할 프로젝트 및 피드 이름입니다. 조직 범위 피드로 작업하는 경우 피드 이름만 지정합니다. |
vstsFeedPackagePublish | 패키지 이름입니다. 소문자여야 합니다. 문자, 숫자 및 대시만 사용합니다. |
버전 옵션 | 버전 관리 전략을 선택합니다. 옵션: major , minor , patch , custom . |
버전 게시 | 사용자 지정 패키지 버전입니다. |
패키지 게시 설명 | 패키지 콘텐츠에 대한 설명입니다. |
유니버설 패키지 다운로드
조직의 피드에서 유니버설 패키지를 다운로드하려면 다음과 같이 download
명령과 함께 유니버설 패키지 작업을 사용합니다.
steps:
- task: UniversalPackages@0
displayName: Download a Universal Package
inputs:
command: download
vstsFeed: '<projectName>/<feedName>'
vstsFeedPackage: '<packageName>'
vstsPackageVersion: '<packageVersion>'
downloadDirectory: '$(Build.SourcesDirectory)\someFolder'
논쟁 | 묘사 |
---|---|
vstsFeed | 다운로드할 패키지를 호스팅하는 아티팩트 피드입니다. |
vstsFeedPackage | 다운로드할 패키지의 이름입니다. |
vstsPackageVersion | 다운로드할 패키지의 버전입니다. |
다운로드 디렉토리 | 패키지 대상 폴더입니다. 기본값: $(System.DefaultWorkingDirectory). |
외부 원본에서 유니버설 패키지를 다운로드하려면 다음 코드 조각을 사용합니다.
steps:
- task: UniversalPackages@0
displayName: Download a Universal Package
inputs:
command: download
feedsToUse: external
externalFeedCredentials: 'MSENG2'
feedDownloadExternal: 'fabrikamFeedExternal'
packageDownloadExternal: 'fabrikam-package'
versionDownloadExternal: 1.0.0
논쟁 | 묘사 |
---|---|
사용할 피드 | 외부 원본에서 다운로드할 때 값을 external 설정합니다. |
외부 피드 자격 증명 | 외부 피드에 대한 서비스 연결의 이름입니다. 자세한 내용은 서비스 연결 관리참조하세요. |
외부 피드 다운로드 | 외부 피드의 이름입니다. |
패키지외부다운로드 | 다운로드하려는 패키지 이름입니다. |
버전 외부 다운로드 | 다운로드하려는 패키지의 버전입니다. |
팁
와일드카드를 사용하여 최신 버전의 유니버설 패키지를 다운로드할 수 있습니다. 자세한 내용은 최신 버전다운로드를 참조하세요.
관련 문서
- 유니버설 패키지 업스트림 소스
- 업스트림 원본에서 패키지 검색
- 피드 권한