path();
15 |
16 | /**
17 | * Key store type.
18 | *
19 | * See the KeyStore section in
20 | * the https://docs.oracle.com/javase/8/docs/technotes/guides/security/StandardNames.html#KeyStore[Java Cryptography
21 | * Architecture Standard Algorithm Name Documentation]
22 | * for information about standard keystore types.
23 | */
24 | Optional type();
25 |
26 | /**
27 | * Key store password
28 | */
29 | Optional password();
30 | }
31 |
--------------------------------------------------------------------------------
/common/runtime-spi/src/main/java/io/quarkiverse/amazon/common/runtime/HasAmazonClientRuntimeConfig.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.amazon.common.runtime;
2 |
3 | import java.util.Map;
4 |
5 | import io.quarkus.runtime.annotations.ConfigDocMapKey;
6 | import io.smallrye.config.WithDefaults;
7 | import io.smallrye.config.WithParentName;
8 | import io.smallrye.config.WithUnnamedKey;
9 |
10 | public interface HasAmazonClientRuntimeConfig {
11 |
12 | /**
13 | * Clients
14 | */
15 | @ConfigDocMapKey("client-name")
16 | @WithParentName
17 | @WithDefaults
18 | @WithUnnamedKey(ClientUtil.DEFAULT_CLIENT_NAME)
19 | Map clients();
20 | }
21 |
--------------------------------------------------------------------------------
/common/runtime-spi/src/main/java/io/quarkiverse/amazon/common/runtime/HasSdkBuildTimeConfig.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.amazon.common.runtime;
2 |
3 | import io.smallrye.config.WithParentName;
4 |
5 | public interface HasSdkBuildTimeConfig {
6 |
7 | /**
8 | * SDK client configurations for AWS client
9 | */
10 | @WithParentName
11 | SdkBuildTimeConfig sdk();
12 | }
13 |
--------------------------------------------------------------------------------
/common/runtime-spi/src/main/java/io/quarkiverse/amazon/common/runtime/HasTransportBuildTimeConfig.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.amazon.common.runtime;
2 |
3 | public interface HasTransportBuildTimeConfig {
4 | /**
5 | * Sync HTTP transport configuration
6 | */
7 | SyncHttpClientBuildTimeConfig syncClient();
8 |
9 | /**
10 | * Async HTTP transport configuration
11 | */
12 | AsyncHttpClientBuildTimeConfig asyncClient();
13 | }
14 |
--------------------------------------------------------------------------------
/common/runtime-spi/src/main/java/io/quarkiverse/amazon/common/runtime/RuntimeConfigurationError.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.amazon.common.runtime;
2 |
3 | public class RuntimeConfigurationError extends RuntimeException {
4 |
5 | public RuntimeConfigurationError(String message) {
6 | super(message);
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/common/runtime-spi/src/main/java/io/quarkiverse/amazon/common/runtime/SyncHttpClientBuildTimeConfig.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.amazon.common.runtime;
2 |
3 | import io.quarkus.runtime.annotations.ConfigGroup;
4 | import io.smallrye.config.WithDefault;
5 |
6 | @ConfigGroup
7 | public interface SyncHttpClientBuildTimeConfig {
8 |
9 | /**
10 | * Type of the sync HTTP client implementation
11 | */
12 | @WithDefault(value = "url")
13 | SyncClientType type();
14 |
15 | public enum SyncClientType {
16 | URL,
17 | APACHE,
18 | AWS_CRT
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/common/runtime/src/main/java/io/quarkiverse/amazon/common/runtime/MotoDevServicesBuildTimeConfig.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.amazon.common.runtime;
2 |
3 | import java.util.Map;
4 |
5 | import io.quarkus.runtime.annotations.ConfigPhase;
6 | import io.quarkus.runtime.annotations.ConfigRoot;
7 | import io.smallrye.config.ConfigMapping;
8 | import io.smallrye.config.WithDefault;
9 |
10 | @ConfigMapping(prefix = "quarkus.aws.devservices.moto")
11 | @ConfigRoot(phase = ConfigPhase.BUILD_AND_RUN_TIME_FIXED)
12 | public interface MotoDevServicesBuildTimeConfig {
13 | /**
14 | * The Moto container image to use.
15 | */
16 | @WithDefault(value = "motoserver/moto")
17 | String imageName();
18 |
19 | /**
20 | * Generic properties that are pass for additional container configuration.
21 | */
22 | Map containerProperties();
23 | }
24 |
--------------------------------------------------------------------------------
/common/runtime/src/main/java/io/quarkiverse/amazon/common/runtime/SdkAutoCloseableDestroyer.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.amazon.common.runtime;
2 |
3 | import java.util.Map;
4 |
5 | import jakarta.enterprise.context.spi.CreationalContext;
6 |
7 | import io.quarkus.arc.BeanDestroyer;
8 | import software.amazon.awssdk.utils.SdkAutoCloseable;
9 |
10 | public class SdkAutoCloseableDestroyer implements BeanDestroyer {
11 |
12 | @Override
13 | public void destroy(SdkAutoCloseable instance, CreationalContext creationalContext,
14 | Map params) {
15 | instance.close();
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/common/runtime/src/main/resources/META-INF/quarkus-extension.yaml:
--------------------------------------------------------------------------------
1 | ---
2 | artifact: ${project.groupId}:${project.artifactId}:${project.version}
3 | name: "Amazon Services Common"
4 | metadata:
5 | keywords:
6 | - "amazon services"
7 | - "aws"
8 | - "amazon"
9 | categories:
10 | - "data"
11 | status: "stable"
12 | unlisted: true
--------------------------------------------------------------------------------
/common/runtime/src/main/resources/META-INF/services/org.eclipse.microprofile.config.spi.Converter:
--------------------------------------------------------------------------------
1 | io.quarkiverse.amazon.common.runtime.RegionConverter
2 |
3 |
--------------------------------------------------------------------------------
/crt/pom.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | 4.0.0
4 |
5 |
6 | io.quarkiverse.amazonservices
7 | quarkus-amazon-services-build-parent
8 | 999-SNAPSHOT
9 | ../build-parent/pom.xml
10 |
11 |
12 | quarkus-amazon-crt-parent
13 | Quarkus - Amazon Services - CRT
14 | pom
15 |
16 |
17 | runtime
18 | deployment
19 |
20 |
21 |
22 |
--------------------------------------------------------------------------------
/crt/runtime/src/main/resources/META-INF/quarkus-extension.yaml:
--------------------------------------------------------------------------------
1 | ---
2 | artifact: ${project.groupId}:${project.artifactId}:${project.version}
3 | name: Aws Crt
4 | metadata:
5 | keywords:
6 | - "crt"
7 | - "aws"
8 | - "amazon"
9 | categories:
10 | - "data"
11 | status: "preview"
12 |
--------------------------------------------------------------------------------
/devservices/acm/src/main/java/io/quarkiverse/amazon/devservices/acm/AcmDevServicesProcessor.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.amazon.devservices.acm;
2 |
3 | import org.testcontainers.containers.localstack.LocalStackContainer.EnabledService;
4 |
5 | import io.quarkiverse.amazon.acm.runtime.AcmBuildTimeConfig;
6 | import io.quarkiverse.amazon.common.deployment.spi.AbstractDevServicesLocalStackProcessor;
7 | import io.quarkiverse.amazon.common.deployment.spi.DevServicesLocalStackProviderBuildItem;
8 | import io.quarkus.deployment.annotations.BuildStep;
9 |
10 | public class AcmDevServicesProcessor extends AbstractDevServicesLocalStackProcessor {
11 |
12 | @BuildStep
13 | DevServicesLocalStackProviderBuildItem setupSsm(AcmBuildTimeConfig clientBuildTimeConfig) {
14 | return this.setup(EnabledService.named("acm"), clientBuildTimeConfig.devservices());
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/devservices/bedrock/src/main/java/io/quarkiverse/amazon/devservices/bedrock/BedrockDevServicesProcessor.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.amazon.devservices.bedrock;
2 |
3 | import org.testcontainers.containers.localstack.LocalStackContainer.EnabledService;
4 |
5 | import io.quarkiverse.amazon.bedrock.runtime.BedrockBuildTimeConfig;
6 | import io.quarkiverse.amazon.common.deployment.spi.AbstractDevServicesLocalStackProcessor;
7 | import io.quarkiverse.amazon.common.deployment.spi.DevServicesLocalStackProviderBuildItem;
8 | import io.quarkus.deployment.annotations.BuildStep;
9 |
10 | public class BedrockDevServicesProcessor extends AbstractDevServicesLocalStackProcessor {
11 |
12 | @BuildStep
13 | DevServicesLocalStackProviderBuildItem setupBedrock(BedrockBuildTimeConfig clientBuildTimeConfig) {
14 | return this.setup(EnabledService.named("bedrock"), clientBuildTimeConfig.devservices());
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/devservices/cloudwatch/src/main/java/io/quarkiverse/amazon/devservices/cloudwatch/CloudWatchDevServicesProcessor.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.amazon.devservices.cloudwatch;
2 |
3 | import org.testcontainers.containers.localstack.LocalStackContainer.Service;
4 |
5 | import io.quarkiverse.amazon.cloudwatch.runtime.CloudWatchBuildTimeConfig;
6 | import io.quarkiverse.amazon.common.deployment.spi.AbstractDevServicesLocalStackProcessor;
7 | import io.quarkiverse.amazon.common.deployment.spi.DevServicesLocalStackProviderBuildItem;
8 | import io.quarkus.deployment.annotations.BuildStep;
9 |
10 | public class CloudWatchDevServicesProcessor extends AbstractDevServicesLocalStackProcessor {
11 |
12 | @BuildStep
13 | DevServicesLocalStackProviderBuildItem setupCloudWatch(CloudWatchBuildTimeConfig clientBuildTimeConfig) {
14 | return this.setup(Service.CLOUDWATCH, clientBuildTimeConfig.devservices());
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/devservices/cloudwatchlogs/src/main/java/io/quarkiverse/amazon/devservices/cloudwatch/CloudWatchLogsDevServicesProcessor.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.amazon.devservices.cloudwatch;
2 |
3 | import org.testcontainers.containers.localstack.LocalStackContainer.Service;
4 |
5 | import io.quarkiverse.amazon.cloudwatchlogs.runtime.CloudWatchLogsBuildTimeConfig;
6 | import io.quarkiverse.amazon.common.deployment.spi.AbstractDevServicesLocalStackProcessor;
7 | import io.quarkiverse.amazon.common.deployment.spi.DevServicesLocalStackProviderBuildItem;
8 | import io.quarkus.deployment.annotations.BuildStep;
9 |
10 | public class CloudWatchLogsDevServicesProcessor extends AbstractDevServicesLocalStackProcessor {
11 |
12 | @BuildStep
13 | DevServicesLocalStackProviderBuildItem setupCloudWatchLogs(CloudWatchLogsBuildTimeConfig clientBuildTimeConfig) {
14 | return this.setup(Service.CLOUDWATCHLOGS, clientBuildTimeConfig.devservices());
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/devservices/dynamodb/src/main/java/io/quarkiverse/amazon/devservices/dynamodb/DynamodbDevServicesProcessor.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.amazon.devservices.dynamodb;
2 |
3 | import org.testcontainers.containers.localstack.LocalStackContainer.Service;
4 |
5 | import io.quarkiverse.amazon.common.deployment.spi.AbstractDevServicesLocalStackProcessor;
6 | import io.quarkiverse.amazon.common.deployment.spi.DevServicesLocalStackProviderBuildItem;
7 | import io.quarkiverse.amazon.dynamodb.runtime.DynamoDbBuildTimeConfig;
8 | import io.quarkus.deployment.annotations.BuildStep;
9 |
10 | public class DynamodbDevServicesProcessor extends AbstractDevServicesLocalStackProcessor {
11 |
12 | @BuildStep
13 | DevServicesLocalStackProviderBuildItem setupDynamodb(DynamoDbBuildTimeConfig clientBuildTimeConfig) {
14 | return this.setup(Service.DYNAMODB, clientBuildTimeConfig.devservices());
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/devservices/ecr/src/main/java/io/quarkiverse/amazon/devservices/ecr/EcrDevServicesProcessor.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.amazon.devservices.ecr;
2 |
3 | import org.testcontainers.containers.localstack.LocalStackContainer.EnabledService;
4 |
5 | import io.quarkiverse.amazon.common.deployment.spi.AbstractDevServicesLocalStackProcessor;
6 | import io.quarkiverse.amazon.common.deployment.spi.DevServicesLocalStackProviderBuildItem;
7 | import io.quarkiverse.amazon.ecr.runtime.EcrBuildTimeConfig;
8 | import io.quarkus.deployment.annotations.BuildStep;
9 |
10 | public class EcrDevServicesProcessor extends AbstractDevServicesLocalStackProcessor {
11 |
12 | @BuildStep
13 | DevServicesLocalStackProviderBuildItem setupEcr(EcrBuildTimeConfig clientBuildTimeConfig) {
14 | return this.setup(EnabledService.named("ecr"), clientBuildTimeConfig.devservices());
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/devservices/eventbridge/src/main/java/io/quarkiverse/amazon/devservices/eventbridge/EventBridgeDevServicesProcessor.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.amazon.devservices.eventbridge;
2 |
3 | import org.testcontainers.containers.localstack.LocalStackContainer.EnabledService;
4 |
5 | import io.quarkiverse.amazon.common.deployment.spi.AbstractDevServicesLocalStackProcessor;
6 | import io.quarkiverse.amazon.common.deployment.spi.DevServicesLocalStackProviderBuildItem;
7 | import io.quarkiverse.amazon.eventbridge.runtime.EventBridgeBuildTimeConfig;
8 | import io.quarkus.deployment.annotations.BuildStep;
9 |
10 | public class EventBridgeDevServicesProcessor extends AbstractDevServicesLocalStackProcessor {
11 |
12 | @BuildStep
13 | DevServicesLocalStackProviderBuildItem setupEventBridge(EventBridgeBuildTimeConfig clientBuildTimeConfig) {
14 | return this.setup(EnabledService.named("events"), clientBuildTimeConfig.devservices());
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/devservices/iam/src/main/java/io/quarkiverse/amazon/devservices/iam/IamDevServicesProcessor.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.amazon.devservices.iam;
2 |
3 | import org.testcontainers.containers.localstack.LocalStackContainer.Service;
4 |
5 | import io.quarkiverse.amazon.common.deployment.spi.AbstractDevServicesLocalStackProcessor;
6 | import io.quarkiverse.amazon.common.deployment.spi.DevServicesLocalStackProviderBuildItem;
7 | import io.quarkiverse.amazon.iam.runtime.IamBuildTimeConfig;
8 | import io.quarkus.deployment.annotations.BuildStep;
9 |
10 | public class IamDevServicesProcessor extends AbstractDevServicesLocalStackProcessor {
11 |
12 | @BuildStep
13 | DevServicesLocalStackProviderBuildItem setupIam(IamBuildTimeConfig clientBuildTimeConfig) {
14 | return this.setup(Service.IAM, clientBuildTimeConfig.devservices());
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/devservices/kinesis/src/main/java/io/quarkiverse/amazon/devservices/kinesis/KinesisDevServicesProcessor.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.amazon.devservices.kinesis;
2 |
3 | import org.testcontainers.containers.localstack.LocalStackContainer.Service;
4 |
5 | import io.quarkiverse.amazon.common.deployment.spi.AbstractDevServicesLocalStackProcessor;
6 | import io.quarkiverse.amazon.common.deployment.spi.DevServicesLocalStackProviderBuildItem;
7 | import io.quarkiverse.amazon.kinesis.runtime.KinesisBuildTimeConfig;
8 | import io.quarkus.deployment.annotations.BuildStep;
9 |
10 | public class KinesisDevServicesProcessor extends AbstractDevServicesLocalStackProcessor {
11 |
12 | @BuildStep
13 | DevServicesLocalStackProviderBuildItem setupKinesis(KinesisBuildTimeConfig clientBuildTimeConfig) {
14 | return this.setup(Service.KINESIS, clientBuildTimeConfig.devservices());
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/devservices/kms/src/main/java/io/quarkiverse/amazon/devservices/kms/KmsDevServicesProcessor.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.amazon.devservices.kms;
2 |
3 | import org.testcontainers.containers.localstack.LocalStackContainer.Service;
4 |
5 | import io.quarkiverse.amazon.common.deployment.spi.AbstractDevServicesLocalStackProcessor;
6 | import io.quarkiverse.amazon.common.deployment.spi.DevServicesLocalStackProviderBuildItem;
7 | import io.quarkiverse.amazon.kms.runtime.KmsBuildTimeConfig;
8 | import io.quarkus.deployment.annotations.BuildStep;
9 |
10 | public class KmsDevServicesProcessor extends AbstractDevServicesLocalStackProcessor {
11 |
12 | @BuildStep
13 | DevServicesLocalStackProviderBuildItem setupKms(KmsBuildTimeConfig clientBuildTimeConfig) {
14 | return this.setup(Service.KMS, clientBuildTimeConfig.devservices());
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/devservices/lambda/src/main/java/io/quarkiverse/amazon/devservices/lambda/LambdaDevServicesProcessor.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.amazon.devservices.lambda;
2 |
3 | import org.testcontainers.containers.localstack.LocalStackContainer.Service;
4 |
5 | import io.quarkiverse.amazon.common.deployment.spi.AbstractDevServicesLocalStackProcessor;
6 | import io.quarkiverse.amazon.common.deployment.spi.DevServicesLocalStackProviderBuildItem;
7 | import io.quarkiverse.amazon.lambda.runtime.LambdaBuildTimeConfig;
8 | import io.quarkus.deployment.annotations.BuildStep;
9 |
10 | public class LambdaDevServicesProcessor extends AbstractDevServicesLocalStackProcessor {
11 |
12 | @BuildStep
13 | DevServicesLocalStackProviderBuildItem setupLambda(LambdaBuildTimeConfig clientBuildTimeConfig) {
14 | return this.setup(Service.LAMBDA, clientBuildTimeConfig.devservices());
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/devservices/rds/src/main/java/io/quarkiverse/amazon/devservices/rds/RdsDevServicesProcessor.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.amazon.devservices.rds;
2 |
3 | import org.testcontainers.containers.localstack.LocalStackContainer.EnabledService;
4 |
5 | import io.quarkiverse.amazon.common.deployment.spi.AbstractDevServicesLocalStackProcessor;
6 | import io.quarkiverse.amazon.common.deployment.spi.DevServicesLocalStackProviderBuildItem;
7 | import io.quarkiverse.amazon.rds.runtime.RdsBuildTimeConfig;
8 | import io.quarkus.deployment.annotations.BuildStep;
9 |
10 | public class RdsDevServicesProcessor extends AbstractDevServicesLocalStackProcessor {
11 |
12 | @BuildStep
13 | DevServicesLocalStackProviderBuildItem setupRds(RdsBuildTimeConfig clientBuildTimeConfig) {
14 | return this.setup(EnabledService.named("rds"), clientBuildTimeConfig.devservices());
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/devservices/scheduler/src/main/java/io/quarkiverse/amazon/devservices/scheduler/SchedulerDevServicesProcessor.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.amazon.devservices.scheduler;
2 |
3 | import org.testcontainers.containers.localstack.LocalStackContainer.EnabledService;
4 |
5 | import io.quarkiverse.amazon.common.deployment.spi.AbstractDevServicesLocalStackProcessor;
6 | import io.quarkiverse.amazon.common.deployment.spi.DevServicesLocalStackProviderBuildItem;
7 | import io.quarkiverse.amazon.scheduler.runtime.SchedulerBuildTimeConfig;
8 | import io.quarkus.deployment.annotations.BuildStep;
9 |
10 | public class SchedulerDevServicesProcessor extends AbstractDevServicesLocalStackProcessor {
11 |
12 | @BuildStep
13 | DevServicesLocalStackProviderBuildItem setupEventBridge(SchedulerBuildTimeConfig clientBuildTimeConfig) {
14 | return this.setup(EnabledService.named("scheduler"), clientBuildTimeConfig.devservices());
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/devservices/secretsmanager/src/main/java/io/quarkiverse/amazon/devservices/secretsmanager/SecretsManagerDevServicesProcessor.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.amazon.devservices.secretsmanager;
2 |
3 | import org.testcontainers.containers.localstack.LocalStackContainer.Service;
4 |
5 | import io.quarkiverse.amazon.common.deployment.spi.AbstractDevServicesLocalStackProcessor;
6 | import io.quarkiverse.amazon.common.deployment.spi.DevServicesLocalStackProviderBuildItem;
7 | import io.quarkiverse.amazon.secretsmanager.runtime.SecretsManagerBuildTimeConfig;
8 | import io.quarkus.deployment.annotations.BuildStep;
9 |
10 | public class SecretsManagerDevServicesProcessor extends AbstractDevServicesLocalStackProcessor {
11 |
12 | @BuildStep
13 | DevServicesLocalStackProviderBuildItem setupSecretsManager(SecretsManagerBuildTimeConfig clientBuildTimeConfig) {
14 | return this.setup(Service.SECRETSMANAGER, clientBuildTimeConfig.devservices());
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/devservices/ses/src/main/java/io/quarkiverse/amazon/devservices/ses/SesDevServicesProcessor.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.amazon.devservices.ses;
2 |
3 | import org.testcontainers.containers.localstack.LocalStackContainer.Service;
4 |
5 | import io.quarkiverse.amazon.common.deployment.spi.AbstractDevServicesLocalStackProcessor;
6 | import io.quarkiverse.amazon.common.deployment.spi.DevServicesLocalStackProviderBuildItem;
7 | import io.quarkiverse.amazon.ses.runtime.SesBuildTimeConfig;
8 | import io.quarkus.deployment.annotations.BuildStep;
9 |
10 | public class SesDevServicesProcessor extends AbstractDevServicesLocalStackProcessor {
11 |
12 | @BuildStep
13 | DevServicesLocalStackProviderBuildItem setupSes(SesBuildTimeConfig clientBuildTimeConfig) {
14 | return this.setup(Service.SES, clientBuildTimeConfig.devservices());
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/devservices/sfn/src/main/java/io/quarkiverse/amazon/devservices/sfn/SfnDevServicesProcessor.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.amazon.devservices.sfn;
2 |
3 | import org.testcontainers.containers.localstack.LocalStackContainer.Service;
4 |
5 | import io.quarkiverse.amazon.common.deployment.spi.AbstractDevServicesLocalStackProcessor;
6 | import io.quarkiverse.amazon.common.deployment.spi.DevServicesLocalStackProviderBuildItem;
7 | import io.quarkiverse.amazon.sfn.runtime.SfnBuildTimeConfig;
8 | import io.quarkus.deployment.annotations.BuildStep;
9 |
10 | public class SfnDevServicesProcessor extends AbstractDevServicesLocalStackProcessor {
11 |
12 | @BuildStep
13 | DevServicesLocalStackProviderBuildItem setupSfn(SfnBuildTimeConfig clientBuildTimeConfig) {
14 | return this.setup(Service.STEPFUNCTIONS, clientBuildTimeConfig.devservices());
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/devservices/sns/src/main/java/io/quarkiverse/amazon/devservices/sns/SnsDevServicesProcessor.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.amazon.devservices.sns;
2 |
3 | import org.testcontainers.containers.localstack.LocalStackContainer.Service;
4 |
5 | import io.quarkiverse.amazon.common.deployment.spi.AbstractDevServicesLocalStackProcessor;
6 | import io.quarkiverse.amazon.common.deployment.spi.DevServicesLocalStackProviderBuildItem;
7 | import io.quarkiverse.amazon.sns.runtime.SnsBuildTimeConfig;
8 | import io.quarkus.deployment.annotations.BuildStep;
9 |
10 | public class SnsDevServicesProcessor extends AbstractDevServicesLocalStackProcessor {
11 |
12 | @BuildStep
13 | DevServicesLocalStackProviderBuildItem setupSns(SnsBuildTimeConfig clientBuildTimeConfig) {
14 | return this.setup(Service.SNS, clientBuildTimeConfig.devservices());
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/devservices/ssm/src/main/java/io/quarkiverse/amazon/devservices/ssm/SsmDevServicesProcessor.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.amazon.devservices.ssm;
2 |
3 | import org.testcontainers.containers.localstack.LocalStackContainer.Service;
4 |
5 | import io.quarkiverse.amazon.common.deployment.spi.AbstractDevServicesLocalStackProcessor;
6 | import io.quarkiverse.amazon.common.deployment.spi.DevServicesLocalStackProviderBuildItem;
7 | import io.quarkiverse.amazon.ssm.runtime.SsmBuildTimeConfig;
8 | import io.quarkus.deployment.annotations.BuildStep;
9 |
10 | public class SsmDevServicesProcessor extends AbstractDevServicesLocalStackProcessor {
11 |
12 | @BuildStep
13 | DevServicesLocalStackProviderBuildItem setupSsm(SsmBuildTimeConfig clientBuildTimeConfig) {
14 | return this.setup(Service.SSM, clientBuildTimeConfig.devservices());
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/devservices/sts/src/main/java/io/quarkiverse/amazon/devservices/sts/StsDevServicesProcessor.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.amazon.devservices.sts;
2 |
3 | import org.testcontainers.containers.localstack.LocalStackContainer.Service;
4 |
5 | import io.quarkiverse.amazon.common.deployment.spi.AbstractDevServicesLocalStackProcessor;
6 | import io.quarkiverse.amazon.common.deployment.spi.DevServicesLocalStackProviderBuildItem;
7 | import io.quarkiverse.amazon.sts.runtime.StsBuildTimeConfig;
8 | import io.quarkus.deployment.annotations.BuildStep;
9 |
10 | public class StsDevServicesProcessor extends AbstractDevServicesLocalStackProcessor {
11 |
12 | @BuildStep
13 | DevServicesLocalStackProviderBuildItem setupSts(StsBuildTimeConfig clientBuildTimeConfig) {
14 | return this.setup(Service.STS, clientBuildTimeConfig.devservices());
15 | }
16 | }
--------------------------------------------------------------------------------
/docs/antora.yml:
--------------------------------------------------------------------------------
1 | name: quarkus-amazon-services
2 | title: Amazon Services
3 | nav:
4 | - modules/ROOT/nav.adoc
5 |
--------------------------------------------------------------------------------
/docs/modules/ROOT/assets/images/.keepme:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/quarkiverse/quarkus-amazon-services/ef38c94fe5c207cdcb2631ae438a9f05aa23c122/docs/modules/ROOT/assets/images/.keepme
--------------------------------------------------------------------------------
/docs/modules/ROOT/pages/amazon-credentials.adoc:
--------------------------------------------------------------------------------
1 | * Java System Properties - `aws.accessKeyId` and `aws.secretAccessKey`
2 | * Environment Variables - `AWS_ACCESS_KEY_ID` and `AWS_SECRET_ACCESS_KEY`
3 | * Credential profiles file at the default location (`~/.aws/credentials`) shared by all AWS SDKs and the AWS CLI
4 | * Credentials delivered through the Amazon ECS if the `AWS_CONTAINER_CREDENTIALS_RELATIVE_URI` environment variable is set and the security manager has permission to access the variable,
5 | * Instance profile credentials delivered through the Amazon EC2 metadata service
--------------------------------------------------------------------------------
/docs/modules/ROOT/pages/amazon-rdsdata.adoc:
--------------------------------------------------------------------------------
1 | :service-name: rdsdata
2 | :service-name-uppercase: RDSDATA
3 |
4 | = Amazon RDS Data Client
5 |
6 | include::./includes/attributes.adoc[]
7 |
8 | The Amazon RDS Data API is a web service that enables you to run SQL statements on an Amazon RDS database without having to manage a connection to the database.
9 |
10 | You can find more information about RDS at https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/data-api.html[the Amazon RDS Data website].
11 |
12 | include::./amazon-configure-clients.adoc[]
13 |
14 | == Configuration Reference
15 |
16 | include::./includes/quarkus-amazon-rdsdata.adoc[]
17 |
--------------------------------------------------------------------------------
/docs/modules/ROOT/pages/includes/attributes.adoc:
--------------------------------------------------------------------------------
1 | :quarkus-version: 3.22.2
2 | :quarkus-amazon-services-version: 3.7.1
3 | :maven-version: 3.8.1+
4 |
5 | :quarkus-org-url: https://github.com/quarkusio
6 | :quarkus-base-url: {quarkus-org-url}/quarkus
7 | :quarkus-clone-url: {quarkus-base-url}.git
8 | :quarkus-archive-url: {quarkus-base-url}/archive/master.zip
9 | :quarkus-tree-url: {quarkus-base-url}/tree/main
10 | :quarkus-issues-url: {quarkus-base-url}/issues
11 | :quarkus-guides-url: https://quarkus.io/guides
12 | :quickstarts-base-url: https://github.com/quarkusio/quarkus-quickstarts
13 | :quickstarts-clone-url: https://github.com/quarkusio/quarkus-quickstarts.git
14 | :quickstarts-archive-url: https://github.com/quarkusio/quarkus-quickstarts/archive/main.zip
15 | :quickstarts-blob-url: https://github.com/quarkusio/quarkus-quickstarts/blob/main
16 | :quickstarts-tree-url: https://github.com/quarkusio/quarkus-quickstarts/tree/main
17 |
--------------------------------------------------------------------------------
/docs/modules/ROOT/pages/index.adoc:
--------------------------------------------------------------------------------
1 | = Quarkus Amazon Services
2 |
3 | This set of extensions expose AWS services through configuration properties and CDI injection.
4 |
5 | You can find the full set of supported services and documentation for each of them in the navigation on the left.
6 |
--------------------------------------------------------------------------------
/docs/templates/includes/attributes.adoc:
--------------------------------------------------------------------------------
1 | :quarkus-version: ${quarkus.version}
2 | :quarkus-amazon-services-version: ${release.current-version}
3 | :maven-version: 3.8.1+
4 |
5 | :quarkus-org-url: https://github.com/quarkusio
6 | :quarkus-base-url: {quarkus-org-url}/quarkus
7 | :quarkus-clone-url: {quarkus-base-url}.git
8 | :quarkus-archive-url: {quarkus-base-url}/archive/master.zip
9 | :quarkus-tree-url: {quarkus-base-url}/tree/main
10 | :quarkus-issues-url: {quarkus-base-url}/issues
11 | :quarkus-guides-url: https://quarkus.io/guides
12 | :quickstarts-base-url: https://github.com/quarkusio/quarkus-quickstarts
13 | :quickstarts-clone-url: https://github.com/quarkusio/quarkus-quickstarts.git
14 | :quickstarts-archive-url: https://github.com/quarkusio/quarkus-quickstarts/archive/main.zip
15 | :quickstarts-blob-url: https://github.com/quarkusio/quarkus-quickstarts/blob/main
16 | :quickstarts-tree-url: https://github.com/quarkusio/quarkus-quickstarts/tree/main
17 |
--------------------------------------------------------------------------------
/dynamodb-enhanced/deployment/src/main/java/io/quarkiverse/amazon/dynamodb/enhanced/deployment/DynamodbEnhancedBeanBuildItem.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.amazon.dynamodb.enhanced.deployment;
2 |
3 | import org.jboss.jandex.DotName;
4 |
5 | import io.quarkus.builder.item.MultiBuildItem;
6 |
7 | public final class DynamodbEnhancedBeanBuildItem extends MultiBuildItem {
8 |
9 | private DotName className;
10 |
11 | public DynamodbEnhancedBeanBuildItem(DotName className) {
12 | this.className = className;
13 | }
14 |
15 | public DotName getClassName() {
16 | return className;
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/dynamodb-enhanced/deployment/src/test/java/io/quarkiverse/amazon/dynamodb/enhanced/deployment/DynamoDBEnhancedDbTableConstructorInjection.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.amazon.dynamodb.enhanced.deployment;
2 |
3 | import jakarta.enterprise.context.ApplicationScoped;
4 |
5 | import io.quarkiverse.amazon.dynamodb.enhanced.runtime.NamedDynamoDbTable;
6 | import software.amazon.awssdk.enhanced.dynamodb.DynamoDbTable;
7 |
8 | @ApplicationScoped
9 | public class DynamoDBEnhancedDbTableConstructorInjection {
10 |
11 | private DynamoDbTable syncTable;
12 |
13 | DynamoDBEnhancedDbTableConstructorInjection(
14 | @NamedDynamoDbTable("sync") DynamoDbTable syncTable) {
15 | this.syncTable = syncTable;
16 | }
17 |
18 | public DynamoDbTable getSyncTable() {
19 | return syncTable;
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/dynamodb-enhanced/deployment/src/test/java/io/quarkiverse/amazon/dynamodb/enhanced/deployment/DynamoDBExampleTableEntry.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.amazon.dynamodb.enhanced.deployment;
2 |
3 | import software.amazon.awssdk.enhanced.dynamodb.mapper.annotations.DynamoDbBean;
4 |
5 | @DynamoDbBean
6 | public class DynamoDBExampleTableEntry {
7 |
8 | }
9 |
--------------------------------------------------------------------------------
/dynamodb-enhanced/deployment/src/test/java/io/quarkiverse/amazon/dynamodb/enhanced/deployment/DynamoDBExampleTableNotABean.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.amazon.dynamodb.enhanced.deployment;
2 |
3 | public class DynamoDBExampleTableNotABean {
4 |
5 | }
6 |
--------------------------------------------------------------------------------
/dynamodb-enhanced/deployment/src/test/java/io/quarkiverse/amazon/dynamodb/enhanced/deployment/DynamoDbEnhancedClientProducer.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.amazon.dynamodb.enhanced.deployment;
2 |
3 | import jakarta.enterprise.context.ApplicationScoped;
4 | import jakarta.enterprise.inject.Produces;
5 |
6 | import software.amazon.awssdk.enhanced.dynamodb.DynamoDbEnhancedClient;
7 | import software.amazon.awssdk.services.dynamodb.DynamoDbClient;
8 |
9 | public class DynamoDbEnhancedClientProducer {
10 |
11 | @Produces
12 | @ApplicationScoped
13 | public DynamoDbEnhancedClient enhancedClient(DynamoDbClient client) {
14 | return DynamoDbEnhancedClient.builder()
15 | .dynamoDbClient(client)
16 | .build();
17 | }
18 |
19 | @Produces
20 | @ApplicationScoped
21 | public DynamoDbClient client() {
22 | return DynamoDbClient.create();
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/dynamodb-enhanced/deployment/src/test/resources/full-config.properties:
--------------------------------------------------------------------------------
1 | quarkus.dynamodb.endpoint-override=http://localhost:8000
2 | quarkus.dynamodb.aws.region=us-east-2
3 | quarkus.dynamodb.aws.credentials.type=static
4 | quarkus.dynamodb.aws.credentials.static-provider.access-key-id=test-key
5 | quarkus.dynamodb.aws.credentials.static-provider.secret-access-key=test-secret
6 |
7 |
--------------------------------------------------------------------------------
/dynamodb-enhanced/pom.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | 4.0.0
4 |
5 |
6 | io.quarkiverse.amazonservices
7 | quarkus-amazon-services-build-parent
8 | 999-SNAPSHOT
9 | ../build-parent/pom.xml
10 |
11 |
12 | quarkus-amazon-dynamodb-enhanced-parent
13 | Quarkus - Amazon Services - DynamoDB Enhanced
14 | pom
15 |
16 |
17 | runtime
18 | deployment
19 |
20 |
21 |
22 |
--------------------------------------------------------------------------------
/dynamodb-enhanced/runtime/src/main/java/io/quarkiverse/amazon/dynamodb/enhanced/runtime/NamedDynamoDbTable.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.amazon.dynamodb.enhanced.runtime;
2 |
3 | import static java.lang.annotation.ElementType.FIELD;
4 | import static java.lang.annotation.ElementType.PARAMETER;
5 | import static java.lang.annotation.RetentionPolicy.RUNTIME;
6 |
7 | import java.lang.annotation.Documented;
8 | import java.lang.annotation.Retention;
9 | import java.lang.annotation.Target;
10 |
11 | import jakarta.inject.Qualifier;
12 |
13 | /**
14 | * Specification of DynamoDb table to be injected.
15 | */
16 | @Target({ FIELD, PARAMETER })
17 | @Retention(RUNTIME)
18 | @Qualifier
19 | @Documented
20 | public @interface NamedDynamoDbTable {
21 |
22 | /**
23 | * @return name of the table to be injected
24 | */
25 | String value();
26 | }
27 |
--------------------------------------------------------------------------------
/dynamodb-enhanced/runtime/src/main/resources/META-INF/quarkus-extension.yaml:
--------------------------------------------------------------------------------
1 | ---
2 | artifact: ${project.groupId}:${project.artifactId}:${project.version}
3 | name: "Amazon DynamoDB Enhanced"
4 | metadata:
5 | keywords:
6 | - "dynamodb enhanced"
7 | - "enhanced"
8 | - "dynamodb"
9 | - "dynamo"
10 | - "aws"
11 | - "amazon"
12 | categories:
13 | - "data"
14 | guide: https://docs.quarkiverse.io/quarkus-amazon-services/dev/amazon-dynamodb.html
15 | status: "stable"
16 |
--------------------------------------------------------------------------------
/integration-tests/src/main/java/io/quarkiverse/it/amazon/AmazonApplication.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.it.amazon;
2 |
3 | import jakarta.ws.rs.ApplicationPath;
4 | import jakarta.ws.rs.core.Application;
5 |
6 | @ApplicationPath("/test")
7 | public class AmazonApplication extends Application {
8 | }
--------------------------------------------------------------------------------
/integration-tests/src/main/java/io/quarkiverse/it/amazon/dynamodb/enhanced/BaseDynamoDbBean.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.it.amazon.dynamodb.enhanced;
2 |
3 | public class BaseDynamoDbBean {
4 |
5 | private String payload;
6 |
7 | public String getPayload() {
8 | return payload;
9 | }
10 |
11 | public void setPayload(String payload) {
12 | this.payload = payload;
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/integration-tests/src/main/java/io/quarkiverse/it/amazon/localstack/RedshiftResource.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.it.amazon.localstack;
2 |
3 | import static jakarta.ws.rs.core.MediaType.TEXT_PLAIN;
4 |
5 | import jakarta.ws.rs.GET;
6 | import jakarta.ws.rs.Path;
7 | import jakarta.ws.rs.Produces;
8 |
9 | import org.eclipse.microprofile.config.inject.ConfigProperty;
10 | import org.jboss.logging.Logger;
11 |
12 | @Path("/redshift")
13 | public class RedshiftResource {
14 |
15 | private static final Logger LOG = Logger.getLogger(RedshiftResource.class);
16 |
17 | @ConfigProperty(name = "quarkus.redshift.endpoint-override")
18 | String endPointOverride;
19 |
20 | @GET
21 | @Path("test")
22 | @Produces(TEXT_PLAIN)
23 | public String testSync() {
24 | LOG.info("Testing additional service for localstack");
25 |
26 | return endPointOverride;
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/integration-tests/src/main/java/io/quarkiverse/it/amazon/s3/S3ModifyResponseProducer.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.it.amazon.s3;
2 |
3 | import jakarta.enterprise.context.ApplicationScoped;
4 | import jakarta.enterprise.inject.Produces;
5 |
6 | @ApplicationScoped
7 | public class S3ModifyResponseProducer {
8 |
9 | @Produces
10 | @ApplicationScoped
11 | S3ModifyResponse produce() {
12 | return new S3ModifyResponse("INTERCEPTED");
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/integration-tests/src/main/java/io/quarkiverse/it/amazon/s3transfermanager/S3TransferManagerUtils.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.it.amazon.s3transfermanager;
2 |
3 | import software.amazon.awssdk.services.s3.model.CopyObjectRequest;
4 | import software.amazon.awssdk.transfer.s3.model.CopyRequest;
5 |
6 | public class S3TransferManagerUtils {
7 | public static CopyRequest createCopyObjectRequest(String bucket, String keyValue, String destinationBucket,
8 | String destinationKeyValue) {
9 | CopyObjectRequest copyObjectRequest = CopyObjectRequest.builder()
10 | .sourceBucket(bucket)
11 | .sourceKey(keyValue)
12 | .destinationBucket(destinationBucket)
13 | .destinationKey(destinationKeyValue)
14 | .build();
15 |
16 | return CopyRequest.builder()
17 | .copyObjectRequest(copyObjectRequest)
18 | .build();
19 | }
20 |
21 | }
22 |
--------------------------------------------------------------------------------
/integration-tests/src/main/java/io/quarkiverse/it/amazon/sqsmessagingconnector/SqsMessagingConnectorResource.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.it.amazon.sqsmessagingconnector;
2 |
3 | import java.util.List;
4 |
5 | import jakarta.inject.Inject;
6 | import jakarta.ws.rs.GET;
7 | import jakarta.ws.rs.POST;
8 | import jakarta.ws.rs.Path;
9 |
10 | import org.jboss.resteasy.reactive.RestQuery;
11 |
12 | @Path("/sqs-messaging-connector")
13 | public class SqsMessagingConnectorResource {
14 | @Inject
15 | SqsMessagingConnectorManager connectorManager;
16 |
17 | @Path("messages/{queueName}")
18 | @POST
19 | public void sendSyncMessage(String queueName, @RestQuery String message) {
20 | connectorManager.sendMessage(message, queueName);
21 | }
22 |
23 | @Path("messages/{queueName}")
24 | @GET
25 | public List getMessages() {
26 | return connectorManager.getMessages();
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/integration-tests/src/test/java/io/quarkiverse/it/amazon/AmazonAcmITCase.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.it.amazon;
2 |
3 | import io.quarkus.test.junit.QuarkusIntegrationTest;
4 |
5 | @QuarkusIntegrationTest
6 | public class AmazonAcmITCase extends AmazonAcmTest {
7 |
8 | }
9 |
--------------------------------------------------------------------------------
/integration-tests/src/test/java/io/quarkiverse/it/amazon/AmazonAcmTest.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.it.amazon;
2 |
3 | import static org.hamcrest.Matchers.is;
4 |
5 | import org.junit.jupiter.api.Test;
6 |
7 | import io.quarkus.test.junit.QuarkusTest;
8 | import io.restassured.RestAssured;
9 |
10 | @QuarkusTest
11 | public class AmazonAcmTest {
12 |
13 | @Test
14 | public void testAcmAsync() {
15 | RestAssured.when().get("/test/acm/async").then().body(is("quarkus.local"));
16 | }
17 |
18 | @Test
19 | public void testAcmSync() {
20 | RestAssured.when().get("/test/acm/sync").then().body(is("quarkus.local"));
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/integration-tests/src/test/java/io/quarkiverse/it/amazon/AmazonBedrockTest.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.it.amazon;
2 |
3 | import static org.hamcrest.Matchers.any;
4 |
5 | import org.junit.jupiter.params.ParameterizedTest;
6 | import org.junit.jupiter.params.provider.ValueSource;
7 |
8 | import io.quarkus.test.junit.QuarkusTest;
9 | import io.restassured.RestAssured;
10 | import io.restassured.parsing.Parser;
11 |
12 | @QuarkusTest
13 | class AmazonBedrockTest {
14 |
15 | @ParameterizedTest
16 | @ValueSource(strings = { "sync", "async" })
17 | void testPublishAndReceive(String endpoint) {
18 | RestAssured.defaultParser = Parser.JSON;
19 |
20 | // List invoked
21 | RestAssured.given().pathParam("endpoint", endpoint).when()
22 | .get("/test/bedrock/{endpoint}/foundation-models")
23 | // test at least for pro feature failure
24 | .then().statusCode(501).body(any(String.class));
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/integration-tests/src/test/java/io/quarkiverse/it/amazon/AmazonCloudWatchITCase.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.it.amazon;
2 |
3 | import io.quarkus.test.junit.QuarkusIntegrationTest;
4 |
5 | @QuarkusIntegrationTest
6 | public class AmazonCloudWatchITCase extends AmazonCloudWatchTest {
7 | }
8 |
--------------------------------------------------------------------------------
/integration-tests/src/test/java/io/quarkiverse/it/amazon/AmazonCloudWatchLogsITCase.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.it.amazon;
2 |
3 | import io.quarkus.test.junit.QuarkusIntegrationTest;
4 |
5 | @QuarkusIntegrationTest
6 | public class AmazonCloudWatchLogsITCase extends AmazonCloudWatchLogTest {
7 | }
8 |
--------------------------------------------------------------------------------
/integration-tests/src/test/java/io/quarkiverse/it/amazon/AmazonCognitoUserPoolsITCase.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.it.amazon;
2 |
3 | import io.quarkus.test.junit.QuarkusIntegrationTest;
4 |
5 | @QuarkusIntegrationTest
6 | public class AmazonCognitoUserPoolsITCase extends AmazonCognitoUserPoolsTest {
7 | }
8 |
--------------------------------------------------------------------------------
/integration-tests/src/test/java/io/quarkiverse/it/amazon/AmazonCognitoUserPoolsTest.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.it.amazon;
2 |
3 | import static org.hamcrest.Matchers.is;
4 |
5 | import org.junit.jupiter.api.Test;
6 |
7 | import io.quarkus.test.junit.QuarkusTest;
8 | import io.restassured.RestAssured;
9 |
10 | @QuarkusTest
11 | public class AmazonCognitoUserPoolsTest {
12 | @Test
13 | public void testAsync() {
14 | RestAssured.when().get("/test/cognito-user-pools/async")
15 | .then().body(is("async-success"));
16 | }
17 |
18 | @Test
19 | public void testSync() {
20 | RestAssured.when().get("/test/cognito-user-pools/sync")
21 | .then().body(is("sync-success"));
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/integration-tests/src/test/java/io/quarkiverse/it/amazon/AmazonDynamoDBEnhancedITCase.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.it.amazon;
2 |
3 | import io.quarkus.test.junit.QuarkusIntegrationTest;
4 |
5 | @QuarkusIntegrationTest
6 | public class AmazonDynamoDBEnhancedITCase extends AmazonDynamoDBEnhancedTest {
7 | }
8 |
--------------------------------------------------------------------------------
/integration-tests/src/test/java/io/quarkiverse/it/amazon/AmazonDynamoDBEnhancedWithoutCustomExtensionsTest.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.it.amazon;
2 |
3 | import static org.hamcrest.CoreMatchers.is;
4 |
5 | import org.junit.jupiter.api.Test;
6 |
7 | import io.quarkus.test.junit.QuarkusTest;
8 | import io.quarkus.test.junit.TestProfile;
9 | import io.restassured.RestAssured;
10 |
11 | @QuarkusTest
12 | @TestProfile(Profiles.DynamoDBEnhancedClientWithoutCustomExtensions.class)
13 | public class AmazonDynamoDBEnhancedWithoutCustomExtensionsTest {
14 |
15 | @Test
16 | public void testDynamoDbEnhancedClientWithoutCustomExtensionAsync() {
17 | RestAssured.when().get("/test/dynamodbenhanced/async").then().body(is("INTERCEPTED OK@1"));
18 | }
19 |
20 | @Test
21 | public void testDynamoDbEnhancedClientWithoutCustomExtensionBlocking() {
22 | RestAssured.when().get("/test/dynamodbenhanced/blocking").then().body(is("INTERCEPTED OK@1"));
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/integration-tests/src/test/java/io/quarkiverse/it/amazon/AmazonDynamodbITCase.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.it.amazon;
2 |
3 | import io.quarkus.test.junit.QuarkusIntegrationTest;
4 |
5 | @QuarkusIntegrationTest
6 | public class AmazonDynamodbITCase extends AmazonDynamodbTest {
7 | }
8 |
--------------------------------------------------------------------------------
/integration-tests/src/test/java/io/quarkiverse/it/amazon/AmazonDynamodbTest.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.it.amazon;
2 |
3 | import static org.hamcrest.Matchers.is;
4 |
5 | import org.junit.jupiter.api.Test;
6 |
7 | import io.quarkus.test.junit.QuarkusTest;
8 | import io.restassured.RestAssured;
9 |
10 | @QuarkusTest
11 | public class AmazonDynamodbTest {
12 |
13 | @Test
14 | public void testDynamoDbAsync() {
15 | RestAssured.when().get("/test/dynamodb/async").then().body(is("INTERCEPTED OK"));
16 | }
17 |
18 | @Test
19 | public void testDynamoDbBlocking() {
20 | RestAssured.when().get("/test/dynamodb/blocking").then().body(is("INTERCEPTED OK"));
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/integration-tests/src/test/java/io/quarkiverse/it/amazon/AmazonEventBridgeITCase.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.it.amazon;
2 |
3 | import io.quarkus.test.junit.QuarkusIntegrationTest;
4 |
5 | @QuarkusIntegrationTest
6 | public class AmazonEventBridgeITCase extends AmazonEventBridgeTest {
7 |
8 | }
9 |
--------------------------------------------------------------------------------
/integration-tests/src/test/java/io/quarkiverse/it/amazon/AmazonEventBridgeTest.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.it.amazon;
2 |
3 | import static org.hamcrest.Matchers.is;
4 |
5 | import org.junit.jupiter.api.Test;
6 |
7 | import io.quarkus.test.junit.QuarkusTest;
8 | import io.restassured.RestAssured;
9 |
10 | @QuarkusTest
11 | public class AmazonEventBridgeTest {
12 |
13 | @Test
14 | public void testEventBridgeAsync() {
15 | RestAssured.when().get("/test/eventbridge/async").then()
16 | .body(is("arn:aws:events:us-east-1:000000000000:rule/quarkus-rule-async"));
17 | }
18 |
19 | @Test
20 | public void testEventBridgeSync() {
21 | RestAssured.when().get("/test/eventbridge/sync").then()
22 | .body(is("arn:aws:events:us-east-1:000000000000:rule/quarkus-rule-sync"));
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/integration-tests/src/test/java/io/quarkiverse/it/amazon/AmazonIamTest.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.it.amazon;
2 |
3 | import static org.hamcrest.Matchers.any;
4 | import static org.hamcrest.Matchers.equalTo;
5 |
6 | import org.junit.jupiter.api.Test;
7 |
8 | import io.quarkus.test.junit.QuarkusTest;
9 | import io.restassured.RestAssured;
10 |
11 | @QuarkusTest
12 | public class AmazonIamTest {
13 |
14 | @Test
15 | public void testIamAsync() {
16 | RestAssured.when().get("/test/iam/async").then().body(any(String.class));
17 | }
18 |
19 | @Test
20 | public void testIamSync() {
21 | RestAssured.when().get("/test/iam/sync").then().body(any(String.class));
22 | }
23 |
24 | @Test
25 | public void testAccountSync() {
26 | RestAssured.when().get("/test/iam/account").then().body(equalTo("000000000000:112233445566"));
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/integration-tests/src/test/java/io/quarkiverse/it/amazon/AmazonKinesisITCase.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.it.amazon;
2 |
3 | import io.quarkus.test.junit.QuarkusIntegrationTest;
4 |
5 | @QuarkusIntegrationTest
6 | public class AmazonKinesisITCase extends AmazonKinesisTest {
7 |
8 | }
9 |
--------------------------------------------------------------------------------
/integration-tests/src/test/java/io/quarkiverse/it/amazon/AmazonKmsITCase.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.it.amazon;
2 |
3 | import io.quarkus.test.junit.QuarkusIntegrationTest;
4 |
5 | @QuarkusIntegrationTest
6 | public class AmazonKmsITCase extends AmazonKmsTest {
7 |
8 | }
9 |
--------------------------------------------------------------------------------
/integration-tests/src/test/java/io/quarkiverse/it/amazon/AmazonKmsTest.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.it.amazon;
2 |
3 | import static org.hamcrest.Matchers.is;
4 |
5 | import org.junit.jupiter.api.Test;
6 |
7 | import io.quarkus.test.junit.QuarkusTest;
8 | import io.restassured.RestAssured;
9 |
10 | @QuarkusTest
11 | public class AmazonKmsTest {
12 |
13 | @Test
14 | public void testKmsAsync() {
15 | RestAssured.when().get("/test/kms/async").then().body(is("Quarkus is awsome"));
16 | }
17 |
18 | @Test
19 | public void testKmsSync() {
20 | RestAssured.when().get("/test/kms/sync").then().body(is("Quarkus is awsome"));
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/integration-tests/src/test/java/io/quarkiverse/it/amazon/AmazonLambdaITCase.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.it.amazon;
2 |
3 | import io.quarkus.test.junit.QuarkusIntegrationTest;
4 |
5 | @QuarkusIntegrationTest
6 | public class AmazonLambdaITCase extends AmazonLambdaTest {
7 |
8 | }
9 |
--------------------------------------------------------------------------------
/integration-tests/src/test/java/io/quarkiverse/it/amazon/AmazonLambdaTest.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.it.amazon;
2 |
3 | import static org.hamcrest.Matchers.is;
4 |
5 | import org.junit.jupiter.api.Test;
6 |
7 | import io.quarkus.test.junit.QuarkusTest;
8 | import io.restassured.RestAssured;
9 |
10 | @QuarkusTest
11 | public class AmazonLambdaTest {
12 |
13 | public static final String LAMBDA_NAME = "localstack-lambda-hello";
14 |
15 | @Test
16 | public void testAsync() {
17 | RestAssured.given().when().get("/test/lambda/async").then().body(is(LAMBDA_NAME));
18 | }
19 |
20 | @Test
21 | public void testBlocking() {
22 | RestAssured.given().when().get("/test/lambda/blocking").then().body(is(LAMBDA_NAME));
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/integration-tests/src/test/java/io/quarkiverse/it/amazon/AmazonLocalStackTest.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.it.amazon;
2 |
3 | import static org.hamcrest.Matchers.any;
4 |
5 | import org.junit.jupiter.api.Test;
6 |
7 | import io.quarkus.test.junit.QuarkusTest;
8 | import io.restassured.RestAssured;
9 |
10 | @QuarkusTest
11 | public class AmazonLocalStackTest {
12 |
13 | @Test
14 | public void testSesAsync() {
15 | RestAssured.when().get("/test/redshift/test").then().body(any(String.class));
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/integration-tests/src/test/java/io/quarkiverse/it/amazon/AmazonSchedulerITCase.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.it.amazon;
2 |
3 | import io.quarkus.test.junit.QuarkusIntegrationTest;
4 |
5 | @QuarkusIntegrationTest
6 | public class AmazonSchedulerITCase extends AmazonSchedulerTest {
7 |
8 | }
9 |
--------------------------------------------------------------------------------
/integration-tests/src/test/java/io/quarkiverse/it/amazon/AmazonSchedulerTest.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.it.amazon;
2 |
3 | import static org.hamcrest.Matchers.is;
4 |
5 | import org.junit.jupiter.api.Test;
6 |
7 | import io.quarkus.test.junit.QuarkusTest;
8 | import io.restassured.RestAssured;
9 |
10 | @QuarkusTest
11 | public class AmazonSchedulerTest {
12 |
13 | @Test
14 | public void testEventBridgeAsync() {
15 | RestAssured.when().get("/test/scheduler/async").then()
16 | .body(is("arn:aws:scheduler:us-east-1:000000000000:schedule/default/quarkus-schedule-async"));
17 | }
18 |
19 | @Test
20 | public void testEventBridgeSync() {
21 | RestAssured.when().get("/test/scheduler/sync").then()
22 | .body(is("arn:aws:scheduler:us-east-1:000000000000:schedule/default/quarkus-schedule-sync"));
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/integration-tests/src/test/java/io/quarkiverse/it/amazon/AmazonSecretsManagerITCase.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.it.amazon;
2 |
3 | import io.quarkus.test.junit.QuarkusIntegrationTest;
4 |
5 | @QuarkusIntegrationTest
6 | public class AmazonSecretsManagerITCase extends AmazonSecretsManagerTest {
7 |
8 | }
9 |
--------------------------------------------------------------------------------
/integration-tests/src/test/java/io/quarkiverse/it/amazon/AmazonSecretsManagerTest.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.it.amazon;
2 |
3 | import static org.hamcrest.Matchers.is;
4 |
5 | import org.junit.jupiter.api.Test;
6 |
7 | import io.quarkus.test.junit.QuarkusTest;
8 | import io.restassured.RestAssured;
9 |
10 | @QuarkusTest
11 | public class AmazonSecretsManagerTest {
12 |
13 | @Test
14 | public void testSecretsManagerAsync() {
15 | RestAssured.when().get("/test/secretsmanager/async").then().body(is("Quarkus is awsome"));
16 | }
17 |
18 | @Test
19 | public void testSecretsManagerSync() {
20 | RestAssured.when().get("/test/secretsmanager/sync").then().body(is("Quarkus is awsome"));
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/integration-tests/src/test/java/io/quarkiverse/it/amazon/AmazonSesITCase.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.it.amazon;
2 |
3 | import io.quarkus.test.junit.QuarkusIntegrationTest;
4 |
5 | @QuarkusIntegrationTest
6 | public class AmazonSesITCase extends AmazonSesTest {
7 |
8 | }
9 |
--------------------------------------------------------------------------------
/integration-tests/src/test/java/io/quarkiverse/it/amazon/AmazonSesTest.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.it.amazon;
2 |
3 | import static org.hamcrest.Matchers.any;
4 | import static org.hamcrest.Matchers.emptyString;
5 | import static org.hamcrest.Matchers.not;
6 |
7 | import org.junit.jupiter.api.Test;
8 |
9 | import io.quarkus.test.junit.QuarkusTest;
10 | import io.restassured.RestAssured;
11 |
12 | @QuarkusTest
13 | public class AmazonSesTest {
14 |
15 | @Test
16 | public void testSesAsync() {
17 | RestAssured.when().get("/test/ses/async").then().body(any(String.class), not(emptyString()));
18 | }
19 |
20 | @Test
21 | public void testSesSync() {
22 | RestAssured.when().get("/test/ses/sync").then().body(any(String.class), not(emptyString()));
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/integration-tests/src/test/java/io/quarkiverse/it/amazon/AmazonSfnITCase.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.it.amazon;
2 |
3 | import io.quarkus.test.junit.QuarkusIntegrationTest;
4 |
5 | @QuarkusIntegrationTest
6 | public class AmazonSfnITCase extends AmazonSfnTest {
7 |
8 | }
9 |
--------------------------------------------------------------------------------
/integration-tests/src/test/java/io/quarkiverse/it/amazon/AmazonSfnTest.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.it.amazon;
2 |
3 | import static org.hamcrest.Matchers.is;
4 |
5 | import org.junit.jupiter.params.ParameterizedTest;
6 | import org.junit.jupiter.params.provider.ValueSource;
7 |
8 | import io.quarkus.test.junit.QuarkusTest;
9 | import io.restassured.RestAssured;
10 |
11 | @QuarkusTest
12 | public class AmazonSfnTest {
13 |
14 | @ParameterizedTest
15 | @ValueSource(strings = { "sync", "async" })
16 | public void testSfn(String endpoint) {
17 | final String expectedBody = String.format("arn:aws:states:us-east-1:000000000000:stateMachine:%s-state-machine",
18 | endpoint);
19 |
20 | RestAssured.given()
21 | .pathParam("endpoint", endpoint)
22 | .when().get("/test/sfn/{endpoint}")
23 | .then()
24 | .body(is(expectedBody));
25 | }
26 |
27 | }
28 |
--------------------------------------------------------------------------------
/integration-tests/src/test/java/io/quarkiverse/it/amazon/AmazonSnsITCase.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.it.amazon;
2 |
3 | import io.quarkus.test.junit.QuarkusIntegrationTest;
4 |
5 | @QuarkusIntegrationTest
6 | public class AmazonSnsITCase extends AmazonSnsTest {
7 | }
8 |
--------------------------------------------------------------------------------
/integration-tests/src/test/java/io/quarkiverse/it/amazon/AmazonSqsITCase.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.it.amazon;
2 |
3 | import io.quarkus.test.junit.QuarkusIntegrationTest;
4 |
5 | @QuarkusIntegrationTest
6 | public class AmazonSqsITCase extends AmazonSqsTest {
7 | }
8 |
--------------------------------------------------------------------------------
/integration-tests/src/test/java/io/quarkiverse/it/amazon/AmazonSqsMessagingConnectorITCase.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.it.amazon;
2 |
3 | import io.quarkus.test.junit.QuarkusIntegrationTest;
4 |
5 | @QuarkusIntegrationTest
6 | public class AmazonSqsMessagingConnectorITCase extends AmazonSqsMessagingConnectorTest {
7 | }
8 |
--------------------------------------------------------------------------------
/integration-tests/src/test/java/io/quarkiverse/it/amazon/AmazonSsmITCase.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.it.amazon;
2 |
3 | import io.quarkus.test.junit.QuarkusIntegrationTest;
4 |
5 | @QuarkusIntegrationTest
6 | public class AmazonSsmITCase extends AmazonSsmTest {
7 |
8 | }
9 |
--------------------------------------------------------------------------------
/integration-tests/src/test/java/io/quarkiverse/it/amazon/AmazonSsmTest.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.it.amazon;
2 |
3 | import static org.hamcrest.Matchers.is;
4 |
5 | import org.junit.jupiter.api.Test;
6 |
7 | import io.quarkus.test.junit.QuarkusTest;
8 | import io.restassured.RestAssured;
9 |
10 | @QuarkusTest
11 | public class AmazonSsmTest {
12 |
13 | @Test
14 | public void testSsmAsync() {
15 | RestAssured.when().get("/test/ssm/async").then().body(is("Quarkus is awsome"));
16 | }
17 |
18 | @Test
19 | public void testSsmSync() {
20 | RestAssured.when().get("/test/ssm/sync").then().body(is("Quarkus is awsome"));
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/integration-tests/src/test/java/io/quarkiverse/it/amazon/AmazonStsITCase.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.it.amazon;
2 |
3 | import io.quarkus.test.junit.QuarkusIntegrationTest;
4 |
5 | @QuarkusIntegrationTest
6 | public class AmazonStsITCase extends AmazonStsTest {
7 |
8 | }
9 |
--------------------------------------------------------------------------------
/integration-tests/src/test/java/io/quarkiverse/it/amazon/AmazonStsTest.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.it.amazon;
2 |
3 | import static org.hamcrest.Matchers.is;
4 |
5 | import org.junit.jupiter.api.Test;
6 |
7 | import io.quarkus.test.junit.QuarkusTest;
8 | import io.restassured.RestAssured;
9 |
10 | @QuarkusTest
11 | public class AmazonStsTest {
12 |
13 | @Test
14 | public void testStsAsync() {
15 | RestAssured.when()
16 | .get("/test/sts/async")
17 | .then()
18 | .body(is("arn:aws:sts::000000000000:assumed-role/test-role/session-test"));
19 | }
20 |
21 | @Test
22 | public void testStsSync() {
23 | RestAssured.when()
24 | .get("/test/sts/sync")
25 | .then()
26 | .body(is("arn:aws:sts::000000000000:assumed-role/test-role/session-test"));
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/integration-tests/src/test/java/io/quarkiverse/it/amazon/Profiles.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.it.amazon;
2 |
3 | import java.util.Collections;
4 | import java.util.Map;
5 |
6 | import io.quarkus.test.junit.QuarkusTestProfile;
7 |
8 | public class Profiles {
9 |
10 | public static class DynamoDBEnhancedClientWithoutCustomExtensions implements QuarkusTestProfile {
11 |
12 | @Override
13 | public Map getConfigOverrides() {
14 | return Collections.singletonMap("quarkus.dynamodbenhanced.client-extensions", "");
15 | }
16 |
17 | @Override
18 | public String getConfigProfile() {
19 | return "test-dynamodb-enhanced-client-without-custom-extensions";
20 | }
21 | }
22 |
23 | }
24 |
--------------------------------------------------------------------------------
/integration-tests/src/test/resources/application.properties:
--------------------------------------------------------------------------------
1 | quarkus.aws.devservices.localstack.init-scripts-classpath=localstack-init
2 | quarkus.aws.devservices.localstack.init-completion-msg=Tests init completed
3 |
--------------------------------------------------------------------------------
/integration-tests/src/test/resources/localstack-init/01_create_lambda.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | echo "#### Create lambda function ####"
3 | # https://docs.localstack.cloud/user-guide/aws/lambda/#create-a-lambda-function
4 | cat > index.js <<'EOF'
5 | exports.handler = async (event) => {
6 | let body = JSON.parse(event.body)
7 | const product = body.num1 * body.num2;
8 | const response = {
9 | statusCode: 200,
10 | body: "The product of " + body.num1 + " and " + body.num2 + " is " + product,
11 | };
12 | return response;
13 | };
14 | EOF
15 |
16 | zip function.zip index.js
17 | awslocal lambda create-function \
18 | --function-name localstack-lambda-hello \
19 | --runtime nodejs18.x \
20 | --zip-file fileb://function.zip \
21 | --handler index.handler \
22 | --role arn:aws:iam::000000000000:role/lambda-role
23 |
--------------------------------------------------------------------------------
/integration-tests/src/test/resources/localstack-init/99_completed.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | echo "#### Tests init completed"
3 |
--------------------------------------------------------------------------------
/quarkus-messaging-amazon-sqs/deployment/src/main/java/io/quarkiverse/amazon/sqs/deployment/MessagingAmazonSqsProcessor.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.amazon.sqs.deployment;
2 |
3 | import io.quarkus.deployment.annotations.BuildStep;
4 | import io.quarkus.deployment.builditem.FeatureBuildItem;
5 |
6 | /**
7 | * Processor
8 | */
9 | public class MessagingAmazonSqsProcessor {
10 |
11 | private static final String FEATURE = "messaging-amazon-sqs";
12 |
13 | @BuildStep
14 | FeatureBuildItem feature() {
15 | return new FeatureBuildItem(FEATURE);
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/quarkus-messaging-amazon-sqs/deployment/src/test/java/io/quarkiverse/amazon/sqs/deployment/Quote.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.amazon.sqs.deployment;
2 |
3 | import io.quarkus.runtime.annotations.RegisterForReflection;
4 |
5 | @RegisterForReflection
6 | public class Quote {
7 |
8 | public String id;
9 | public int price;
10 |
11 | public Quote() {
12 | }
13 |
14 | public Quote(String id, int price) {
15 | this.id = id;
16 | this.price = price;
17 | }
18 |
19 | @Override
20 | public String toString() {
21 | return "Quote{" +
22 | "id='" + id + '\'' +
23 | ", price=" + price +
24 | '}';
25 | }
26 | }
--------------------------------------------------------------------------------
/quarkus-messaging-amazon-sqs/pom.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | 4.0.0
4 |
5 |
6 | io.quarkiverse.amazonservices
7 | quarkus-amazon-services-build-parent
8 | 999-SNAPSHOT
9 | ../build-parent/pom.xml
10 |
11 |
12 | quarkus-messaging-amazon-sqs-parent
13 | Quarkus - Messaging - Amazon Services - SQS
14 | pom
15 |
16 |
17 | runtime
18 | deployment
19 |
20 |
21 |
22 |
--------------------------------------------------------------------------------
/quarkus-messaging-amazon-sqs/runtime/src/main/resources/META-INF/quarkus-extension.yaml:
--------------------------------------------------------------------------------
1 | ---
2 | artifact: ${project.groupId}:${project.artifactId}:${project.version}
3 | name: "Messaging - Amazon SQS Connector"
4 | metadata:
5 | keywords:
6 | - "sqs"
7 | - "aws"
8 | - "amazon"
9 | - "messaging"
10 | categories:
11 | - "data"
12 | - "messaging"
13 | guide: https://docs.quarkiverse.io/quarkus-amazon-services/dev/amazon-sqs.html
14 | status: "preview"
15 | config:
16 | - "quarkus.sqs."
17 | - "mp.messaging."
18 | - "quarkus.messaging."
19 |
--------------------------------------------------------------------------------
/s3-transfer-manager/deployment/src/test/resources/sync-urlconn-full-config.properties:
--------------------------------------------------------------------------------
1 | quarkus.s3.accelerate-mode=false
2 | quarkus.s3.checksum-validation=true
3 | quarkus.s3.chunked-encoding=true
4 | quarkus.s3.dualstack=false
5 | quarkus.s3.path-style-access=false
6 | quarkus.s3.use-arn-region-enabled=true
7 | quarkus.s3.profile-name=foo
8 |
9 | quarkus.s3.endpoint-override=http://localhost:9090
10 |
11 | quarkus.s3.aws.region=us-east-2
12 | quarkus.s3.aws.credentials.type=static
13 | quarkus.s3.aws.credentials.static-provider.access-key-id=test-key
14 | quarkus.s3.aws.credentials.static-provider.secret-access-key=test-secret
15 |
16 | quarkus.s3.sync-client.type = url
17 | quarkus.s3.sync-client.connection-timeout = 0.100S
18 | quarkus.s3.sync-client.socket-timeout = 0.100S
--------------------------------------------------------------------------------
/s3-transfer-manager/pom.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | 4.0.0
4 |
5 |
6 | io.quarkiverse.amazonservices
7 | quarkus-amazon-services-build-parent
8 | 999-SNAPSHOT
9 | ../build-parent/pom.xml
10 |
11 |
12 | quarkus-amazon-s3-transfer-manager-parent
13 | Quarkus - Amazon Services - S3
14 | pom
15 |
16 |
17 | runtime
18 | deployment
19 |
20 |
21 |
22 |
--------------------------------------------------------------------------------
/s3-transfer-manager/runtime/src/main/resources/META-INF/quarkus-extension.yaml:
--------------------------------------------------------------------------------
1 | ---
2 | artifact: ${project.groupId}:${project.artifactId}:${project.version}
3 | name: "Amazon S3 Transfer Manager"
4 | metadata:
5 | keywords:
6 | - "s3"
7 | - "aws"
8 | - "amazon"
9 | - "transfer manager"
10 | categories:
11 | - "data"
12 | guide: https://docs.quarkiverse.io/quarkus-amazon-services/dev/amazon-s3.html
13 | status: "experimental"
14 |
--------------------------------------------------------------------------------
/s3/deployment/src/test/resources/async-netty-full-config.properties:
--------------------------------------------------------------------------------
1 | quarkus.s3.accelerate-mode=false
2 | quarkus.s3.checksum-validation=true
3 | quarkus.s3.chunked-encoding=true
4 | quarkus.s3.dualstack=false
5 | quarkus.s3.path-style-access=false
6 | quarkus.s3.use-arn-region-enabled=true
7 | #quarkus.s3.profile-name=foo
8 |
9 | quarkus.s3.endpoint-override=http://localhost:9090
10 |
11 | quarkus.s3.aws.region=us-east-2
12 | quarkus.s3.aws.credentials.type=static
13 | quarkus.s3.aws.credentials.static-provider.access-key-id=test-key
14 | quarkus.s3.aws.credentials.static-provider.secret-access-key=test-secret
15 |
16 | quarkus.s3.async-client.type = netty
17 |
--------------------------------------------------------------------------------
/s3/deployment/src/test/resources/custom-credentials-provider-missed-bean.properties:
--------------------------------------------------------------------------------
1 | quarkus.devservices.enabled=false
2 | quarkus.s3.aws.region=us-east-2
3 | quarkus.s3.aws.credentials.type=custom
4 | quarkus.s3.aws.credentials.custom-provider.name=missed-bean
--------------------------------------------------------------------------------
/s3/deployment/src/test/resources/custom-credentials-provider-missed-name-named-client.properties:
--------------------------------------------------------------------------------
1 | quarkus.devservices.enabled=false
2 | quarkus.s3.aws.region=us-east-2
3 | quarkus.s3.custom.aws.credentials.type=custom
--------------------------------------------------------------------------------
/s3/deployment/src/test/resources/custom-credentials-provider-missed-name.properties:
--------------------------------------------------------------------------------
1 | quarkus.devservices.enabled=false
2 | quarkus.s3.aws.region=us-east-2
3 | quarkus.s3.aws.credentials.type=custom
--------------------------------------------------------------------------------
/s3/deployment/src/test/resources/custom-credentials-provider.properties:
--------------------------------------------------------------------------------
1 | quarkus.devservices.enabled=false
2 | quarkus.s3.aws.region=us-east-2
3 | quarkus.s3.aws.credentials.type=custom
4 | quarkus.s3.aws.credentials.custom-provider.name=test-creds-profile
--------------------------------------------------------------------------------
/s3/deployment/src/test/resources/sync-urlconn-full-config.properties:
--------------------------------------------------------------------------------
1 | quarkus.s3.accelerate-mode=false
2 | quarkus.s3.checksum-validation=true
3 | quarkus.s3.chunked-encoding=true
4 | quarkus.s3.dualstack=false
5 | quarkus.s3.path-style-access=false
6 | quarkus.s3.use-arn-region-enabled=true
7 | #quarkus.s3.profile-name=foo
8 |
9 | quarkus.s3.endpoint-override=http://localhost:9090
10 |
11 | quarkus.s3.aws.region=us-east-2
12 | quarkus.s3.aws.credentials.type=static
13 | quarkus.s3.aws.credentials.static-provider.access-key-id=test-key
14 | quarkus.s3.aws.credentials.static-provider.secret-access-key=test-secret
15 |
16 | quarkus.s3.sync-client.type = url
17 | quarkus.s3.sync-client.connection-timeout = 0.100S
18 | quarkus.s3.sync-client.socket-timeout = 0.100S
--------------------------------------------------------------------------------
/s3/pom.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | 4.0.0
4 |
5 |
6 | io.quarkiverse.amazonservices
7 | quarkus-amazon-services-build-parent
8 | 999-SNAPSHOT
9 | ../build-parent/pom.xml
10 |
11 |
12 | quarkus-amazon-s3-parent
13 | Quarkus - Amazon Services - S3
14 | pom
15 |
16 |
17 | runtime
18 | deployment
19 |
20 |
21 |
22 |
--------------------------------------------------------------------------------
/s3/runtime/src/main/java/io/quarkiverse/amazon/s3/runtime/S3BuildTimeConfig.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.amazon.s3.runtime;
2 |
3 | import io.quarkiverse.amazon.common.runtime.HasSdkBuildTimeConfig;
4 | import io.quarkiverse.amazon.common.runtime.HasTransportBuildTimeConfig;
5 | import io.quarkus.runtime.annotations.ConfigPhase;
6 | import io.quarkus.runtime.annotations.ConfigRoot;
7 | import io.smallrye.config.ConfigMapping;
8 |
9 | /**
10 | * Amazon S3 build time configuration
11 | */
12 | @ConfigMapping(prefix = "quarkus.s3")
13 | @ConfigRoot(phase = ConfigPhase.BUILD_AND_RUN_TIME_FIXED)
14 | public interface S3BuildTimeConfig extends HasSdkBuildTimeConfig, HasTransportBuildTimeConfig {
15 |
16 | /**
17 | * Config for dev services
18 | */
19 | S3DevServicesBuildTimeConfig devservices();
20 | }
21 |
--------------------------------------------------------------------------------
/s3/runtime/src/main/java/io/quarkiverse/amazon/s3/runtime/S3Crt.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.amazon.s3.runtime;
2 |
3 | import static java.lang.annotation.RetentionPolicy.RUNTIME;
4 |
5 | import java.lang.annotation.Documented;
6 | import java.lang.annotation.Retention;
7 |
8 | import jakarta.enterprise.util.AnnotationLiteral;
9 | import jakarta.inject.Qualifier;
10 |
11 | /**
12 | * Specification of AWS CRT-based S3 client to be injected.
13 | */
14 | @Retention(RUNTIME)
15 | @Qualifier
16 | @Documented
17 | public @interface S3Crt {
18 |
19 | @SuppressWarnings("all")
20 | public static final class Literal extends AnnotationLiteral implements S3Crt {
21 | public static final Literal INSTANCE = new Literal();
22 |
23 | private static final long serialVersionUID = 1L;
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/s3/runtime/src/main/java/io/quarkiverse/amazon/s3/runtime/S3DevServicesBuildTimeConfig.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.amazon.s3.runtime;
2 |
3 | import java.util.Set;
4 |
5 | import io.quarkiverse.amazon.common.runtime.DevServicesBuildTimeConfig;
6 | import io.quarkus.runtime.annotations.ConfigGroup;
7 | import io.smallrye.config.WithDefault;
8 |
9 | @ConfigGroup
10 | public interface S3DevServicesBuildTimeConfig extends DevServicesBuildTimeConfig {
11 |
12 | /**
13 | * The buckets to create on startup.
14 | */
15 | @WithDefault(value = "default")
16 | public Set buckets();
17 | }
18 |
--------------------------------------------------------------------------------
/s3/runtime/src/main/resources/META-INF/quarkus-extension.yaml:
--------------------------------------------------------------------------------
1 | ---
2 | artifact: ${project.groupId}:${project.artifactId}:${project.version}
3 | name: "Amazon S3"
4 | metadata:
5 | keywords:
6 | - "s3"
7 | - "aws"
8 | - "amazon"
9 | categories:
10 | - "data"
11 | guide: https://docs.quarkiverse.io/quarkus-amazon-services/dev/amazon-s3.html
12 | status: "stable"
13 | config:
14 | - "quarkus.s3."
15 |
--------------------------------------------------------------------------------
/scheduler/deployment/src/test/resources/sync-urlconn-full-config.properties:
--------------------------------------------------------------------------------
1 | quarkus.eventbridge-scheduler.endpoint-override=http://localhost:9090
2 |
3 | quarkus.eventbridge-scheduler.aws.region=us-east-1
4 | quarkus.eventbridge-scheduler.aws.credentials.type=static
5 | quarkus.eventbridge-scheduler.aws.credentials.static-provider.access-key-id=test-key
6 | quarkus.eventbridge-scheduler.aws.credentials.static-provider.secret-access-key=test-secret
7 |
8 | quarkus.eventbridge-scheduler.sync-client.type = url
9 | quarkus.eventbridge-scheduler.sync-client.connection-timeout = 0.100S
10 | quarkus.eventbridge-scheduler.sync-client.socket-timeout = 0.100S
--------------------------------------------------------------------------------
/scheduler/pom.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | 4.0.0
4 |
5 |
6 | io.quarkiverse.amazonservices
7 | quarkus-amazon-services-build-parent
8 | 999-SNAPSHOT
9 | ../build-parent/pom.xml
10 |
11 |
12 | quarkus-amazon-scheduler-parent
13 | Quarkus - Amazon Services - EventBridge Scheduler
14 | pom
15 |
16 |
17 | runtime
18 | deployment
19 |
20 |
21 |
22 |
--------------------------------------------------------------------------------
/scheduler/runtime/src/main/java/io/quarkiverse/amazon/scheduler/runtime/SchedulerBuildTimeConfig.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.amazon.scheduler.runtime;
2 |
3 | import io.quarkiverse.amazon.common.runtime.DevServicesBuildTimeConfig;
4 | import io.quarkiverse.amazon.common.runtime.HasSdkBuildTimeConfig;
5 | import io.quarkiverse.amazon.common.runtime.HasTransportBuildTimeConfig;
6 | import io.quarkus.runtime.annotations.ConfigPhase;
7 | import io.quarkus.runtime.annotations.ConfigRoot;
8 | import io.smallrye.config.ConfigMapping;
9 |
10 | /**
11 | * Amazon EventBridge Scheduler build time configuration
12 | */
13 | @ConfigMapping(prefix = "quarkus.eventbridge-scheduler")
14 | @ConfigRoot(phase = ConfigPhase.BUILD_AND_RUN_TIME_FIXED)
15 | public interface SchedulerBuildTimeConfig extends HasSdkBuildTimeConfig, HasTransportBuildTimeConfig {
16 |
17 | /**
18 | * Config for dev services
19 | */
20 | DevServicesBuildTimeConfig devservices();
21 | }
22 |
--------------------------------------------------------------------------------
/scheduler/runtime/src/main/resources/META-INF/quarkus-extension.yaml:
--------------------------------------------------------------------------------
1 | ---
2 | artifact: ${project.groupId}:${project.artifactId}:${project.version}
3 | name: "Amazon EventBridge Scheduler"
4 | metadata:
5 | keywords:
6 | - "scheduler"
7 | - "aws"
8 | - "amazon"
9 | categories:
10 | - "data"
11 | guide: https://docs.quarkiverse.io/quarkus-amazon-services/dev/amazon-scheduler.html
12 | status: "stable"
13 | config:
14 | - "quarkus.eventbridge-scheduler."
15 |
--------------------------------------------------------------------------------
/services/accessanalyzer/pom.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | 4.0.0
4 |
5 |
6 | io.quarkiverse.amazonservices
7 | quarkus-amazon-services-services-parent
8 | 999-SNAPSHOT
9 |
10 |
11 | quarkus-amazon-accessanalyzer-parent
12 | Quarkus - Amazon Services - Access Analyzer
13 | pom
14 |
15 |
16 | runtime
17 | deployment
18 |
19 |
20 |
21 |
--------------------------------------------------------------------------------
/services/accessanalyzer/runtime/src/main/resources/META-INF/quarkus-extension.yaml:
--------------------------------------------------------------------------------
1 | ---
2 | artifact: ${project.groupId}:${project.artifactId}:${project.version}
3 | name: "Amazon Access Analyzer"
4 | metadata:
5 | keywords:
6 | - "iam"
7 | - "aws"
8 | - "amazon"
9 | categories:
10 | - "cloud"
11 | status: "stable"
12 | config:
13 | - "quarkus.account."
14 |
--------------------------------------------------------------------------------
/services/accessanalyzer/src/main/resources/codegen-resources/customization.config:
--------------------------------------------------------------------------------
1 | {
2 | "enableGenerateCompiledEndpointRules": true,
3 | "enableFastUnmarshaller": true
4 | }
5 |
--------------------------------------------------------------------------------
/services/account/pom.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | 4.0.0
4 |
5 |
6 | io.quarkiverse.amazonservices
7 | quarkus-amazon-services-services-parent
8 | 999-SNAPSHOT
9 |
10 |
11 | quarkus-amazon-account-parent
12 | Quarkus - Amazon Services - Account
13 | pom
14 |
15 |
16 | runtime
17 | deployment
18 |
19 |
20 |
21 |
--------------------------------------------------------------------------------
/services/account/runtime/src/main/resources/META-INF/quarkus-extension.yaml:
--------------------------------------------------------------------------------
1 | ---
2 | artifact: ${project.groupId}:${project.artifactId}:${project.version}
3 | name: "Amazon Account"
4 | metadata:
5 | keywords:
6 | - "account"
7 | - "aws"
8 | - "amazon"
9 | categories:
10 | - "cloud"
11 | status: "stable"
12 | config:
13 | - "quarkus.account."
14 |
--------------------------------------------------------------------------------
/services/account/src/main/resources/codegen-resources/customization.config:
--------------------------------------------------------------------------------
1 | {
2 | "enableGenerateCompiledEndpointRules": true,
3 | "enableFastUnmarshaller": true
4 | }
5 |
--------------------------------------------------------------------------------
/services/acm/deployment/src/test/java/io/quarkiverse/amazon/acm/deployment/AcmSyncClientFullConfigTest.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.amazon.acm.deployment;
2 |
3 | import jakarta.inject.Inject;
4 |
5 | import org.junit.jupiter.api.Test;
6 | import org.junit.jupiter.api.extension.RegisterExtension;
7 |
8 | import io.quarkus.test.QuarkusUnitTest;
9 | import software.amazon.awssdk.services.acm.AcmAsyncClient;
10 | import software.amazon.awssdk.services.acm.AcmClient;
11 |
12 | public class AcmSyncClientFullConfigTest {
13 |
14 | @Inject
15 | AcmClient client;
16 |
17 | @Inject
18 | AcmAsyncClient async;
19 |
20 | @RegisterExtension
21 | static final QuarkusUnitTest config = new QuarkusUnitTest()
22 | .withApplicationRoot((jar) -> jar
23 | .addAsResource("sync-urlconn-full-config.properties", "application.properties"));
24 |
25 | @Test
26 | public void test() {
27 | // should finish with success
28 | }
29 | }
30 |
--------------------------------------------------------------------------------
/services/acm/deployment/src/test/resources/sync-urlconn-full-config.properties:
--------------------------------------------------------------------------------
1 | quarkus.acm.endpoint-override=http://localhost:9090
2 |
3 | quarkus.acm.aws.region=us-east-1
4 | quarkus.acm.aws.credentials.type=static
5 | quarkus.acm.aws.credentials.static-provider.access-key-id=test-key
6 | quarkus.acm.aws.credentials.static-provider.secret-access-key=test-secret
7 |
8 | quarkus.acm.sync-client.type = url
9 | quarkus.acm.sync-client.connection-timeout = 0.100S
10 | quarkus.acm.sync-client.socket-timeout = 0.100S
--------------------------------------------------------------------------------
/services/acm/pom.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | 4.0.0
4 |
5 |
6 | io.quarkiverse.amazonservices
7 | quarkus-amazon-services-services-parent
8 | 999-SNAPSHOT
9 |
10 |
11 | quarkus-amazon-acm-parent
12 | Quarkus - Amazon Services - ACM
13 | pom
14 |
15 |
16 | runtime
17 | deployment
18 |
19 |
20 |
21 |
--------------------------------------------------------------------------------
/services/acm/runtime/src/main/resources/META-INF/quarkus-extension.yaml:
--------------------------------------------------------------------------------
1 | ---
2 | artifact: ${project.groupId}:${project.artifactId}:${project.version}
3 | name: "Amazon ACM"
4 | metadata:
5 | keywords:
6 | - "acm"
7 | - "aws"
8 | - "amazon"
9 | categories:
10 | - "data"
11 | guide: https://docs.quarkiverse.io/quarkus-amazon-services/dev/amazon-acm.html
12 | status: "stable"
13 | config:
14 | - "quarkus.acm."
15 |
--------------------------------------------------------------------------------
/services/acm/src/main/resources/codegen-resources/customization.config:
--------------------------------------------------------------------------------
1 | {
2 | "verifiedSimpleMethods": [
3 | "listCertificates"
4 | ],
5 | "enableGenerateCompiledEndpointRules": true,
6 | "enableFastUnmarshaller": true
7 | }
8 |
--------------------------------------------------------------------------------
/services/apigatewaymanagementapi/deployment/src/test/resources/sync-urlconn-full-config.properties:
--------------------------------------------------------------------------------
1 | quarkus.apigatewaymanagementapi.endpoint-override=http://localhost:9090
2 |
3 | quarkus.apigatewaymanagementapi.aws.region=us-east-1
4 | quarkus.apigatewaymanagementapi.aws.credentials.type=static
5 | quarkus.apigatewaymanagementapi.aws.credentials.static-provider.access-key-id=test-key
6 | quarkus.apigatewaymanagementapi.aws.credentials.static-provider.secret-access-key=test-secret
7 |
8 | quarkus.apigatewaymanagementapi.sync-client.type = url
9 | quarkus.apigatewaymanagementapi.sync-client.connection-timeout = 0.100S
10 | quarkus.apigatewaymanagementapi.sync-client.socket-timeout = 0.100S
--------------------------------------------------------------------------------
/services/apigatewaymanagementapi/pom.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | 4.0.0
4 |
5 |
6 | io.quarkiverse.amazonservices
7 | quarkus-amazon-services-services-parent
8 | 999-SNAPSHOT
9 |
10 |
11 | quarkus-amazon-apigatewaymanagementapi-parent
12 | Quarkus - Amazon Services - Api Gateway Management Api
13 | pom
14 |
15 |
16 | runtime
17 | deployment
18 |
19 |
20 |
21 |
--------------------------------------------------------------------------------
/services/apigatewaymanagementapi/runtime/src/main/resources/META-INF/quarkus-extension.yaml:
--------------------------------------------------------------------------------
1 | ---
2 | artifact: ${project.groupId}:${project.artifactId}:${project.version}
3 | name: "Amazon Api Gateway Management Api"
4 | metadata:
5 | keywords:
6 | - "apigatewaymanagementapi"
7 | - "aws"
8 | - "amazon"
9 | categories:
10 | - "data"
11 | guide: https://docs.quarkiverse.io/quarkus-amazon-services/dev/amazon-apigatewaymanagementapi.html
12 | status: "stable"
13 | config:
14 | - "quarkus.apigatewaymanagementapi."
15 |
--------------------------------------------------------------------------------
/services/apigatewaymanagementapi/src/main/resources/codegen-resources/customization.config:
--------------------------------------------------------------------------------
1 | {
2 | "enableGenerateCompiledEndpointRules": true,
3 | "enableFastUnmarshaller": true
4 | }
5 |
--------------------------------------------------------------------------------
/services/bedrock/deployment/src/test/resources/full-config.properties:
--------------------------------------------------------------------------------
1 | quarkus.bedrock.endpoint-override=http://localhost:9090
2 |
3 | quarkus.bedrock.aws.region=us-east-2
4 | quarkus.bedrock.aws.credentials.type=static
5 | quarkus.bedrock.aws.credentials.static-provider.access-key-id=test-key
6 | quarkus.bedrock.aws.credentials.static-provider.secret-access-key=test-secret
7 |
8 | quarkus.bedrock.sync-client.type = url
9 | quarkus.bedrock.sync-client.connection-timeout = 0.100S
10 | quarkus.bedrock.sync-client.socket-timeout = 0.100S
11 |
--------------------------------------------------------------------------------
/services/bedrock/pom.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | 4.0.0
4 |
5 |
6 | io.quarkiverse.amazonservices
7 | quarkus-amazon-services-services-parent
8 | 999-SNAPSHOT
9 |
10 |
11 | quarkus-amazon-bedrock-parent
12 | Quarkus - Amazon Services - Bedrock
13 | pom
14 |
15 |
16 | runtime
17 | deployment
18 |
19 |
20 |
21 |
--------------------------------------------------------------------------------
/services/bedrock/runtime/src/main/resources/META-INF/quarkus-extension.yaml:
--------------------------------------------------------------------------------
1 | ---
2 | artifact: ${project.groupId}:${project.artifactId}:${project.version}
3 | name: "Amazon Bedrock"
4 | metadata:
5 | keywords:
6 | - "bedrock"
7 | - "aws"
8 | - "amazon"
9 | categories:
10 | - "ai"
11 | guide: https://docs.quarkiverse.io/quarkus-amazon-services/dev/amazon-bedrock.html
12 | status: "stable"
13 | config:
14 | - "quarkus.bedrock."
15 |
--------------------------------------------------------------------------------
/services/bedrock/src/main/resources/codegen-resources/customization.config:
--------------------------------------------------------------------------------
1 | {
2 | "enableGenerateCompiledEndpointRules": true,
3 | "enableFastUnmarshaller": true
4 | }
5 |
--------------------------------------------------------------------------------
/services/bedrockruntime/deployment/src/test/resources/full-config.properties:
--------------------------------------------------------------------------------
1 | quarkus.bedrockruntime.endpoint-override=http://localhost:9090
2 |
3 | quarkus.bedrockruntime.aws.region=us-east-2
4 | quarkus.bedrockruntime.aws.credentials.type=static
5 | quarkus.bedrockruntime.aws.credentials.static-provider.access-key-id=test-key
6 | quarkus.bedrockruntime.aws.credentials.static-provider.secret-access-key=test-secret
7 |
8 | quarkus.bedrockruntime.sync-client.type = url
9 | quarkus.bedrockruntime.sync-client.connection-timeout = 0.100S
10 | quarkus.bedrockruntime.sync-client.socket-timeout = 0.100S
11 |
--------------------------------------------------------------------------------
/services/bedrockruntime/pom.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | 4.0.0
4 |
5 |
6 | io.quarkiverse.amazonservices
7 | quarkus-amazon-services-services-parent
8 | 999-SNAPSHOT
9 |
10 |
11 | quarkus-amazon-bedrockruntime-parent
12 | Quarkus - Amazon Services - Bedrock Runtime
13 | pom
14 |
15 |
16 | runtime
17 | deployment
18 |
19 |
20 |
21 |
--------------------------------------------------------------------------------
/services/bedrockruntime/runtime/src/main/resources/META-INF/quarkus-extension.yaml:
--------------------------------------------------------------------------------
1 | ---
2 | artifact: ${project.groupId}:${project.artifactId}:${project.version}
3 | name: "Amazon Bedrock Runtime"
4 | metadata:
5 | keywords:
6 | - "bedrock"
7 | - "aws"
8 | - "amazon"
9 | categories:
10 | - "ai"
11 | guide: https://docs.quarkiverse.io/quarkus-amazon-services/dev/amazon-bedrock.html
12 | status: "stable"
13 | config:
14 | - "quarkus.bedrockruntime."
15 |
--------------------------------------------------------------------------------
/services/bedrockruntime/src/main/resources/codegen-resources/customization.config:
--------------------------------------------------------------------------------
1 | {
2 | "enableGenerateCompiledEndpointRules": true,
3 | "enableFastUnmarshaller": true
4 | }
5 |
--------------------------------------------------------------------------------
/services/cloudwatch/deployment/src/test/resources/sync-urlconn-full-config.properties:
--------------------------------------------------------------------------------
1 | quarkus.cloudwatch.endpoint-override=http://localhost:9090
2 |
3 | quarkus.cloudwatch.aws.region=us-east-1
4 | quarkus.cloudwatch.aws.credentials.type=static
5 | quarkus.cloudwatch.aws.credentials.static-provider.access-key-id=test-key
6 | quarkus.cloudwatch.aws.credentials.static-provider.secret-access-key=test-secret
7 |
8 | quarkus.cloudwatch.sync-client.type = url
9 | quarkus.cloudwatch.sync-client.connection-timeout = 0.100S
10 | quarkus.cloudwatch.sync-client.socket-timeout = 0.100S
--------------------------------------------------------------------------------
/services/cloudwatch/pom.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | 4.0.0
4 |
5 |
6 | io.quarkiverse.amazonservices
7 | quarkus-amazon-services-services-parent
8 | 999-SNAPSHOT
9 |
10 |
11 | quarkus-amazon-cloudwatch-parent
12 | Quarkus - Amazon Services - CloudWatch
13 | pom
14 |
15 |
16 | runtime
17 | deployment
18 |
19 |
20 |
21 |
--------------------------------------------------------------------------------
/services/cloudwatch/runtime/src/main/resources/META-INF/quarkus-extension.yaml:
--------------------------------------------------------------------------------
1 | ---
2 | artifact: ${project.groupId}:${project.artifactId}:${project.version}
3 | name: "Amazon CloudWatch"
4 | metadata:
5 | keywords:
6 | - "cloudwatch"
7 | - "aws"
8 | - "amazon"
9 | categories:
10 | - "data"
11 | guide: https://docs.quarkiverse.io/quarkus-amazon-services/dev/amazon-cloudwatch.html
12 | status: "preview"
13 | config:
14 | - "quarkus.cloudwatch."
15 |
--------------------------------------------------------------------------------
/services/cloudwatch/src/main/resources/codegen-resources/customization.config:
--------------------------------------------------------------------------------
1 | {
2 | "verifiedSimpleMethods": [
3 | "describeAlarmHistory",
4 | "describeAlarms",
5 | "listDashboards",
6 | "listMetrics"
7 | ],
8 | "excludedSimpleMethods": [
9 | "deleteDashboards",
10 | "putDashboard",
11 | "getDashboard"
12 | ],
13 |
14 | "enableGenerateCompiledEndpointRules": true
15 |
16 | }
17 |
--------------------------------------------------------------------------------
/services/cloudwatchlogs/deployment/src/test/resources/sync-urlconn-full-config.properties:
--------------------------------------------------------------------------------
1 | quarkus.cloudwatchlogs.endpoint-override=http://localhost:9090
2 |
3 | quarkus.cloudwatchlogs.aws.region=us-east-1
4 | quarkus.cloudwatchlogs.aws.credentials.type=static
5 | quarkus.cloudwatchlogs.aws.credentials.static-provider.access-key-id=test-key
6 | quarkus.cloudwatchlogs.aws.credentials.static-provider.secret-access-key=test-secret
7 |
8 | quarkus.cloudwatchlogs.sync-client.type = url
9 | quarkus.cloudwatchlogs.sync-client.connection-timeout = 0.100S
10 | quarkus.cloudwatchlogs.sync-client.socket-timeout = 0.100S
--------------------------------------------------------------------------------
/services/cloudwatchlogs/pom.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | 4.0.0
4 |
5 |
6 | io.quarkiverse.amazonservices
7 | quarkus-amazon-services-services-parent
8 | 999-SNAPSHOT
9 |
10 |
11 | quarkus-amazon-cloudwatchlogs-parent
12 | Quarkus - Amazon Services - CloudWatch Logs
13 | pom
14 |
15 |
16 | runtime
17 | deployment
18 |
19 |
20 |
21 |
--------------------------------------------------------------------------------
/services/cloudwatchlogs/runtime/src/main/resources/META-INF/quarkus-extension.yaml:
--------------------------------------------------------------------------------
1 | ---
2 | artifact: ${project.groupId}:${project.artifactId}:${project.version}
3 | name: "Amazon CloudWatch Logs"
4 | metadata:
5 | keywords:
6 | - "cloudwatch"
7 | - "aws"
8 | - "amazon"
9 | categories:
10 | - "data"
11 | guide: https://docs.quarkiverse.io/quarkus-amazon-services/dev/amazon-cloudwatchlogs.html
12 | status: "preview"
13 | config:
14 | - "quarkus.cloudwatchlogs."
15 |
--------------------------------------------------------------------------------
/services/cloudwatchlogs/src/main/resources/codegen-resources/customization.config:
--------------------------------------------------------------------------------
1 | {
2 | "excludedSimpleMethods": [
3 | "deleteResourcePolicy",
4 | "putResourcePolicy"
5 | ],
6 | "verifiedSimpleMethods": [
7 | "describeDestinations",
8 | "describeExportTasks",
9 | "describeLogGroups",
10 | "describeMetricFilters",
11 | "describeQueries",
12 | "describeResourcePolicies"
13 | ],
14 | "paginationCustomization": {
15 | "GetLogEvents": "LastPageHasPreviousToken"
16 | },
17 | "enableGenerateCompiledEndpointRules": true,
18 | "enableFastUnmarshaller": true
19 | }
20 |
--------------------------------------------------------------------------------
/services/dynamodb/deployment/src/main/java/io/quarkiverse/amazon/dynamodb/deployment/DynamodbNativeProcessor.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.amazon.dynamodb.deployment;
2 |
3 | import io.quarkus.deployment.annotations.BuildProducer;
4 | import io.quarkus.deployment.annotations.BuildStep;
5 | import io.quarkus.deployment.builditem.nativeimage.RuntimeInitializedClassBuildItem;
6 |
7 | public final class DynamodbNativeProcessor {
8 |
9 | @BuildStep
10 | void runtimeInitialize(BuildProducer producer) {
11 | // This class triggers initialization of FullJitterBackoffStragegy so needs to get runtime-initialized
12 | // as well
13 | producer.produce(
14 | new RuntimeInitializedClassBuildItem("software.amazon.awssdk.services.dynamodb.DynamoDbRetryPolicy"));
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/services/dynamodb/deployment/src/test/java/io/quarkiverse/amazon/dynamodb/deployment/DynamodbAsyncClientAwsCrtTest.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.amazon.dynamodb.deployment;
2 |
3 | import jakarta.inject.Inject;
4 |
5 | import org.junit.jupiter.api.Test;
6 | import org.junit.jupiter.api.extension.RegisterExtension;
7 |
8 | import io.quarkus.test.QuarkusUnitTest;
9 | import software.amazon.awssdk.services.dynamodb.DynamoDbAsyncClient;
10 |
11 | public class DynamodbAsyncClientAwsCrtTest {
12 |
13 | @Inject
14 | DynamoDbAsyncClient client;
15 |
16 | @RegisterExtension
17 | static final QuarkusUnitTest config = new QuarkusUnitTest()
18 | .withApplicationRoot((jar) -> jar
19 | .addAsResource("async-aws-crt.properties", "application.properties"));
20 |
21 | @Test
22 | public void test() {
23 | // Application should start with full config.
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/services/dynamodb/deployment/src/test/java/io/quarkiverse/amazon/dynamodb/deployment/DynamodbAsyncClientFullConfigTest.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.amazon.dynamodb.deployment;
2 |
3 | import jakarta.inject.Inject;
4 |
5 | import org.junit.jupiter.api.Test;
6 | import org.junit.jupiter.api.extension.RegisterExtension;
7 |
8 | import io.quarkus.test.QuarkusUnitTest;
9 | import software.amazon.awssdk.services.dynamodb.DynamoDbAsyncClient;
10 |
11 | public class DynamodbAsyncClientFullConfigTest {
12 |
13 | @Inject
14 | DynamoDbAsyncClient client;
15 |
16 | @RegisterExtension
17 | static final QuarkusUnitTest config = new QuarkusUnitTest()
18 | .withApplicationRoot((jar) -> jar
19 | .addAsResource("async-full-config.properties", "application.properties"));
20 |
21 | @Test
22 | public void test() {
23 | // Application should start with full config.
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/services/dynamodb/deployment/src/test/java/io/quarkiverse/amazon/dynamodb/deployment/DynamodbAsyncClientTlsKeyFileStoreConfigTest.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.amazon.dynamodb.deployment;
2 |
3 | import jakarta.inject.Inject;
4 |
5 | import org.junit.jupiter.api.Test;
6 | import org.junit.jupiter.api.extension.RegisterExtension;
7 |
8 | import io.quarkus.test.QuarkusUnitTest;
9 | import software.amazon.awssdk.services.dynamodb.DynamoDbAsyncClient;
10 |
11 | public class DynamodbAsyncClientTlsKeyFileStoreConfigTest {
12 |
13 | @Inject
14 | DynamoDbAsyncClient client;
15 |
16 | @RegisterExtension
17 | static final QuarkusUnitTest config = new QuarkusUnitTest()
18 | .withApplicationRoot((jar) -> jar
19 | .addAsResource("async-tls-key-filestore-config.properties", "application.properties"));
20 |
21 | @Test
22 | public void test() {
23 | // Application should start with full config.
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/services/dynamodb/deployment/src/test/java/io/quarkiverse/amazon/dynamodb/deployment/DynamodbAsyncClientTlsTrustFileStoreConfigTest.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.amazon.dynamodb.deployment;
2 |
3 | import jakarta.inject.Inject;
4 |
5 | import org.junit.jupiter.api.Test;
6 | import org.junit.jupiter.api.extension.RegisterExtension;
7 |
8 | import io.quarkus.test.QuarkusUnitTest;
9 | import software.amazon.awssdk.services.dynamodb.DynamoDbAsyncClient;
10 |
11 | public class DynamodbAsyncClientTlsTrustFileStoreConfigTest {
12 |
13 | @Inject
14 | DynamoDbAsyncClient client;
15 |
16 | @RegisterExtension
17 | static final QuarkusUnitTest config = new QuarkusUnitTest()
18 | .withApplicationRoot((jar) -> jar
19 | .addAsResource("async-tls-trust-filestore-config.properties", "application.properties"));
20 |
21 | @Test
22 | public void test() {
23 | // Application should start with full config.
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/services/dynamodb/deployment/src/test/java/io/quarkiverse/amazon/dynamodb/deployment/DynamodbAsyncClientTlsTrustTrustAllConfigTest.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.amazon.dynamodb.deployment;
2 |
3 | import jakarta.inject.Inject;
4 |
5 | import org.junit.jupiter.api.Test;
6 | import org.junit.jupiter.api.extension.RegisterExtension;
7 |
8 | import io.quarkus.test.QuarkusUnitTest;
9 | import software.amazon.awssdk.services.dynamodb.DynamoDbAsyncClient;
10 |
11 | public class DynamodbAsyncClientTlsTrustTrustAllConfigTest {
12 |
13 | @Inject
14 | DynamoDbAsyncClient client;
15 |
16 | @RegisterExtension
17 | static final QuarkusUnitTest config = new QuarkusUnitTest()
18 | .withApplicationRoot((jar) -> jar
19 | .addAsResource("async-tls-trust-trustall-config.properties", "application.properties"));
20 |
21 | @Test
22 | public void test() {
23 | // Application should start with full config.
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/services/dynamodb/deployment/src/test/java/io/quarkiverse/amazon/dynamodb/deployment/DynamodbSyncApacheClientFullConfigTest.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.amazon.dynamodb.deployment;
2 |
3 | import jakarta.inject.Inject;
4 |
5 | import org.junit.jupiter.api.Test;
6 | import org.junit.jupiter.api.extension.RegisterExtension;
7 |
8 | import io.quarkus.test.QuarkusUnitTest;
9 | import software.amazon.awssdk.services.dynamodb.DynamoDbClient;
10 |
11 | public class DynamodbSyncApacheClientFullConfigTest {
12 |
13 | @Inject
14 | DynamoDbClient client;
15 |
16 | @RegisterExtension
17 | static final QuarkusUnitTest config = new QuarkusUnitTest()
18 | .withApplicationRoot((jar) -> jar
19 | .addAsResource("sync-apache-full-config.properties", "application.properties"));
20 |
21 | @Test
22 | public void test() {
23 | // Application should start with full config.
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/services/dynamodb/deployment/src/test/java/io/quarkiverse/amazon/dynamodb/deployment/DynamodbSyncClientTlsKeyFileStoreConfigTest.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.amazon.dynamodb.deployment;
2 |
3 | import jakarta.inject.Inject;
4 |
5 | import org.junit.jupiter.api.Test;
6 | import org.junit.jupiter.api.extension.RegisterExtension;
7 |
8 | import io.quarkus.test.QuarkusUnitTest;
9 | import software.amazon.awssdk.services.dynamodb.DynamoDbClient;
10 |
11 | public class DynamodbSyncClientTlsKeyFileStoreConfigTest {
12 |
13 | @Inject
14 | DynamoDbClient client;
15 |
16 | @RegisterExtension
17 | static final QuarkusUnitTest config = new QuarkusUnitTest()
18 | .withApplicationRoot((jar) -> jar
19 | .addAsResource("sync-tls-key-filestore-config.properties", "application.properties"));
20 |
21 | @Test
22 | public void test() {
23 | // Application should start with full config.
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/services/dynamodb/deployment/src/test/java/io/quarkiverse/amazon/dynamodb/deployment/DynamodbSyncClientTlsTrustFileStoreConfigTest.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.amazon.dynamodb.deployment;
2 |
3 | import jakarta.inject.Inject;
4 |
5 | import org.junit.jupiter.api.Test;
6 | import org.junit.jupiter.api.extension.RegisterExtension;
7 |
8 | import io.quarkus.test.QuarkusUnitTest;
9 | import software.amazon.awssdk.services.dynamodb.DynamoDbClient;
10 |
11 | public class DynamodbSyncClientTlsTrustFileStoreConfigTest {
12 |
13 | @Inject
14 | DynamoDbClient client;
15 |
16 | @RegisterExtension
17 | static final QuarkusUnitTest config = new QuarkusUnitTest()
18 | .withApplicationRoot((jar) -> jar
19 | .addAsResource("sync-tls-trust-filestore-config.properties", "application.properties"));
20 |
21 | @Test
22 | public void test() {
23 | // Application should start with full config.
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/services/dynamodb/deployment/src/test/java/io/quarkiverse/amazon/dynamodb/deployment/DynamodbSyncClientTlsTrustTrustAllConfigTest.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.amazon.dynamodb.deployment;
2 |
3 | import jakarta.inject.Inject;
4 |
5 | import org.junit.jupiter.api.Test;
6 | import org.junit.jupiter.api.extension.RegisterExtension;
7 |
8 | import io.quarkus.test.QuarkusUnitTest;
9 | import software.amazon.awssdk.services.dynamodb.DynamoDbClient;
10 |
11 | public class DynamodbSyncClientTlsTrustTrustAllConfigTest {
12 |
13 | @Inject
14 | DynamoDbClient client;
15 |
16 | @RegisterExtension
17 | static final QuarkusUnitTest config = new QuarkusUnitTest()
18 | .withApplicationRoot((jar) -> jar
19 | .addAsResource("sync-tls-trust-trustall-config.properties", "application.properties"));
20 |
21 | @Test
22 | public void test() {
23 | // Application should start with full config.
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/services/dynamodb/deployment/src/test/java/io/quarkiverse/amazon/dynamodb/deployment/DynamodbSyncUrlConnClientFullConfigTest.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.amazon.dynamodb.deployment;
2 |
3 | import jakarta.inject.Inject;
4 |
5 | import org.junit.jupiter.api.Test;
6 | import org.junit.jupiter.api.extension.RegisterExtension;
7 |
8 | import io.quarkus.test.QuarkusUnitTest;
9 | import software.amazon.awssdk.services.dynamodb.DynamoDbClient;
10 |
11 | public class DynamodbSyncUrlConnClientFullConfigTest {
12 |
13 | @Inject
14 | DynamoDbClient client;
15 |
16 | @RegisterExtension
17 | static final QuarkusUnitTest config = new QuarkusUnitTest()
18 | .withApplicationRoot((jar) -> jar
19 | .addAsResource("sync-urlconn-full-config.properties", "application.properties"));
20 |
21 | @Test
22 | public void test() {
23 | // Application should start with full config.
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/services/dynamodb/deployment/src/test/resources/async-aws-crt.properties:
--------------------------------------------------------------------------------
1 | quarkus.dynamodb.enable-endpoint-discovery=false
2 | quarkus.dynamodb.endpoint-override=http://localhost:8000
3 | quarkus.dynamodb.api-call-timeout=0.5S
4 | quarkus.dynamodb.api-call-attempt-timeout=0.5S
5 |
6 | quarkus.dynamodb.aws.region=us-east-1
7 | quarkus.dynamodb.aws.credentials.type=static
8 | quarkus.dynamodb.aws.credentials.static-provider.access-key-id=test-key
9 | quarkus.dynamodb.aws.credentials.static-provider.secret-access-key=test-secret
10 |
11 | quarkus.dynamodb.async-client.max-concurrency=10
12 | quarkus.dynamodb.async-client.connection-timeout=0.01S
13 | quarkus.dynamodb.async-client.connection-max-idle-time=0.01S
14 | quarkus.dynamodb.async-client.proxy.enabled = true
15 | quarkus.dynamodb.async-client.proxy.endpoint = http://127.1.1.1
16 | quarkus.dynamodb.async-client.type = aws-crt
--------------------------------------------------------------------------------
/services/dynamodb/deployment/src/test/resources/async-broken-proxy-config.properties:
--------------------------------------------------------------------------------
1 | quarkus.dynamodb.async-client.proxy.enabled = true
2 | quarkus.dynamodb.async-client.proxy.endpoint = http://user:name@127.1.1.1?foo=bar
3 |
4 | quarkus.dynamodb.devservices.enabled=false
--------------------------------------------------------------------------------
/services/dynamodb/deployment/src/test/resources/async-tls-key-filestore-config.properties:
--------------------------------------------------------------------------------
1 | quarkus.dynamodb.aws.region=us-east-1
2 |
3 | quarkus.dynamodb.async-client.tls-key-managers-provider.type=file-store
4 | quarkus.dynamodb.async-client.tls-key-managers-provider.file-store.path=/tmp/file.key
5 | quarkus.dynamodb.async-client.tls-key-managers-provider.file-store.type=pkcs11
6 | quarkus.dynamodb.async-client.tls-key-managers-provider.file-store.password=thePassword
7 |
8 | quarkus.dynamodb.devservices.enabled=false
--------------------------------------------------------------------------------
/services/dynamodb/deployment/src/test/resources/async-tls-trust-filestore-config.properties:
--------------------------------------------------------------------------------
1 | quarkus.dynamodb.aws.region=us-east-1
2 |
3 | quarkus.dynamodb.async-client.tls-trust-managers-provider.type=file-store
4 | quarkus.dynamodb.async-client.tls-trust-managers-provider.file-store.path=/tmp/file.key
5 | quarkus.dynamodb.async-client.tls-trust-managers-provider.file-store.type=pkcs11
6 | quarkus.dynamodb.async-client.tls-trust-managers-provider.file-store.password=thePassword
7 |
8 | quarkus.dynamodb.devservices.enabled=false
--------------------------------------------------------------------------------
/services/dynamodb/deployment/src/test/resources/async-tls-trust-trustall-config.properties:
--------------------------------------------------------------------------------
1 | quarkus.dynamodb.aws.region=us-east-1
2 |
3 | quarkus.dynamodb.async-client.tls-trust-managers-provider.type=trust-all
4 |
5 | quarkus.dynamodb.devservices.enabled=false
--------------------------------------------------------------------------------
/services/dynamodb/deployment/src/test/resources/broken-endpoint-config.properties:
--------------------------------------------------------------------------------
1 | quarkus.dynamodb.aws.region=us-east-1
2 |
3 | quarkus.dynamodb.endpoint-override=127.0.0.1
4 |
5 |
--------------------------------------------------------------------------------
/services/dynamodb/deployment/src/test/resources/default-credentials-config.properties:
--------------------------------------------------------------------------------
1 | quarkus.dynamodb.aws.region=us-east-2
2 |
3 | quarkus.dynamodb.aws.credentials.type=default
4 | quarkus.dynamodb.aws.credentials.default-provider.async-credential-update-enabled=true
5 | quarkus.dynamodb.aws.credentials.default-provider.reuse-last-provider-enabled=true
6 |
7 | quarkus.dynamodb.devservices.enabled=false
--------------------------------------------------------------------------------
/services/dynamodb/deployment/src/test/resources/localstack-init-script-config.properties:
--------------------------------------------------------------------------------
1 | quarkus.aws.devservices.localstack.init-scripts-folder=src/test/resources/localstack-init
2 | quarkus.aws.devservices.localstack.init-completion-msg=Dynamodb init completed
--------------------------------------------------------------------------------
/services/dynamodb/deployment/src/test/resources/localstack-init/01_configure_cli.sh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env bash
2 | echo "#### Configure aws cli ####"
3 | aws configure set aws_access_key_id default_access_key --profile=localstack
4 | aws configure set aws_secret_access_key default_secret_key --profile=localstack
5 | aws configure set region us-east-1 --profile=localstack
6 |
--------------------------------------------------------------------------------
/services/dynamodb/deployment/src/test/resources/localstack-init/02_create_table.sh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env bash
2 | echo "#### Create QuarkusFruits table ####"
3 | aws dynamodb create-table --endpoint-url=http://localhost:4566 \
4 | --table-name QuarkusFruits \
5 | --attribute-definitions AttributeName=fruitName,AttributeType=S \
6 | --key-schema AttributeName=fruitName,KeyType=HASH \
7 | --provisioned-throughput ReadCapacityUnits=1,WriteCapacityUnits=1 \
8 | --profile=localstack \
9 | --region=us-east-1
10 | echo "#### Dynamodb init completed"
11 |
--------------------------------------------------------------------------------
/services/dynamodb/deployment/src/test/resources/process-credentials-broken-config.properties:
--------------------------------------------------------------------------------
1 | quarkus.dynamodb.aws.credentials.type=process
2 |
3 | quarkus.dynamodb.devservices.enabled=false
--------------------------------------------------------------------------------
/services/dynamodb/deployment/src/test/resources/profile-credentials-config.properties:
--------------------------------------------------------------------------------
1 | quarkus.dynamodb.aws.region=us-east-2
2 |
3 | quarkus.dynamodb.aws.credentials.type=profile
4 | quarkus.dynamodb.aws.credentials.profile-provider.profile-name=myprofile
5 |
6 | quarkus.dynamodb.devservices.enabled=false
--------------------------------------------------------------------------------
/services/dynamodb/deployment/src/test/resources/static-credentials-broken-config.properties:
--------------------------------------------------------------------------------
1 | quarkus.dynamodb.aws.credentials.type=static
2 |
3 | quarkus.dynamodb.devservices.enabled=false
--------------------------------------------------------------------------------
/services/dynamodb/deployment/src/test/resources/sync-apache-broken-config.properties:
--------------------------------------------------------------------------------
1 | quarkus.dynamodb.sync-client.type = apache
2 | quarkus.dynamodb.sync-client.apache.max-connections = -10
3 |
4 | quarkus.dynamodb.devservices.enabled=false
5 |
--------------------------------------------------------------------------------
/services/dynamodb/deployment/src/test/resources/sync-apache-broken-proxy-config.properties:
--------------------------------------------------------------------------------
1 | quarkus.dynamodb.sync-client.type = apache
2 | quarkus.dynamodb.sync-client.apache.proxy.enabled = true
3 | quarkus.dynamodb.sync-client.apache.proxy.endpoint = http://user:name@127.1.1.1?foo=bar
4 |
5 | quarkus.dynamodb.devservices.enabled=false
6 |
--------------------------------------------------------------------------------
/services/dynamodb/deployment/src/test/resources/sync-tls-key-filestore-config.properties:
--------------------------------------------------------------------------------
1 | quarkus.dynamodb.aws.region=us-east-1
2 |
3 | quarkus.dynamodb.sync-client.tls-key-managers-provider.type=file-store
4 | quarkus.dynamodb.sync-client.tls-key-managers-provider.file-store.path=/tmp/file.key
5 | quarkus.dynamodb.sync-client.tls-key-managers-provider.file-store.type=pkcs11
6 | quarkus.dynamodb.sync-client.tls-key-managers-provider.file-store.password=thePassword
7 |
8 | quarkus.dynamodb.devservices.enabled=false
9 |
--------------------------------------------------------------------------------
/services/dynamodb/deployment/src/test/resources/sync-tls-trust-filestore-config.properties:
--------------------------------------------------------------------------------
1 | quarkus.dynamodb.aws.region=us-east-1
2 |
3 | quarkus.dynamodb.sync-client.tls-trust-managers-provider.type=file-store
4 | quarkus.dynamodb.sync-client.tls-trust-managers-provider.file-store.path=/tmp/file.key
5 | quarkus.dynamodb.sync-client.tls-trust-managers-provider.file-store.type=pkcs11
6 | quarkus.dynamodb.sync-client.tls-trust-managers-provider.file-store.password=thePassword
7 |
8 | quarkus.dynamodb.devservices.enabled=false
9 |
--------------------------------------------------------------------------------
/services/dynamodb/deployment/src/test/resources/sync-tls-trust-trustall-config.properties:
--------------------------------------------------------------------------------
1 | quarkus.dynamodb.aws.region=us-east-1
2 |
3 | quarkus.dynamodb.sync-client.tls-trust-managers-provider.type=trust-all
4 |
5 | quarkus.dynamodb.devservices.enabled=false
6 |
--------------------------------------------------------------------------------
/services/dynamodb/deployment/src/test/resources/sync-urlconn-full-config.properties:
--------------------------------------------------------------------------------
1 | quarkus.dynamodb.enable-endpoint-discovery=true
2 |
3 | quarkus.dynamodb.endpoint-override=http://localhost:8000
4 | quarkus.dynamodb.api-call-timeout=0.5S
5 | quarkus.dynamodb.api-call-attempt-timeout=0.5S
6 |
7 | quarkus.dynamodb.aws.region=us-east-2
8 | quarkus.dynamodb.aws.credentials.type=static
9 | quarkus.dynamodb.aws.credentials.static-provider.access-key-id=test-key
10 | quarkus.dynamodb.aws.credentials.static-provider.secret-access-key=test-secret
11 |
12 | quarkus.dynamodb.sync-client.type = url
13 | quarkus.dynamodb.sync-client.connection-timeout = 0.100S
14 | quarkus.dynamodb.sync-client.socket-timeout = 0.100S
15 | quarkus.dynamodb.sync-client.tls-trust-managers-provider.type=system-property
16 |
--------------------------------------------------------------------------------
/services/dynamodb/pom.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | 4.0.0
4 |
5 |
6 | io.quarkiverse.amazonservices
7 | quarkus-amazon-services-services-parent
8 | 999-SNAPSHOT
9 |
10 |
11 | quarkus-amazon-dynamodb-parent
12 | Quarkus - Amazon Services - DynamoDB
13 | pom
14 |
15 |
16 | runtime
17 | deployment
18 |
19 |
20 |
21 |
--------------------------------------------------------------------------------
/services/dynamodb/runtime/src/main/resources/META-INF/quarkus-extension.yaml:
--------------------------------------------------------------------------------
1 | ---
2 | artifact: ${project.groupId}:${project.artifactId}:${project.version}
3 | name: "Amazon DynamoDB"
4 | metadata:
5 | keywords:
6 | - "dynamodb"
7 | - "dynamo"
8 | - "aws"
9 | - "amazon"
10 | categories:
11 | - "data"
12 | guide: https://docs.quarkiverse.io/quarkus-amazon-services/dev/amazon-dynamodb.html
13 | status: "stable"
14 | config:
15 | - "quarkus.dynamodb."
16 |
--------------------------------------------------------------------------------
/services/ecr/deployment/src/test/java/io/quarkiverse/amazon/ecr/deployment/EcrDevServicesTest.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.amazon.ecr.deployment;
2 |
3 | import static org.junit.jupiter.api.Assertions.assertNotNull;
4 |
5 | import jakarta.enterprise.inject.Instance;
6 | import jakarta.inject.Inject;
7 |
8 | import org.junit.jupiter.api.Test;
9 | import org.junit.jupiter.api.extension.RegisterExtension;
10 |
11 | import io.quarkus.test.QuarkusUnitTest;
12 | import software.amazon.awssdk.services.ecr.EcrClient;
13 |
14 | public class EcrDevServicesTest {
15 |
16 | @Inject
17 | Instance client;
18 |
19 | @RegisterExtension
20 | static final QuarkusUnitTest config = new QuarkusUnitTest()
21 | .withEmptyApplication();
22 |
23 | @Test
24 | public void test() {
25 | assertNotNull(client.get());
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/services/ecr/deployment/src/test/java/io/quarkiverse/amazon/ecr/deployment/EcrSyncClientFullConfigTest.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.amazon.ecr.deployment;
2 |
3 | import jakarta.inject.Inject;
4 |
5 | import org.junit.jupiter.api.Test;
6 | import org.junit.jupiter.api.extension.RegisterExtension;
7 |
8 | import io.quarkus.test.QuarkusUnitTest;
9 | import software.amazon.awssdk.services.ecr.EcrAsyncClient;
10 | import software.amazon.awssdk.services.ecr.EcrClient;
11 |
12 | public class EcrSyncClientFullConfigTest {
13 |
14 | @Inject
15 | EcrClient client;
16 |
17 | @Inject
18 | EcrAsyncClient async;
19 |
20 | @RegisterExtension
21 | static final QuarkusUnitTest config = new QuarkusUnitTest()
22 | .withApplicationRoot((jar) -> jar
23 | .addAsResource("sync-urlconn-full-config.properties", "application.properties"));
24 |
25 | @Test
26 | public void test() {
27 | // should finish with success
28 | }
29 | }
30 |
--------------------------------------------------------------------------------
/services/ecr/deployment/src/test/resources/sync-urlconn-full-config.properties:
--------------------------------------------------------------------------------
1 | quarkus.ecr.endpoint-override=http://localhost:9090
2 |
3 | quarkus.ecr.aws.region=us-east-1
4 | quarkus.ecr.aws.credentials.type=static
5 | quarkus.ecr.aws.credentials.static-provider.access-key-id=test-key
6 | quarkus.ecr.aws.credentials.static-provider.secret-access-key=test-secret
7 |
8 | quarkus.ecr.sync-client.type = url
9 | quarkus.ecr.sync-client.connection-timeout = 0.100S
10 | quarkus.ecr.sync-client.socket-timeout = 0.100S
--------------------------------------------------------------------------------
/services/ecr/pom.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | 4.0.0
4 |
5 |
6 | io.quarkiverse.amazonservices
7 | quarkus-amazon-services-services-parent
8 | 999-SNAPSHOT
9 |
10 |
11 | quarkus-amazon-ecr-parent
12 | Quarkus - Amazon Services - ECR
13 | pom
14 |
15 |
16 | runtime
17 | deployment
18 |
19 |
20 |
21 |
--------------------------------------------------------------------------------
/services/ecr/runtime/src/main/resources/META-INF/quarkus-extension.yaml:
--------------------------------------------------------------------------------
1 | ---
2 | artifact: ${project.groupId}:${project.artifactId}:${project.version}
3 | name: "Amazon ECR"
4 | metadata:
5 | keywords:
6 | - "ecr"
7 | - "aws"
8 | - "amazon"
9 | categories:
10 | - "data"
11 | guide: https://docs.quarkiverse.io/quarkus-amazon-services/dev/amazon-ecr.html
12 | status: "stable"
13 | config:
14 | - "quarkus.ecr."
15 |
--------------------------------------------------------------------------------
/services/ecr/src/main/resources/codegen-resources/customization.config:
--------------------------------------------------------------------------------
1 | {
2 | "verifiedSimpleMethods": [
3 | "describeRepositories",
4 | "getAuthorizationToken"
5 | ],
6 | "enableGenerateCompiledEndpointRules": true,
7 | "enableFastUnmarshaller": true
8 | }
9 |
--------------------------------------------------------------------------------
/services/elasticloadbalancing/deployment/src/test/resources/sync-urlconn-full-config.properties:
--------------------------------------------------------------------------------
1 | quarkus.elasticloadbalancing.endpoint-override=http://localhost:9090
2 |
3 | quarkus.elasticloadbalancing.aws.region=us-east-1
4 | quarkus.elasticloadbalancing.aws.credentials.type=static
5 | quarkus.elasticloadbalancing.aws.credentials.static-provider.access-key-id=test-key
6 | quarkus.elasticloadbalancing.aws.credentials.static-provider.secret-access-key=test-secret
7 |
8 | quarkus.elasticloadbalancing.sync-client.type = url
9 | quarkus.elasticloadbalancing.sync-client.connection-timeout = 0.100S
10 | quarkus.elasticloadbalancing.sync-client.socket-timeout = 0.100S
--------------------------------------------------------------------------------
/services/elasticloadbalancing/pom.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | 4.0.0
4 |
5 |
6 | io.quarkiverse.amazonservices
7 | quarkus-amazon-services-services-parent
8 | 999-SNAPSHOT
9 |
10 |
11 | quarkus-amazon-elasticloadbalancing-parent
12 | Quarkus - Amazon Services - Elastic Load Balancing
13 | pom
14 |
15 |
16 | runtime
17 | deployment
18 |
19 |
20 |
21 |
--------------------------------------------------------------------------------
/services/elasticloadbalancing/runtime/src/main/resources/META-INF/quarkus-extension.yaml:
--------------------------------------------------------------------------------
1 | ---
2 | artifact: ${project.groupId}:${project.artifactId}:${project.version}
3 | name: "Amazon Elastic Load Balancing"
4 | metadata:
5 | keywords:
6 | - "elasticloadbalancing"
7 | - "aws"
8 | - "amazon"
9 | categories:
10 | - "data"
11 | guide: https://docs.quarkiverse.io/quarkus-amazon-services/dev/amazon-elasticloadbalancing.html
12 | status: "stable"
13 | config:
14 | - "quarkus.elasticloadbalancing."
15 |
--------------------------------------------------------------------------------
/services/elasticloadbalancing/src/main/resources/codegen-resources/customization.config:
--------------------------------------------------------------------------------
1 | {
2 | "verifiedSimpleMethods": [
3 | "describeAccountLimits",
4 | "describeLoadBalancerPolicies",
5 | "describeLoadBalancerPolicyTypes",
6 | "describeLoadBalancers"
7 | ],
8 | "renameShapes": {
9 | "AccessPointNotFoundException": "LoadBalancerNotFoundException",
10 | "DuplicateAccessPointNameException": "DuplicateLoadBalancerNameException",
11 | "TooManyAccessPointsException": "TooManyLoadBalancersException",
12 | "InvalidEndPointException": "InvalidInstanceException"
13 | },
14 |
15 | "enableGenerateCompiledEndpointRules": true
16 |
17 | }
18 |
--------------------------------------------------------------------------------
/services/elasticloadbalancingv2/deployment/src/test/resources/sync-urlconn-full-config.properties:
--------------------------------------------------------------------------------
1 | quarkus.elasticloadbalancingv2.endpoint-override=http://localhost:9090
2 |
3 | quarkus.elasticloadbalancingv2.aws.region=us-east-1
4 | quarkus.elasticloadbalancingv2.aws.credentials.type=static
5 | quarkus.elasticloadbalancingv2.aws.credentials.static-provider.access-key-id=test-key
6 | quarkus.elasticloadbalancingv2.aws.credentials.static-provider.secret-access-key=test-secret
7 |
8 | quarkus.elasticloadbalancingv2.sync-client.type = url
9 | quarkus.elasticloadbalancingv2.sync-client.connection-timeout = 0.100S
10 | quarkus.elasticloadbalancingv2.sync-client.socket-timeout = 0.100S
--------------------------------------------------------------------------------
/services/elasticloadbalancingv2/pom.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | 4.0.0
4 |
5 |
6 | io.quarkiverse.amazonservices
7 | quarkus-amazon-services-services-parent
8 | 999-SNAPSHOT
9 |
10 |
11 | quarkus-amazon-elasticloadbalancingv2-parent
12 | Quarkus - Amazon Services - Elastic Load Balancing v2
13 | pom
14 |
15 |
16 | runtime
17 | deployment
18 |
19 |
20 |
21 |
--------------------------------------------------------------------------------
/services/elasticloadbalancingv2/runtime/src/main/resources/META-INF/quarkus-extension.yaml:
--------------------------------------------------------------------------------
1 | ---
2 | artifact: ${project.groupId}:${project.artifactId}:${project.version}
3 | name: "Amazon Elastic Load Balancing v2"
4 | metadata:
5 | keywords:
6 | - "elasticloadbalancingv2"
7 | - "aws"
8 | - "amazon"
9 | categories:
10 | - "data"
11 | guide: https://docs.quarkiverse.io/quarkus-amazon-services/dev/amazon-elasticloadbalancingv2.html
12 | status: "stable"
13 | config:
14 | - "quarkus.elasticloadbalancingv2."
15 |
--------------------------------------------------------------------------------
/services/elasticloadbalancingv2/src/main/resources/codegen-resources/customization.config:
--------------------------------------------------------------------------------
1 | {
2 | "verifiedSimpleMethods": [
3 | "describeAccountLimits",
4 | "describeLoadBalancers",
5 | "describeSSLPolicies",
6 | "describeTargetGroups"
7 | ],
8 | "excludedSimpleMethods": [
9 | "describeRules",
10 | "describeListeners"
11 | ],
12 |
13 | "enableGenerateCompiledEndpointRules": true
14 |
15 | }
16 |
--------------------------------------------------------------------------------
/services/eventbridge/deployment/src/test/resources/full-config.properties:
--------------------------------------------------------------------------------
1 | quarkus.eventbridge.endpoint-override=http://localhost:9090
2 |
3 | quarkus.eventbridge.aws.region=us-east-2
4 | quarkus.eventbridge.aws.credentials.type=static
5 | quarkus.eventbridge.aws.credentials.static-provider.access-key-id=test-key
6 | quarkus.eventbridge.aws.credentials.static-provider.secret-access-key=test-secret
7 |
8 | quarkus.eventbridge.sync-client.type = url
9 | quarkus.eventbridge.sync-client.connection-timeout = 0.100S
10 | quarkus.eventbridge.sync-client.socket-timeout = 0.100S
--------------------------------------------------------------------------------
/services/eventbridge/pom.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | 4.0.0
4 |
5 |
6 | io.quarkiverse.amazonservices
7 | quarkus-amazon-services-services-parent
8 | 999-SNAPSHOT
9 |
10 |
11 | quarkus-amazon-eventbridge-parent
12 | Quarkus - Amazon Services - EventBridge
13 | pom
14 |
15 |
16 | runtime
17 | deployment
18 |
19 |
20 |
21 |
--------------------------------------------------------------------------------
/services/eventbridge/runtime/src/main/resources/META-INF/quarkus-extension.yaml:
--------------------------------------------------------------------------------
1 | ---
2 | artifact: ${project.groupId}:${project.artifactId}:${project.version}
3 | name: "Amazon EventBridge"
4 | metadata:
5 | keywords:
6 | - "eventbridge"
7 | - "aws"
8 | - "amazon"
9 | categories:
10 | - "data"
11 | guide: https://docs.quarkiverse.io/quarkus-amazon-services/dev/amazon-eventbridge.html
12 | status: "stable"
13 | config:
14 | - "quarkus.eventbridge."
15 |
--------------------------------------------------------------------------------
/services/eventbridge/src/main/resources/codegen-resources/customization.config:
--------------------------------------------------------------------------------
1 | {
2 | "enableEndpointAuthSchemeParams": true,
3 | "allowedEndpointAuthSchemeParams": [
4 | "EndpointId"
5 | ],
6 | "enableGenerateCompiledEndpointRules": true,
7 | "enableFastUnmarshaller": true
8 | }
9 |
--------------------------------------------------------------------------------
/services/iam/deployment/src/test/resources/sync-urlconn-full-config.properties:
--------------------------------------------------------------------------------
1 | quarkus.iam.endpoint-override=http://localhost:9090
2 |
3 | quarkus.iam.aws.region=us-east-1
4 | quarkus.iam.aws.credentials.type=static
5 | quarkus.iam.aws.credentials.static-provider.access-key-id=test-key
6 | quarkus.iam.aws.credentials.static-provider.secret-access-key=test-secret
7 |
8 | quarkus.iam.sync-client.type = url
9 | quarkus.iam.sync-client.connection-timeout = 0.100S
10 | quarkus.iam.sync-client.socket-timeout = 0.100S
--------------------------------------------------------------------------------
/services/iam/pom.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | 4.0.0
4 |
5 |
6 | io.quarkiverse.amazonservices
7 | quarkus-amazon-services-services-parent
8 | 999-SNAPSHOT
9 |
10 |
11 | quarkus-amazon-iam-parent
12 | Quarkus - Amazon Services - IAM
13 | pom
14 |
15 |
16 | runtime
17 | deployment
18 |
19 |
20 |
21 |
--------------------------------------------------------------------------------
/services/iam/runtime/src/main/resources/META-INF/quarkus-extension.yaml:
--------------------------------------------------------------------------------
1 | ---
2 | artifact: ${project.groupId}:${project.artifactId}:${project.version}
3 | name: "Amazon IAM"
4 | metadata:
5 | keywords:
6 | - "iam"
7 | - "aws"
8 | - "amazon"
9 | categories:
10 | - "data"
11 | guide: https://docs.quarkiverse.io/quarkus-amazon-services/dev/amazon-iam.html
12 | status: "stable"
13 | config:
14 | - "quarkus.iam."
15 |
--------------------------------------------------------------------------------
/services/inspector/deployment/src/test/resources/sync-urlconn-full-config.properties:
--------------------------------------------------------------------------------
1 | quarkus.inspector.endpoint-override=http://localhost:9090
2 |
3 | quarkus.inspector.aws.region=us-east-1
4 | quarkus.inspector.aws.credentials.type=static
5 | quarkus.inspector.aws.credentials.static-provider.access-key-id=test-key
6 | quarkus.inspector.aws.credentials.static-provider.secret-access-key=test-secret
7 |
8 | quarkus.inspector.sync-client.type = url
9 | quarkus.inspector.sync-client.connection-timeout = 0.100S
10 | quarkus.inspector.sync-client.socket-timeout = 0.100S
--------------------------------------------------------------------------------
/services/inspector/pom.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | 4.0.0
4 |
5 |
6 | io.quarkiverse.amazonservices
7 | quarkus-amazon-services-services-parent
8 | 999-SNAPSHOT
9 |
10 |
11 | quarkus-amazon-inspector-parent
12 | Quarkus - Amazon Services - Inspector
13 | pom
14 |
15 |
16 | runtime
17 | deployment
18 |
19 |
20 |
21 |
--------------------------------------------------------------------------------
/services/inspector/runtime/src/main/resources/META-INF/quarkus-extension.yaml:
--------------------------------------------------------------------------------
1 | ---
2 | artifact: ${project.groupId}:${project.artifactId}:${project.version}
3 | name: "Amazon Inspector"
4 | metadata:
5 | keywords:
6 | - "inspector"
7 | - "aws"
8 | - "amazon"
9 | categories:
10 | - "data"
11 | guide: https://docs.quarkiverse.io/quarkus-amazon-services/dev/amazon-inspector.html
12 | status: "stable"
13 | config:
14 | - "quarkus.inspector."
15 |
--------------------------------------------------------------------------------
/services/inspector2/deployment/src/test/resources/sync-urlconn-full-config.properties:
--------------------------------------------------------------------------------
1 | quarkus.inspector2.endpoint-override=http://localhost:9090
2 |
3 | quarkus.inspector2.aws.region=us-east-1
4 | quarkus.inspector2.aws.credentials.type=static
5 | quarkus.inspector2.aws.credentials.static-provider.access-key-id=test-key
6 | quarkus.inspector2.aws.credentials.static-provider.secret-access-key=test-secret
7 |
8 | quarkus.inspector2.sync-client.type = url
9 | quarkus.inspector2.sync-client.connection-timeout = 0.100S
10 | quarkus.inspector2.sync-client.socket-timeout = 0.100S
--------------------------------------------------------------------------------
/services/inspector2/pom.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | 4.0.0
4 |
5 |
6 | io.quarkiverse.amazonservices
7 | quarkus-amazon-services-services-parent
8 | 999-SNAPSHOT
9 |
10 |
11 | quarkus-amazon-inspector2-parent
12 | Quarkus - Amazon Services - Inspector2
13 | pom
14 |
15 |
16 | runtime
17 | deployment
18 |
19 |
20 |
21 |
--------------------------------------------------------------------------------
/services/inspector2/runtime/src/main/resources/META-INF/quarkus-extension.yaml:
--------------------------------------------------------------------------------
1 | ---
2 | artifact: ${project.groupId}:${project.artifactId}:${project.version}
3 | name: "Amazon Inspector2"
4 | metadata:
5 | keywords:
6 | - "inspector2"
7 | - "aws"
8 | - "amazon"
9 | categories:
10 | - "data"
11 | guide: https://docs.quarkiverse.io/quarkus-amazon-services/dev/amazon-inspector2.html
12 | status: "stable"
13 | config:
14 | - "quarkus.inspector2."
15 |
--------------------------------------------------------------------------------
/services/inspector2/src/main/resources/codegen-resources/customization.config:
--------------------------------------------------------------------------------
1 | {
2 | "enableGenerateCompiledEndpointRules": true,
3 | "enableFastUnmarshaller": true
4 | }
5 |
--------------------------------------------------------------------------------
/services/iot/deployment/src/test/java/io/quarkiverse/amazon/iot/deployment/IotClientFullConfigTest.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.amazon.iot.deployment;
2 |
3 | import jakarta.inject.Inject;
4 |
5 | import org.junit.jupiter.api.Test;
6 | import org.junit.jupiter.api.extension.RegisterExtension;
7 |
8 | import io.quarkus.test.QuarkusUnitTest;
9 | import software.amazon.awssdk.services.iot.IotAsyncClient;
10 | import software.amazon.awssdk.services.iot.IotClient;
11 |
12 | public class IotClientFullConfigTest {
13 |
14 | @Inject
15 | IotClient client;
16 |
17 | @Inject
18 | IotAsyncClient async;
19 |
20 | @RegisterExtension
21 | static final QuarkusUnitTest config = new QuarkusUnitTest()
22 | .withApplicationRoot((jar) -> jar
23 | .addAsResource("sync-urlconn-full-config.properties", "application.properties"));
24 |
25 | @Test
26 | public void test() {
27 | // should finish with success
28 | }
29 | }
30 |
--------------------------------------------------------------------------------
/services/iot/deployment/src/test/resources/sync-urlconn-full-config.properties:
--------------------------------------------------------------------------------
1 | quarkus.iot.endpoint-override=http://localhost:9090
2 |
3 | quarkus.iot.aws.region=us-east-1
4 | quarkus.iot.aws.credentials.type=static
5 | quarkus.iot.aws.credentials.static-provider.access-key-id=test-key
6 | quarkus.iot.aws.credentials.static-provider.secret-access-key=test-secret
7 |
8 | quarkus.iot.sync-client.type = url
9 | quarkus.iot.sync-client.connection-timeout = 0.100S
10 | quarkus.iot.sync-client.socket-timeout = 0.100S
--------------------------------------------------------------------------------
/services/iot/pom.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | 4.0.0
4 |
5 |
6 | io.quarkiverse.amazonservices
7 | quarkus-amazon-services-services-parent
8 | 999-SNAPSHOT
9 |
10 |
11 | quarkus-amazon-iot-parent
12 | Quarkus - Amazon Services - IoT
13 | pom
14 |
15 |
16 | runtime
17 | deployment
18 |
19 |
20 |
21 |
--------------------------------------------------------------------------------
/services/iot/runtime/src/main/resources/META-INF/quarkus-extension.yaml:
--------------------------------------------------------------------------------
1 | ---
2 | artifact: ${project.groupId}:${project.artifactId}:${project.version}
3 | name: "Amazon IoT"
4 | metadata:
5 | keywords:
6 | - "iot"
7 | - "aws"
8 | - "amazon"
9 | categories:
10 | - "data"
11 | guide: https://docs.quarkiverse.io/quarkus-amazon-services/dev/amazon-iot.html
12 | status: "stable"
13 | config:
14 | - "quarkus.iot."
15 |
--------------------------------------------------------------------------------
/services/kinesis/deployment/src/test/resources/full-config.properties:
--------------------------------------------------------------------------------
1 | quarkus.kinesis.endpoint-override=http://localhost:9090
2 |
3 | quarkus.kinesis.aws.region=us-east-2
4 | quarkus.kinesis.aws.credentials.type=static
5 | quarkus.kinesis.aws.credentials.static-provider.access-key-id=test-key
6 | quarkus.kinesis.aws.credentials.static-provider.secret-access-key=test-secret
7 |
8 | quarkus.kinesis.sync-client.type = url
9 | quarkus.kinesis.sync-client.connection-timeout = 0.100S
10 | quarkus.kinesis.sync-client.socket-timeout = 0.100S
--------------------------------------------------------------------------------
/services/kinesis/pom.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | 4.0.0
4 |
5 |
6 | io.quarkiverse.amazonservices
7 | quarkus-amazon-services-services-parent
8 | 999-SNAPSHOT
9 |
10 |
11 | quarkus-amazon-kinesis-parent
12 | Quarkus - Amazon Services - Kinesis
13 | pom
14 |
15 |
16 | runtime
17 | deployment
18 |
19 |
20 |
21 |
--------------------------------------------------------------------------------
/services/kinesis/runtime/src/main/resources/META-INF/quarkus-extension.yaml:
--------------------------------------------------------------------------------
1 | ---
2 | artifact: ${project.groupId}:${project.artifactId}:${project.version}
3 | name: "Amazon Kinesis"
4 | metadata:
5 | keywords:
6 | - "kinesis"
7 | - "aws"
8 | - "amazon"
9 | categories:
10 | - "data"
11 | guide: https://docs.quarkiverse.io/quarkus-amazon-services/dev/amazon-kinesis.html
12 | status: "stable"
13 | config:
14 | - "quarkus.kinesis."
15 |
--------------------------------------------------------------------------------
/services/kms/deployment/src/test/resources/sync-urlconn-full-config.properties:
--------------------------------------------------------------------------------
1 | quarkus.kms.endpoint-override=http://localhost:9090
2 |
3 | quarkus.kms.aws.region=us-east-1
4 | quarkus.kms.aws.credentials.type=static
5 | quarkus.kms.aws.credentials.static-provider.access-key-id=test-key
6 | quarkus.kms.aws.credentials.static-provider.secret-access-key=test-secret
7 |
8 | quarkus.kms.sync-client.type = url
9 | quarkus.kms.sync-client.connection-timeout = 0.100S
10 | quarkus.kms.sync-client.socket-timeout = 0.100S
--------------------------------------------------------------------------------
/services/kms/pom.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | 4.0.0
4 |
5 |
6 | io.quarkiverse.amazonservices
7 | quarkus-amazon-services-services-parent
8 | 999-SNAPSHOT
9 |
10 |
11 | quarkus-amazon-kms-parent
12 | Quarkus - Amazon Services - KMS
13 | pom
14 |
15 |
16 | runtime
17 | deployment
18 |
19 |
20 |
21 |
--------------------------------------------------------------------------------
/services/kms/runtime/src/main/resources/META-INF/quarkus-extension.yaml:
--------------------------------------------------------------------------------
1 | ---
2 | artifact: ${project.groupId}:${project.artifactId}:${project.version}
3 | name: "Amazon KMS"
4 | metadata:
5 | keywords:
6 | - "kms"
7 | - "aws"
8 | - "amazon"
9 | categories:
10 | - "data"
11 | guide: https://docs.quarkiverse.io/quarkus-amazon-services/dev/amazon-kms.html
12 | status: "stable"
13 | config:
14 | - "quarkus.kms."
15 |
--------------------------------------------------------------------------------
/services/kms/src/main/resources/codegen-resources/customization.config:
--------------------------------------------------------------------------------
1 | {
2 | "verifiedSimpleMethods": [
3 | "createKey",
4 | "generateRandom",
5 | "retireGrant",
6 | "describeCustomKeyStores",
7 | "listAliases",
8 | "listKeys"
9 | ],
10 | "enableGenerateCompiledEndpointRules": true,
11 | "enableFastUnmarshaller": true
12 | }
13 |
--------------------------------------------------------------------------------
/services/lambda/deployment/src/test/resources/sync-urlconn-full-config.properties:
--------------------------------------------------------------------------------
1 | quarkus.lambda.endpoint-override=http://localhost:9090
2 |
3 | quarkus.lambda.aws.region=us-east-2
4 | quarkus.lambda.aws.credentials.type=static
5 | quarkus.lambda.aws.credentials.static-provider.access-key-id=test-key
6 | quarkus.lambda.aws.credentials.static-provider.secret-access-key=test-secret
7 |
8 | quarkus.lambda.sync-client.type = url
9 | quarkus.lambda.sync-client.connection-timeout = 0.100S
10 | quarkus.lambda.sync-client.socket-timeout = 0.100S
--------------------------------------------------------------------------------
/services/lambda/pom.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | 4.0.0
4 |
5 | io.quarkiverse.amazonservices
6 | quarkus-amazon-services-services-parent
7 | 999-SNAPSHOT
8 |
9 |
10 | quarkus-amazon-lambda-parent
11 | Quarkus - Amazon Services - Lambda
12 | pom
13 |
14 |
15 | runtime
16 | deployment
17 |
18 |
19 |
20 |
--------------------------------------------------------------------------------
/services/lambda/runtime/src/main/resources/META-INF/quarkus-extension.yaml:
--------------------------------------------------------------------------------
1 | ---
2 | artifact: ${project.groupId}:${project.artifactId}:${project.version}
3 | name: "Amazon Lambda"
4 | metadata:
5 | keywords:
6 | - "lambda"
7 | - "aws"
8 | - "amazon"
9 | categories:
10 | - "data"
11 | guide: https://docs.quarkiverse.io/quarkus-amazon-services/dev/amazon-lambda.html
12 | status: "stable"
13 | config:
14 | - "quarkus.lambda."
15 |
--------------------------------------------------------------------------------
/services/lambda/src/main/resources/codegen-resources/customization.config:
--------------------------------------------------------------------------------
1 | {
2 | "verifiedSimpleMethods": [
3 | "getAccountSettings",
4 | "listEventSourceMappings",
5 | "listFunctions",
6 | "listLayers"
7 | ],
8 | "deprecatedOperations": [
9 | "InvokeAsync"
10 | ],
11 | "enableGenerateCompiledEndpointRules": true,
12 | "enableFastUnmarshaller": true
13 | }
14 |
--------------------------------------------------------------------------------
/services/neptune/deployment/src/test/resources/sync-urlconn-full-config.properties:
--------------------------------------------------------------------------------
1 | quarkus.neptune.endpoint-override=http://localhost:9090
2 |
3 | quarkus.neptune.aws.region=us-east-1
4 | quarkus.neptune.aws.credentials.type=static
5 | quarkus.neptune.aws.credentials.static-provider.access-key-id=test-key
6 | quarkus.neptune.aws.credentials.static-provider.secret-access-key=test-secret
7 |
8 | quarkus.neptune.sync-client.type = url
9 | quarkus.neptune.sync-client.connection-timeout = 0.100S
10 | quarkus.neptune.sync-client.socket-timeout = 0.100S
--------------------------------------------------------------------------------
/services/neptune/pom.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | 4.0.0
4 |
5 |
6 | io.quarkiverse.amazonservices
7 | quarkus-amazon-services-services-parent
8 | 999-SNAPSHOT
9 |
10 |
11 | quarkus-amazon-neptune-parent
12 | Quarkus - Amazon Services - Neptune
13 | pom
14 |
15 |
16 | runtime
17 | deployment
18 |
19 |
20 |
21 |
--------------------------------------------------------------------------------
/services/neptune/runtime/src/main/resources/META-INF/quarkus-extension.yaml:
--------------------------------------------------------------------------------
1 | ---
2 | artifact: ${project.groupId}:${project.artifactId}:${project.version}
3 | name: "Amazon Neptune"
4 | metadata:
5 | keywords:
6 | - "neptune"
7 | - "aws"
8 | - "amazon"
9 | categories:
10 | - "data"
11 | guide: https://docs.quarkiverse.io/quarkus-amazon-services/dev/amazon-neptune.html
12 | status: "stable"
13 | config:
14 | - "quarkus.neptune."
15 |
--------------------------------------------------------------------------------
/services/paymentcryptography/deployment/src/test/resources/sync-urlconn-full-config.properties:
--------------------------------------------------------------------------------
1 | quarkus.paymentcryptography.endpoint-override=http://localhost:9090
2 |
3 | quarkus.paymentcryptography.aws.region=us-east-1
4 | quarkus.paymentcryptography.aws.credentials.type=static
5 | quarkus.paymentcryptography.aws.credentials.static-provider.access-key-id=test-key
6 | quarkus.paymentcryptography.aws.credentials.static-provider.secret-access-key=test-secret
7 |
8 | quarkus.paymentcryptography.sync-client.type = url
9 | quarkus.paymentcryptography.sync-client.connection-timeout = 0.100S
10 | quarkus.paymentcryptography.sync-client.socket-timeout = 0.100S
--------------------------------------------------------------------------------
/services/paymentcryptography/pom.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | 4.0.0
4 |
5 |
6 | io.quarkiverse.amazonservices
7 | quarkus-amazon-services-services-parent
8 | 999-SNAPSHOT
9 |
10 |
11 | quarkus-amazon-paymentcryptography-parent
12 | Quarkus - Amazon Services - Payment Cryptography
13 | pom
14 |
15 |
16 | runtime
17 | deployment
18 |
19 |
20 |
21 |
--------------------------------------------------------------------------------
/services/paymentcryptography/runtime/src/main/resources/META-INF/quarkus-extension.yaml:
--------------------------------------------------------------------------------
1 | ---
2 | artifact: ${project.groupId}:${project.artifactId}:${project.version}
3 | name: "Amazon Payment Cryptography"
4 | metadata:
5 | keywords:
6 | - "paymentcryptography"
7 | - "aws"
8 | - "amazon"
9 | categories:
10 | - "data"
11 | guide: https://docs.quarkiverse.io/quarkus-amazon-services/dev/amazon-paymentcryptography.html
12 | status: "stable"
13 | config:
14 | - "quarkus.paymentcryptography."
15 |
--------------------------------------------------------------------------------
/services/paymentcryptography/src/main/resources/codegen-resources/customization.config:
--------------------------------------------------------------------------------
1 | {
2 | "enableGenerateCompiledEndpointRules": true,
3 | "enableFastUnmarshaller": true
4 | }
5 |
--------------------------------------------------------------------------------
/services/paymentcryptographydata/deployment/src/test/resources/sync-urlconn-full-config.properties:
--------------------------------------------------------------------------------
1 | quarkus.paymentcryptographydata.endpoint-override=http://localhost:9090
2 |
3 | quarkus.paymentcryptographydata.aws.region=us-east-1
4 | quarkus.paymentcryptographydata.aws.credentials.type=static
5 | quarkus.paymentcryptographydata.aws.credentials.static-provider.access-key-id=test-key
6 | quarkus.paymentcryptographydata.aws.credentials.static-provider.secret-access-key=test-secret
7 |
8 | quarkus.paymentcryptographydata.sync-client.type = url
9 | quarkus.paymentcryptographydata.sync-client.connection-timeout = 0.100S
10 | quarkus.paymentcryptographydata.sync-client.socket-timeout = 0.100S
--------------------------------------------------------------------------------
/services/paymentcryptographydata/pom.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | 4.0.0
4 |
5 |
6 | io.quarkiverse.amazonservices
7 | quarkus-amazon-services-services-parent
8 | 999-SNAPSHOT
9 |
10 |
11 | quarkus-amazon-paymentcryptographydata-parent
12 | Quarkus - Amazon Services - Payment Cryptography Data
13 | pom
14 |
15 |
16 | runtime
17 | deployment
18 |
19 |
20 |
21 |
--------------------------------------------------------------------------------
/services/paymentcryptographydata/runtime/src/main/resources/META-INF/quarkus-extension.yaml:
--------------------------------------------------------------------------------
1 | ---
2 | artifact: ${project.groupId}:${project.artifactId}:${project.version}
3 | name: "Amazon Payment Cryptography Data"
4 | metadata:
5 | keywords:
6 | - "paymentcryptographydata"
7 | - "aws"
8 | - "amazon"
9 | categories:
10 | - "data"
11 | guide: https://docs.quarkiverse.io/quarkus-amazon-services/dev/amazon-paymentcryptographydata.html
12 | status: "stable"
13 | config:
14 | - "quarkus.paymentcryptographydata."
15 |
--------------------------------------------------------------------------------
/services/paymentcryptographydata/src/main/resources/codegen-resources/customization.config:
--------------------------------------------------------------------------------
1 | {
2 | "enableGenerateCompiledEndpointRules": true,
3 | "enableFastUnmarshaller": true
4 | }
5 |
--------------------------------------------------------------------------------
/services/rds/deployment/src/test/resources/rds-credential-provider-config.properties:
--------------------------------------------------------------------------------
1 | # enable the credentials provider with the default client configuration
2 | quarkus.rds.credentials-provider.test-provider-quarkus.use-quarkus-client=true
3 |
4 | # configure the credentials provider
5 | quarkus.rds.credentials-provider.test-provider-quarkus.username=myiam
6 | quarkus.rds.credentials-provider.test-provider-quarkus.hostname=myhost
7 | quarkus.rds.credentials-provider.test-provider-quarkus.port=15
8 |
9 |
10 | quarkus.rds.credentials-provider.test-provider-default.username=fail
11 | quarkus.rds.credentials-provider.test-provider-default.hostname=fail
12 | quarkus.rds.credentials-provider.test-provider-default.port=1
13 |
--------------------------------------------------------------------------------
/services/rds/pom.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | 4.0.0
4 |
5 |
6 | io.quarkiverse.amazonservices
7 | quarkus-amazon-services-services-parent
8 | 999-SNAPSHOT
9 |
10 |
11 | quarkus-amazon-rds-parent
12 | Quarkus - Amazon Services - RDS
13 | pom
14 |
15 |
16 | runtime
17 | deployment
18 |
19 |
20 |
21 |
--------------------------------------------------------------------------------
/services/rds/runtime/src/main/resources/META-INF/quarkus-extension.yaml:
--------------------------------------------------------------------------------
1 | ---
2 | artifact: ${project.groupId}:${project.artifactId}:${project.version}
3 | name: "Amazon RDS"
4 | metadata:
5 | keywords:
6 | - "rds"
7 | - "aws"
8 | - "amazon"
9 | categories:
10 | - "data"
11 | guide: https://docs.quarkiverse.io/quarkus-amazon-services/dev/amazon-rds.html
12 | status: "stable"
13 | config:
14 | - "quarkus.rds."
15 |
--------------------------------------------------------------------------------
/services/rdsdata/pom.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | 4.0.0
4 |
5 |
6 | io.quarkiverse.amazonservices
7 | quarkus-amazon-services-services-parent
8 | 999-SNAPSHOT
9 |
10 |
11 | quarkus-amazon-rdsdata-parent
12 | Quarkus - Amazon Services - RDS Data
13 | pom
14 |
15 |
16 | runtime
17 | deployment
18 |
19 |
20 |
21 |
--------------------------------------------------------------------------------
/services/rdsdata/runtime/src/main/resources/META-INF/quarkus-extension.yaml:
--------------------------------------------------------------------------------
1 | ---
2 | artifact: ${project.groupId}:${project.artifactId}:${project.version}
3 | name: "Amazon RDS Data"
4 | metadata:
5 | keywordsdata:
6 | - "rdsdata"
7 | - "aws"
8 | - "amazon"
9 | categories:
10 | - "data"
11 | guide: https://docs.quarkiverse.io/quarkus-amazon-services/dev/amazon-rdsdata.html
12 | status: "stable"
13 | config:
14 | - "quarkus.rdsdata."
15 |
--------------------------------------------------------------------------------
/services/rdsdata/src/main/resources/codegen-resources/customization.config:
--------------------------------------------------------------------------------
1 | {
2 | "enableGenerateCompiledEndpointRules": true,
3 | "enableFastUnmarshaller": true
4 | }
5 |
--------------------------------------------------------------------------------
/services/secretsmanager/deployment/src/test/resources/sync-urlconn-full-config.properties:
--------------------------------------------------------------------------------
1 | quarkus.secretsmanager.endpoint-override=http://localhost:9090
2 |
3 | quarkus.secretsmanager.aws.region=us-east-1
4 | quarkus.secretsmanager.aws.credentials.type=static
5 | quarkus.secretsmanager.aws.credentials.static-provider.access-key-id=test-key
6 | quarkus.secretsmanager.aws.credentials.static-provider.secret-access-key=test-secret
7 |
8 | quarkus.secretsmanager.sync-client.type = url
9 | quarkus.secretsmanager.sync-client.connection-timeout = 0.100S
10 | quarkus.secretsmanager.sync-client.socket-timeout = 0.100S
--------------------------------------------------------------------------------
/services/secretsmanager/pom.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | 4.0.0
4 |
5 |
6 | io.quarkiverse.amazonservices
7 | quarkus-amazon-services-services-parent
8 | 999-SNAPSHOT
9 |
10 |
11 | quarkus-amazon-secretsmanager-parent
12 | Quarkus - Amazon Services - Secrets Manager
13 | pom
14 |
15 |
16 | runtime
17 | deployment
18 |
19 |
20 |
21 |
--------------------------------------------------------------------------------
/services/secretsmanager/runtime/src/main/resources/META-INF/quarkus-extension.yaml:
--------------------------------------------------------------------------------
1 | ---
2 | artifact: ${project.groupId}:${project.artifactId}:${project.version}
3 | name: "Amazon Secrets Manager"
4 | metadata:
5 | keywords:
6 | - "secretsmanager"
7 | - "aws"
8 | - "amazon"
9 | categories:
10 | - "data"
11 | guide: https://docs.quarkiverse.io/quarkus-amazon-services/dev/amazon-secretsmanager.html
12 | status: "preview"
13 | config:
14 | - "quarkus.secretsmanager."
15 |
--------------------------------------------------------------------------------
/services/secretsmanager/src/main/resources/codegen-resources/customization.config:
--------------------------------------------------------------------------------
1 | {
2 | "verifiedSimpleMethods": [
3 | "getRandomPassword",
4 | "listSecrets"
5 | ],
6 | "enableGenerateCompiledEndpointRules": true,
7 | "enableFastUnmarshaller": true
8 | }
9 |
--------------------------------------------------------------------------------
/services/ses/deployment/src/test/resources/sync-urlconn-full-config.properties:
--------------------------------------------------------------------------------
1 | quarkus.ses.endpoint-override=http://localhost:9090
2 |
3 | quarkus.ses.aws.region=us-east-1
4 | quarkus.ses.aws.credentials.type=static
5 | quarkus.ses.aws.credentials.static-provider.access-key-id=test-key
6 | quarkus.ses.aws.credentials.static-provider.secret-access-key=test-secret
7 |
8 | quarkus.ses.sync-client.type = url
9 | quarkus.ses.sync-client.connection-timeout = 0.100S
10 | quarkus.ses.sync-client.socket-timeout = 0.100S
--------------------------------------------------------------------------------
/services/ses/pom.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | 4.0.0
4 |
5 |
6 | io.quarkiverse.amazonservices
7 | quarkus-amazon-services-services-parent
8 | 999-SNAPSHOT
9 |
10 |
11 | quarkus-amazon-ses-parent
12 | Quarkus - Amazon Services - SES
13 | pom
14 |
15 |
16 | runtime
17 | deployment
18 |
19 |
20 |
21 |
--------------------------------------------------------------------------------
/services/ses/runtime/src/main/resources/META-INF/quarkus-extension.yaml:
--------------------------------------------------------------------------------
1 | ---
2 | artifact: ${project.groupId}:${project.artifactId}:${project.version}
3 | name: "Amazon SES"
4 | metadata:
5 | keywords:
6 | - "ses"
7 | - "aws"
8 | - "amazon"
9 | categories:
10 | - "data"
11 | guide: https://docs.quarkiverse.io/quarkus-amazon-services/dev/amazon-ses.html
12 | status: "stable"
13 | config:
14 | - "quarkus.ses."
15 |
--------------------------------------------------------------------------------
/services/ses/src/main/resources/codegen-resources/customization.config:
--------------------------------------------------------------------------------
1 | {
2 | "verifiedSimpleMethods": [
3 | "setActiveReceiptRuleSet",
4 | "describeActiveReceiptRuleSet",
5 | "getAccountSendingEnabled",
6 | "getSendQuota",
7 | "getSendStatistics",
8 | "listConfigurationSets",
9 | "listCustomVerificationEmailTemplates",
10 | "listIdentities",
11 | "listReceiptFilters",
12 | "listReceiptRuleSets",
13 | "listTemplates",
14 | "listVerifiedEmailAddresses"
15 | ],
16 | "excludedSimpleMethods": [
17 | "updateAccountSendingEnabled"
18 | ],
19 |
20 | "enableGenerateCompiledEndpointRules": true
21 |
22 | }
23 |
--------------------------------------------------------------------------------
/services/sesv2/deployment/src/test/resources/sync-urlconn-full-config.properties:
--------------------------------------------------------------------------------
1 | quarkus.sesv2.endpoint-override=http://localhost:9090
2 |
3 | quarkus.sesv2.aws.region=us-east-1
4 | quarkus.sesv2.aws.credentials.type=static
5 | quarkus.sesv2.aws.credentials.static-provider.access-key-id=test-key
6 | quarkus.sesv2.aws.credentials.static-provider.secret-access-key=test-secret
7 |
8 | quarkus.sesv2.sync-client.type = url
9 | quarkus.sesv2.sync-client.connection-timeout = 0.100S
10 | quarkus.sesv2.sync-client.socket-timeout = 0.100S
--------------------------------------------------------------------------------
/services/sesv2/pom.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | 4.0.0
4 |
5 |
6 | io.quarkiverse.amazonservices
7 | quarkus-amazon-services-services-parent
8 | 999-SNAPSHOT
9 |
10 |
11 | quarkus-amazon-sesv2-parent
12 | Quarkus - Amazon Services - SESv2
13 | pom
14 |
15 |
16 | runtime
17 | deployment
18 |
19 |
20 |
21 |
--------------------------------------------------------------------------------
/services/sesv2/runtime/src/main/resources/META-INF/quarkus-extension.yaml:
--------------------------------------------------------------------------------
1 | ---
2 | artifact: ${project.groupId}:${project.artifactId}:${project.version}
3 | name: "Amazon SESv2"
4 | metadata:
5 | keywords:
6 | - "sesv2"
7 | - "aws"
8 | - "amazon"
9 | categories:
10 | - "data"
11 | guide: https://docs.quarkiverse.io/quarkus-amazon-services/dev/amazon-sesv2.html
12 | status: "stable"
13 | config:
14 | - "quarkus.sesv2."
15 |
--------------------------------------------------------------------------------
/services/sesv2/src/main/resources/codegen-resources/customization.config:
--------------------------------------------------------------------------------
1 | {
2 | "enableGenerateCompiledEndpointRules": true,
3 | "enableEndpointAuthSchemeParams": true,
4 | "enableFastUnmarshaller": true
5 | }
6 |
--------------------------------------------------------------------------------
/services/sfn/deployment/src/test/resources/sync-urlconn-full-config.properties:
--------------------------------------------------------------------------------
1 | quarkus.sfn.endpoint-override=http://localhost:9090
2 |
3 | quarkus.sfn.aws.region=us-east-1
4 | quarkus.sfn.aws.credentials.type=static
5 | quarkus.sfn.aws.credentials.static-provider.access-key-id=test-key
6 | quarkus.sfn.aws.credentials.static-provider.secret-access-key=test-secret
7 |
8 | quarkus.sfn.sync-client.type = url
9 | quarkus.sfn.sync-client.connection-timeout = 0.100S
10 | quarkus.sfn.sync-client.socket-timeout = 0.100S
--------------------------------------------------------------------------------
/services/sfn/pom.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | 4.0.0
4 |
5 |
6 | io.quarkiverse.amazonservices
7 | quarkus-amazon-services-services-parent
8 | 999-SNAPSHOT
9 |
10 |
11 | quarkus-amazon-sfn-parent
12 | Quarkus - Amazon Services - SFN
13 | pom
14 |
15 |
16 | runtime
17 | deployment
18 |
19 |
20 |
21 |
--------------------------------------------------------------------------------
/services/sfn/runtime/src/main/resources/META-INF/quarkus-extension.yaml:
--------------------------------------------------------------------------------
1 | ---
2 | artifact: ${project.groupId}:${project.artifactId}:${project.version}
3 | name: "Amazon SFN"
4 | metadata:
5 | keywords:
6 | - "sfn"
7 | - "aws"
8 | - "amazon"
9 | categories:
10 | - "data"
11 | guide: https://docs.quarkiverse.io/quarkus-amazon-services/dev/amazon-sfn.html
12 | status: "stable"
13 | config:
14 | - "quarkus.sfn."
15 |
--------------------------------------------------------------------------------
/services/sfn/src/main/resources/codegen-resources/customization.config:
--------------------------------------------------------------------------------
1 | {
2 | "verifiedSimpleMethods": [
3 | "listActivities",
4 | "listStateMachines"
5 | ],
6 | "serviceSpecificHttpConfig": "software.amazon.awssdk.services.sfn.internal.SfnHttpConfigurationOptions",
7 | "generateEndpointClientTests": true,
8 | "enableGenerateCompiledEndpointRules": true,
9 | "enableFastUnmarshaller": true
10 | }
11 |
--------------------------------------------------------------------------------
/services/sns/deployment/src/test/resources/full-config.properties:
--------------------------------------------------------------------------------
1 | quarkus.sns.endpoint-override=http://localhost:9090
2 |
3 | quarkus.sns.aws.region=us-east-2
4 | quarkus.sns.aws.credentials.type=static
5 | quarkus.sns.aws.credentials.static-provider.access-key-id=test-key
6 | quarkus.sns.aws.credentials.static-provider.secret-access-key=test-secret
7 |
8 | quarkus.sns.sync-client.type = url
9 | quarkus.sns.sync-client.connection-timeout = 0.100S
10 | quarkus.sns.sync-client.socket-timeout = 0.100S
--------------------------------------------------------------------------------
/services/sns/pom.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | 4.0.0
4 |
5 |
6 | io.quarkiverse.amazonservices
7 | quarkus-amazon-services-services-parent
8 | 999-SNAPSHOT
9 |
10 |
11 | quarkus-amazon-sns-parent
12 | Quarkus - Amazon Services - SNS
13 | pom
14 |
15 |
16 | runtime
17 | deployment
18 |
19 |
20 |
21 |
--------------------------------------------------------------------------------
/services/sns/runtime/src/main/resources/META-INF/quarkus-extension.yaml:
--------------------------------------------------------------------------------
1 | ---
2 | artifact: ${project.groupId}:${project.artifactId}:${project.version}
3 | name: "Amazon SNS"
4 | metadata:
5 | keywords:
6 | - "sns"
7 | - "aws"
8 | - "amazon"
9 | categories:
10 | - "data"
11 | guide: https://docs.quarkiverse.io/quarkus-amazon-services/dev/amazon-sns.html
12 | status: "stable"
13 | config:
14 | - "quarkus.sns."
15 |
--------------------------------------------------------------------------------
/services/sns/src/main/resources/codegen-resources/customization.config:
--------------------------------------------------------------------------------
1 | {
2 | "verifiedSimpleMethods": [
3 | "getSMSAttributes",
4 | "listPhoneNumbersOptedOut",
5 | "listPlatformApplications",
6 | "listSubscriptions",
7 | "listTopics"
8 | ],
9 | "shapeModifiers": {
10 | "AddPermissionInput": {
11 | "modify": [
12 | {
13 | "AWSAccountId": {
14 | "emitPropertyName": "AWSAccountIds"
15 | },
16 | "ActionName": {
17 | "emitPropertyName": "ActionNames"
18 | }
19 | }
20 | ]
21 | }
22 | },
23 |
24 | "enableGenerateCompiledEndpointRules": true
25 |
26 | }
27 |
--------------------------------------------------------------------------------
/services/ssm/deployment/src/test/resources/sync-urlconn-full-config.properties:
--------------------------------------------------------------------------------
1 | quarkus.ssm.endpoint-override=http://localhost:9090
2 |
3 | quarkus.ssm.aws.region=us-east-1
4 | quarkus.ssm.aws.credentials.type=static
5 | quarkus.ssm.aws.credentials.static-provider.access-key-id=test-key
6 | quarkus.ssm.aws.credentials.static-provider.secret-access-key=test-secret
7 |
8 | quarkus.ssm.sync-client.type = url
9 | quarkus.ssm.sync-client.connection-timeout = 0.100S
10 | quarkus.ssm.sync-client.socket-timeout = 0.100S
--------------------------------------------------------------------------------
/services/ssm/pom.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | 4.0.0
4 |
5 |
6 | io.quarkiverse.amazonservices
7 | quarkus-amazon-services-services-parent
8 | 999-SNAPSHOT
9 |
10 |
11 | quarkus-amazon-ssm-parent
12 | Quarkus - Amazon Services - SSM
13 | pom
14 |
15 |
16 | runtime
17 | deployment
18 |
19 |
20 |
21 |
--------------------------------------------------------------------------------
/services/ssm/runtime/src/main/resources/META-INF/quarkus-extension.yaml:
--------------------------------------------------------------------------------
1 | ---
2 | artifact: ${project.groupId}:${project.artifactId}:${project.version}
3 | name: "Amazon SSM"
4 | metadata:
5 | keywords:
6 | - "ssm"
7 | - "aws"
8 | - "amazon"
9 | categories:
10 | - "data"
11 | guide: https://docs.quarkiverse.io/quarkus-amazon-services/dev/amazon-ssm.html
12 | status: "stable"
13 | config:
14 | - "quarkus.ssm."
15 |
--------------------------------------------------------------------------------
/services/sso/deployment/src/main/java/io/quarkiverse/amazon/sso/deployment/SsoNativeProcessor.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.amazon.sso.deployment;
2 |
3 | import java.util.stream.Stream;
4 |
5 | import io.quarkus.deployment.annotations.BuildProducer;
6 | import io.quarkus.deployment.annotations.BuildStep;
7 | import io.quarkus.deployment.builditem.nativeimage.RuntimeInitializedClassBuildItem;
8 |
9 | public class SsoNativeProcessor {
10 |
11 | @BuildStep
12 | void runtimeInitializedClasses(BuildProducer runtimeInitializedClass) {
13 | Stream.of(
14 | "software.amazon.awssdk.services.sso.auth.SsoProfileCredentialsProviderFactory")
15 | .map(RuntimeInitializedClassBuildItem::new)
16 | .forEach(runtimeInitializedClass::produce);
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/services/sso/deployment/src/test/java/io/quarkiverse/amazon/sso/deployment/SsoSyncClientFullConfigTest.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.amazon.sso.deployment;
2 |
3 | import jakarta.inject.Inject;
4 |
5 | import org.junit.jupiter.api.Test;
6 | import org.junit.jupiter.api.extension.RegisterExtension;
7 |
8 | import io.quarkus.test.QuarkusUnitTest;
9 | import software.amazon.awssdk.services.sso.SsoAsyncClient;
10 | import software.amazon.awssdk.services.sso.SsoClient;
11 |
12 | public class SsoSyncClientFullConfigTest {
13 |
14 | @Inject
15 | SsoClient client;
16 |
17 | @Inject
18 | SsoAsyncClient async;
19 |
20 | @RegisterExtension
21 | static final QuarkusUnitTest config = new QuarkusUnitTest().withApplicationRoot(
22 | (jar) -> jar.addAsResource("full-config.properties", "application.properties"));
23 |
24 | @Test
25 | public void test() {
26 | // should finish with success
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/services/sso/deployment/src/test/resources/full-config.properties:
--------------------------------------------------------------------------------
1 | quarkus.sso.endpoint-override=http://localhost:9090
2 |
3 | quarkus.sso.aws.region=us-east-1
4 | quarkus.sso.aws.credentials.type=static
5 | quarkus.sso.aws.credentials.static-provider.access-key-id=test-key
6 | quarkus.sso.aws.credentials.static-provider.secret-access-key=test-secret
7 |
8 | quarkus.sso.sync-client.type = url
9 | quarkus.sso.sync-client.connection-timeout = 0.100S
10 | quarkus.sso.sync-client.socket-timeout = 0.100S
--------------------------------------------------------------------------------
/services/sso/pom.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | 4.0.0
4 |
5 |
6 | io.quarkiverse.amazonservices
7 | quarkus-amazon-services-services-parent
8 | 999-SNAPSHOT
9 |
10 |
11 | quarkus-amazon-sso-parent
12 | Quarkus - Amazon Services - SSO
13 | pom
14 |
15 |
16 | runtime
17 | deployment
18 |
19 |
20 |
21 |
--------------------------------------------------------------------------------
/services/sso/runtime/src/main/java/io/quarkiverse/amazon/sso/runtime/SsoSubstitutions.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.amazon.sso.runtime;
2 |
3 | import com.oracle.svm.core.annotate.Substitute;
4 | import com.oracle.svm.core.annotate.TargetClass;
5 |
6 | import software.amazon.awssdk.auth.credentials.ProfileCredentialsProviderFactory;
7 | import software.amazon.awssdk.auth.credentials.internal.ProfileCredentialsUtils;
8 | import software.amazon.awssdk.services.sso.auth.SsoProfileCredentialsProviderFactory;
9 |
10 | public class SsoSubstitutions {
11 |
12 | @TargetClass(ProfileCredentialsUtils.class)
13 | static final class Target_ProfileCredentialsUtils {
14 |
15 | @Substitute
16 | private ProfileCredentialsProviderFactory ssoCredentialsProviderFactory() {
17 | return new SsoProfileCredentialsProviderFactory();
18 | }
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/services/sso/runtime/src/main/resources/META-INF/quarkus-extension.yaml:
--------------------------------------------------------------------------------
1 | ---
2 | artifact: ${project.groupId}:${project.artifactId}:${project.version}
3 | name: "Amazon SSO"
4 | metadata:
5 | keywords:
6 | - "sso"
7 | - "aws"
8 | - "amazon"
9 | categories:
10 | - "data"
11 | guide: https://docs.quarkiverse.io/quarkus-amazon-services/dev/amazon-sso.html
12 | status: "stable"
13 | config:
14 | - "quarkus.sso."
15 |
--------------------------------------------------------------------------------
/services/sso/src/main/resources/codegen-resources/customization.config:
--------------------------------------------------------------------------------
1 | {
2 | "enableGenerateCompiledEndpointRules": true,
3 | "enableFastUnmarshaller": true
4 | }
5 |
--------------------------------------------------------------------------------
/services/ssooidc/deployment/src/main/java/io/quarkiverse/amazon/ssooidc/deployment/SsoOidcNativeProcessor.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.amazon.ssooidc.deployment;
2 |
3 | import java.util.stream.Stream;
4 |
5 | import io.quarkus.deployment.annotations.BuildProducer;
6 | import io.quarkus.deployment.annotations.BuildStep;
7 | import io.quarkus.deployment.builditem.nativeimage.RuntimeInitializedClassBuildItem;
8 |
9 | public class SsoOidcNativeProcessor {
10 |
11 | @BuildStep
12 | void runtimeInitializedClasses(BuildProducer runtimeInitializedClass) {
13 |
14 | Stream.of(
15 | "software.amazon.awssdk.services.ssooidc.internal.OnDiskTokenManager")
16 | .map(RuntimeInitializedClassBuildItem::new)
17 | .forEach(runtimeInitializedClass::produce);
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/services/ssooidc/deployment/src/test/resources/full-config.properties:
--------------------------------------------------------------------------------
1 | quarkus.ssooidc.endpoint-override=http://localhost:9090
2 |
3 | quarkus.ssooidc.aws.region=us-east-1
4 | quarkus.ssooidc.aws.credentials.type=static
5 | quarkus.ssooidc.aws.credentials.static-provider.access-key-id=test-key
6 | quarkus.ssooidc.aws.credentials.static-provider.secret-access-key=test-secret
7 |
8 | quarkus.ssooidc.sync-client.type = url
9 | quarkus.ssooidc.sync-client.connection-timeout = 0.100S
10 | quarkus.ssooidc.sync-client.socket-timeout = 0.100S
--------------------------------------------------------------------------------
/services/ssooidc/pom.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | 4.0.0
4 |
5 |
6 | io.quarkiverse.amazonservices
7 | quarkus-amazon-services-services-parent
8 | 999-SNAPSHOT
9 |
10 |
11 | quarkus-amazon-ssooidc-parent
12 | Quarkus - Amazon Services - SSO OIDC
13 | pom
14 |
15 |
16 | runtime
17 | deployment
18 |
19 |
20 |
21 |
--------------------------------------------------------------------------------
/services/ssooidc/runtime/src/main/java/io/quarkiverse/amazon/ssooidc/runtime/SsoOidcSubstitutions.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.amazon.ssooidc.runtime;
2 |
3 | import com.oracle.svm.core.annotate.Substitute;
4 | import com.oracle.svm.core.annotate.TargetClass;
5 |
6 | import software.amazon.awssdk.auth.token.credentials.ChildProfileTokenProviderFactory;
7 | import software.amazon.awssdk.auth.token.internal.ProfileTokenProviderLoader;
8 | import software.amazon.awssdk.services.ssooidc.SsoOidcProfileTokenProviderFactory;
9 |
10 | public class SsoOidcSubstitutions {
11 |
12 | @TargetClass(ProfileTokenProviderLoader.class)
13 | static final class Target_ProfileTokenProviderLoader {
14 |
15 | @Substitute
16 | private ChildProfileTokenProviderFactory ssoTokenProviderFactory() {
17 | return new SsoOidcProfileTokenProviderFactory();
18 | }
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/services/ssooidc/runtime/src/main/resources/META-INF/quarkus-extension.yaml:
--------------------------------------------------------------------------------
1 | ---
2 | artifact: ${project.groupId}:${project.artifactId}:${project.version}
3 | name: "Amazon SSO OIDC"
4 | metadata:
5 | keywords:
6 | - "ssooidc"
7 | - "aws"
8 | - "amazon"
9 | categories:
10 | - "data"
11 | guide: https://docs.quarkiverse.io/quarkus-amazon-services/dev/amazon-ssooidc.html
12 | status: "stable"
13 | config:
14 | - "quarkus.ssooidc."
15 |
--------------------------------------------------------------------------------
/services/sts/deployment/src/test/java/io/quarkiverse/amazon/sts/deployment/StsSyncClientFullConfigTest.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.amazon.sts.deployment;
2 |
3 | import jakarta.inject.Inject;
4 |
5 | import org.junit.jupiter.api.Test;
6 | import org.junit.jupiter.api.extension.RegisterExtension;
7 |
8 | import io.quarkus.test.QuarkusUnitTest;
9 | import software.amazon.awssdk.services.sts.StsAsyncClient;
10 | import software.amazon.awssdk.services.sts.StsClient;
11 |
12 | public class StsSyncClientFullConfigTest {
13 |
14 | @Inject
15 | StsClient client;
16 |
17 | @Inject
18 | StsAsyncClient async;
19 |
20 | @RegisterExtension
21 | static final QuarkusUnitTest config = new QuarkusUnitTest().withApplicationRoot(
22 | (jar) -> jar.addAsResource("full-config.properties", "application.properties"));
23 |
24 | @Test
25 | public void test() {
26 | // should finish with success
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/services/sts/deployment/src/test/resources/full-config.properties:
--------------------------------------------------------------------------------
1 | quarkus.sts.endpoint-override=http://localhost:9090
2 |
3 | quarkus.sts.aws.region=us-east-1
4 | quarkus.sts.aws.credentials.type=static
5 | quarkus.sts.aws.credentials.static-provider.access-key-id=test-key
6 | quarkus.sts.aws.credentials.static-provider.secret-access-key=test-secret
7 |
8 | quarkus.sts.sync-client.type = url
9 | quarkus.sts.sync-client.connection-timeout = 0.100S
10 | quarkus.sts.sync-client.socket-timeout = 0.100S
--------------------------------------------------------------------------------
/services/sts/pom.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | 4.0.0
4 |
5 |
6 | io.quarkiverse.amazonservices
7 | quarkus-amazon-services-services-parent
8 | 999-SNAPSHOT
9 |
10 |
11 | quarkus-amazon-sts-parent
12 | Quarkus - Amazon Services - STS
13 | pom
14 |
15 |
16 | runtime
17 | deployment
18 |
19 |
20 |
21 |
--------------------------------------------------------------------------------
/services/sts/runtime/src/main/resources/META-INF/quarkus-extension.yaml:
--------------------------------------------------------------------------------
1 | ---
2 | artifact: ${project.groupId}:${project.artifactId}:${project.version}
3 | name: "Amazon STS"
4 | metadata:
5 | keywords:
6 | - "sts"
7 | - "aws"
8 | - "amazon"
9 | categories:
10 | - "data"
11 | guide: https://docs.quarkiverse.io/quarkus-amazon-services/dev/amazon-sts.html
12 | status: "stable"
13 | config:
14 | - "quarkus.sts."
15 |
--------------------------------------------------------------------------------
/sqs/deployment/src/test/java/io/quarkiverse/amazon/sqs/deployment/SqsSyncClientFullConfigTest.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.amazon.sqs.deployment;
2 |
3 | import jakarta.inject.Inject;
4 |
5 | import org.junit.jupiter.api.Test;
6 | import org.junit.jupiter.api.extension.RegisterExtension;
7 |
8 | import io.quarkus.test.QuarkusUnitTest;
9 | import software.amazon.awssdk.services.sqs.SqsClient;
10 |
11 | public class SqsSyncClientFullConfigTest {
12 |
13 | @Inject
14 | SqsClient client;
15 |
16 | @RegisterExtension
17 | static final QuarkusUnitTest config = new QuarkusUnitTest()
18 | .withApplicationRoot((jar) -> jar
19 | .addAsResource("full-config.properties", "application.properties"));
20 |
21 | @Test
22 | public void test() {
23 | // should finish with success
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/sqs/deployment/src/test/resources/full-config.properties:
--------------------------------------------------------------------------------
1 | quarkus.sqs.endpoint-override=http://localhost:9090
2 |
3 | quarkus.sqs.aws.region=us-east-2
4 | quarkus.sqs.aws.credentials.type=static
5 | quarkus.sqs.aws.credentials.static-provider.access-key-id=test-key
6 | quarkus.sqs.aws.credentials.static-provider.secret-access-key=test-secret
7 |
8 | quarkus.sqs.sync-client.type = url
9 | quarkus.sqs.sync-client.connection-timeout = 0.100S
10 | quarkus.sqs.sync-client.socket-timeout = 0.100S
--------------------------------------------------------------------------------
/sqs/pom.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | 4.0.0
4 |
5 |
6 | io.quarkiverse.amazonservices
7 | quarkus-amazon-services-build-parent
8 | 999-SNAPSHOT
9 | ../build-parent/pom.xml
10 |
11 |
12 | quarkus-amazon-sqs-parent
13 | Quarkus - Amazon Services - SQS
14 | pom
15 |
16 |
17 | runtime
18 | deployment
19 |
20 |
21 |
22 |
--------------------------------------------------------------------------------
/sqs/runtime/src/main/java/io/quarkiverse/amazon/sqs/runtime/SqsBuildTimeConfig.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.amazon.sqs.runtime;
2 |
3 | import io.quarkiverse.amazon.common.runtime.HasSdkBuildTimeConfig;
4 | import io.quarkiverse.amazon.common.runtime.HasTransportBuildTimeConfig;
5 | import io.quarkus.runtime.annotations.ConfigPhase;
6 | import io.quarkus.runtime.annotations.ConfigRoot;
7 | import io.smallrye.config.ConfigMapping;
8 |
9 | /**
10 | * Amazon SQS build time configuration
11 | */
12 | @ConfigMapping(prefix = "quarkus.sqs")
13 | @ConfigRoot(phase = ConfigPhase.BUILD_AND_RUN_TIME_FIXED)
14 | public interface SqsBuildTimeConfig extends HasSdkBuildTimeConfig, HasTransportBuildTimeConfig {
15 |
16 | /**
17 | * Config for dev services
18 | */
19 | SqsDevServicesBuildTimeConfig devservices();
20 | }
21 |
--------------------------------------------------------------------------------
/sqs/runtime/src/main/java/io/quarkiverse/amazon/sqs/runtime/SqsDevServicesBuildTimeConfig.java:
--------------------------------------------------------------------------------
1 | package io.quarkiverse.amazon.sqs.runtime;
2 |
3 | import java.util.List;
4 | import java.util.Optional;
5 |
6 | import io.quarkiverse.amazon.common.runtime.DevServicesBuildTimeConfig;
7 | import io.quarkus.runtime.annotations.ConfigGroup;
8 |
9 | @ConfigGroup
10 | public interface SqsDevServicesBuildTimeConfig extends DevServicesBuildTimeConfig {
11 |
12 | /**
13 | * The queues to create on startup.
14 | */
15 | Optional> queues();
16 |
17 | }
18 |
--------------------------------------------------------------------------------
/sqs/runtime/src/main/resources/META-INF/quarkus-extension.yaml:
--------------------------------------------------------------------------------
1 | ---
2 | artifact: ${project.groupId}:${project.artifactId}:${project.version}
3 | name: "Amazon SQS"
4 | metadata:
5 | keywords:
6 | - "sqs"
7 | - "aws"
8 | - "amazon"
9 | categories:
10 | - "data"
11 | guide: https://docs.quarkiverse.io/quarkus-amazon-services/dev/amazon-sqs.html
12 | status: "stable"
13 | config:
14 | - "quarkus.sqs."
15 |
--------------------------------------------------------------------------------