使用 Azure Pipelines 發佈和下載通用套件
Azure DevOps Services
通用套件可讓您封裝任何類型的任意數目檔案,並與小組共用。 在 Azure Pipelines 中使用通用套件工作,您可以封裝、發佈及下載各種大小的套件,最多可達 4 TB。 每個套件都會以名稱和版本號碼唯一識別。 您可以使用 Azure CLI 或 Azure Pipelines 從 Artifacts 來源發佈及取用套件。
注意
通用套件僅適用於 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>'
論點 | 描述 |
---|---|
publishDirectory | 您想要發佈的檔案位置。 |
vstsFeedPublish | 要發行至的專案和資料流名稱。 如果您正在使用組織範圍的摘要,請只指定摘要名稱。 |
vstsFeedPackagePublish | 套件名稱。 必須是小寫。 只使用字母、數位和虛線。 |
套件發佈描述 | 套件內容的描述。 |
若要從管線將套件發佈至 Azure Artifacts 摘要,管線身分識別必須在摘要上擁有 摘要發行者(參與者) 角色。 如需詳細資訊,請參閱 管線許可權。
若要發佈至外部源,您必須先建立服務連線,以便驗證您的源。 如需詳細資訊,請參閱 管理服務連線。
套件版本控制
通用套件遵循語意化版本設定規格,並可透過其名稱和版本號碼來識別。 語意版本號碼是由三個數值元件、Major、Minor 和 Patch 所組成,格式為:Major.Minor.Patch
。
當新增與舊版回溯相容的新功能時,次要版本號碼會遞增,在此情況下,您會將次要版本遞增,並將修補程式版本重設為 0 (1.4.17
為 1.5.0
)。 當有重大變更可能會中斷與舊版的相容性時,主要版本號碼會遞增。 在此情況下,您會將主要版本遞增,並將次要和修補程式版本重設為 0 (2.6.5
為 3.0.0
)。 只有錯誤修正或其他小型變更不會影響與舊版的相容性時,修補程式版本號碼應該遞增(1.0.0
至 1.0.1
)。
發佈新套件時,通用套件工作會自動為您選取下一個主要、次要或修補程式版本。
若要啟用套件的版本設定,請新增 versionOption
輸入至 YAML 檔案。 發行新套件版本的選項包括: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>'
論點 | 描述 |
---|---|
publishDirectory | 您想要發佈的檔案位置。 |
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 | 承載要下載套件的 Artifacts 資源。 |
vstsFeedPackage | 要下載之套件的名稱。 |
vstsPackageVersion | 要下載的套件版本。 |
downloadDirectory | 套件目的地資料夾。 默認值:$(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
論點 | 描述 |
---|---|
feedsToUse | 從外部來源下載時,將值設定為 external 。 |
外部供應憑證 | 外部饋送的服務連線名稱。 如需詳細資訊,請參閱 管理服務連線。 |
feedDownloadExternal | 外部資料來源的名稱。 |
外部封包下載 | 您要下載的套件名稱。 |
版本下載外部 | 您要下載的套件版本。 |
提示
您可以使用通配符來下載最新版本的通用套件。 如需詳細資訊,請參閱 下載最新版本。