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

extension

Tagged posts: 'extension'

How to use the Quarkus Helm extension to generate the Helm chart manifests

Quinoaエクステンションを使用すると、ウェブUIのビルド、結合、開発モードに関するすべての面倒な作業の面倒を見てくれ、Quarkusのウェブアプリケーションロジックに集中することができます。

How to configure Smallrye Stork in a client-side microservice for using Kubernetes Service Discovery strategy

AWS CloudWatch用のQuarkusエクステンションの作成 最近、QuarkusのアプリケーションログをAWS CloudWatchにロギングしたいという状況になりました。基本的には時間がかかりますが、大したことではありません。CloudWatchの依存関係を追加し、Log Handlerを作成し、提供されているAWS CloudWatch APIを介してCloudWatchにログをプッシュします。しかし、それを他の人と共有したい場合はどうでしょうか?もちろん、プロジェクトの一部としてGitHubに置いて、他の人がコピー&ペーストできるようにすることもできますが、それはコードを他の人と共有する最もエレガントな方法ではありません。 そのため、私たちはQuarkusのエクステンションを実装しました。これにより、他のユーザーがより簡単にQuarkusを使用できるようになり、車輪の再発明やコピーペーストの必要がなくなりました。どうすればいいのでしょうか?ここで、Quarkiverse Hubの出番です。Quarkiverseは、開発者が自分の拡張機能をホストして他の人と共有できるGitHubの組織です。エクステンションをQuarkiverseでホスティングすることで、従来のように自分ですべての作業を行うのではなく、無料でいくつかのメリットを得ることができます。Quarkiverseを使用すると、アーティファクトをビルドし、Sonatype Nexus Manager(または類似のもの)でリリースし、Maven Centralや他のリポジトリで配布する必要がありません。Quarkiverseにはこれらがすべて付属しているので、エクステンションの実装自体に集中することができます。以下の投稿では、CloudWatch Quarkusエクステンションを初期化、実装、共有するために必要なことを説明します。 Quarkiverseを使用してエクステンションをハブで公開し(これは私たちが推奨する方法です)、それによって得られるすべての利点を利用したい場合は、単にquarkusio/quarkusのGitHub組織で新しいエクステンション提案の課題をオープンする必要があります。こうすることで、テンプレートが生成され、あなたはエクステンションのコードを実装するだけなので、ほとんどの要件はすでに満たされていることになります。既存のプロジェクトをテンプレートとして使用する場合は、いくつかの要件に注意する必要があります。エクステンションのリリースやドキュメントの公開を自動化するために、Quarkiverseの組織下にあるプロジェクトには従わなければならないルールがあります。 エクステンションのリポジトリはquarkus-<project>という名前でなければなりません。 Quarkiverseの拡張機能は、io.quarkiverse.<project>のgroupIdに属さ *なければなりませ*ん。 ルートpom.xmlはio.quarkiverse:quarkiverse-parentを継承し なければなりません。 Quarkiverseの拡張機能には、以下のフォルダとファイルが含まれます。 deployment runtime integration-test docs pom.xml LICENSE README この記事では、runtimeとdeploymentの中身のみを取り上げます。その他の中身は、オプションであったり、すでにプロジェクトテンプレートによって生成されていたり、あるいは重要であっても、Quarkusのエクステンションがどのように作成されるかを知りたい場合には、最も重要で実用的なものではありません。まず、導入セクションから始めましょう。ここには、Quarkusエクステンションの初期化に必要なクラスが含まれています。この初期化クラスがないと、Quarkusアプリケーションの起動時にエクステンションが識別されません。 class LoggingCloudwatchProcessor { @BuildStep FeatureBuildItem feature() { return new FeatureBuildItem("logging-cloudwatch"); } @BuildStep @Record(ExecutionTime.RUNTIME_INIT) LogHandlerBuildItem addCloudwatchLogHandler(final LoggingCloudWatchConfig config, final LoggingCloudWatchHandlerValueFactory cloudWatchHandlerValueFactory) { return new LogHandlerBuildItem(cloudWatchHandlerValueFactory.create(config)); } } 上のスニペットでは、 _@BuildStep_でアノテーションされ、新しいFeatureBuildItemを返す _feature()_メソッドを見ることができます。このメソッドは、アプリケーションの起動時にログに表示される機能の名前(logging-cloudwatch)を公開します。2 番目のメソッド _addCloudWatchHandler()_は、LoggingCloudWatchConfig と LoggingCloudWatchHandlerValueFactory クラスによって提供されるエクステンションのランタイム構成を初期化します。幸い、LogHandlerBuildItemが提供されているので、独自の実装を追加して既存のログハンドラを上書きすることができます。他にもたくさんのBuildItemが提供されているので、独自のエクステンションを作りたい方はぜひ参考にしてみてください。このメソッドのパラメータは、以下のスニペットで説明されるコンフィグクラスです。 @ConfigRoot(phase = ConfigPhase.RUN_TIME, name = "log.cloudwatch") public class LoggingCloudWatchConfig { @ConfigItem(defaultValue = "true")...

QuarkusとSmallRye Storkによるカスタマイズ可能な サービスディスカバリーとクライアントサイドロードバランシングの紹介

MicrometerとPrometheusを使ってQuarkus AppsのメトリクスをOpenShiftに公開

Swagger UIの設定とカスタムスタイリング

Exploring some experimental SmallRye GraphQL features

The idea is simple, you pick your extensions and they are able to provide example code to get you started.

Exploring some SmallRye OpenAPI features

With the new Quarkus extension for Apache Cassandra® released in Quarkus 1.6, all it takes is a few lines of code to connect to and access your data stored in Cassandra and you get all of the benefits of Quarkus (fast-startup, low resource utilization, reactive programming).

gRPC with Quarkus!

Discover the Quarkus gRPC support

Quick look at MicroProfile GraphQL version 1.0 that is now part of Quarkus 1.5.

Since its first release, Quarkus lets you create resilient applications with MicroProfile Fault Tolerance. It uses SmallRye Fault Tolerance to provide this functionality. At the time SmallRye Fault Tolerance was born, Hystrix was still a thing and was chosen to be the core of the implementation. The choice turned out to be sub-optimal. The library itself is not developed anymore. Moreover, changes in the MicroProfile Fault Tolerance specification made it impossible to satisfy the specification...

If like me you have met Quarkus and fell in love, you started implementing your backend and you started to feel so light and quick, click clack, whoot whoot…​ in a woosh, your lightning fast native container is ready to be sent on your brand new Kubernetes cluster 🤙 This is awesome!! Mmmeahh you may have forgotten a detail…​ have you thought about the fate of your first production exception (please be honest with me...

The arrival of Quarkus 1.0 brings an innovative platform for developing Linux container- and kubernetes-native Java microservices. Developers typically have to set aside their existing knowledge as they begin to evaluate new and innovative runtime frameworks. Quarkus is different because it was created by a collection of engineers with a deep expertise in a broad collection of Java technologies. This includes Spring API compatibility, brought to Quarkus by the same engineers that bring Spring Boot...

Hibernate ORM lets you generate or update the database schema. Let's explore when to use such option in combination with live coding.

Quarkus ArC is a build-time oriented dependency injection based on CDI 2.0. But what does it actually mean and what benefits does a build-time processing DI bring?

In the 0.15.0 version of Quarkus, we introduced the Hibernate Search + Elasticsearch extension and, with 0.16.0, we added a guide and a quickstart explaining how to use it. If you want to index your Hibernate ORM entities in Elasticsearch and don’t mind updating your code from time to time, you’re very welcome to become an early adopter and provide feedback. What is Hibernate Search? This is an old time favorite of mine. Back in...