いつも、どうやっているのだっけ...となるので備忘録代わりに。パッケージ管理ツールは Poetry を使っています。
(初回のみ) TestPyPI リポジトリの追加
poetry config repositories.testpypi https://test.pypi.org/legacy/
パッケージのビルド
poetry build
./dist に tar.gz や wheel が作られます。
ローカルファイルからインストール
ローカルで動作確認したい場合は tar.gz からパッケージインストール。
pip install "./dist/stairlight-0.8.2.tar.gz[gcs, redash, dbt-bigquery, s3]"
TestPyPI へ公開
PyPI へ公開する前に、TestPyPI で試します。
いつだったか、アカウント情報を使った publish ができなくなったため、管理画面からトークンを発行してそれを使っています。
poetry publish -r testpypi -u __token__ -p ********
公開したパッケージをインストールするには下記のコマンドを実行します。
pip install --index-url https://test.pypi.org/simple/ "stairlight[gcs, redash, dbt-bigquery, s3]==0.8.2"
PyPI へ公開
TestPyPI と PyPI は別なので、トークンも別で発行します。
poetry publish -u __token__ -p ********
感想
自動化したい。Release つくったらすっと公開できるとよいな。