GitHub Actionsでのuvxのキャッシュフレンドリーな使用法
サマリー
GitHub Actionsでuvxツールをキャッシュフレンドリーに使用する方法を紹介します。環境変数を設定することで、最新バージョンを保持しつつキャッシュを管理できます。これにより、毎回のダウンロードを避けることが可能になります。
本文
今日は、GitHub Actionsのワークフローでuvxツールをキャッシュフレンドリーに使用するためのレシピを見つけました。このトリックは、ワークフローの開始時に環境変数UV_EXCLUDE_NEWERを"2026-07-12"に設定し、それをGitHub Actionsのキャッシュキーの一部として使用することです。これにより、uvxツールのコマンドはその日付時点での最新バージョンに解決され、将来的に日付を更新することでキャッシュを破棄し、ツールをアップグレードできます。私の目標は、GitHub ActionsでPythonツールを使用する際に、ワークフローの実行ごとにPyPIからツールやその依存関係の新しいコピーをダウンロードしないことです。更新情報として、astral-sh/setup-uvリポジトリに対して、デフォルトをキャッシュに切り替えるようにリクエストする既存の問題があります。