diff --git a/extensions/amazon-lambda/common-deployment/src/main/java/io/quarkus/amazon/lambda/deployment/ConfigurationCustomizer.java b/extensions/amazon-lambda/common-deployment/src/main/java/io/quarkus/amazon/lambda/deployment/ConfigurationCustomizer.java new file mode 100644 index 0000000000000..a47bf965a1ce4 --- /dev/null +++ b/extensions/amazon-lambda/common-deployment/src/main/java/io/quarkus/amazon/lambda/deployment/ConfigurationCustomizer.java @@ -0,0 +1,31 @@ +package io.quarkus.amazon.lambda.deployment; + +import java.util.OptionalInt; + +import io.smallrye.config.ConfigSourceInterceptor; +import io.smallrye.config.ConfigSourceInterceptorContext; +import io.smallrye.config.ConfigSourceInterceptorFactory; +import io.smallrye.config.ConfigValue; +import io.smallrye.config.SmallRyeConfigBuilder; +import io.smallrye.config.SmallRyeConfigBuilderCustomizer; + +/** + * A configuration customizer to change the default packaging to legacy-jar. + */ +public final class ConfigurationCustomizer implements SmallRyeConfigBuilderCustomizer { + public void configBuilder(final SmallRyeConfigBuilder builder) { + builder.withInterceptorFactories(new ConfigSourceInterceptorFactory() { + public ConfigSourceInterceptor getInterceptor(final ConfigSourceInterceptorContext context) { + return (ic, name) -> switch (name) { + case "quarkus.package.jar.type" -> + ConfigValue.builder().withName(name).withValue("legacy-jar").build(); + default -> ic.proceed(name); + }; + } + + public OptionalInt getPriority() { + return OptionalInt.of(Integer.MIN_VALUE + 100); + } + }); + } +} diff --git a/extensions/amazon-lambda/common-deployment/src/main/resources/META-INF/services/io.smallrye.config.SmallRyeConfigBuilderCustomizer b/extensions/amazon-lambda/common-deployment/src/main/resources/META-INF/services/io.smallrye.config.SmallRyeConfigBuilderCustomizer new file mode 100644 index 0000000000000..8283b5c378f32 --- /dev/null +++ b/extensions/amazon-lambda/common-deployment/src/main/resources/META-INF/services/io.smallrye.config.SmallRyeConfigBuilderCustomizer @@ -0,0 +1 @@ +io.quarkus.amazon.lambda.deployment.ConfigurationCustomizer diff --git a/extensions/funqy/funqy-google-cloud-functions/deployment/src/main/java/io/quarkus/funqy/gcp/functions/deployment/bindings/ConfigurationCustomizer.java b/extensions/funqy/funqy-google-cloud-functions/deployment/src/main/java/io/quarkus/funqy/gcp/functions/deployment/bindings/ConfigurationCustomizer.java new file mode 100644 index 0000000000000..34547ac69674a --- /dev/null +++ b/extensions/funqy/funqy-google-cloud-functions/deployment/src/main/java/io/quarkus/funqy/gcp/functions/deployment/bindings/ConfigurationCustomizer.java @@ -0,0 +1,31 @@ +package io.quarkus.funqy.gcp.functions.deployment.bindings; + +import java.util.OptionalInt; + +import io.smallrye.config.ConfigSourceInterceptor; +import io.smallrye.config.ConfigSourceInterceptorContext; +import io.smallrye.config.ConfigSourceInterceptorFactory; +import io.smallrye.config.ConfigValue; +import io.smallrye.config.SmallRyeConfigBuilder; +import io.smallrye.config.SmallRyeConfigBuilderCustomizer; + +/** + * A configuration customizer to change the default packaging to uber-jar. + */ +public final class ConfigurationCustomizer implements SmallRyeConfigBuilderCustomizer { + public void configBuilder(final SmallRyeConfigBuilder builder) { + builder.withInterceptorFactories(new ConfigSourceInterceptorFactory() { + public ConfigSourceInterceptor getInterceptor(final ConfigSourceInterceptorContext context) { + return (ic, name) -> switch (name) { + case "quarkus.package.jar.type" -> + ConfigValue.builder().withName(name).withValue("uber-jar").build(); + default -> ic.proceed(name); + }; + } + + public OptionalInt getPriority() { + return OptionalInt.of(Integer.MIN_VALUE + 100); + } + }); + } +} diff --git a/extensions/funqy/funqy-google-cloud-functions/deployment/src/main/resources/META-INF/services/io.smallrye.config.SmallRyeConfigBuilderCustomizer b/extensions/funqy/funqy-google-cloud-functions/deployment/src/main/resources/META-INF/services/io.smallrye.config.SmallRyeConfigBuilderCustomizer new file mode 100644 index 0000000000000..90078dc7eaeeb --- /dev/null +++ b/extensions/funqy/funqy-google-cloud-functions/deployment/src/main/resources/META-INF/services/io.smallrye.config.SmallRyeConfigBuilderCustomizer @@ -0,0 +1 @@ +io.quarkus.funqy.gcp.functions.deployment.bindings.ConfigurationCustomizer