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 2020/07/24 12:47:01 UTC

[camel-kafka-connector] 01/03: Added archetypes documentation

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

acosentino pushed a commit to branch archetypes-docs
in repository https://gitbox.apache.org/repos/asf/camel-kafka-connector.git

commit eff789bbbf45d7774c82061f2e635851252363d1
Author: Andrea Cosentino <an...@gmail.com>
AuthorDate: Fri Jul 24 14:39:54 2020 +0200

    Added archetypes documentation
---
 docs/modules/ROOT/pages/archetypes.adoc | 155 ++++++++++++++++++++++++++++++++
 1 file changed, 155 insertions(+)

diff --git a/docs/modules/ROOT/pages/archetypes.adoc b/docs/modules/ROOT/pages/archetypes.adoc
new file mode 100644
index 0000000..9237643
--- /dev/null
+++ b/docs/modules/ROOT/pages/archetypes.adoc
@@ -0,0 +1,155 @@
+[[Archetypes-Archetypes]]
+= Archetypes
+
+There are scenarios in Camel-Kafka-connector and in the Kafka Connect world in general, where an end users needs to extend a connector by adding, for example, a converter or a transformer (or in the camel-kafka-connector case an aggregator).
+
+In camel-kafka-connector we provide the camel-kafka-connector-extensible-archetype for this purpose.
+
+You can create a camel-kafka-connector project ready to be extended.
+
+You can do that through the following command.
+
+[source,bash]
+----
+mvn arch': mvn archetype:generate  -DarchetypeGroupId=org.apache.camel.kafkaconnector.archetypes  -DarchetypeArtifactId=camel-kafka-connector-extensible-archetype  -DarchetypeVersion=0.4.0-SNAPSHOT
+sible-archetype-0.4.0-20200723.181654-5.jar (16 kB at 80 kB/s)
+Define value for property 'groupId': org.apache.camel.kafkaconnector.extended
+Define value for property 'artifactId': myconnector-extended
+Define value for property 'version' 1.0-SNAPSHOT: : 
+Define value for property 'package' org.apache.camel.kafkaconnector.extended: : 
+[INFO] Using property: camel-kafka-connector-version = 0.4.0-SNAPSHOT
+Confirm properties configuration:
+groupId: org.apache.camel.kafkaconnector.extended
+artifactId: myconnector-extended
+version: 1.0-SNAPSHOT
+package: org.apache.camel.kafkaconnector.extended
+camel-kafka-connector-version: 0.4.0-SNAPSHOT
+ Y: : Y
+[INFO] ----------------------------------------------------------------------------
+[INFO] Using following parameters for creating project from Archetype: camel-kafka-connector-extensible-archetype:0.4.0-SNAPSHOT
+[INFO] ----------------------------------------------------------------------------
+[INFO] Parameter: groupId, Value: org.apache.camel.kafkaconnector.extended
+[INFO] Parameter: artifactId, Value: myconnector-extended
+[INFO] Parameter: version, Value: 1.0-SNAPSHOT
+[INFO] Parameter: package, Value: org.apache.camel.kafkaconnector.extended
+[INFO] Parameter: packageInPathFormat, Value: org/apache/camel/kafkaconnector/extended
+[INFO] Parameter: package, Value: org.apache.camel.kafkaconnector.extended
+[INFO] Parameter: version, Value: 1.0-SNAPSHOT
+[INFO] Parameter: groupId, Value: org.apache.camel.kafkaconnector.extended
+[INFO] Parameter: camel-kafka-connector-version, Value: 0.4.0-SNAPSHOT
+[INFO] Parameter: artifactId, Value: myconnector-extended
+[INFO] Project created from Archetype in dir: /home/workspace/apache-camel/camel-kafka-connector/docs/modules/ROOT/pages/myconnector-extended
+[INFO] ------------------------------------------------------------------------
+[INFO] BUILD SUCCESS
+[INFO] ------------------------------------------------------------------------
+[INFO] Total time:  45.630 s
+[INFO] Finished at: 2020-07-24T14:31:43+02:00
+[INFO] ------------------------------------------------------------------------
+----
+
+In the pom of the created project you have to add the camel-kafka-connector you want to extend (in the example we want to extend the aws2-s3 connector).
+
+[source,xml]
+----
+<?xml version="1.0" encoding="UTF-8"?>
+<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/maven-v4_0_0.xsd">
+
+  <modelVersion>4.0.0</modelVersion>
+
+  <groupId>org.apache.camel.kafkaconnector.extended</groupId>
+  <artifactId>myconnector-extended</artifactId>
+  <packaging>jar</packaging>
+  <version>1.0-SNAPSHOT</version>
+
+  <name>A Camel Kafka Connector extended</name>
+
+  <properties>
+    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+    <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
+    <kafka-version>2.5.0</kafka-version>
+    <camel-kafka-connector-version>${project.version}</camel-kafka-connector-version>
+  </properties>
+
+    <dependencies>
+    <dependency>
+      <groupId>org.apache.kafka</groupId>
+      <artifactId>connect-api</artifactId>
+      <scope>provided</scope>
+      <version>${kafka-version}</version>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.kafka</groupId>
+      <artifactId>connect-transforms</artifactId>
+      <scope>provided</scope>
+      <version>${kafka-version}</version>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.camel.kafkaconnector</groupId>
+      <artifactId>camel-kafka-connector</artifactId>
+      <version>0.4.0-SNAPSHOT</version>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.camel.kafkaconnector</groupId>
+      <artifactId>camel-aws2-s3-kafka-connector</artifactId>
+      <version>0.4.0-SNAPSHOT</version>
+    </dependency>
+  </dependencies>
+  <build>
+    <plugins>
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-surefire-plugin</artifactId>
+        <version>3.0.0-M4</version>
+        <configuration>
+          <failIfNoTests>false</failIfNoTests>
+        </configuration>
+      </plugin>
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-jar-plugin</artifactId>
+        <version>3.1.0</version>
+        <configuration>
+          <archive>
+            <manifest>
+              <addDefaultImplementationEntries>true</addDefaultImplementationEntries>
+              <addDefaultSpecificationEntries>true</addDefaultSpecificationEntries>
+            </manifest>
+          </archive>
+        </configuration>
+      </plugin>
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-compiler-plugin</artifactId>
+        <version>2.5.1</version>
+        <inherited>true</inherited>
+        <configuration>
+          <source>1.8</source>
+          <target>1.8</target>
+        </configuration>
+      </plugin>
+      <plugin>
+        <artifactId>maven-assembly-plugin</artifactId>
+        <version>2.5.3</version>
+        <configuration>
+          <descriptors>
+            <descriptor>src/main/assembly/package.xml</descriptor>
+          </descriptors>
+        </configuration>
+        <executions>
+          <execution>
+            <id>make-assembly</id>
+            <phase>package</phase>
+            <goals>
+              <goal>single</goal>
+            </goals>
+          </execution>
+        </executions>
+      </plugin>
+    </plugins>
+  </build>
+
+</project>
+----
+
+Now, you are able to add whatever you need in the project, at the end you'll need just to build and you'll get a zipped or tar.gz connector.