在 Azure Artifacts 中發佈和下載通用套件
Azure DevOps Services
通用套件可讓開發人員將各種套件類型儲存在 NuGet、npm、Python 套件等傳統套件之外。您可以使用 Azure CLI 直接從命令行發佈及下載通用套件。 雖然已發行套件的大小可能會有所不同,但最多可達 4 TB,但必須一律維護包括名稱和版本號碼的基本需求。 本文將逐步引導您完成從 Azure Artifacts 摘要發佈和下載通用套件的步驟。
必要條件
安裝 Azure DevOps 擴充功能 0.14.0 版或更高版本。
建立摘要
如果您已經有摘要,您可以移至下一節。 否則,請遵循下列步驟來建立新的 Azure Artifacts 摘要:
登入您的 Azure DevOps 組織,然後瀏覽至您的專案。
選取 [ 成品],然後選取 [ 建立摘要]。
提供摘要的描述性 名稱 ,並設定其 可見度 (誰可以在您的摘要中檢視套件)。 定義摘要的範圍,如果您想要包含公用登錄中的套件,請選取 [上游來源] 複選框。
完成後,選取 [建立]。
注意
新建立的摘要預設會將專案的建置服務角色指定為摘要和上游讀取者(共同作業者)。
安裝 Azure DevOps 擴充功能
使用 CLI 可協助您簡化工作。 繼續之前,請確定您已安裝 Azure CLI(2.10.1 版或更高版本)。 此外,我們需要安裝 Azure DevOps 擴充功能,以從命令行管理 Azure DevOps 服務。
執行下列命令以安裝 Azure DevOps 擴充功能:
az extension add --name azure-devops
如果您已安裝 Azure DevOps 擴充功能,且想要將它更新為最新版本,請執行下列命令:
az extension update --name azure-devops
要摘要的 連線
登入您的 Azure DevOps 組織,然後瀏覽至您的專案。
選取 [ 成品],然後從下拉功能表中選取您的摘要。
選取要摘要 連線,然後從左側瀏覽窗格中選取 [通用套件]。
請遵循 [項目設定] 區段中的指示,聯機到您的摘要。
執行下列命令以登入 Azure CLI:
az login
執行下列命令,將專案和組織設定為 CLI 的預設組態:
az devops configure --defaults project=<YOUR_PROJECT_NAME> organization=https://dev.azure.com/<YOUR_ORGANIZATION_NAME>
發佈通用套件
若要將通用套件發佈至您的摘要,您必須提供套件名稱和版本號碼。
套件名稱應該以小寫、以字母或數字開頭和結尾,且只包含字母、數位及非連續連字元、底線和句點。 套件版本也應該以小寫為單位,且不應包含組建元數據 (+ 後綴)。 如需詳細資訊,請參閱 語意版本控制 。
執行下列命令,將通用套件發佈至摘要:
組織範圍的摘要:
az artifacts universal publish --organization https://dev.azure.com/<YOUR_ORGANIZATION> --feed <FEED_NAME> --name <PACKAGE_NAME> --version <PACKAGE_VERSION> --path <PACKAGE_DIRECTORY> --description <PACKAGE_DESCRIPTION>
專案範圍的摘要:
az artifacts universal publish --organization https://dev.azure.com/<YOUR_ORGANIZATION> --project <PROJECT_NAME> --scope project --feed <FEED_NAME> --name <PACKAGE_NAME> --version <PACKAGE_VERSION> --path <PACKAGE_DIRECTORY> --description <PACKAGE_DESCRIPTION>
注意
如果您的組織使用防火牆或 Proxy 伺服器,請確定您允許 Azure Artifacts 網域 URL 和 IP 位址。
檢視已發佈的套件
下載通用套件
執行下列命令,使用 Azure CLI 從您的摘要下載特定的通用套件:
組織範圍的摘要:
az artifacts universal download --organization https://dev.azure.com/<YOUR_ORGANIZATION_NAME> --feed <FEED_NAME> --name <PACKAGE_NAME> --version <PACKAGE_VERSION> --path <DOWNLOAD_PATH>
專案範圍的摘要:
az artifacts universal download --organization https://dev.azure.com/<YOUR_ORGANIZATION_NAME> --project <PROJECT_NAME> --scope project --feed <FEED_NAME> --name <PACKAGE_NAME> --version <PACKAGE_VERSION> --path <DOWNLOAD_PATH>
下載特定檔案
如果您想要只下載特定檔案,請使用 --file-filter
參數來擷取檔案的子集。 如需詳細資訊,請參閱 檔案比對模式參考 。
組織範圍的摘要:
az artifacts universal download --organization https://dev.azure.com/<YOUR_ORGANIZATION_NAME> --feed <FEED_NAME> --name <PACKAGE_NAME> --version <PACKAGE_VERSION> --path <DOWNLOAD_PATH> --file-filter <MATCH_PATTERN>
專案範圍的摘要:
az artifacts universal download --organization https://dev.azure.com/<YOUR_ORGANIZATION_NAME> --project <PROJECT_NAME> --scope project --feed <FEED_NAME> --name <PACKAGE_NAME> --version <PACKAGE_VERSION> --path <DOWNLOAD_PATH> --file-filter <MATCH_PATTERN>
例如: 例如,使用 --file-filter logs/.log 會比對任何檔案與包含 “logs” 的檔名,並以擴展名 “.log” 結尾(例如build_logs.log)。
下載最新版本
您可以使用通配符 *
來下載最新版的通用套件。
範例:
--version '*'
:下載最新版本。--version '1.*'
:下載具有主要 1 的最新版本。--version '1.2.*'
:下載具有主要 1 和次要 2 的最新修補程式版本。
注意
發行前版本不支援通配符模式(版本號碼中有虛線的套件)。