<?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">

    <parent>
        <groupId>org.apache.camel</groupId>
        <artifactId>camel-dependencies</artifactId>
        <version>3.10.0</version>
    </parent>

    <modelVersion>4.0.0</modelVersion>
    <groupId>org.apache.camel.k</groupId>
    <artifactId>camel-k-runtime-project</artifactId>
    <version>1.8.0-SNAPSHOT</version>
    <packaging>pom</packaging>

    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>

        <maven.compiler.release>11</maven.compiler.release>
        <maven.compiler.source>11</maven.compiler.source>
        <maven.compiler.target>11</maven.compiler.target>

        <camel-version>3.10.0</camel-version>

        <!-- quarkus -->
        <camel-quarkus-version>2.0.0-M1</camel-quarkus-version>
        <graalvm-version>21.0.0</graalvm-version>
        <quarkus-version>2.0.0.Alpha3</quarkus-version>

        <!-- camel-k -->
        <groovy-version>3.0.7</groovy-version>
        <spock-version>2.0-groovy-3.0</spock-version>
        <immutables-version>2.8.9-ea-1</immutables-version>
        <semver4j-version>3.1.0</semver4j-version>

        <!-- overridden camel dependencies versions -->
        <javapoet-version>1.13.0</javapoet-version>
        <json-schema-validator-version>2.2.14</json-schema-validator-version>

        <!-- plugins -->
        <gmavenplus-plugin-version>1.12.1</gmavenplus-plugin-version>
        <maven-compiler-plugin-version>3.8.1</maven-compiler-plugin-version>
        <maven-surefire-plugin-version>3.0.0-M5</maven-surefire-plugin-version>
        <maven-remote-resources-plugin-version>1.7.0</maven-remote-resources-plugin-version>
        <maven-failsafe-plugin-version>3.0.0-M5</maven-failsafe-plugin-version>
        <versions-maven-plugin-version>2.8.1</versions-maven-plugin-version>
        <directory-maven-plugin-version>0.3.1</directory-maven-plugin-version>
        <exec-maven-plugin-version>3.0.0</exec-maven-plugin-version>
        <mycila-license-version>4.1</mycila-license-version>
        <maven-checkstyle-plugin-version>3.1.2</maven-checkstyle-plugin-version>
        <maven-checkstyle-version>8.26</maven-checkstyle-version>
        <maven-gpg-plugin-version>3.0.1</maven-gpg-plugin-version>
        <maven-deploy-plugin-version>3.0.0-M1</maven-deploy-plugin-version>
        <maven-javadoc-plugin-version>3.3.0</maven-javadoc-plugin-version>
        <maven-source-plugin-version>3.2.1</maven-source-plugin-version>
        <maven-assembly-plugin-version>3.3.0</maven-assembly-plugin-version>
        <jandex-maven-plugin-version>1.1.0</jandex-maven-plugin-version>
        <build-helper-maven-plugin-version>3.2.0</build-helper-maven-plugin-version>
        <maven-jar-plugin-version>3.2.0</maven-jar-plugin-version>
        <maven-invoker-plugin-version>3.2.1</maven-invoker-plugin-version>
        <maven-clean-plugin-version>3.1.0</maven-clean-plugin-version>
        <maven-enforcer-plugin-version>3.0.0-M3</maven-enforcer-plugin-version>
        <maven-resources-plugin-version>3.2.0</maven-resources-plugin-version>
        <maven-site-plugin-version>3.9.1</maven-site-plugin-version>
        <maven-pmd-plugin-version>3.14.0</maven-pmd-plugin-version>
        <maven-plugin-plugin-version>3.6.1</maven-plugin-plugin-version>
        <maven-version>3.6.3</maven-version>
        <maven-plugin-tools-version>3.6.1</maven-plugin-tools-version>
        <maven-shaded-version>3.2.0</maven-shaded-version>
    </properties>

     <developers>
        <developer>
        <name>The Apache Camel Team</name>
        <email>dev@camel.apache.org</email>
        <url>http://camel.apache.org</url>
        <organization>Apache Software Foundation</organization>
        <organizationUrl>http://apache.org/</organizationUrl>
        <properties>
            <picUrl>http://camel.apache.org/banner.data/apache-camel-7.png</picUrl>
        </properties>
        </developer>
    </developers>

    <issueManagement>
        <system>github</system>
        <url>https://github.com/apache/camel-k-runtime/issues</url>
    </issueManagement>

    <scm>
        <connection>scm:git:http://gitbox.apache.org/repos/asf/camel-k-runtime.git</connection>
        <developerConnection>scm:git:https://gitbox.apache.org/repos/asf/camel-k-runtime.git</developerConnection>
        <url>https://gitbox.apache.org/repos/asf?p=camel-k-runtime.git;a=summary</url>
        <tag>camel-k-runtime-project-1.5.0</tag>
    </scm>

    <build>
        <pluginManagement>
            <plugins>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-clean-plugin</artifactId>
                    <version>${maven-clean-plugin-version}</version>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-enforcer-plugin</artifactId>
                    <version>${maven-enforcer-plugin-version}</version>
                    <executions>
                      <execution>
                      <id>enforce-maven</id>
                        <goals>
                          <goal>enforce</goal>
                        </goals>
                        <configuration>
                          <rules>
                            <requireMavenVersion>
                              <version>${maven-version}</version>
                            </requireMavenVersion>
                          </rules>
                        </configuration>
                      </execution>
                    </executions>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-resources-plugin</artifactId>
                    <version>${maven-resources-plugin-version}</version>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-site-plugin</artifactId>
                    <version>${maven-site-plugin-version}</version>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-compiler-plugin</artifactId>
                    <version>${maven-compiler-plugin-version}</version>
                    <configuration>
                        <compilerArgs>
                            <arg>-Xlint:deprecation</arg>
                            <arg>-Xlint:unchecked</arg>
                        </compilerArgs>
                    </configuration>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-surefire-plugin</artifactId>
                    <version>${maven-surefire-plugin-version}</version>
                    <configuration>
                        <failIfNoTests>false</failIfNoTests>
                    </configuration>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-failsafe-plugin</artifactId>
                    <version>${maven-failsafe-plugin-version}</version>
                    <configuration>
                        <failIfNoTests>false</failIfNoTests>
                    </configuration>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-remote-resources-plugin</artifactId>
                    <version>${maven-remote-resources-plugin-version}</version>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-checkstyle-plugin</artifactId>
                    <version>${maven-checkstyle-plugin-version}</version>
                    <dependencies>
                        <dependency>
                            <groupId>org.apache.camel</groupId>
                            <artifactId>camel-buildtools</artifactId>
                            <version>${camel-version}</version>
                        </dependency>
                        <dependency>
                            <groupId>com.puppycrawl.tools</groupId>
                            <artifactId>checkstyle</artifactId>
                            <version>${maven-checkstyle-version}</version>
                        </dependency>
                    </dependencies>
                </plugin>
                <plugin>
                    <groupId>org.jboss.jandex</groupId>
                    <artifactId>jandex-maven-plugin</artifactId>
                    <version>${jandex-maven-plugin-version}</version>
                    <dependencies>
                        <dependency>
                            <groupId>org.jboss</groupId>
                            <artifactId>jandex</artifactId>
                            <version>${jandex-version}</version>
                        </dependency>
                    </dependencies>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-pmd-plugin</artifactId>
                    <version>${maven-pmd-plugin-version}</version>
                </plugin>
                <plugin>
                    <groupId>org.codehaus.mojo</groupId>
                    <artifactId>versions-maven-plugin</artifactId>
                    <version>${versions-maven-plugin-version}</version>
                </plugin>
                <plugin>
                    <groupId>org.commonjava.maven.plugins</groupId>
                    <artifactId>directory-maven-plugin</artifactId>
                    <version>${directory-maven-plugin-version}</version>
                </plugin>
                <plugin>
                    <groupId>com.mycila</groupId>
                    <artifactId>license-maven-plugin</artifactId>
                    <version>${mycila-license-version}</version>
                    <dependencies>
                        <dependency>
                            <groupId>org.apache.camel</groupId>
                            <artifactId>camel-buildtools</artifactId>
                            <version>${camel-version}</version>
                        </dependency>
                    </dependencies>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-gpg-plugin</artifactId>
                    <version>${maven-gpg-plugin-version}</version>
                </plugin>
                <plugin>
                    <inherited>true</inherited>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-deploy-plugin</artifactId>
                    <version>${maven-deploy-plugin-version}</version>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-source-plugin</artifactId>
                    <version>${maven-source-plugin-version}</version>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-javadoc-plugin</artifactId>
                    <version>${maven-javadoc-plugin-version}</version>
                </plugin>
                <plugin>
                    <groupId>org.apache.camel</groupId>
                    <artifactId>camel-component-maven-plugin</artifactId>
                    <version>${camel-version}</version>
                </plugin>
                <plugin>
                    <groupId>org.apache.camel</groupId>
                    <artifactId>camel-package-maven-plugin</artifactId>
                    <version>${camel-version}</version>
                </plugin>
                <plugin>
                    <groupId>org.codehaus.gmavenplus</groupId>
                    <artifactId>gmavenplus-plugin</artifactId>
                    <version>${gmavenplus-plugin-version}</version>
                </plugin>
                <plugin>
                    <groupId>org.jetbrains.kotlin</groupId>
                    <artifactId>kotlin-maven-plugin</artifactId>
                    <version>${kotlin-version}</version>
                </plugin>
                <plugin>
                    <groupId>org.codehaus.mojo</groupId>
                    <artifactId>build-helper-maven-plugin</artifactId>
                    <version>${build-helper-maven-plugin-version}</version>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-jar-plugin</artifactId>
                    <version>${maven-jar-plugin-version}</version>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-plugin-plugin</artifactId>
                    <version>${maven-plugin-plugin-version}</version>
                </plugin>
                <plugin>
                    <groupId>io.quarkus</groupId>
                    <artifactId>quarkus-maven-plugin</artifactId>
                    <version>${quarkus-version}</version>
                </plugin>
            </plugins>
        </pluginManagement>
        <plugins>
            <plugin>
                <groupId>org.commonjava.maven.plugins</groupId>
                <artifactId>directory-maven-plugin</artifactId>
                <executions>
                    <execution>
                        <id>directories</id>
                        <goals>
                            <goal>highest-basedir</goal>
                        </goals>
                        <phase>initialize</phase>
                        <configuration>
                            <property>camel-k.project.root</property>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
            <plugin>
                <groupId>org.codehaus.mojo</groupId>
                <artifactId>build-helper-maven-plugin</artifactId>
                <executions>
                    <execution>
                        <phase>generate-sources</phase>
                        <goals>
                            <goal>add-source</goal>
                            <goal>add-resource</goal>
                        </goals>
                        <configuration>
                            <sources>
                                <source>src/generated/java</source>
                            </sources>
                            <resources>
                                <resource>
                                    <directory>src/generated/resources</directory>
                                </resource>
                            </resources>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
        </plugins>
    </build>

    <modules>
        <module>support</module>
        <module>components</module>

        <module>camel-k-core</module>
        <module>camel-k-loader-jsh</module>

        <module>camel-k-cron</module>
        <module>camel-k-cloudevents</module>
        <module>camel-k-knative</module>
        <module>camel-k-master</module>
        <module>camel-k-webhook</module>
        <module>camel-k-kamelet-reify</module>

        <module>camel-k-runtime</module>

        <module>itests</module>
        <module>examples</module>
        <module>distribution</module>
    </modules>

    <repositories>
        <!--
        <repository>
            <id>apache.staging-camel-quarkus</id>
            <url>https://repository.apache.org/content/repositories/orgapachecamel-1306</url>
            <name>Apache Snapshot Repo</name>
            <snapshots>
                <enabled>false</enabled>
            </snapshots>
            <releases>
                <enabled>true</enabled>
            </releases>
        </repository>
        -->
        <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.staging-camel-quarkus</id>
            <url>https://repository.apache.org/content/repositories/orgapachecamel-1306</url>
            <name>Apache Snapshot Repo</name>
            <snapshots>
                <enabled>false</enabled>
            </snapshots>
            <releases>
                <enabled>true</enabled>
            </releases>
        </pluginRepository>
        -->
        <pluginRepository>
            <id>apache.snapshots</id>
            <url>https://repository.apache.org/snapshots/</url>
            <snapshots>
                <enabled>true</enabled>
            </snapshots>
            <releases>
                <enabled>false</enabled>
            </releases>
        </pluginRepository>
    </pluginRepositories>

    <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>org.apache.camel</groupId>
                <artifactId>camel-bom</artifactId>
                <version>${camel-version}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
            <dependency>
                <groupId>com.fasterxml.jackson</groupId>
                <artifactId>jackson-bom</artifactId>
                <version>${jackson2-version}</version>
                <scope>import</scope>
                <type>pom</type>
            </dependency>
            <dependency>
                <groupId>org.jetbrains.kotlin</groupId>
                <artifactId>kotlin-bom</artifactId>
                <version>${kotlin-version}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
            <dependency>
                <groupId>org.apache.camel.quarkus</groupId>
                <artifactId>camel-quarkus-bom</artifactId>
                <version>${camel-quarkus-version}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>

            <!-- components -->
            <dependency>
                <groupId>org.apache.camel.k</groupId>
                <artifactId>camel-cloudevents</artifactId>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.camel.k</groupId>
                <artifactId>camel-knative-api</artifactId>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.camel.k</groupId>
                <artifactId>camel-knative</artifactId>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.camel.k</groupId>
                <artifactId>camel-knative-http</artifactId>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.camel.k</groupId>
                <artifactId>camel-knative-test</artifactId>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.camel.k</groupId>
                <artifactId>camel-kamelet</artifactId>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.camel.k</groupId>
                <artifactId>camel-kamelet-reify</artifactId>
                <version>${project.version}</version>
            </dependency>

            <!-- runtime -->
            <dependency>
                <groupId>org.apache.camel.k</groupId>
                <artifactId>camel-k-core-api</artifactId>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.camel.k</groupId>
                <artifactId>camel-k-core-support</artifactId>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.camel.k</groupId>
                <artifactId>camel-k-core</artifactId>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.camel.k</groupId>
                <artifactId>camel-k-core-deployment</artifactId>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.camel.k</groupId>
                <artifactId>camel-k-cloudevents</artifactId>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.camel.k</groupId>
                <artifactId>camel-k-cloudevents-deployment</artifactId>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.camel.k</groupId>
                <artifactId>camel-k-master-impl</artifactId>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.camel.k</groupId>
                <artifactId>camel-k-master</artifactId>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.camel.k</groupId>
                <artifactId>camel-k-master-deployment</artifactId>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.camel.k</groupId>
                <artifactId>camel-k-knative-impl</artifactId>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.camel.k</groupId>
                <artifactId>camel-k-knative</artifactId>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.camel.k</groupId>
                <artifactId>camel-k-knative-deployment</artifactId>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.camel.k</groupId>
                <artifactId>camel-k-knative-producer</artifactId>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.camel.k</groupId>
                <artifactId>camel-k-knative-producer-deployment</artifactId>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.camel.k</groupId>
                <artifactId>camel-k-knative-consumer</artifactId>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.camel.k</groupId>
                <artifactId>camel-k-knative-consumer-deployment</artifactId>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.camel.k</groupId>
                <artifactId>camel-k-cron-impl</artifactId>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.camel.k</groupId>
                <artifactId>camel-k-cron</artifactId>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.camel.k</groupId>
                <artifactId>camel-k-cron-deployment</artifactId>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.camel.k</groupId>
                <artifactId>camel-k-webhook-impl</artifactId>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.camel.k</groupId>
                <artifactId>camel-k-webhook</artifactId>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.camel.k</groupId>
                <artifactId>camel-k-webhook-deployment</artifactId>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.camel.k</groupId>
                <artifactId>camel-k-kamelet-reify</artifactId>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.camel.k</groupId>
                <artifactId>camel-k-kamelet-reify-deployment</artifactId>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.camel.k</groupId>
                <artifactId>camel-k-runtime</artifactId>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.camel.k</groupId>
                <artifactId>camel-k-runtime-deployment</artifactId>
                <version>${project.version}</version>
            </dependency>

            <!-- loaders -->
            <dependency>
                <groupId>org.apache.camel.k</groupId>
                <artifactId>camel-k-loader-jsh</artifactId>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.camel.k</groupId>
                <artifactId>camel-k-loader-jsh-deployment</artifactId>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.camel.k</groupId>
                <artifactId>camel-k-loader-jsh-impl</artifactId>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.camel.k</groupId>
                <artifactId>camel-k-loader-yaml</artifactId>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.camel.k</groupId>
                <artifactId>camel-k-loader-yaml-deployment</artifactId>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.camel.k</groupId>
                <artifactId>camel-k-loader-yaml-impl</artifactId>
                <version>${project.version}</version>
            </dependency>

            <!-- itests -->
            <dependency>
                <groupId>org.apache.camel.k</groupId>
                <artifactId>camel-k-itests-loader-inspector</artifactId>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.camel.k</groupId>
                <artifactId>camel-k-itests-runtime-inspector</artifactId>
                <version>${project.version}</version>
            </dependency>

            <!-- support -->
            <dependency>
                <groupId>org.apache.camel.k</groupId>
                <artifactId>camel-k-annotations</artifactId>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.camel.k</groupId>
                <artifactId>camel-k-apt</artifactId>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.camel.k</groupId>
                <artifactId>camel-k-test</artifactId>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.camel.k</groupId>
                <artifactId>camel-k-catalog-model</artifactId>
                <version>${project.version}</version>
            </dependency>

            <!-- graalvm -->
            <dependency>
                <groupId>org.graalvm.js</groupId>
                <artifactId>js</artifactId>
                <version>${graalvm-version}</version>
            </dependency>
            <dependency>
                <groupId>org.graalvm.nativeimage</groupId>
                <artifactId>svm</artifactId>
                <version>${graalvm-version}</version>
                <scope>provided</scope>
            </dependency>

            <!-- groovy -->
            <dependency>
                <groupId>org.codehaus.groovy</groupId>
                <artifactId>groovy</artifactId>
                <version>${groovy-version}</version>
            </dependency>
            <dependency>
                <groupId>org.codehaus.groovy</groupId>
                <artifactId>groovy-xml</artifactId>
                <version>${groovy-version}</version>
            </dependency>
            <dependency>
                <groupId>org.codehaus.groovy</groupId>
                <artifactId>groovy-json</artifactId>
                <version>${groovy-version}</version>
            </dependency>
            <dependency>
                <groupId>org.codehaus.groovy</groupId>
                <artifactId>groovy-yaml</artifactId>
                <version>${groovy-version}</version>
            </dependency>
            <dependency>
                <groupId>org.codehaus.groovy</groupId>
                <artifactId>groovy-test</artifactId>
                <version>${groovy-version}</version>
            </dependency>

            <!-- misc -->
            <dependency>
                <groupId>io.rest-assured</groupId>
                <artifactId>rest-assured</artifactId>
                <version>${rest-assured-version}</version>
            </dependency>
            <dependency>
                <groupId>org.awaitility</groupId>
                <artifactId>awaitility</artifactId>
                <version>${awaitility-version}</version>
            </dependency>
            <dependency>
                <groupId>org.yaml</groupId>
                <artifactId>snakeyaml</artifactId>
                <version>${snakeyaml-version}</version>
            </dependency>
            <dependency>
                <groupId>com.vdurmont</groupId>
                <artifactId>semver4j</artifactId>
                <version>${semver4j-version}</version>
            </dependency>
            <dependency>
                <groupId>org.immutables</groupId>
                <artifactId>value</artifactId>
                <version>${immutables-version}</version>
            </dependency>
            <dependency>
                <groupId>org.jboss</groupId>
                <artifactId>jandex</artifactId>
                <version>${jandex-version}</version>
            </dependency>
            <dependency>
                <groupId>com.squareup</groupId>
                <artifactId>javapoet</artifactId>
                <version>${javapoet-version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.logging.log4j</groupId>
                <artifactId>log4j-core</artifactId>
                <version>${log4j2-version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.logging.log4j</groupId>
                <artifactId>log4j-slf4j-impl</artifactId>
                <version>${log4j2-version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.logging.log4j</groupId>
                <artifactId>log4j-jcl</artifactId>
                <version>${log4j2-version}</version>
            </dependency>
            <dependency>
                <groupId>org.junit.jupiter</groupId>
                <artifactId>junit-jupiter</artifactId>
                <version>${junit-jupiter-version}</version>
            </dependency>
            <dependency>
                <groupId>org.assertj</groupId>
                <artifactId>assertj-core</artifactId>
                <version>${assertj-version}</version>
            </dependency>
            <dependency>
                <groupId>org.hamcrest</groupId>
                <artifactId>hamcrest-core</artifactId>
                <version>${hamcrest-version}</version>
            </dependency>

            <!-- maven -->
            <dependency>
                <groupId>org.apache.maven</groupId>
                <artifactId>maven-core</artifactId>
                <version>${maven-version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.maven.plugin-tools</groupId>
                <artifactId>maven-plugin-annotations</artifactId>
                <version>${maven-plugin-tools-version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.maven.shared</groupId>
                <artifactId>maven-common-artifact-filters</artifactId>
                <version>${maven-shaded-version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.maven</groupId>
                <artifactId>maven-plugin-api</artifactId>
                <version>${maven-version}</version>
            </dependency>

        </dependencies>
    </dependencyManagement>

    <profiles>
        <profile>
            <id>deps</id>
            <activation>
                <activeByDefault>false</activeByDefault>
            </activation>
            <build>
                <defaultGoal>initialize versions:display-dependency-updates</defaultGoal>
                <plugins>
                    <plugin>
                        <groupId>org.codehaus.mojo</groupId>
                        <artifactId>versions-maven-plugin</artifactId>
                        <configuration>
                            <rulesUri>file:///${camel-k.project.root}/.maven-versions-rules.xml</rulesUri>
                        </configuration>
                    </plugin>
                </plugins>
            </build>
        </profile>
        <profile>
            <id>catalog</id>
            <activation>
                <activeByDefault>false</activeByDefault>
            </activation>
            <build>
                <defaultGoal>generate-resources</defaultGoal>
                <plugins>
                    <plugin>
                        <groupId>${project.groupId}</groupId>
                        <artifactId>camel-k-maven-plugin</artifactId>
                        <version>${project.version}</version>
                        <executions>
                            <execution>
                                <id>generate-catalog</id>
                                <goals>
                                    <goal>generate-catalog</goal>
                                </goals>
                            </execution>
                        </executions>
                        <dependencies>
                            <dependency>
                                <groupId>org.apache.camel</groupId>
                                <artifactId>camel-catalog</artifactId>
                                <version>${camel-version}</version>
                            </dependency>
                        </dependencies>
                    </plugin>
                </plugins>
             </build>
        </profile>
        <profile>
            <id>release</id>
            <activation>
                <property>
                    <name>release</name>
                </property>
            </activation>
            <build>
                <plugins>
                    <!-- 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>
                    </plugin>
                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-source-plugin</artifactId>
                        <executions>
                            <execution>
                                <id>attach-sources</id>
                                <goals>
                                    <goal>jar</goal>
                                </goals>
                            </execution>
                        </executions>
                    </plugin>
                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-javadoc-plugin</artifactId>
                        <executions>
                            <execution>
                                <id>attach-javadocs</id>
                                <goals>
                                    <goal>jar</goal>
                                </goals>
                            </execution>
                        </executions>
                        <configuration>
                            <additionalOptions>${javadoc.opts}</additionalOptions>
                            <source>8</source>
                        </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>
                        <configuration>
                            <passphrase>${gpg.passphrase}</passphrase>
                            <useAgent>${gpg.useagent}</useAgent>
                        </configuration>
                        <executions>
                            <execution>
                                <goals>
                                    <goal>sign</goal>
                                </goals>
                            </execution>
                        </executions>
                    </plugin>
                </plugins>
            </build>
        </profile>
        <profile>
            <id>doclint-java8-disable</id>
            <activation>
                <jdk>[1.8,)</jdk>
            </activation>
            <properties>
                <javadoc.opts>-Xdoclint:none</javadoc.opts>
            </properties>
        </profile>
        <profile>
            <id>license</id>
            <build>
                <defaultGoal>license:format</defaultGoal>
                <plugins>
                    <plugin>
                        <groupId>com.mycila</groupId>
                        <artifactId>license-maven-plugin</artifactId>
                        <configuration>
                            <header>header.txt</header>
                            <excludes>
                                <exclude>KEYS</exclude>
                                <exclude>**/NOTICE</exclude>
                                <exclude>**/LICENSE</exclude>
                                <exclude>**/NOTICE.txt</exclude>
                                <exclude>**/LICENSE.txt</exclude>
                                <exclude>doap.rdf</exclude>
                                <exclude>**/README</exclude>
                                <exclude>**/*.adoc</exclude>
                                <exclude>**/node_modules/**</exclude>
                                <exclude>**/cacerts</exclude>
                                <exclude>**/*.p12</exclude>
                                <exclude>**/*.txt</exclude>
                                <exclude>.mvn/**</exclude>
                                <exclude>mvnw*</exclude>
                                <exclude>**/META-INF/persistence*.xsd</exclude>
                                <exclude>**/MyRoutesWithPackage.java</exclude>
                            </excludes>
                            <mapping>
                                <java>SLASHSTAR_STYLE</java>
                                <groovy>SLASHSTAR_STYLE</groovy>
                                <properties>CAMEL_PROPERTIES_STYLE</properties>
                                <spring.factories>CAMEL_PROPERTIES_STYLE</spring.factories>
                                <spring.provides>CAMEL_PROPERTIES_STYLE</spring.provides>
                            </mapping>
                            <headerDefinitions>
                                <headerDefinition>license-properties-headerdefinition.xml</headerDefinition>
                            </headerDefinitions>
                        </configuration>
                    </plugin>
                </plugins>
            </build>
        </profile>
        <profile>
            <id>sourcecheck</id>
            <build>
                <plugins>
                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-checkstyle-plugin</artifactId>
                        <executions>
                            <execution>
                                <id>default-cli</id>
                                <phase>validate</phase>
                                <configuration>
                                    <includeResources>false</includeResources>
                                    <configLocation>camel-checkstyle.xml</configLocation>
                                    <consoleOutput>true</consoleOutput>
                                    <failsOnError>${checkstyle.failOnViolation}</failsOnError>
                                    <linkXRef>false</linkXRef>
                                    <suppressionsLocation>camel-checkstyle-suppressions.xml</suppressionsLocation>
                                    <encoding>UTF-8</encoding>
                                    <sourceDirectories>
                                        <sourceDirectory>${basedir}/src</sourceDirectory>
                                    </sourceDirectories>
                                    <headerLocation>header-java.txt</headerLocation>
                                    <includes>**/*.java,**/*.groovy,**/*.scala,**/*.properties,**/*.xml,**/*.xsd</includes>
                                    <excludes>**/MyRoutes*.java,**/routes*.java,**/verify.groovy,**/MyRouteTemplate*.java,**/MySource*.java</excludes>
                                </configuration>
                                <goals>
                                    <goal>checkstyle</goal>
                                </goals>
                            </execution>
                        </executions>
                    </plugin>
                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-pmd-plugin</artifactId>
                        <executions>
                            <execution>
                                <goals>
                                    <goal>check</goal>
                                </goals>
                            </execution>
                        </executions>
                        <configuration>
                            <rulesets>
                                <ruleset>file:///${camel-k.project.root}/support/pmd-ruleset.xml</ruleset>
                            </rulesets>
                            <analysisCache>false</analysisCache>
                            <printFailingErrors>true</printFailingErrors>
                            <failOnViolation>true</failOnViolation>
                            <linkXRef>false</linkXRef>
                            <excludeRoots>
                                <excludeRoot>${project.basedir}/src/generated</excludeRoot>
                                <excludeRoot>${project.build.directory}/generated-sources</excludeRoot>
                            </excludeRoots>
                        </configuration>
                    </plugin>
                </plugins>
            </build>
        </profile>

        <profile>
            <id>docker</id>
            <activation>
                <property>
                    <name>docker</name>
                </property>
            </activation>
            <properties>
                <quarkus.native.container-build>true</quarkus.native.container-build>
                <quarkus.native.container-runtime>docker</quarkus.native.container-runtime>
                <quarkus.native.builder-image>quay.io/quarkus/ubi-quarkus-native-image:${graalvm-version}-java11</quarkus.native.builder-image>
            </properties>
        </profile>
        <profile>
            <id>podman</id>
            <activation>
                <property>
                    <name>podman</name>
                </property>
            </activation>
            <properties>
                <quarkus.native.container-build>true</quarkus.native.container-build>
                <quarkus.native.container-runtime>podman</quarkus.native.container-runtime>
                <quarkus.native.builder-image>quay.io/quarkus/ubi-quarkus-native-image:${graalvm-version}-java11</quarkus.native.builder-image>
            </properties>
        </profile>
    </profiles>
</project>
