The English version of quarkus.io is the official project site. Translated sites are community supported on a best-effort basis.

Quarkiverse Hub - コミュニティエクステンションの本拠地

今日は、コントリビューターが誰でもQuarkusのエクステンションをホストできるGitHub Organizationである Quarkiverse Hubを発表します。

quarkiverse repos
エクステンションをQuarkiverse Hubでホスティングすると、Quarkusツールを介してすべてのQuarkusユーザーが利用できるようになります。

詳細をお読みになり、すべてのQuarkus開発者が今すぐエクステンションを利用できるようにする方法をご覧ください。

特徴

Quarkiverse Hubの下でエクステンションをホスティングすることで、以下の機能が有効になります:

Maven CentralへのMavenリリースの自動化された安全な配信

Registering and publishing artifacts to Maven central can become a daunting task. In Quarkiverse that is automated by GitHub Actions, requiring no manual interaction with any command line tools. Releasing an artifact is as simple as opening a pull-request changing the .github/project.yml file in the extension’s repository. Once the pull-request is merged, a GitHub action is triggered invoking mvn release:prepare release:perform and the extension is deployed to Maven central. The Quarkiverse wiki has more details and troubleshooting tips.

quarkiverse release
Quarkusのビルド/リリースを使用したエクステンションのクロステストの自動化

Quarkusコアのリリースは常に行われており、リリースを実行する前に最新の変更点を把握しておくことは非常に重要です。Quarkiverseのエクステンションは、Quark us Ecosystem CIを使用して最新の Quarkusコアに対して毎日ビルドされ、Quark usのステータスページに表示されます。

プロジェクトの一貫したフォーマットとリリース

quarkiverse-parent アーティファクト(Quarkiverseの各エクステンションに継承されています)は、プラグインがソースコードをQuarkusコアで使用されているのと同じフォーマットにフォーマットすることを可能にします。

ドキュメントの集約

バージョン管理されたエクステンションドキュメント(ガイドを含む)を自動的に公開しましょう!Quarkiverse Hubでは、 Antoraを使用して、Quarkiverse docsのウェブサイト内の各エクステンションドキュメントを集約しています。レイアウトはまだ作業中ですが、 https://quarkiverse.github.io/quarkiverse-docs/ で確認できます。

quarkiverse guides
今後のエクステンションレジストリーへの自動インクルード

Extension レジストリーはまだ作業中ですが( https://registry.quarkus.io )、その要旨は、エクステンション ( https://code.quarkus.io 、コマンドライン、IDE プラグインを含む) を単一の場所で閲覧できるようにすることです。

要件

エクステンションのリリースやドキュメントの公開を自動化するために、Quarkiverseの組織の下にあるプロジェクトでは、いくつかのルールに従う必要があります。

  • エクステンションのリポジトリの名前は quarkus-<project> であるべきです。

  • Quarkiverseのエクステンションは、 io.quarkiverse.<project> groupIdに属していなければなりません。

  • ルート pom.xml は io.quarkiverse:quarkiverse-parent を継承しなければなりません

  • Quarkiverseのエクステンションは、次のような構造です:

├── deployment (1)
├── runtime
├── integration-test
├── docs (2)
├── pom.xml
├── LICENSE
└── README
1 デプロイメントランタイム 、および 統合テスト のディレクトリーがエクステンションクラスを含みます。詳細は「 Mavenを使って新しいエクステンションを作成する方法」を参照してください。
2 docs (オプション)。docsは Antoraの標準ファイルとディレクトリーセットに従ってください。サンプルは ここ を参照して下さい。
詳細については、 Quarkiverse Wikiをご覧ください。
quarkiverse way

どうやったら申し込めますか?

Quarkusの課題管理エクステンション提案の チケットを作成し(まず、提案しているエクステンションがまだ作成されていないかどうかを確認してください)、このエクステンションの開発をリードしたい場合は、イシューにコメントをつけてお知らせください。

Quarkusチームは、ブランドの新しいリポジトリやデプロイメントスクリプトを設定するという退屈な作業すませるので、あなたは楽しくコーディングを行うことができます。

他と同様に、我々は常に改善していますので、現在使用しているプロセスについては、 Joining Quarkiverseをご覧ください。

すでにQuarkiverseにはどのようなエクステンションがあるのでしょうか?

すでにあるエクステンションをチェックしてみましょう。

Quarkiverse Wikiでは、Quarkiverseの最新情報をご確認いただけます。

この設定をQuarkiverseの組織外のエクステンションに再利用することはできますか?

はい、現在、外部のエクステンションのリリースを我々のツールから見えるようにするための追加のステップを文書化しているところです。