diff --git a/catalog/pom.xml b/catalog/pom.xml index 827db4003f66..7fd6c2bd5837 100644 --- a/catalog/pom.xml +++ b/catalog/pom.xml @@ -3022,6 +3022,19 @@ + + org.apache.camel.quarkus + camel-quarkus-oauth + ${project.version} + pom + test + + + * + * + + + org.apache.camel.quarkus camel-quarkus-observability-services diff --git a/docs/modules/ROOT/examples/others/oauth.yml b/docs/modules/ROOT/examples/others/oauth.yml new file mode 100644 index 000000000000..799f940a4db9 --- /dev/null +++ b/docs/modules/ROOT/examples/others/oauth.yml @@ -0,0 +1,13 @@ +# Do not edit directly! +# This file was generated by camel-quarkus-maven-plugin:update-extension-doc-page +cqArtifactId: camel-quarkus-oauth +cqArtifactIdBase: oauth +cqNativeSupported: true +cqStatus: Stable +cqDeprecated: false +cqJvmSince: 3.31.0 +cqNativeSince: 3.31.0 +cqCamelPartName: oauth +cqCamelPartTitle: Oauth +cqCamelPartDescription: Camel OAuth (Preview) +cqExtensionPageTitle: Oauth diff --git a/docs/modules/ROOT/nav.adoc b/docs/modules/ROOT/nav.adoc index a6b5fb1b722e..dc98a029d331 100644 --- a/docs/modules/ROOT/nav.adoc +++ b/docs/modules/ROOT/nav.adoc @@ -245,6 +245,7 @@ *** xref:reference/extensions/oaipmh.adoc[OAI-PMH] *** xref:reference/extensions/ognl.adoc[OGNL] *** xref:reference/extensions/milo.adoc[OPC UA Browser] +*** xref:reference/extensions/oauth.adoc[Oauth] *** xref:reference/extensions/observability-services.adoc[Observability Services] *** xref:reference/extensions/olingo4.adoc[Olingo4] *** xref:reference/extensions/openapi-java.adoc[OpenAPI Java] diff --git a/docs/modules/ROOT/pages/reference/extensions/oauth.adoc b/docs/modules/ROOT/pages/reference/extensions/oauth.adoc new file mode 100644 index 000000000000..5334f421d7b5 --- /dev/null +++ b/docs/modules/ROOT/pages/reference/extensions/oauth.adoc @@ -0,0 +1,45 @@ +// Do not edit directly! +// This file was generated by camel-quarkus-maven-plugin:update-extension-doc-page +[id="extensions-oauth"] += Oauth +:linkattrs: +:cq-artifact-id: camel-quarkus-oauth +:cq-native-supported: true +:cq-status: Stable +:cq-status-deprecation: Stable +:cq-description: Camel OAuth (Preview) +:cq-deprecated: false +:cq-jvm-since: 3.31.0 +:cq-native-since: 3.31.0 + +ifeval::[{doc-show-badges} == true] +[.badges] +[.badge-key]##JVM since##[.badge-supported]##3.31.0## [.badge-key]##Native since##[.badge-supported]##3.31.0## +endif::[] + +Camel OAuth (Preview) + +[id="extensions-oauth-whats-inside"] +== What's inside + +* xref:{cq-camel-components}:others:oauth.adoc[Oauth] + +Please refer to the above link for usage and configuration details. + +[id="extensions-oauth-maven-coordinates"] +== Maven coordinates + +https://{link-quarkus-code-generator}/?extension-search=camel-quarkus-oauth[Create a new project with this extension on {link-quarkus-code-generator}, window="_blank"] + +Or add the coordinates to your existing project: + +[source,xml] +---- + + org.apache.camel.quarkus + camel-quarkus-oauth + +---- +ifeval::[{doc-show-user-guide-link} == true] +Check the xref:user-guide/index.adoc[User guide] for more information about writing Camel Quarkus applications. +endif::[] diff --git a/extensions/oauth/deployment/pom.xml b/extensions/oauth/deployment/pom.xml new file mode 100644 index 000000000000..ac8457cea6e9 --- /dev/null +++ b/extensions/oauth/deployment/pom.xml @@ -0,0 +1,67 @@ + + + + 4.0.0 + + org.apache.camel.quarkus + camel-quarkus-oauth-parent + 3.31.0-SNAPSHOT + ../pom.xml + + + camel-quarkus-oauth-deployment + Camel Quarkus :: Oauth :: Deployment + + + + org.apache.camel.quarkus + camel-quarkus-core-deployment + + + org.apache.camel.quarkus + camel-quarkus-oauth + + + org.apache.camel.quarkus + camel-quarkus-support-httpclient5-deployment + + + + + + + org.apache.maven.plugins + maven-compiler-plugin + + + + io.quarkus + quarkus-extension-processor + ${quarkus.version} + + + + + + + + diff --git a/extensions/oauth/deployment/src/main/java/org/apache/camel/quarkus/component/oauth/deployment/OauthProcessor.java b/extensions/oauth/deployment/src/main/java/org/apache/camel/quarkus/component/oauth/deployment/OauthProcessor.java new file mode 100644 index 000000000000..71bc56c1a0d9 --- /dev/null +++ b/extensions/oauth/deployment/src/main/java/org/apache/camel/quarkus/component/oauth/deployment/OauthProcessor.java @@ -0,0 +1,30 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.camel.quarkus.component.oauth.deployment; + +import io.quarkus.deployment.annotations.BuildStep; +import io.quarkus.deployment.builditem.FeatureBuildItem; + +class OauthProcessor { + + private static final String FEATURE = "camel-oauth"; + + @BuildStep + FeatureBuildItem feature() { + return new FeatureBuildItem(FEATURE); + } +} diff --git a/extensions/oauth/pom.xml b/extensions/oauth/pom.xml new file mode 100644 index 000000000000..67695c8fca5c --- /dev/null +++ b/extensions/oauth/pom.xml @@ -0,0 +1,39 @@ + + + + 4.0.0 + + org.apache.camel.quarkus + camel-quarkus-extensions + 3.31.0-SNAPSHOT + ../pom.xml + + + camel-quarkus-oauth-parent + Camel Quarkus :: Oauth + pom + + + deployment + runtime + + diff --git a/extensions/oauth/runtime/pom.xml b/extensions/oauth/runtime/pom.xml new file mode 100644 index 000000000000..e68b7d0b52c4 --- /dev/null +++ b/extensions/oauth/runtime/pom.xml @@ -0,0 +1,105 @@ + + + + 4.0.0 + + org.apache.camel.quarkus + camel-quarkus-oauth-parent + 3.31.0-SNAPSHOT + ../pom.xml + + + camel-quarkus-oauth + Camel Quarkus :: Oauth :: Runtime + Camel OAuth (Preview) + + + 3.31.0 + 3.31.0 + + + + + org.apache.camel.quarkus + camel-quarkus-core + + + org.apache.camel + camel-oauth + + + org.apache.camel.quarkus + camel-quarkus-support-httpclient5 + + + + + + + io.quarkus + quarkus-extension-maven-plugin + + + org.apache.maven.plugins + maven-compiler-plugin + + + + io.quarkus + quarkus-extension-processor + ${quarkus.version} + + + + + + + + + + + full + + + !quickly + + + + + + org.apache.camel.quarkus + camel-quarkus-maven-plugin + + + update-extension-doc-page + + update-extension-doc-page + + process-classes + + + + + + + + diff --git a/extensions/oauth/runtime/src/main/resources/META-INF/quarkus-extension.yaml b/extensions/oauth/runtime/src/main/resources/META-INF/quarkus-extension.yaml new file mode 100644 index 000000000000..4e0205aebd63 --- /dev/null +++ b/extensions/oauth/runtime/src/main/resources/META-INF/quarkus-extension.yaml @@ -0,0 +1,33 @@ +# +# Licensed to the Apache Software Foundation (ASF) under one or more +# contributor license agreements. See the NOTICE file distributed with +# this work for additional information regarding copyright ownership. +# The ASF licenses this file to You under the Apache License, Version 2.0 +# (the "License"); you may not use this file except in compliance with +# the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# + +# This is a generated file. Do not edit directly! +# To re-generate, run the following command from the top level directory: +# +# mvn -N cq:update-quarkus-metadata +# +--- +name: "Camel Oauth" +description: "Camel OAuth (Preview)" +metadata: + icon-url: "https://raw.githubusercontent.com/apache/camel-website/main/antora-ui-camel/src/img/logo-d.svg" + sponsor: "Apache Software Foundation" + guide: "https://camel.apache.org/camel-quarkus/latest/reference/extensions/oauth.html" + categories: + - "integration" + status: + - "stable" diff --git a/extensions/pom.xml b/extensions/pom.xml index a4d8600c2545..3164ce2607bb 100644 --- a/extensions/pom.xml +++ b/extensions/pom.xml @@ -212,6 +212,7 @@ netty-http nitrite oaipmh + oauth observability-services ognl olingo4 diff --git a/integration-tests/oauth/pom.xml b/integration-tests/oauth/pom.xml new file mode 100644 index 000000000000..aa8854df2b36 --- /dev/null +++ b/integration-tests/oauth/pom.xml @@ -0,0 +1,150 @@ + + + + 4.0.0 + + org.apache.camel.quarkus + camel-quarkus-build-parent-it + 3.31.0-SNAPSHOT + ../../poms/build-parent-it/pom.xml + + + camel-quarkus-integration-test-oauth + Camel Quarkus :: Integration Tests :: Oauth + Integration tests for Camel Quarkus Oauth extension + + + + org.apache.camel.quarkus + camel-quarkus-oauth + + + org.apache.camel.quarkus + camel-quarkus-platform-http + + + io.quarkus + quarkus-resteasy + + + + + io.quarkus + quarkus-junit5 + test + + + io.rest-assured + rest-assured + test + + + io.quarkus + quarkus-test-keycloak-server + test + + + org.testcontainers + testcontainers + test + + + junit + junit + + + + + io.quarkus + quarkus-junit4-mock + test + + + + + + native + + + native + + + + true + + + + + org.apache.maven.plugins + maven-failsafe-plugin + + + + integration-test + verify + + + + + + + + + virtualDependencies + + + !noVirtualDependencies + + + + + + org.apache.camel.quarkus + camel-quarkus-oauth-deployment + ${project.version} + pom + test + + + * + * + + + + + org.apache.camel.quarkus + camel-quarkus-platform-http-deployment + ${project.version} + pom + test + + + * + * + + + + + + + + diff --git a/integration-tests/oauth/src/main/java/org/apache/camel/quarkus/component/oauth/it/OathRoutes.java b/integration-tests/oauth/src/main/java/org/apache/camel/quarkus/component/oauth/it/OathRoutes.java new file mode 100644 index 000000000000..9c3bbaa461e7 --- /dev/null +++ b/integration-tests/oauth/src/main/java/org/apache/camel/quarkus/component/oauth/it/OathRoutes.java @@ -0,0 +1,59 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.camel.quarkus.component.oauth.it; + +import jakarta.enterprise.context.ApplicationScoped; +import jakarta.inject.Inject; +import org.apache.camel.CamelContext; +import org.apache.camel.builder.RouteBuilder; +import org.apache.camel.oauth.OAuthBearerTokenProcessor; +import org.apache.camel.oauth.OAuthClientCredentialsProcessor; + +@ApplicationScoped +public class OathRoutes extends RouteBuilder { + + @Inject + private CamelContext camelContext; + + @Override + public void configure() throws Exception { + from("platform-http:/plain") + .routeId("plain") + .setBody(simple("Hello ${header.name} - No auth")); + + from("platform-http:/credentials") + .routeId("credentials") + // Obtain an Authorization Token + .process(new OAuthClientCredentialsProcessor()) + // Extract the Authorization Token + .process(exc -> { + var msg = exc.getMessage(); + var authToken = msg.getHeader("Authorization", String.class); + exc.getIn().setBody(authToken); + }); + + from("platform-http:/bearer") + .routeId("bearer") + .process(e -> { + camelContext.getGlobalOptions().put("Authorization", e.getIn().getHeader("Authorization", String.class)); + }) + .process(new OAuthBearerTokenProcessor()) + .process(e -> camelContext.getGlobalOptions().remove("Authorization")) + .setBody(simple("Hello ${header.name} - bearerToken")); + + } +} diff --git a/integration-tests/oauth/src/main/resources/application.properties b/integration-tests/oauth/src/main/resources/application.properties new file mode 100644 index 000000000000..859e869fd9f4 --- /dev/null +++ b/integration-tests/oauth/src/main/resources/application.properties @@ -0,0 +1,20 @@ +## --------------------------------------------------------------------------- +## Licensed to the Apache Software Foundation (ASF) under one or more +## contributor license agreements. See the NOTICE file distributed with +## this work for additional information regarding copyright ownership. +## The ASF licenses this file to You under the Apache License, Version 2.0 +## (the "License"); you may not use this file except in compliance with +## the License. You may obtain a copy of the License at +## +## http://www.apache.org/licenses/LICENSE-2.0 +## +## Unless required by applicable law or agreed to in writing, software +## distributed under the License is distributed on an "AS IS" BASIS, +## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +## See the License for the specific language governing permissions and +## limitations under the License. +## --------------------------------------------------------------------------- + +camel.oauth.base-uri=${cq.ouath.test.keycloak.uri} +camel.oauth.client-id=camel-client +camel.oauth.client-secret=camel-client-secret \ No newline at end of file diff --git a/integration-tests/oauth/src/test/java/org/apache/camel/quarkus/component/oauth/it/OauthIT.java b/integration-tests/oauth/src/test/java/org/apache/camel/quarkus/component/oauth/it/OauthIT.java new file mode 100644 index 000000000000..9d37712e58f5 --- /dev/null +++ b/integration-tests/oauth/src/test/java/org/apache/camel/quarkus/component/oauth/it/OauthIT.java @@ -0,0 +1,23 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.camel.quarkus.component.oauth.it; + +import io.quarkus.test.junit.QuarkusIntegrationTest; + +@QuarkusIntegrationTest +class OauthIT extends OauthTest { +} diff --git a/integration-tests/oauth/src/test/java/org/apache/camel/quarkus/component/oauth/it/OauthKeycloakTestResource.java b/integration-tests/oauth/src/test/java/org/apache/camel/quarkus/component/oauth/it/OauthKeycloakTestResource.java new file mode 100644 index 000000000000..468f97b46325 --- /dev/null +++ b/integration-tests/oauth/src/test/java/org/apache/camel/quarkus/component/oauth/it/OauthKeycloakTestResource.java @@ -0,0 +1,70 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.camel.quarkus.component.oauth.it; + +import java.time.Duration; +import java.util.Collections; +import java.util.Map; + +import io.quarkus.test.common.QuarkusTestResourceLifecycleManager; +import io.quarkus.test.keycloak.server.KeycloakContainer; +import org.eclipse.microprofile.config.ConfigProvider; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.testcontainers.containers.output.Slf4jLogConsumer; +import org.testcontainers.utility.MountableFile; + +import static org.apache.camel.oauth.OAuth.*; + +/** + * Inspired from + * https://github.com/apache/camel-quarkus/blob/main/integration-tests/kafka-oauth/src/test/java/org/apache/camel/quarkus/kafka/oauth/it/KafkaKeycloakTestResource.java + */ +public class OauthKeycloakTestResource implements QuarkusTestResourceLifecycleManager { + + private static final Logger LOG = LoggerFactory.getLogger(OauthKeycloakTestResource.class); + private static final String REALM_JSON = "keycloak/realms/camel-realm.json"; + private static final String REALM_NAME = "camel"; + + private KeycloakContainer keycloak; + + @Override + public Map start() { + System.setProperty("keycloak.docker.image", + ConfigProvider.getConfig().getValue("keycloak.container.image", String.class)); + + //Start keycloak container + keycloak = new KeycloakContainer() + .withStartupTimeout(Duration.ofMinutes(5)) + .withLogConsumer(new Slf4jLogConsumer(LOG)) + .withCopyFileToContainer( + MountableFile.forClasspathResource("/camel-realm.json"), + "/opt/keycloak/data/import/camel-realm.json") + .withCommand("start", "--import-realm", "--verbose"); + + keycloak.start(); + + return Collections.singletonMap("cq.ouath.test.keycloak.uri", keycloak.getServerUrl() + "/realms/" + REALM_NAME); + } + + @Override + public void stop() { + if (keycloak != null) { + keycloak.stop(); + } + } +} diff --git a/integration-tests/oauth/src/test/java/org/apache/camel/quarkus/component/oauth/it/OauthTest.java b/integration-tests/oauth/src/test/java/org/apache/camel/quarkus/component/oauth/it/OauthTest.java new file mode 100644 index 000000000000..2eb48d6a970b --- /dev/null +++ b/integration-tests/oauth/src/test/java/org/apache/camel/quarkus/component/oauth/it/OauthTest.java @@ -0,0 +1,58 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.camel.quarkus.component.oauth.it; + +import io.quarkus.test.common.QuarkusTestResource; +import io.quarkus.test.junit.QuarkusTest; +import io.restassured.RestAssured; +import org.junit.jupiter.api.Test; + +import static org.hamcrest.CoreMatchers.equalTo; +import static org.hamcrest.CoreMatchers.notNullValue; + +@QuarkusTest +@QuarkusTestResource(OauthKeycloakTestResource.class) +class OauthTest { + + @Test + void testPlain() { + RestAssured.given() + .param("name", "Kermit") + .get("/plain") + .then().statusCode(200) + .body(equalTo("Hello Kermit - No auth")); + } + + @Test + void testCredentialsAndBearer() { + + String bearerToken = RestAssured.given() + .get("/credentials") + .then() + .statusCode(200) + .body(notNullValue()) + .extract().asString(); + + RestAssured.given() + .param("name", "SecuredKermit") + .param("Authorization", bearerToken) + .get("/bearer") + .then() + .statusCode(200) + .body(equalTo("Hello SecuredKermit - bearerToken")); + } +} diff --git a/integration-tests/oauth/src/test/resources/camel-realm.json b/integration-tests/oauth/src/test/resources/camel-realm.json new file mode 100644 index 000000000000..1e2ff6d9be34 --- /dev/null +++ b/integration-tests/oauth/src/test/resources/camel-realm.json @@ -0,0 +1,84 @@ +{ + "realm": "camel", + "accessTokenLifespan": 300, + "ssoSessionMaxLifespan": 32140800, + "ssoSessionIdleTimeout": 32140800, + "enabled": true, + "sslRequired": "external", + "users": [ + { + "username": "alice", + "enabled": true, + "firstName": "Alice", + "lastName": "Brown", + "email": "alice@example.com", + "credentials": [ + { + "type": "password", + "value": "alice" + } + ], + "realmRoles": [ + "user" + ] + }, + { + "username": "admin", + "enabled": true, + "email": "admin@example.com", + "credentials": [ + { + "type": "password", + "value": "admin-password" + } + ], + "realmRoles": [ + "admin" + ], + "clientRoles": { + "realm-management": [ + "realm-admin" + ] + } + } + ], + "roles": { + "realm": [ + { + "name": "user", + "description": "User privileges" + }, + { + "name": "admin", + "description": "Administrator privileges" + } + ], + "client": {} + }, + "scopeMappings": [], + "clientScopeMappings": {}, + "clients": [ + { + "clientId": "camel-client", + "enabled": true, + "clientAuthenticatorType": "client-secret", + "secret": "camel-client-secret", + "publicClient": false, + "bearerOnly": false, + "standardFlowEnabled": true, + "implicitFlowEnabled": false, + "directAccessGrantsEnabled": false, + "serviceAccountsEnabled": true, + "consentRequired" : false, + "fullScopeAllowed" : false, + "redirectUris": [ + "http://127.0.0.1:8080/auth", + "https://example.local/auth", + "https://example.k3s/auth" + ], + "attributes": { + "post.logout.redirect.uris": "http://127.0.0.1:8080/##https://example.local/##https://example.k3s/" + } + } + ] +} diff --git a/integration-tests/pom.xml b/integration-tests/pom.xml index dff97f3b12f5..2f550f85f1bc 100644 --- a/integration-tests/pom.xml +++ b/integration-tests/pom.xml @@ -184,6 +184,7 @@ netty nitrite oaipmh + oauth observability-services ognl olingo4 diff --git a/poms/bom/pom.xml b/poms/bom/pom.xml index 9dc24e4d6a3b..9df265d94a66 100644 --- a/poms/bom/pom.xml +++ b/poms/bom/pom.xml @@ -2305,6 +2305,11 @@ + + org.apache.camel + camel-oauth + ${camel.version} + org.apache.camel camel-observability-services @@ -5571,6 +5576,16 @@ camel-quarkus-oaipmh-deployment ${camel-quarkus.version} + + org.apache.camel.quarkus + camel-quarkus-oauth + ${camel-quarkus.version} + + + org.apache.camel.quarkus + camel-quarkus-oauth-deployment + ${camel-quarkus.version} + org.apache.camel.quarkus camel-quarkus-observability-services diff --git a/poms/bom/src/main/generated/flattened-full-pom.xml b/poms/bom/src/main/generated/flattened-full-pom.xml index e93990735464..d61afb274602 100644 --- a/poms/bom/src/main/generated/flattened-full-pom.xml +++ b/poms/bom/src/main/generated/flattened-full-pom.xml @@ -2221,6 +2221,11 @@ + + org.apache.camel + camel-oauth + 4.16.0 + org.apache.camel camel-observability-services @@ -5459,6 +5464,16 @@ camel-quarkus-oaipmh-deployment 3.31.0-SNAPSHOT + + org.apache.camel.quarkus + camel-quarkus-oauth + 3.31.0-SNAPSHOT + + + org.apache.camel.quarkus + camel-quarkus-oauth-deployment + 3.31.0-SNAPSHOT + org.apache.camel.quarkus camel-quarkus-observability-services diff --git a/poms/bom/src/main/generated/flattened-reduced-pom.xml b/poms/bom/src/main/generated/flattened-reduced-pom.xml index 4ec63fd0416b..b9bf7999858b 100644 --- a/poms/bom/src/main/generated/flattened-reduced-pom.xml +++ b/poms/bom/src/main/generated/flattened-reduced-pom.xml @@ -2216,6 +2216,11 @@ + + org.apache.camel + camel-oauth + 4.16.0 + org.apache.camel camel-ognl @@ -5449,6 +5454,16 @@ camel-quarkus-oaipmh-deployment 3.31.0-SNAPSHOT + + org.apache.camel.quarkus + camel-quarkus-oauth + 3.31.0-SNAPSHOT + + + org.apache.camel.quarkus + camel-quarkus-oauth-deployment + 3.31.0-SNAPSHOT + org.apache.camel.quarkus camel-quarkus-observability-services diff --git a/poms/bom/src/main/generated/flattened-reduced-verbose-pom.xml b/poms/bom/src/main/generated/flattened-reduced-verbose-pom.xml index f91c61a7dac0..8f3725d8dafe 100644 --- a/poms/bom/src/main/generated/flattened-reduced-verbose-pom.xml +++ b/poms/bom/src/main/generated/flattened-reduced-verbose-pom.xml @@ -2216,6 +2216,11 @@ + + org.apache.camel + camel-oauth + 4.16.0 + org.apache.camel camel-ognl @@ -5449,6 +5454,16 @@ camel-quarkus-oaipmh-deployment 3.31.0-SNAPSHOT + + org.apache.camel.quarkus + camel-quarkus-oauth + 3.31.0-SNAPSHOT + + + org.apache.camel.quarkus + camel-quarkus-oauth-deployment + 3.31.0-SNAPSHOT + org.apache.camel.quarkus camel-quarkus-observability-services diff --git a/tooling/scripts/test-categories.yaml b/tooling/scripts/test-categories.yaml index 75dcdca1ae58..67037210a8f0 100644 --- a/tooling/scripts/test-categories.yaml +++ b/tooling/scripts/test-categories.yaml @@ -100,6 +100,7 @@ group-05: - fory - hl7 - jaxb + - oauth - mapstruct - ssh - soap