io.quarkiverse.amazonservices:quarkus-amazon-services-build-parent

Parent POM for Quarkiverse projects that includes the default release and artifact publishing related configuration


Keywords
quarkus-extension
License
Apache-2.0

Documentation

Quarkus Amazon Services

All Contributors

Version

Introduction

This set of extensions allows you to interact with some of the AWS Services namely:

  • Cognito User Pools
  • DynamoDB / DynamoDB Enhanced
  • EventBridge
  • IAM
  • Kinesis
  • KMS
  • Lambda
  • S3
  • Secrets Manager
  • SES
  • SFN
  • SNS
  • SQS
  • SSM
  • STS

They also provide a common infrastructure to make it easy to add new ones.

Each extension provides configuration properties to configure the clients and wires everything via CDI injection. It allows to use all 4 HTTP client implementations available in the AWS SDK for Java 2.x :

  • URL Connection HTTP client (default for synchronous call)
  • Apache HTTP Client
  • Netty HTTP client (default for asynchronous call)
  • AWS CRT-based HTTP client (for both synchronous and asynchronous client)

Compatibility with Quarkus Core

Quarkus Amazon Services is a component of the Quarkus Platform. If you do not require specific features from the latest release, it is recommended to use BOMs from the Quarkus Platform.

  <properties>
    <quarkus.platform.artifact-id>quarkus-bom</quarkus.platform.artifact-id>
    <quarkus.platform.group-id>io.quarkus.platform</quarkus.platform.group-id>
    <quarkus.platform.version>3.8.0</quarkus.platform.version>
  </properties>
  <dependencyManagement>
    <dependencies>
      <dependency>
        <groupId>${quarkus.platform.group-id}</groupId>
        <artifactId>${quarkus.platform.artifact-id}</artifactId>
        <version>${quarkus.platform.version}</version>
        <type>pom</type>
        <scope>import</scope>
      </dependency>
      <dependency>
        <groupId>${quarkus.platform.group-id}</groupId>
        <artifactId>quarkus-amazon-services-bom</artifactId>
        <version>${quarkus.platform.version}</version>
        <type>pom</type>
        <scope>import</scope>
      </dependency>
    </dependencies>
  </dependencyManagement>

Alternatively, you can switch to using a specific version of the Quarkus Amazon Services BOM.

  <properties>
    <quarkus.platform.artifact-id>quarkus-bom</quarkus.platform.artifact-id>
    <quarkus.platform.group-id>io.quarkus.platform</quarkus.platform.group-id>
    <quarkus.platform.version>3.8.0</quarkus.platform.version>
    <quarkus-amazon-services.version>2.12.0</quarkus-amazon-services.version>
  </properties>
  <dependencyManagement>
    <dependencies>
      <dependency>
        <groupId>${quarkus.platform.group-id}</groupId>
        <artifactId>${quarkus.platform.artifact-id}</artifactId>
        <version>${quarkus.platform.version}</version>
        <type>pom</type>
        <scope>import</scope>
      </dependency>
      <dependency>
        <groupId>io.quarkiverse.amazonservices</groupId>
        <artifactId>quarkus-amazon-services-bom</artifactId>
        <version>${quarkus-amazon-services.version}</version>
        <type>pom</type>
        <scope>import</scope>
      </dependency>
    </dependencies>
  </dependencyManagement>

Quarkus Amazon Services provides multiple version streams. One stream is compatible with Quarkus 2.x, while the others are designed to work with Quarkus 3.x and are aligned with Quarkus LTS.

Quarkus Quarkus Amazon Services Documentation
2.x 1.6.x Documentation
3.2.x (LTS) 2.4.x Documentation
3.8.x (LTS) 2.12.x Documentation
>=3.x >=2.5 Documentation

Use the latest version of the corresponding stream, the list of versions is available on Maven Central.

Contributors ✨

Thanks goes to these wonderful people (emoji key):

Marcin Czeczko
Marcin Czeczko

💻 🚧
Guillaume Smet
Guillaume Smet

💻 🚧
Corentin Arnaud
Corentin Arnaud

💻
Andrea Cosentino
Andrea Cosentino

💻
Erik Mattheis
Erik Mattheis

💻
Falko Modler
Falko Modler

💻
Stuart Douglas
Stuart Douglas

💻
Kevin Wooten
Kevin Wooten

💻
Fedorenko Dmitrij
Fedorenko Dmitrij

💻
Sébastien CROCQUESEL
Sébastien CROCQUESEL

💻 🚧
Michael Hamburger
Michael Hamburger

💻
Nithanim
Nithanim

💻
Pavel
Pavel

💻
dagrammy
dagrammy

💻
Ashish Ranjan
Ashish Ranjan

💻
thiko
thiko

💻
Cedric Thiebault
Cedric Thiebault

💻
Kris-Gerhard
Kris-Gerhard

💻
Arnaud Bailly
Arnaud Bailly

💻
Ivan Milosavljević
Ivan Milosavljević

📖
Triphon Penakov
Triphon Penakov

💻
Ryan Dens
Ryan Dens

🤔
Bas Hovestad
Bas Hovestad

💻
André Zimmermann
André Zimmermann

💻
Louie壮真UwUr_柔
Louie壮真UwUr_柔

📖

This project follows the all-contributors specification. Contributions of any kind welcome!