blob: 5040e16f625e28d4d470ef4386da05f4eca90d59 [file] [log] [blame]
<?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/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.apache.camel</groupId>
<artifactId>camel-dependencies</artifactId>
<version>4.5.0</version>
</parent>
<groupId>org.apache.camel.kamelets</groupId>
<artifactId>camel-kamelets-parent</artifactId>
<packaging>pom</packaging>
<version>4.6.0-SNAPSHOT</version>
<name>Camel Kamelets Parent</name>
<description>Camel Kamelets Library Parent</description>
<modules>
<module>library/camel-kamelets</module>
<module>library/camel-kamelets-catalog</module>
<module>library/kamelets-maven-plugin</module>
<module>library/camel-kamelets-utils</module>
<module>library/camel-kamelets-bom</module>
<module>tests/camel-kamelets-itest</module>
</modules>
<properties>
<maven.compiler.source>17</maven.compiler.source>
<maven.compiler.target>17</maven.compiler.target>
<maven.compiler.release>17</maven.compiler.release>
<failIfNoTests>false</failIfNoTests>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<maven-gpg-plugin.version>3.2.4</maven-gpg-plugin.version>
<maven-deploy-plugin.version>3.1.1</maven-deploy-plugin.version>
<maven-failsafe-plugin.version>3.2.5</maven-failsafe-plugin.version>
<maven-surefire-plugin.version>3.2.5</maven-surefire-plugin.version>
<maven-javadoc-plugin.version>3.6.3</maven-javadoc-plugin.version>
<maven-assembly-plugin.version>3.6.0</maven-assembly-plugin.version>
<maven-source-plugin.version>3.3.1</maven-source-plugin.version>
<maven-checksum-maven-plugin.version>1.11</maven-checksum-maven-plugin.version>
<maven-antrun-plugin.version>3.1.0</maven-antrun-plugin.version>
<maven-groovy-plugin.version>2.1.1</maven-groovy-plugin.version>
<apache-rat-plugin.version>0.16.1</apache-rat-plugin.version>
<cyclonedx-maven-plugin-version>2.8.0</cyclonedx-maven-plugin-version>
<camel.version>4.5.0</camel.version>
<camel.k.crds.version>2.3.0</camel.k.crds.version>
<citrus.version>4.2.0</citrus.version>
<cucumber.version>7.17.0</cucumber.version>
<yaks.version>0.19.0</yaks.version>
<!-- Versions used inside Kamelets (add them also to the dependencyManagement section and the groovy script below) -->
<!-- These properties must keep this same format "version.<groupId>.<artifactId>" -->
<version.org.apache.commons.commons-dbcp2>2.12.0</version.org.apache.commons.commons-dbcp2>
<version.com.amazon.redshift.redshift-jdbc42>2.1.0.26</version.com.amazon.redshift.redshift-jdbc42>
<version.org.apache.activemq.artemis-jakarta-client-all>2.33.0</version.org.apache.activemq.artemis-jakarta-client-all>
<version.org.postgresql.postgresql>42.7.3</version.org.postgresql.postgresql>
<version.net.snowflake.snowflake-jdbc>3.14.5</version.net.snowflake.snowflake-jdbc>
<version.io.quarkus.quarkus-apicurio-registry-avro>3.6.3</version.io.quarkus.quarkus-apicurio-registry-avro>
<!-- These versions should be taken from Azure SDK BOM used in the Camel version declared -->
<version.com.azure.azure-identity>1.11.2</version.com.azure.azure-identity>
<version.com.azure.azure-data-schemaregistry-apacheavro>1.1.14</version.com.azure.azure-data-schemaregistry-apacheavro>
<version.com.microsoft.azure.azure-schemaregistry-kafka-avro>1.1.1</version.com.microsoft.azure.azure-schemaregistry-kafka-avro>
</properties>
<developers>
<developer>
<name>The Apache Camel Team</name>
<email>dev@camel.apache.org</email>
<url>https://camel.apache.org</url>
<organization>Apache Software Foundation</organization>
<organizationUrl>https://apache.org/</organizationUrl>
<properties>
<picUrl>https://camel.apache.org/banner.data/apache-camel-7.png</picUrl>
</properties>
</developer>
</developers>
<mailingLists>
<mailingList>
<name>Development List</name>
<subscribe>dev-subscribe@camel.apache.org</subscribe>
<unsubscribe>dev-unsubscribe@camel.apache.org</unsubscribe>
<post>dev@camel.apache.org</post>
</mailingList>
<mailingList>
<name>User List</name>
<subscribe>users-subscribe@camel.apache.org</subscribe>
<unsubscribe>users-unsubscribe@camel.apache.org</unsubscribe>
<post>users@camel.apache.org</post>
</mailingList>
<mailingList>
<name>Commits List</name>
<subscribe>commits-subscribe@camel.apache.org</subscribe>
<unsubscribe>commits-unsubscribe@camel.apache.org</unsubscribe>
<post>commits@camel.apache.org</post>
</mailingList>
</mailingLists>
<scm>
<connection>scm:git:http://gitbox.apache.org/repos/asf/camel-kamelets.git</connection>
<developerConnection>scm:git:https://gitbox.apache.org/repos/asf/camel-kamelets.git</developerConnection>
<url>https://gitbox.apache.org/repos/asf?p=camel-kamelets.git;a=summary</url>
<tag>v4.0.0-RC1</tag>
</scm>
<issueManagement>
<system>GitHub</system>
<url>https://github.com/apache/camel-kamelets/issues</url>
</issueManagement>
<repositories>
<repository>
<id>apache.snapshots</id>
<url>https://repository.apache.org/snapshots/</url>
<name>Apache Snapshot Repo</name>
<snapshots>
<enabled>true</enabled>
</snapshots>
<releases>
<enabled>false</enabled>
</releases>
</repository>
</repositories>
<pluginRepositories>
<pluginRepository>
<id>apache.snapshots</id>
<url>https://repository.apache.org/snapshots/</url>
<snapshots>
<enabled>true</enabled>
</snapshots>
<releases>
<enabled>false</enabled>
</releases>
</pluginRepository>
</pluginRepositories>
<build>
<defaultGoal>install</defaultGoal>
<pluginManagement>
<plugins>
<plugin>
<groupId>org.apache.rat</groupId>
<artifactId>apache-rat-plugin</artifactId>
<version>${apache-rat-plugin.version}</version>
<configuration>
<excludeSubProjects>false</excludeSubProjects>
<excludes>
<exclude>**/generated.txt</exclude>
<exclude>**/*.json</exclude>
<exclude>**/README</exclude>
<exclude>**/README.txt</exclude>
<exclude>**/README.md</exclude>
<exclude>**/ReadMe.md</exclude>
<exclude>**/resources/**/*.xsd</exclude>
<exclude>**/webapp/js/**/*</exclude>
<exclude>**/test/resources/**/*</exclude>
<exclude>**/test/data*/**/*</exclude>
<exclude>.gitignore</exclude>
<exclude>.git/**/*</exclude>
<exclude>**/*.adoc</exclude>
<exclude>**/*.adoc.template</exclude>
<exclude>**/*.md</exclude>
<exclude>**/*.sh</exclude>
<exclude>**/*.bat</exclude>
<exclude>**/java9-maven-settings</exclude>
<exclude>**/*.pfx</exclude>
<!-- tooling json-simple parser -->
<exclude>**/src/main/java/org/json/simple/**</exclude>
<!-- tooling/camel-manual/src/styles/print.css use a different license -->
<exclude>**/src/styles/print.css</exclude>
<!-- tooling for component docs -->
<exclude>**/component-header.mvel</exclude>
<exclude>**/component-options.mvel</exclude>
<exclude>**/endpoint-options.mvel</exclude>
<exclude>**/dataformat-options.mvel</exclude>
<exclude>**/eip-options.mvel</exclude>
<exclude>**/language-options.mvel</exclude>
<exclude>**/website-components-list.mvel</exclude>
<exclude>**/website-languages-list.mvel</exclude>
<exclude>**/website-others-list.mvel</exclude>
<exclude>**/website-dataformats-list.mvel</exclude>
<exclude>**/readme-examples.mvel</exclude>
<exclude>**/spring-boot-auto-configure-options.mvel</exclude>
<exclude>**/camel-NOTICE.txt</exclude>
<exclude>**/spring-boot-starter-NOTICE.txt</exclude>
<!-- cxf does not handle comments here -->
<exclude>**/src/main/resources/META-INF/cxf/cxf.extension</exclude>
<exclude>**/src/main/resources/META-INF/cxf/bus-extensions.txt</exclude>
<!-- ignore the api signatures files -->
<exclude>**/src/signatures/*.txt</exclude>
<!-- camel-salesforce BSD license from salesforce developers -->
<exclude>**/CometDReplayExtension.java</exclude>
<exclude>**/LICENSE-SALESFORCE.txt</exclude>
<!-- camel-as2 -->
<exclude>**/mdnDescription.vm</exclude>
<!-- camel-jbpm -->
<exclude>**/src/main/resources/*.wid</exclude>
<!-- camel website and user-manual -->
<exclude>**/node/**</exclude>
<exclude>**/node_modules/**</exclude>
<exclude>**/user-manual/**</exclude>
<exclude>**/yarn.lock</exclude>
<!-- examples -->
<exclude>**/fabric8/*.yaml</exclude>
<exclude>**/src/main/data/*.patient</exclude>
<exclude>**/src/main/data/*.csv</exclude>
<exclude>**/src/main/resources/avro/*.avsc</exclude>
<!-- generated files -->
<exclude>**/target/**/*</exclude>
<exclude>**/eclipse-classes/**/*</exclude>
<exclude>**/.*</exclude>
<exclude>**/.settings/**/*</exclude>
<exclude>**/*.iml</exclude>
<exclude>**/.idea/**/*</exclude>
<exclude>**/avro/**/*.avpr</exclude>
<exclude>**/OSGI-INF/bundle.info</exclude>
<exclude>**/test_rsa*</exclude>
<exclude>**/data*/**/*.xml</exclude>
<exlucde>**/*.log</exlucde>
<exclude>**/id_file</exclude>
<exclude>**/dependency-reduced-pom.xml</exclude>
<exclude>**/Dropbox_API_Terms_and_Conditions.txt</exclude>
<exclude>**/MerchandiseRestResource.apxc</exclude>
<exclude>**/file-sig-api.txt</exclude>
<exclude>**/Tasks__c.java</exclude>
<exclude>**/*.proto</exclude>
<exclude>
**/src/main/resources/META-INF/services/org.kie.server.services.api.KieServerExtension
</exclude>
<!-- Maven Wrapper -->
<exclude>.mvn/**/*</exclude>
</excludes>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>${maven-surefire-plugin.version}</version>
<configuration>
<failIfNoTests>false</failIfNoTests>
<failIfNoSpecifiedTests>false</failIfNoSpecifiedTests>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-failsafe-plugin</artifactId>
<version>${maven-failsafe-plugin.version}</version>
<executions>
<execution>
<id>integration-tests</id>
<goals>
<goal>integration-test</goal>
<goal>verify</goal>
</goals>
<configuration>
<failIfNoTests>false</failIfNoTests>
</configuration>
</execution>
</executions>
<configuration>
<failIfNoTests>false</failIfNoTests>
<failIfNoSpecifiedTests>false</failIfNoSpecifiedTests>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>8</source>
<target>8</target>
</configuration>
</plugin>
</plugins>
</pluginManagement>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId>
<version>${maven-antrun-plugin.version}</version>
<inherited>false</inherited>
<executions>
<execution>
<phase>process-resources</phase>
<goals>
<goal>run</goal>
</goals>
<configuration>
<target>
<ant antfile="update-kamelets.xml">
<target name="update.kamelets" />
</ant>
</target>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.codehaus.gmaven</groupId>
<artifactId>groovy-maven-plugin</artifactId>
<version>${maven-groovy-plugin.version}</version>
<inherited>false</inherited>
<executions>
<execution>
<id>UpdateKamelets</id>
<phase>process-resources</phase>
<goals>
<goal>execute</goal>
</goals>
</execution>
</executions>
<configuration>
<scriptpath>
<path>${project.basedir}/script/version</path>
</scriptpath>
<source>
import UpdateDepsVersionKamelets
new UpdateDepsVersionKamelets().updateKameletDirectory("./kamelets/", [
"version.org.apache.commons.commons-dbcp2": "${version.org.apache.commons.commons-dbcp2}",
"version.com.amazon.redshift.redshift-jdbc42": "${version.com.amazon.redshift.redshift-jdbc42}",
"version.org.apache.activemq.artemis-jakarta-client-all": "${version.org.apache.activemq.artemis-jakarta-client-all}",
"version.org.postgresql.postgresql": "${version.org.postgresql.postgresql}",
"version.net.snowflake.snowflake-jdbc": "${version.net.snowflake.snowflake-jdbc}",
"version.io.quarkus.quarkus-apicurio-registry-avro": "${version.io.quarkus.quarkus-apicurio-registry-avro}",
"version.com.azure.azure-identity": "${version.com.azure.azure-identity}",
"version.com.azure.azure-data-schemaregistry-apacheavro": "${version.com.azure.azure-data-schemaregistry-apacheavro}",
"version.com.microsoft.azure.azure-schemaregistry-kafka-avro": "${version.com.microsoft.azure.azure-schemaregistry-kafka-avro}"
])
</source>
</configuration>
</plugin>
</plugins>
</build>
<profiles>
<profile>
<id>release</id>
<activation>
<property>
<name>release</name>
</property>
</activation>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-release-plugin</artifactId>
<configuration>
<arguments>-Papache-release -Dmaven.antrun.skip ${arguments}</arguments>
</configuration>
</plugin>
<!-- We want to deploy the artifact to a staging location for perusal -->
<plugin>
<inherited>true</inherited>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-deploy-plugin</artifactId>
<version>${maven-deploy-plugin.version}</version>
<configuration>
<updateReleaseInfo>true</updateReleaseInfo>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-source-plugin</artifactId>
<version>${maven-source-plugin.version}</version>
<executions>
<execution>
<id>attach-sources</id>
<goals>
<goal>jar-no-fork</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<version>${maven-javadoc-plugin.version}</version>
<executions>
<execution>
<id>attach-javadocs</id>
<goals>
<goal>jar</goal>
</goals>
</execution>
</executions>
<configuration>
<doclint>none</doclint>
</configuration>
</plugin>
<!-- We want to sign the artifact, the POM, and all attached artifacts -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-gpg-plugin</artifactId>
<version>${maven-gpg-plugin.version}</version>
<configuration>
<passphrase>${gpg.passphrase}</passphrase>
<useAgent>${gpg.useagent}</useAgent>
</configuration>
<executions>
<execution>
<goals>
<goal>sign</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>net.nicoulaj.maven.plugins</groupId>
<artifactId>checksum-maven-plugin</artifactId>
<version>${maven-checksum-maven-plugin.version}</version>
<executions>
<execution>
<id>source-release-checksum</id>
<goals>
<goal>files</goal>
</goals>
</execution>
</executions>
<configuration>
<algorithms>
<algorithm>SHA-512</algorithm>
<algorithm>SHA-256</algorithm>
<algorithm>SHA-1</algorithm>
<algorithm>MD5</algorithm>
</algorithms>
<csvSummary>false</csvSummary>
<fileSets>
<fileSet>
<directory>${project.build.directory}</directory>
<includes>
<include>${project.artifactId}-${project.version}-sources.jar</include>
<include>${project.artifactId}-${project.version}-package.tar.gz</include>
<!--XXX: keep this in sync with distribution/pom.xml <finalName> tag-->
<!-- include>camel-kafka-connector-${project.version}-src.zip</include-->
</includes>
</fileSet>
</fileSets>
<failIfNoFiles>false
</failIfNoFiles><!-- usually, no file to do checksum: don't consider error -->
</configuration>
</plugin>
<plugin>
<groupId>org.cyclonedx</groupId>
<artifactId>cyclonedx-maven-plugin</artifactId>
<version>${cyclonedx-maven-plugin-version}</version>
<inherited>false</inherited>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>makeAggregateBom</goal>
</goals>
</execution>
</executions>
<configuration>
<outputName>camel-kamelets-${project.version}</outputName>
</configuration>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>sbom</id>
<build>
<plugins>
<plugin>
<groupId>org.cyclonedx</groupId>
<artifactId>cyclonedx-maven-plugin</artifactId>
<version>${cyclonedx-maven-plugin-version}</version>
<inherited>false</inherited>
<configuration>
<outputName>camel-kamelets-sbom</outputName>
<outputDirectory>${project.basedir}/camel-kamelets-sbom/</outputDirectory>
</configuration>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>makeAggregateBom</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
</profiles>
</project>