我已經寫過如何使用 uv 加快 docker 建置速度的文章。今天,我想快速展示如何更快地建立 Python 專案的 CI。
uv 是一個很好的 pip 替代品,對於大多數項目來說,它可以作為直接替代品。它在解析和安裝 python 套件方面比 pip 快得多,這對於 CI 管道(或 docker 建置)尤其有用。更快的管道意味著更快的開發週轉,這意味著更高的生產力。
如果您繼續在管道中安裝相同的包,您不妨在管道運行中重複使用 uv 內部使用的快取。
為此,您必須在執行 uv venv 和 uv pip install 之前以及安裝 uv 之後在 azure-pipelines.yml 中插入以下程式碼:
- bash: | echo "##vso[task.setvariable variable=uv-cache-path;]$(uv cache dir)" - task: Cache@2 displayName: Cache uv inputs: key: uv cache | "$(python.version)" path: $(uv-cache-path)
這會設定一個新的變數 uv-cache-path ,其中包含 uv 快取的路徑,然後它將快取該路徑以供連續的管道運行。我假設您將使用的 python 版本儲存在名為 python.version 的變數中。您也可以直接將其替換為您使用的 python 版本。確保保留版本周圍的引號,否則任務會將版本解釋為路徑。
最後,我們可以使用一項新功能在上傳之前修剪快取。這將減少快取的檔案大小,從而使快取的上傳和下載速度更快,從而可能節省您的時間。您應該在管道作業結束之前執行 uv cache prune --ci:
- script: uv cache prune --ci
總之,如果你想讓你的Python管道更快,第一步應該是使用uv。您只需將 pip ... 呼叫替換為 uv pip ... 即可,看看這會使您的管道速度提高多少。
如果您安裝了很多需要大量建置步驟的軟體包,那麼重新使用 uv 快取可能是值得的。為此,您可以使用 Azure Pipelines 提供的 Cache@2 任務。
以上是Azure Pipelines:uv 快取的詳細內容。更多資訊請關注PHP中文網其他相關文章!