1. 程式人生 > 其它 >Azure DevOps Server 的連線源(Artifacts):五、python包管理pip和twine

Azure DevOps Server 的連線源(Artifacts):五、python包管理pip和twine

1. 安裝artifacts-keyring

參考:https://pypi.org/project/artifacts-keyring
artifacts-keyring是程式包keyring的擴充套件,它為使用者連線Azure DevOps Server的連線源提供認證服務。
使用者使用pip或者twwin連線Azure DevOps Server的Artifacts,都需要使用這個元件。

安裝artifacts-keyring的過程與其他程式包一樣,使用Install命令:

pip install artifacts-keyring

2. 修改使用者配置檔案(c:\users\devservers\pip.ini)

這個檔案是Pip的使用者配置檔案,針對使用者的配置資訊都儲存在這個檔案中;
但是需要注意,安裝完成pip後,預設不會建立這個檔案,而pip連線源保持系統預設的 pypi.org ;當我們需要修改預設連線源時,我們可以自己建立這個檔案,並將下面的內容新增到連線源中:

[global]
timeout=9999
index-url=http://ads2/DefaultCollection/_packaging/a1/pypi/simple/
trusted-host=ads2

3. 建立令牌,執行安裝命令

3.1 示例:下載最新版本Django

例如,我們需要從DevOps Server中安裝Django框架;

  • 賬戶密碼:
    當pip使用者第一次連線到DevOps Server時,系統提示使用者名稱,可以輸入DevOps Server的連線源;密碼是之前我們建立的令牌;注意,使用滑鼠右鍵輸入令牌時,我們看不到任何輸入資訊,這是正常的,輸入完成後點選回車既可以;
  • 儲存令牌:
    pip工具再次提示是否儲存認證資訊(Save credential to Keyring?),確認即可,下次就不需要再次輸入令牌了。
pip install django

安裝成功以後,我們可以在Artifacts的連線源中檢視到已經快取的python程式包,如下圖;
一旦DevOps Server快取了pip程式包以後,其他使用者安裝程式包就不需要再從公網上去下載,速度非常快。


示例:下載指定版本的Django

pip install django==1.11.7

3. 在虛擬環境virtualenv中下載python包

安裝virtualenv

pip install virtualenv


軟體安裝的目錄在:C:\Users\devservice\AppData\Local\Programs\Python\Python310\Lib\site-packages

4. 常見問題

下載超時

DevOps Server只能從國外的pypi.org下載包,由於網速的原因,導致超時,如下圖:


解決方案:
在使用者目錄下的配置檔案(c:\users\devservers\pip.ini)中新增timeout配置項,如下:

[global]
timeout=9999
index-url=http://ads2/DefaultCollection/_packaging/a1/pypi/simple/
trusted-host=ads2


5. 相關文章

如果需要,你還可以從微軟Azure DevOps Server 的線上文件,查詢更多的權威資料,也歡迎通過下面的聯絡方式與我溝通,相互學習,相互提高!


https://www.cnblogs.com/danzhang
Azure DevOps MVP 張洪君