私はbintrayで実際にp2リポジトリをどのように管理していますか?通常アップロードするものはすべてバージョンとパッケージに関連付ける必要がありますが、いくつかのファイルリポジトリの範囲を作成リポジトリのメタデータのようにする必要があります。 私はその質問が既に何らかの形で回答されていることを知っていますが、私はもっと情報が必要です、特にリポジトリスコープ付きのものをアップロードするルール、アップロードされたファイルがリポジトリのルートにあるかどうかなど、もの。 なぜこれがbintrayで正式に文書化されていないのかよくわかりません。p2リポジトリ用のbintrayのサポート
答えて
Bintrayは、リポジトリ>パッケージ>バージョンでアーティファクトを整理します。
関係式は、です。
メタデータファイルには例外が1つあります。主な理由は、メタデータファイルには通常複数のバージョンが含まれているため、特定のバージョンに関連付けることはできません。もう1つの違いは、バージョニングされた成果物は、出版されてから180日後に上書きすることはできませんが、メタデータファイルは、バージョンがリリースされるたびに変更されることが予想されます。このため、メタデータファイルは基本的に「リポジトリスコープ」と呼ばれています。 Bintrayは名前でメタデータファイルを識別します。つまり、ユーザーはBintrayにメタデータファイルであるアーティファクトを伝えることはできません。それ以外のメタデータファイルは、他のアーティファクトと同じように、任意のパスにアップロードできます。
artifacts.xml/.jar/.xml.xz
、content.xml/.jar/.xml.xz
、compositeArtifacts.xml/.jar
、compositeContent.xml/.jar
、p2.index
:
は例えば、P2に考慮される以下のファイル名は、メタデータファイル(私はいくつかを見逃している可能性があります)です。
Bintrayの汎用リポジトリまたはMavenリポジトリに(例えば)artifacts.jar
という名前のファイルをアップロードすると、そのファイルはメタデータファイルとして処理されます。
上記の説明を続けると、バージョン管理された成果物をアップロードするときに、関連付けられるパッケージとバージョンを指定する必要があります。一方、メタデータファイルをアップロードすると(Bintrayはその名前で識別します)、Bintrayはパッケージとバージョンを期待していません。
が PUT /content/:subject/:repo/:package/:version/:file_path
(URLで:package/:version
パラメータに注意してください)では
- :
Bintrayは、アップロードREST APIのパッケージとバージョンを指定するには、いくつかのオプションがありますヘッダ:
X-Bintray-Package: :package
X-Bintray-Version: :version
PUT /content/:subject/:repo/:file_path
(URLには:package/:version
パラメータが存在しないに注意してください)URLの行列パラメータとして - :メタデータファイルの場合
PUT /content/:subject/:repo/:file_path;bt_package=:package;bt_version=:version
は、二& 3番目のオプションでBintrayは、パッケージとバージョンを無視します。最初のオプションでは、Bintrayはパッケージとバージョンをパスの一部として扱うので、bintrayの結果パスにはそれらが含まれます(あなたが意図したものではありません...)
結論:
長い話を短くするために - BintrayでP2リポジトリにアーティファクトをアップロードするための最良の方法は、第二または第三アップロードオプションを枯れ使用しています。このように、バージョン管理されたファイルの場合、パッケージとバージョンが関連付けられます。メタデータファイルの場合、パッケージとバージョンは無視され、ファイルは正しいターゲットパスにアップロードされます。例えば
、cURL
を使用して:ここで
curl -u$BT_USER:$BT_PASS -XPUT -T <file-to-upload> "https://api.bintray.com/content/$BT_OWNER/$BT_REPO/$FILEPATH" -H "X-Bintray-Package: $BT_PKG" -H "X-Bintray-Version: $BT_VER"
は非常に良いブログ記事です:Publish an Eclipse P2 Composite Repository on Bintray
HTH、
Yinon
- 1. IvyでBintray mavenリポジトリを使用する
- 2. P2 Webリポジトリからの自動更新
- 3. ローカルのp2 eclipseリポジトリを指すMavenタイコ
- 4. Eclipse P2リポジトリを検索するには?
- 5. bintrayリポジトリは無料で利用できますか?
- 6. Spock Frameworkはパブリックp2リポジトリで利用できますか?
- 7. BintrayのDebianリポジトリ複数のエラーと予期しない動作
- 8. 別のリポジトリからbintrayにプロキシリポジトリを持っています
- 9. pluginPathと私のPDEビルドでリモートP2リポジトリから依存関係
- 10. Eclipse 4.xリリースのp2リポジトリURLは何ですか?
- 11. Mavenのはbintray
- 12. Apache shiroライブラリからp2リポジトリを作成する方法
- 13. tycho-p2-repository-pluginが「p2リポジトリに指定されたコンテンツがありません」と表示されない
- 14. のGradleはbintrayリリースプラグイン
- 15. スウィフトのOAuth2 p2の
- 16. フェイザーP2の衝突
- 17. Gradleは、Bintray
- 18. Bintrayリソース制限
- 19. "#CONCAT_3(p1、p2、p3)p1 ## p2 ## p3"マクロ定義の意味は?
- 20. Gitlab LFSでのSSHリポジトリのサポート
- 21. bintrayリポジトリにsbtでリポジトリを公開する方法を教えてください。
- 22. P2サイトのセキュリティ戦略
- 23. tycho p2リポジトリビルドの結果を、ローカルファイルシステムまたはローカルに維持されたp2リポジトリ上の場所に配置する方法
- 24. BintrayのJCenterが同期していないBintrayにファイルを公開した後
- 25. Buckminsterを使用して複数のプラットフォームをサポートするp2サイトにエクスポートするRCP機能を取得する
- 26. BintrayのjCenterへのボタンリンクライブラリは利用できません
- 27. エラーコードとのBintray応答の競合409
- 28. ArtifactoryリモートP2リポジトリの機能がすべての子の場所にキャッシュされない
- 29. bintray依存関係のtravis-ciジョブ
- 30. PythonでのPGM P2イメージの読み方
もなく、ファイルは、デフォルトでは、バージョンのサブフォルダの右側に配置されているバージョン管理?だから私はすべてをアップロードすると、メタデータファイルは、そのバージョン化されたフォルダに着陸しない、おそらくすべてを壊す? –
Bintrayには既定のパスはありません。どんなファイルも任意のパスの下に置くことができますが、唯一の実際の要件はパスの競合ではありません。ファイルをアップロードするときにターゲットパスを指定します( 'curl'の例では' $ FILEPATH')。任意のパッケージマネージャを使用している場合、たとえばそれが独自の構造要件を持っていて、それに従うべきです(そうしなければ、あなたの依存関係を解決することはできません...)。 – yinon
私のテストでは、あなたがパスを変更しないかぎり、少なくとも空きのパスか/でバージョンに何かをアップロードした場合、バージョン/フォルダに入ってしまったことがわかりました –