問題タブ [twine]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
package - Python 固有のホイールを含むパッケージを GitLab パッケージ レジストリとより糸にリリースする方法
GitLab CI を使用してパッケージ リリース プロセスを自動化し、リリースを GitLab Package Registry に保存しようとしています。私はドキュメントに従いました:
https://docs.gitlab.com/ee/user/packages/pypi_repository/
CIをセットアップして、ホイールをビルドしてパッケージレジストリにプッシュすることができました。
ただし、異なる python バージョンに固有の、異なるバージョンのパッケージをビルドするパイプラインがいくつかある場合、問題に直面しました。特定のリリースに複数のバージョンの wheel がある場合、Package Registry インデックスがバージョンと正しく一致していないようで、レジストリにアップロードされた最後のファイル (文字通り最後、アップロード/プッシュの順序に従う) のみが利用可能です。 /pip経由でインストールできます。
セットアップは次のmypypipackage
とおりです-GitLabドキュメントの例の拡張:
- 私のsetup.pyでは、pythonをホイールに「焼き付け」ています:
- 3 つの異なる Python バージョン/コンテナー用に 3 つのホイールを構築するように GitLab CI をセットアップしました。
- Ci が完了すると、このリリース (0.1.3) のパッケージ レジストリに 3 つのバージョンのホイールがはっきりと表示されます。
- 「最新のアップロードされた」ホイール (つまり、python 3.8 の場合) ファイルをインストールすると、正しく動作します。
- しかし、python 3.7 の venv など、異なる python バージョンで wheel をインストールしようとすると、pip がエラーをスローします。
Python 3.6 と 3.7 の両方のバージョンのホイールをダウンロードして手動でインストールすることに成功しました。ここでは問題ありません。また、いくつかの実験を行い、たとえば 3.7 用のホイールを 1 つだけアップロードしました。また、パッケージ レジストリから pip 経由で問題なくインストールできました。
それで、私は何が欠けていますか?私は何を間違っていますか?
特定のリリースの特定のホイールの多くのバージョンを処理/提供できないのは、Package Registry の問題ですか?
ありがとう、トマシュ
Ps。私はgitlab フォーラムでもこの質問をしました。ここでより多くの聴衆にリーチできることを願っています。誰かがこの問題を解決する方法を見つけたかもしれません。