You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by ac...@apache.org on 2022/03/28 12:28:54 UTC

[camel-quarkus] branch gcp-sec-manager created (now ca0aa56)

This is an automated email from the ASF dual-hosted git repository.

acosentino pushed a change to branch gcp-sec-manager
in repository https://gitbox.apache.org/repos/asf/camel-quarkus.git.


      at ca0aa56  Create Camel Google Secret Manager Extension

This branch includes the following new commits:

     new a9918e3  Create Camel Google Secret Manager Extension
     new d79665b  Create Camel Google Secret Manager Extension
     new 731eabe  Create Camel Google Secret Manager Extension
     new 7cbadbd  Create Camel Google Secret Manager Extension
     new 0c1a88f  Create Camel Google Secret Manager Extension
     new ca0aa56  Create Camel Google Secret Manager Extension

The 6 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


[camel-quarkus] 04/06: Create Camel Google Secret Manager Extension

Posted by ac...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

acosentino pushed a commit to branch gcp-sec-manager
in repository https://gitbox.apache.org/repos/asf/camel-quarkus.git

commit 7cbadbd30b36abe1209f906c00c231adacbcade3
Author: Andrea Cosentino <an...@gmail.com>
AuthorDate: Mon Mar 28 14:17:44 2022 +0200

    Create Camel Google Secret Manager Extension
---
 docs/modules/ROOT/nav.adoc                                            | 1 +
 .../google/secret/manager/it/GoogleSecretManagerResource.java         | 4 ----
 .../component/google/secret/manager/it/GoogleSecretManagerTest.java   | 3 ---
 3 files changed, 1 insertion(+), 7 deletions(-)

diff --git a/docs/modules/ROOT/nav.adoc b/docs/modules/ROOT/nav.adoc
index adba497..ef2bf07 100644
--- a/docs/modules/ROOT/nav.adoc
+++ b/docs/modules/ROOT/nav.adoc
@@ -136,6 +136,7 @@
 *** xref:reference/extensions/google-drive.adoc[Google Drive]
 *** xref:reference/extensions/google-mail.adoc[Google Mail]
 *** xref:reference/extensions/google-pubsub.adoc[Google Pubsub]
+*** xref:reference/extensions/google-secret-manager.adoc[Google Secret Manager]
 *** xref:reference/extensions/google-sheets.adoc[Google Sheets]
 *** xref:reference/extensions/google-storage.adoc[Google Storage]
 *** xref:reference/extensions/google-functions.adoc[GoogleCloudFunctions]
diff --git a/integration-tests-jvm/google-secret-manager/src/main/java/org/apache/camel/quarkus/component/google/secret/manager/it/GoogleSecretManagerResource.java b/integration-tests-jvm/google-secret-manager/src/main/java/org/apache/camel/quarkus/component/google/secret/manager/it/GoogleSecretManagerResource.java
index e9b984a..8f6b410 100644
--- a/integration-tests-jvm/google-secret-manager/src/main/java/org/apache/camel/quarkus/component/google/secret/manager/it/GoogleSecretManagerResource.java
+++ b/integration-tests-jvm/google-secret-manager/src/main/java/org/apache/camel/quarkus/component/google/secret/manager/it/GoogleSecretManagerResource.java
@@ -16,13 +16,9 @@
  */
 package org.apache.camel.quarkus.component.google.secret.manager.it;
 
-import java.net.URI;
-
 import javax.enterprise.context.ApplicationScoped;
 import javax.inject.Inject;
-import javax.ws.rs.Consumes;
 import javax.ws.rs.GET;
-import javax.ws.rs.POST;
 import javax.ws.rs.Path;
 import javax.ws.rs.Produces;
 import javax.ws.rs.core.MediaType;
diff --git a/integration-tests-jvm/google-secret-manager/src/test/java/org/apache/camel/quarkus/component/google/secret/manager/it/GoogleSecretManagerTest.java b/integration-tests-jvm/google-secret-manager/src/test/java/org/apache/camel/quarkus/component/google/secret/manager/it/GoogleSecretManagerTest.java
index a1e3a4d..d5f03a2 100644
--- a/integration-tests-jvm/google-secret-manager/src/test/java/org/apache/camel/quarkus/component/google/secret/manager/it/GoogleSecretManagerTest.java
+++ b/integration-tests-jvm/google-secret-manager/src/test/java/org/apache/camel/quarkus/component/google/secret/manager/it/GoogleSecretManagerTest.java
@@ -18,9 +18,6 @@ package org.apache.camel.quarkus.component.google.secret.manager.it;
 
 import io.quarkus.test.junit.QuarkusTest;
 import io.restassured.RestAssured;
-import io.restassured.http.ContentType;
-
-import org.junit.jupiter.api.Assertions;
 import org.junit.jupiter.api.Test;
 
 @QuarkusTest

[camel-quarkus] 05/06: Create Camel Google Secret Manager Extension

Posted by ac...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

acosentino pushed a commit to branch gcp-sec-manager
in repository https://gitbox.apache.org/repos/asf/camel-quarkus.git

commit 0c1a88f972de8e0bf741eac67dd14ac623a61603
Author: Andrea Cosentino <an...@gmail.com>
AuthorDate: Mon Mar 28 14:18:03 2022 +0200

    Create Camel Google Secret Manager Extension
---
 .../examples/components/google-secret-manager.yml  | 13 ++++++++
 .../extensions/google-secret-manager.adoc          | 35 ++++++++++++++++++++++
 2 files changed, 48 insertions(+)

diff --git a/docs/modules/ROOT/examples/components/google-secret-manager.yml b/docs/modules/ROOT/examples/components/google-secret-manager.yml
new file mode 100644
index 0000000..6ed43c7
--- /dev/null
+++ b/docs/modules/ROOT/examples/components/google-secret-manager.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-google-secret-manager
+cqArtifactIdBase: google-secret-manager
+cqNativeSupported: false
+cqStatus: Preview
+cqDeprecated: false
+cqJvmSince: 2.8.0
+cqNativeSince: n/a
+cqCamelPartName: google-secret-manager
+cqCamelPartTitle: Google Secret Manager
+cqCamelPartDescription: Manage Google Secret Manager Secrets
+cqExtensionPageTitle: Google Secret Manager
diff --git a/docs/modules/ROOT/pages/reference/extensions/google-secret-manager.adoc b/docs/modules/ROOT/pages/reference/extensions/google-secret-manager.adoc
new file mode 100644
index 0000000..939c6eb
--- /dev/null
+++ b/docs/modules/ROOT/pages/reference/extensions/google-secret-manager.adoc
@@ -0,0 +1,35 @@
+// Do not edit directly!
+// This file was generated by camel-quarkus-maven-plugin:update-extension-doc-page
+= Google Secret Manager
+:linkattrs:
+:cq-artifact-id: camel-quarkus-google-secret-manager
+:cq-native-supported: false
+:cq-status: Preview
+:cq-status-deprecation: Preview
+:cq-description: Manage Google Secret Manager Secrets
+:cq-deprecated: false
+:cq-jvm-since: 2.8.0
+:cq-native-since: n/a
+
+[.badges]
+[.badge-key]##JVM since##[.badge-supported]##2.8.0## [.badge-key]##Native##[.badge-unsupported]##unsupported##
+
+Manage Google Secret Manager Secrets
+
+== What's inside
+
+* xref:{cq-camel-components}::google-secret-manager-component.adoc[Google Secret Manager component], URI syntax: `google-secret-manager:project`
+
+Please refer to the above link for usage and configuration details.
+
+== Maven coordinates
+
+[source,xml]
+----
+<dependency>
+    <groupId>org.apache.camel.quarkus</groupId>
+    <artifactId>camel-quarkus-google-secret-manager</artifactId>
+</dependency>
+----
+
+Check the xref:user-guide/index.adoc[User guide] for more information about writing Camel Quarkus applications.

[camel-quarkus] 02/06: Create Camel Google Secret Manager Extension

Posted by ac...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

acosentino pushed a commit to branch gcp-sec-manager
in repository https://gitbox.apache.org/repos/asf/camel-quarkus.git

commit d79665b0a02ed85e0c05d95735160a896ec9abe2
Author: Andrea Cosentino <an...@gmail.com>
AuthorDate: Mon Mar 28 13:13:46 2022 +0200

    Create Camel Google Secret Manager Extension
---
 .../google-secret-manager/pom.xml                                        | 0
 .../component/google/secret/manager/it/GoogleSecretManagerResource.java  | 0
 .../component/google/secret/manager/it/GoogleSecretManagerTest.java      | 0
 integration-tests-jvm/pom.xml                                            | 1 +
 integration-tests/pom.xml                                                | 1 -
 5 files changed, 1 insertion(+), 1 deletion(-)

diff --git a/integration-tests/google-secret-manager/pom.xml b/integration-tests-jvm/google-secret-manager/pom.xml
similarity index 100%
rename from integration-tests/google-secret-manager/pom.xml
rename to integration-tests-jvm/google-secret-manager/pom.xml
diff --git a/integration-tests/google-secret-manager/src/main/java/org/apache/camel/quarkus/component/google/secret/manager/it/GoogleSecretManagerResource.java b/integration-tests-jvm/google-secret-manager/src/main/java/org/apache/camel/quarkus/component/google/secret/manager/it/GoogleSecretManagerResource.java
similarity index 100%
rename from integration-tests/google-secret-manager/src/main/java/org/apache/camel/quarkus/component/google/secret/manager/it/GoogleSecretManagerResource.java
rename to integration-tests-jvm/google-secret-manager/src/main/java/org/apache/camel/quarkus/component/google/secret/manager/it/GoogleSecretManagerResource.java
diff --git a/integration-tests/google-secret-manager/src/test/java/org/apache/camel/quarkus/component/google/secret/manager/it/GoogleSecretManagerTest.java b/integration-tests-jvm/google-secret-manager/src/test/java/org/apache/camel/quarkus/component/google/secret/manager/it/GoogleSecretManagerTest.java
similarity index 100%
rename from integration-tests/google-secret-manager/src/test/java/org/apache/camel/quarkus/component/google/secret/manager/it/GoogleSecretManagerTest.java
rename to integration-tests-jvm/google-secret-manager/src/test/java/org/apache/camel/quarkus/component/google/secret/manager/it/GoogleSecretManagerTest.java
diff --git a/integration-tests-jvm/pom.xml b/integration-tests-jvm/pom.xml
index bb0c5b8..91afee7 100644
--- a/integration-tests-jvm/pom.xml
+++ b/integration-tests-jvm/pom.xml
@@ -66,6 +66,7 @@
         <module>flink</module>
         <module>ganglia</module>
         <module>google-functions</module>
+        <module>google-secret-manager</module>
         <module>groovy</module>
         <module>groovy-dsl</module>
         <module>guava-eventbus</module>
diff --git a/integration-tests/pom.xml b/integration-tests/pom.xml
index 1b9872f..f59d892 100644
--- a/integration-tests/pom.xml
+++ b/integration-tests/pom.xml
@@ -99,7 +99,6 @@
         <module>google</module>
         <module>google-bigquery</module>
         <module>google-pubsub</module>
-        <module>google-secret-manager</module>
         <module>google-storage</module>
         <module>graphql</module>
         <module>grok</module>

[camel-quarkus] 03/06: Create Camel Google Secret Manager Extension

Posted by ac...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

acosentino pushed a commit to branch gcp-sec-manager
in repository https://gitbox.apache.org/repos/asf/camel-quarkus.git

commit 731eabe36cdfd64bcbe11eacdfc85e5b98c10723
Author: Andrea Cosentino <an...@gmail.com>
AuthorDate: Mon Mar 28 13:41:24 2022 +0200

    Create Camel Google Secret Manager Extension
---
 extensions-jvm/google-secret-manager/runtime/pom.xml | 10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/extensions-jvm/google-secret-manager/runtime/pom.xml b/extensions-jvm/google-secret-manager/runtime/pom.xml
index 9af72e1..2d4b7d3 100644
--- a/extensions-jvm/google-secret-manager/runtime/pom.xml
+++ b/extensions-jvm/google-secret-manager/runtime/pom.xml
@@ -44,6 +44,16 @@
         <dependency>
             <groupId>org.apache.camel</groupId>
             <artifactId>camel-google-secret-manager</artifactId>
+            <exclusions>
+               <exclusion>
+                  <groupId>com.google.code.findbugs</groupId>
+                  <artifactId>jsr305</artifactId>
+               </exclusion>
+               <exclusion>
+                  <groupId>commons-logging</groupId>
+                  <artifactId>commons-logging</artifactId>
+               </exclusion>
+            </exclusions>
         </dependency>
     </dependencies>
 

[camel-quarkus] 06/06: Create Camel Google Secret Manager Extension

Posted by ac...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

acosentino pushed a commit to branch gcp-sec-manager
in repository https://gitbox.apache.org/repos/asf/camel-quarkus.git

commit ca0aa568a421a194fbffe174ee35344b00510383
Author: Andrea Cosentino <an...@gmail.com>
AuthorDate: Mon Mar 28 14:21:06 2022 +0200

    Create Camel Google Secret Manager Extension
---
 catalog/pom.xml | 13 +++++++++++++
 1 file changed, 13 insertions(+)

diff --git a/catalog/pom.xml b/catalog/pom.xml
index 8159b84..7ca993b 100644
--- a/catalog/pom.xml
+++ b/catalog/pom.xml
@@ -1548,6 +1548,19 @@
         </dependency>
         <dependency>
             <groupId>org.apache.camel.quarkus</groupId>
+            <artifactId>camel-quarkus-google-secret-manager</artifactId>
+            <version>${project.version}</version>
+            <type>pom</type>
+            <scope>test</scope>
+            <exclusions>
+                <exclusion>
+                    <groupId>*</groupId>
+                    <artifactId>*</artifactId>
+                </exclusion>
+            </exclusions>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.camel.quarkus</groupId>
             <artifactId>camel-quarkus-google-sheets</artifactId>
             <version>${project.version}</version>
             <type>pom</type>

[camel-quarkus] 01/06: Create Camel Google Secret Manager Extension

Posted by ac...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

acosentino pushed a commit to branch gcp-sec-manager
in repository https://gitbox.apache.org/repos/asf/camel-quarkus.git

commit a9918e372b7032b8b06d9a5155e46ea5cae87f46
Author: Andrea Cosentino <an...@gmail.com>
AuthorDate: Mon Mar 28 13:08:23 2022 +0200

    Create Camel Google Secret Manager Extension
---
 .../google-secret-manager/deployment/pom.xml       |  63 +++++++++++++
 .../deployment/GoogleSecretManagerProcessor.java   |  46 +++++++++
 extensions-jvm/google-secret-manager/pom.xml       |  39 ++++++++
 .../google-secret-manager/runtime/pom.xml          | 100 ++++++++++++++++++++
 .../main/resources/META-INF/quarkus-extension.yaml |  32 +++++++
 extensions-jvm/pom.xml                             |   1 +
 integration-tests/google-secret-manager/pom.xml    | 103 +++++++++++++++++++++
 .../manager/it/GoogleSecretManagerResource.java    |  55 +++++++++++
 .../secret/manager/it/GoogleSecretManagerTest.java |  37 ++++++++
 integration-tests/pom.xml                          |   1 +
 poms/bom/pom.xml                                   |  15 +++
 11 files changed, 492 insertions(+)

diff --git a/extensions-jvm/google-secret-manager/deployment/pom.xml b/extensions-jvm/google-secret-manager/deployment/pom.xml
new file mode 100644
index 0000000..ce03696
--- /dev/null
+++ b/extensions-jvm/google-secret-manager/deployment/pom.xml
@@ -0,0 +1,63 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+
+    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.
+
+-->
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+    <modelVersion>4.0.0</modelVersion>
+    <parent>
+        <groupId>org.apache.camel.quarkus</groupId>
+        <artifactId>camel-quarkus-google-secret-manager-parent</artifactId>
+        <version>2.8.0-SNAPSHOT</version>
+        <relativePath>../pom.xml</relativePath>
+    </parent>
+
+    <artifactId>camel-quarkus-google-secret-manager-deployment</artifactId>
+    <name>Camel Quarkus :: Google Secret Manager :: Deployment</name>
+
+    <dependencies>
+        <dependency>
+            <groupId>org.apache.camel.quarkus</groupId>
+            <artifactId>camel-quarkus-core-deployment</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.camel.quarkus</groupId>
+            <artifactId>camel-quarkus-google-secret-manager</artifactId>
+        </dependency>
+    </dependencies>
+
+    <build>
+        <plugins>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-compiler-plugin</artifactId>
+                <configuration>
+                    <annotationProcessorPaths>
+                        <path>
+                            <groupId>io.quarkus</groupId>
+                            <artifactId>quarkus-extension-processor</artifactId>
+                            <version>${quarkus.version}</version>
+                        </path>
+                    </annotationProcessorPaths>
+                </configuration>
+            </plugin>
+        </plugins>
+    </build>
+
+</project>
diff --git a/extensions-jvm/google-secret-manager/deployment/src/main/java/org/apache/camel/quarkus/component/google/secret/manager/deployment/GoogleSecretManagerProcessor.java b/extensions-jvm/google-secret-manager/deployment/src/main/java/org/apache/camel/quarkus/component/google/secret/manager/deployment/GoogleSecretManagerProcessor.java
new file mode 100644
index 0000000..7a1a2ac
--- /dev/null
+++ b/extensions-jvm/google-secret-manager/deployment/src/main/java/org/apache/camel/quarkus/component/google/secret/manager/deployment/GoogleSecretManagerProcessor.java
@@ -0,0 +1,46 @@
+/*
+ * 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.google.secret.manager.deployment;
+
+import io.quarkus.deployment.annotations.BuildStep;
+import io.quarkus.deployment.annotations.ExecutionTime;
+import io.quarkus.deployment.annotations.Record;
+import io.quarkus.deployment.builditem.FeatureBuildItem;
+import io.quarkus.deployment.pkg.steps.NativeBuild;
+import org.apache.camel.quarkus.core.JvmOnlyRecorder;
+import org.jboss.logging.Logger;
+
+class GoogleSecretManagerProcessor {
+
+    private static final Logger LOG = Logger.getLogger(GoogleSecretManagerProcessor.class);
+    private static final String FEATURE = "camel-google-secret-manager";
+
+    @BuildStep
+    FeatureBuildItem feature() {
+        return new FeatureBuildItem(FEATURE);
+    }
+
+    /**
+     * Remove this once this extension starts supporting the native mode.
+     */
+    @BuildStep(onlyIf = NativeBuild.class)
+    @Record(value = ExecutionTime.RUNTIME_INIT)
+    void warnJvmInNative(JvmOnlyRecorder recorder) {
+        JvmOnlyRecorder.warnJvmInNative(LOG, FEATURE); // warn at build time
+        recorder.warnJvmInNative(FEATURE); // warn at runtime
+    }
+}
diff --git a/extensions-jvm/google-secret-manager/pom.xml b/extensions-jvm/google-secret-manager/pom.xml
new file mode 100644
index 0000000..2b2a590
--- /dev/null
+++ b/extensions-jvm/google-secret-manager/pom.xml
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+
+    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.
+
+-->
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+    <modelVersion>4.0.0</modelVersion>
+    <parent>
+        <groupId>org.apache.camel.quarkus</groupId>
+        <artifactId>camel-quarkus-extensions-jvm</artifactId>
+        <version>2.8.0-SNAPSHOT</version>
+        <relativePath>../pom.xml</relativePath>
+    </parent>
+
+    <artifactId>camel-quarkus-google-secret-manager-parent</artifactId>
+    <name>Camel Quarkus :: Google Secret Manager</name>
+    <packaging>pom</packaging>
+
+    <modules>
+        <module>deployment</module>
+        <module>runtime</module>
+    </modules>
+</project>
diff --git a/extensions-jvm/google-secret-manager/runtime/pom.xml b/extensions-jvm/google-secret-manager/runtime/pom.xml
new file mode 100644
index 0000000..9af72e1
--- /dev/null
+++ b/extensions-jvm/google-secret-manager/runtime/pom.xml
@@ -0,0 +1,100 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+
+    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.
+
+-->
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+    <modelVersion>4.0.0</modelVersion>
+    <parent>
+        <groupId>org.apache.camel.quarkus</groupId>
+        <artifactId>camel-quarkus-google-secret-manager-parent</artifactId>
+        <version>2.8.0-SNAPSHOT</version>
+        <relativePath>../pom.xml</relativePath>
+    </parent>
+
+    <artifactId>camel-quarkus-google-secret-manager</artifactId>
+    <name>Camel Quarkus :: Google Secret Manager :: Runtime</name>
+    <description>Manage Google Secret Manager Secrets</description>
+
+    <properties>
+        <camel.quarkus.jvmSince>2.8.0</camel.quarkus.jvmSince>
+    </properties>
+
+    <dependencies>
+        <dependency>
+            <groupId>org.apache.camel.quarkus</groupId>
+            <artifactId>camel-quarkus-core</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.camel</groupId>
+            <artifactId>camel-google-secret-manager</artifactId>
+        </dependency>
+    </dependencies>
+
+    <build>
+        <plugins>
+            <plugin>
+                <groupId>io.quarkus</groupId>
+                <artifactId>quarkus-bootstrap-maven-plugin</artifactId>
+            </plugin>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-compiler-plugin</artifactId>
+                <configuration>
+                    <annotationProcessorPaths>
+                        <path>
+                            <groupId>io.quarkus</groupId>
+                            <artifactId>quarkus-extension-processor</artifactId>
+                            <version>${quarkus.version}</version>
+                        </path>
+                    </annotationProcessorPaths>
+                </configuration>
+            </plugin>
+        </plugins>
+    </build>
+
+
+    <profiles>
+        <profile>
+            <id>full</id>
+            <activation>
+                <property>
+                    <name>!quickly</name>
+                </property>
+            </activation>
+            <build>
+                <plugins>
+                    <plugin>
+                        <groupId>org.apache.camel.quarkus</groupId>
+                        <artifactId>camel-quarkus-maven-plugin</artifactId>
+                        <executions>
+                            <execution>
+                                <id>update-extension-doc-page</id>
+                                <goals>
+                                    <goal>update-extension-doc-page</goal>
+                                </goals>
+                                <phase>process-classes</phase>
+                            </execution>
+                        </executions>
+                    </plugin>
+                </plugins>
+            </build>
+        </profile>
+    </profiles>
+</project>
diff --git a/extensions-jvm/google-secret-manager/runtime/src/main/resources/META-INF/quarkus-extension.yaml b/extensions-jvm/google-secret-manager/runtime/src/main/resources/META-INF/quarkus-extension.yaml
new file mode 100644
index 0000000..b031789
--- /dev/null
+++ b/extensions-jvm/google-secret-manager/runtime/src/main/resources/META-INF/quarkus-extension.yaml
@@ -0,0 +1,32 @@
+#
+# 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 Google Secret Manager"
+description: "Manage Google Secret Manager Secrets"
+metadata:
+  unlisted: true
+  guide: "https://camel.apache.org/camel-quarkus/latest/reference/extensions/google-secret-manager.html"
+  categories:
+  - "integration"
+  status:
+  - "preview"
diff --git a/extensions-jvm/pom.xml b/extensions-jvm/pom.xml
index 966042f..d7178fe 100644
--- a/extensions-jvm/pom.xml
+++ b/extensions-jvm/pom.xml
@@ -68,6 +68,7 @@
         <module>flink</module>
         <module>ganglia</module>
         <module>google-functions</module>
+        <module>google-secret-manager</module>
         <module>groovy</module>
         <module>groovy-dsl</module>
         <module>guava-eventbus</module>
diff --git a/integration-tests/google-secret-manager/pom.xml b/integration-tests/google-secret-manager/pom.xml
new file mode 100644
index 0000000..39c5872
--- /dev/null
+++ b/integration-tests/google-secret-manager/pom.xml
@@ -0,0 +1,103 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+
+    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.
+
+-->
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+    <modelVersion>4.0.0</modelVersion>
+    <parent>
+        <groupId>org.apache.camel.quarkus</groupId>
+        <artifactId>camel-quarkus-build-parent-it</artifactId>
+        <version>2.8.0-SNAPSHOT</version>
+        <relativePath>../../poms/build-parent-it/pom.xml</relativePath>
+    </parent>
+
+    <artifactId>camel-quarkus-integration-test-google-secret-manager</artifactId>
+    <name>Camel Quarkus :: Integration Tests :: Google Secret Manager</name>
+    <description>Integration tests for Camel Quarkus Google Secret Manager extension</description>
+
+    <dependencyManagement>
+        <dependencies>
+            <dependency>
+                <groupId>${quarkus.platform.group-id}</groupId>
+                <artifactId>${quarkus.platform.artifact-id}</artifactId>
+                <version>${quarkus.platform.version}</version>
+                <type>pom</type>
+                <scope>import</scope>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.camel.quarkus</groupId>
+                <artifactId>camel-quarkus-bom-test</artifactId>
+                <version>${camel-quarkus.version}</version>
+                <type>pom</type>
+                <scope>import</scope>
+            </dependency>
+        </dependencies>
+    </dependencyManagement>
+
+    <dependencies>
+        <dependency>
+            <groupId>org.apache.camel.quarkus</groupId>
+            <artifactId>camel-quarkus-google-secret-manager</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>io.quarkus</groupId>
+            <artifactId>quarkus-resteasy</artifactId>
+        </dependency>
+
+        <!-- test dependencies -->
+        <dependency>
+            <groupId>io.quarkus</groupId>
+            <artifactId>quarkus-junit5</artifactId>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>io.rest-assured</groupId>
+            <artifactId>rest-assured</artifactId>
+            <scope>test</scope>
+        </dependency>
+    </dependencies>
+
+    <profiles>
+        <profile>
+            <id>virtualDependencies</id>
+            <activation>
+                <property>
+                    <name>!noVirtualDependencies</name>
+                </property>
+            </activation>
+            <dependencies>
+                <!-- The following dependencies guarantee that this module is built after them. You can update them by running `mvn process-resources -Pformat -N` from the source tree root directory -->
+                <dependency>
+                    <groupId>org.apache.camel.quarkus</groupId>
+                    <artifactId>camel-quarkus-google-secret-manager-deployment</artifactId>
+                    <version>${project.version}</version>
+                    <type>pom</type>
+                    <scope>test</scope>
+                    <exclusions>
+                        <exclusion>
+                            <groupId>*</groupId>
+                            <artifactId>*</artifactId>
+                        </exclusion>
+                    </exclusions>
+                </dependency>
+            </dependencies>
+        </profile>
+    </profiles>
+</project>
diff --git a/integration-tests/google-secret-manager/src/main/java/org/apache/camel/quarkus/component/google/secret/manager/it/GoogleSecretManagerResource.java b/integration-tests/google-secret-manager/src/main/java/org/apache/camel/quarkus/component/google/secret/manager/it/GoogleSecretManagerResource.java
new file mode 100644
index 0000000..e9b984a
--- /dev/null
+++ b/integration-tests/google-secret-manager/src/main/java/org/apache/camel/quarkus/component/google/secret/manager/it/GoogleSecretManagerResource.java
@@ -0,0 +1,55 @@
+/*
+ * 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.google.secret.manager.it;
+
+import java.net.URI;
+
+import javax.enterprise.context.ApplicationScoped;
+import javax.inject.Inject;
+import javax.ws.rs.Consumes;
+import javax.ws.rs.GET;
+import javax.ws.rs.POST;
+import javax.ws.rs.Path;
+import javax.ws.rs.Produces;
+import javax.ws.rs.core.MediaType;
+import javax.ws.rs.core.Response;
+
+import org.apache.camel.CamelContext;
+import org.jboss.logging.Logger;
+
+@Path("/google-secret-manager")
+@ApplicationScoped
+public class GoogleSecretManagerResource {
+
+    private static final Logger LOG = Logger.getLogger(GoogleSecretManagerResource.class);
+
+    private static final String COMPONENT_GOOGLE_SECRET_MANAGER = "google-secret-manager";
+    @Inject
+    CamelContext context;
+
+    @Path("/load/component/google-secret-manager")
+    @GET
+    @Produces(MediaType.TEXT_PLAIN)
+    public Response loadComponentGoogleSecretManager() throws Exception {
+        /* This is an autogenerated test */
+        if (context.getComponent(COMPONENT_GOOGLE_SECRET_MANAGER) != null) {
+            return Response.ok().build();
+        }
+        LOG.warnf("Could not load [%s] from the Camel context", COMPONENT_GOOGLE_SECRET_MANAGER);
+        return Response.status(500, COMPONENT_GOOGLE_SECRET_MANAGER + " could not be loaded from the Camel context").build();
+    }
+}
diff --git a/integration-tests/google-secret-manager/src/test/java/org/apache/camel/quarkus/component/google/secret/manager/it/GoogleSecretManagerTest.java b/integration-tests/google-secret-manager/src/test/java/org/apache/camel/quarkus/component/google/secret/manager/it/GoogleSecretManagerTest.java
new file mode 100644
index 0000000..a1e3a4d
--- /dev/null
+++ b/integration-tests/google-secret-manager/src/test/java/org/apache/camel/quarkus/component/google/secret/manager/it/GoogleSecretManagerTest.java
@@ -0,0 +1,37 @@
+/*
+ * 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.google.secret.manager.it;
+
+import io.quarkus.test.junit.QuarkusTest;
+import io.restassured.RestAssured;
+import io.restassured.http.ContentType;
+
+import org.junit.jupiter.api.Assertions;
+import org.junit.jupiter.api.Test;
+
+@QuarkusTest
+class GoogleSecretManagerTest {
+
+    @Test
+    public void loadComponentGoogleSecretManager() {
+        /* A simple autogenerated test */
+        RestAssured.get("/google-secret-manager/load/component/google-secret-manager")
+                .then()
+                .statusCode(200);
+    }
+
+}
diff --git a/integration-tests/pom.xml b/integration-tests/pom.xml
index f59d892..1b9872f 100644
--- a/integration-tests/pom.xml
+++ b/integration-tests/pom.xml
@@ -99,6 +99,7 @@
         <module>google</module>
         <module>google-bigquery</module>
         <module>google-pubsub</module>
+        <module>google-secret-manager</module>
         <module>google-storage</module>
         <module>graphql</module>
         <module>grok</module>
diff --git a/poms/bom/pom.xml b/poms/bom/pom.xml
index 28882f2..36bb361 100644
--- a/poms/bom/pom.xml
+++ b/poms/bom/pom.xml
@@ -1238,6 +1238,11 @@
             </dependency>
             <dependency>
                 <groupId>org.apache.camel</groupId>
+                <artifactId>camel-google-secret-manager</artifactId>
+                <version>${camel.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.camel</groupId>
                 <artifactId>camel-google-sheets</artifactId>
                 <version>${camel.version}</version>
                 <exclusions>
@@ -3920,6 +3925,16 @@
             </dependency>
             <dependency>
                 <groupId>org.apache.camel.quarkus</groupId>
+                <artifactId>camel-quarkus-google-secret-manager</artifactId>
+                <version>${camel-quarkus.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.camel.quarkus</groupId>
+                <artifactId>camel-quarkus-google-secret-manager-deployment</artifactId>
+                <version>${camel-quarkus.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.camel.quarkus</groupId>
                 <artifactId>camel-quarkus-google-sheets</artifactId>
                 <version>${camel-quarkus.version}</version>
             </dependency>