You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by da...@apache.org on 2019/11/30 16:38:22 UTC
[camel-quarkus] branch master updated: Scripts to sort pom.xml
files (#492)
This is an automated email from the ASF dual-hosted git repository.
davsclaus pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel-quarkus.git
The following commit(s) were added to refs/heads/master by this push:
new b1ad98c Scripts to sort pom.xml files (#492)
b1ad98c is described below
commit b1ad98c284d87a6c55bb9c4bcc6389508154cb04
Author: Peter Palaga <pp...@redhat.com>
AuthorDate: Sat Nov 30 17:38:11 2019 +0100
Scripts to sort pom.xml files (#492)
* Scripts to sort pom.xml files
* Sort POMs using cd extensions && mvn groovy:execute@sort-poms
---
docs/modules/ROOT/pages/contributor-guide.adoc | 1 +
extensions/pom.xml | 22 +++-
integration-tests/pom.xml | 10 +-
poms/bom-deployment/pom.xml | 105 +++++++--------
poms/bom/pom.xml | 161 +++++++++++-----------
tooling/scripts/sort-poms.groovy | 176 +++++++++++++++++++++++++
6 files changed, 334 insertions(+), 141 deletions(-)
diff --git a/docs/modules/ROOT/pages/contributor-guide.adoc b/docs/modules/ROOT/pages/contributor-guide.adoc
index 4b92062..7575f7b 100644
--- a/docs/modules/ROOT/pages/contributor-guide.adoc
+++ b/docs/modules/ROOT/pages/contributor-guide.adoc
@@ -118,6 +118,7 @@ may consider omitting explicit `nameBase` in some cases.
+
* Run `mvn license:format -Plicense` to add license headers to the new files.
* Run `mvn process-resources` to re-generate the list of extensions and the Camel Quarkus Catalog
+* Run `cd extensions && mvn groovy:execute@sort-poms` to sort elements in various POM files properly
* Squash your commits
Good luck!
diff --git a/extensions/pom.xml b/extensions/pom.xml
index e2d77e3..f745376 100644
--- a/extensions/pom.xml
+++ b/extensions/pom.xml
@@ -44,7 +44,9 @@
<!-- extensions a..z -->
<module>attachments</module>
+ <module>aws-ecs</module>
<module>aws-eks</module>
+ <module>aws-kms</module>
<module>aws-s3</module>
<module>aws-sns</module>
<module>aws-sqs</module>
@@ -88,10 +90,8 @@
<module>twitter</module>
<module>validator</module>
<module>vm</module>
- <module>zipfile</module>
<module>xslt</module>
- <module>aws-kms</module>
- <module>aws-ecs</module>
+ <module>zipfile</module>
</modules>
<build>
@@ -111,6 +111,22 @@
<source>file:///${project.basedir}/../tooling/scripts/validate-extension-metadata.groovy</source>
</configuration>
</execution>
+ <execution>
+ <!-- Can be called manually using cd extensions && mvn groovy:execute@sort-poms -->
+ <id>sort-poms</id>
+ <inherited>false</inherited>
+ <goals>
+ <goal>execute</goal>
+ </goals>
+ <phase>none</phase>
+ <configuration>
+ <properties>
+ <sortModulesPaths>pom.xml,../integration-tests/pom.xml</sortModulesPaths>
+ <sortDependencyManagementPaths>../poms/bom/pom.xml,../poms/bom-deployment/pom.xml</sortDependencyManagementPaths>
+ </properties>
+ <source>file:///${project.basedir}/../tooling/scripts/sort-poms.groovy</source>
+ </configuration>
+ </execution>
</executions>
<dependencies>
<dependency>
diff --git a/integration-tests/pom.xml b/integration-tests/pom.xml
index c112de4..3f5a5b2 100644
--- a/integration-tests/pom.xml
+++ b/integration-tests/pom.xml
@@ -109,9 +109,11 @@
<module>core-main</module>
<module>core-impl</module>
+ <!-- Sort using cd extensions && mvn groovy:execute@sort-poms -->
<!-- extensions a..z -->
<module>aws</module>
<module>bean</module>
+ <module>bean-validator</module>
<module>controlbus</module>
<module>csv</module>
<module>dataformat</module>
@@ -133,21 +135,19 @@
<module>opentracing</module>
<module>paho</module>
<module>pdf</module>
- <module>platform-http-engine</module>
<module>platform-http</module>
+ <module>platform-http-engine</module>
<module>salesforce</module>
- <module>servlet</module>
<module>scheduler</module>
+ <module>servlet</module>
<module>sjms</module>
<module>slack</module>
<module>snakeyaml</module>
<module>tarfile</module>
<module>twitter</module>
<module>validator</module>
- <module>zipfile</module>
<module>xslt</module>
- <module>bean-validator</module>
-
+ <module>zipfile</module>
</modules>
<build>
diff --git a/poms/bom-deployment/pom.xml b/poms/bom-deployment/pom.xml
index ff19ba4..b2a7aa0 100644
--- a/poms/bom-deployment/pom.xml
+++ b/poms/bom-deployment/pom.xml
@@ -60,42 +60,28 @@
<scope>import</scope>
</dependency>
- <!-- Camel Quarkus support deployment modules, in alphabetical order -->
- <dependency>
- <groupId>org.apache.camel.quarkus</groupId>
- <artifactId>camel-quarkus-support-common-deployment</artifactId>
- <version>${camel-quarkus.version}</version>
- </dependency>
- <dependency>
- <groupId>org.apache.camel.quarkus</groupId>
- <artifactId>camel-quarkus-support-commons-logging-deployment</artifactId>
- <version>${camel-quarkus.version}</version>
- </dependency>
- <dependency>
- <groupId>org.apache.camel.quarkus</groupId>
- <artifactId>camel-quarkus-support-jetty-deployment</artifactId>
- <version>${camel-quarkus.version}</version>
- </dependency>
+ <!-- Sort using cd extensions && mvn groovy:execute@sort-poms -->
+ <!-- Dependencies a..z -->
+
+ <!--$ org.apache.camel.quarkus $-->
<dependency>
<groupId>org.apache.camel.quarkus</groupId>
- <artifactId>camel-quarkus-support-xstream-deployment</artifactId>
+ <artifactId>camel-quarkus-attachments-deployment</artifactId>
<version>${camel-quarkus.version}</version>
</dependency>
<dependency>
<groupId>org.apache.camel.quarkus</groupId>
- <artifactId>camel-quarkus-support-xalan-deployment</artifactId>
+ <artifactId>camel-quarkus-aws-ecs-deployment</artifactId>
<version>${camel-quarkus.version}</version>
</dependency>
<dependency>
<groupId>org.apache.camel.quarkus</groupId>
- <artifactId>camel-quarkus-support-xml-deployment</artifactId>
+ <artifactId>camel-quarkus-aws-eks-deployment</artifactId>
<version>${camel-quarkus.version}</version>
</dependency>
-
- <!-- Camel Quarkus deployment modules, in alphabetical order -->
<dependency>
<groupId>org.apache.camel.quarkus</groupId>
- <artifactId>camel-quarkus-aws-eks-deployment</artifactId>
+ <artifactId>camel-quarkus-aws-kms-deployment</artifactId>
<version>${camel-quarkus.version}</version>
</dependency>
<dependency>
@@ -125,12 +111,12 @@
</dependency>
<dependency>
<groupId>org.apache.camel.quarkus</groupId>
- <artifactId>camel-quarkus-core-cloud-deployment</artifactId>
+ <artifactId>camel-quarkus-controlbus-deployment</artifactId>
<version>${camel-quarkus.version}</version>
</dependency>
<dependency>
<groupId>org.apache.camel.quarkus</groupId>
- <artifactId>camel-quarkus-core-xml-deployment</artifactId>
+ <artifactId>camel-quarkus-core-cloud-deployment</artifactId>
<version>${camel-quarkus.version}</version>
</dependency>
<dependency>
@@ -140,7 +126,7 @@
</dependency>
<dependency>
<groupId>org.apache.camel.quarkus</groupId>
- <artifactId>camel-quarkus-controlbus-deployment</artifactId>
+ <artifactId>camel-quarkus-core-xml-deployment</artifactId>
<version>${camel-quarkus.version}</version>
</dependency>
<dependency>
@@ -170,32 +156,42 @@
</dependency>
<dependency>
<groupId>org.apache.camel.quarkus</groupId>
+ <artifactId>camel-quarkus-fhir-deployment</artifactId>
+ <version>${camel-quarkus.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.camel.quarkus</groupId>
<artifactId>camel-quarkus-file-deployment</artifactId>
<version>${camel-quarkus.version}</version>
</dependency>
<dependency>
<groupId>org.apache.camel.quarkus</groupId>
- <artifactId>camel-quarkus-infinispan-deployment</artifactId>
+ <artifactId>camel-quarkus-ftp-deployment</artifactId>
<version>${camel-quarkus.version}</version>
</dependency>
<dependency>
<groupId>org.apache.camel.quarkus</groupId>
- <artifactId>camel-quarkus-jackson-deployment</artifactId>
+ <artifactId>camel-quarkus-http-common-deployment</artifactId>
<version>${camel-quarkus.version}</version>
</dependency>
<dependency>
<groupId>org.apache.camel.quarkus</groupId>
- <artifactId>camel-quarkus-jdbc-deployment</artifactId>
+ <artifactId>camel-quarkus-hystrix-deployment</artifactId>
<version>${camel-quarkus.version}</version>
</dependency>
<dependency>
<groupId>org.apache.camel.quarkus</groupId>
- <artifactId>camel-quarkus-http-common-deployment</artifactId>
+ <artifactId>camel-quarkus-infinispan-deployment</artifactId>
<version>${camel-quarkus.version}</version>
</dependency>
<dependency>
<groupId>org.apache.camel.quarkus</groupId>
- <artifactId>camel-quarkus-hystrix-deployment</artifactId>
+ <artifactId>camel-quarkus-jackson-deployment</artifactId>
+ <version>${camel-quarkus.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.camel.quarkus</groupId>
+ <artifactId>camel-quarkus-jdbc-deployment</artifactId>
<version>${camel-quarkus.version}</version>
</dependency>
<dependency>
@@ -230,6 +226,11 @@
</dependency>
<dependency>
<groupId>org.apache.camel.quarkus</groupId>
+ <artifactId>camel-quarkus-netty-deployment</artifactId>
+ <version>${camel-quarkus.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.camel.quarkus</groupId>
<artifactId>camel-quarkus-netty-http-deployment</artifactId>
<version>${camel-quarkus.version}</version>
</dependency>
@@ -245,6 +246,11 @@
</dependency>
<dependency>
<groupId>org.apache.camel.quarkus</groupId>
+ <artifactId>camel-quarkus-pdf-deployment</artifactId>
+ <version>${camel-quarkus.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.camel.quarkus</groupId>
<artifactId>camel-quarkus-platform-http-deployment</artifactId>
<version>${camel-quarkus.version}</version>
</dependency>
@@ -265,6 +271,11 @@
</dependency>
<dependency>
<groupId>org.apache.camel.quarkus</groupId>
+ <artifactId>camel-quarkus-scheduler-deployment</artifactId>
+ <version>${camel-quarkus.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.camel.quarkus</groupId>
<artifactId>camel-quarkus-servlet-deployment</artifactId>
<version>${camel-quarkus.version}</version>
</dependency>
@@ -290,32 +301,32 @@
</dependency>
<dependency>
<groupId>org.apache.camel.quarkus</groupId>
- <artifactId>camel-quarkus-timer-deployment</artifactId>
+ <artifactId>camel-quarkus-support-common-deployment</artifactId>
<version>${camel-quarkus.version}</version>
</dependency>
<dependency>
<groupId>org.apache.camel.quarkus</groupId>
- <artifactId>camel-quarkus-twitter-deployment</artifactId>
+ <artifactId>camel-quarkus-support-commons-logging-deployment</artifactId>
<version>${camel-quarkus.version}</version>
</dependency>
<dependency>
<groupId>org.apache.camel.quarkus</groupId>
- <artifactId>camel-quarkus-validator-deployment</artifactId>
+ <artifactId>camel-quarkus-support-jetty-deployment</artifactId>
<version>${camel-quarkus.version}</version>
</dependency>
<dependency>
<groupId>org.apache.camel.quarkus</groupId>
- <artifactId>camel-quarkus-vm-deployment</artifactId>
+ <artifactId>camel-quarkus-support-xalan-deployment</artifactId>
<version>${camel-quarkus.version}</version>
</dependency>
<dependency>
<groupId>org.apache.camel.quarkus</groupId>
- <artifactId>camel-quarkus-xstream-common-deployment</artifactId>
+ <artifactId>camel-quarkus-support-xml-deployment</artifactId>
<version>${camel-quarkus.version}</version>
</dependency>
<dependency>
<groupId>org.apache.camel.quarkus</groupId>
- <artifactId>camel-quarkus-zipfile-deployment</artifactId>
+ <artifactId>camel-quarkus-support-xstream-deployment</artifactId>
<version>${camel-quarkus.version}</version>
</dependency>
<dependency>
@@ -325,32 +336,22 @@
</dependency>
<dependency>
<groupId>org.apache.camel.quarkus</groupId>
- <artifactId>camel-quarkus-attachments-deployment</artifactId>
- <version>${camel-quarkus.version}</version>
- </dependency>
- <dependency>
- <groupId>org.apache.camel.quarkus</groupId>
- <artifactId>camel-quarkus-fhir-deployment</artifactId>
- <version>${camel-quarkus.version}</version>
- </dependency>
- <dependency>
- <groupId>org.apache.camel.quarkus</groupId>
- <artifactId>camel-quarkus-ftp-deployment</artifactId>
+ <artifactId>camel-quarkus-timer-deployment</artifactId>
<version>${camel-quarkus.version}</version>
</dependency>
<dependency>
<groupId>org.apache.camel.quarkus</groupId>
- <artifactId>camel-quarkus-pdf-deployment</artifactId>
+ <artifactId>camel-quarkus-twitter-deployment</artifactId>
<version>${camel-quarkus.version}</version>
</dependency>
<dependency>
<groupId>org.apache.camel.quarkus</groupId>
- <artifactId>camel-quarkus-netty-deployment</artifactId>
+ <artifactId>camel-quarkus-validator-deployment</artifactId>
<version>${camel-quarkus.version}</version>
</dependency>
<dependency>
<groupId>org.apache.camel.quarkus</groupId>
- <artifactId>camel-quarkus-scheduler-deployment</artifactId>
+ <artifactId>camel-quarkus-vm-deployment</artifactId>
<version>${camel-quarkus.version}</version>
</dependency>
<dependency>
@@ -360,12 +361,12 @@
</dependency>
<dependency>
<groupId>org.apache.camel.quarkus</groupId>
- <artifactId>camel-quarkus-aws-kms-deployment</artifactId>
+ <artifactId>camel-quarkus-xstream-common-deployment</artifactId>
<version>${camel-quarkus.version}</version>
</dependency>
<dependency>
<groupId>org.apache.camel.quarkus</groupId>
- <artifactId>camel-quarkus-aws-ecs-deployment</artifactId>
+ <artifactId>camel-quarkus-zipfile-deployment</artifactId>
<version>${camel-quarkus.version}</version>
</dependency>
</dependencies>
diff --git a/poms/bom/pom.xml b/poms/bom/pom.xml
index 077236f..be3b06e 100644
--- a/poms/bom/pom.xml
+++ b/poms/bom/pom.xml
@@ -48,7 +48,10 @@
<scope>import</scope>
</dependency>
- <!-- Camel (in alphabetical order) -->
+ <!-- Sort using cd extensions && mvn groovy:execute@sort-poms -->
+ <!-- Dependencies a..z -->
+
+ <!--$ org.apache.camel $-->
<dependency>
<groupId>org.apache.camel</groupId>
<artifactId>apt</artifactId>
@@ -116,12 +119,12 @@
</dependency>
<dependency>
<groupId>org.apache.camel</groupId>
- <artifactId>camel-core</artifactId>
+ <artifactId>camel-controlbus</artifactId>
<version>${camel.version}</version>
</dependency>
<dependency>
<groupId>org.apache.camel</groupId>
- <artifactId>camel-controlbus</artifactId>
+ <artifactId>camel-core</artifactId>
<version>${camel.version}</version>
</dependency>
<dependency>
@@ -197,17 +200,17 @@
</dependency>
<dependency>
<groupId>org.apache.camel</groupId>
- <artifactId>camel-jaxp</artifactId>
+ <artifactId>camel-jackson</artifactId>
<version>${camel.version}</version>
</dependency>
<dependency>
<groupId>org.apache.camel</groupId>
- <artifactId>camel-jdbc</artifactId>
+ <artifactId>camel-jaxp</artifactId>
<version>${camel.version}</version>
</dependency>
<dependency>
<groupId>org.apache.camel</groupId>
- <artifactId>camel-jackson</artifactId>
+ <artifactId>camel-jdbc</artifactId>
<version>${camel.version}</version>
</dependency>
<dependency>
@@ -264,6 +267,11 @@
</dependency>
<dependency>
<groupId>org.apache.camel</groupId>
+ <artifactId>camel-netty</artifactId>
+ <version>${camel.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.camel</groupId>
<artifactId>camel-netty-http</artifactId>
<version>${camel.version}</version>
<exclusions>
@@ -275,11 +283,6 @@
</dependency>
<dependency>
<groupId>org.apache.camel</groupId>
- <artifactId>camel-netty</artifactId>
- <version>${camel.version}</version>
- </dependency>
- <dependency>
- <groupId>org.apache.camel</groupId>
<artifactId>camel-opentracing</artifactId>
<version>${camel.version}</version>
</dependency>
@@ -300,12 +303,12 @@
</dependency>
<dependency>
<groupId>org.apache.camel</groupId>
- <artifactId>camel-rest</artifactId>
+ <artifactId>camel-reactive-executor-vertx</artifactId>
<version>${camel.version}</version>
</dependency>
<dependency>
<groupId>org.apache.camel</groupId>
- <artifactId>camel-reactive-executor-vertx</artifactId>
+ <artifactId>camel-rest</artifactId>
<version>${camel.version}</version>
</dependency>
<dependency>
@@ -389,99 +392,70 @@
<version>${camel.version}</version>
</dependency>
- <!-- Camel Quarkus Support (in alphabetical order) -->
- <dependency>
- <groupId>org.apache.camel.quarkus</groupId>
- <artifactId>camel-quarkus-support-common</artifactId>
- <version>${camel-quarkus.version}</version>
- </dependency>
- <dependency>
- <groupId>org.apache.camel.quarkus</groupId>
- <artifactId>camel-quarkus-support-commons-logging</artifactId>
- <version>${camel-quarkus.version}</version>
- </dependency>
- <dependency>
- <groupId>org.apache.camel.quarkus</groupId>
- <artifactId>camel-quarkus-support-jetty</artifactId>
- <version>${camel-quarkus.version}</version>
- </dependency>
- <dependency>
- <groupId>org.apache.camel.quarkus</groupId>
- <artifactId>camel-quarkus-support-xstream</artifactId>
- <version>${camel-quarkus.version}</version>
- </dependency>
+ <!--$ org.apache.camel.quarkus $-->
<dependency>
<groupId>org.apache.camel.quarkus</groupId>
- <artifactId>camel-quarkus-support-xalan</artifactId>
- <version>${camel-quarkus.version}</version>
- </dependency>
- <dependency>
- <groupId>org.apache.camel.quarkus</groupId>
- <artifactId>camel-quarkus-support-xml</artifactId>
+ <artifactId>camel-quarkus-attachments</artifactId>
<version>${camel-quarkus.version}</version>
</dependency>
-
- <!-- Camel Quarkus Common (in alphabetical order) -->
<dependency>
<groupId>org.apache.camel.quarkus</groupId>
- <artifactId>camel-quarkus-core</artifactId>
+ <artifactId>camel-quarkus-aws-ecs</artifactId>
<version>${camel-quarkus.version}</version>
</dependency>
<dependency>
<groupId>org.apache.camel.quarkus</groupId>
- <artifactId>camel-quarkus-core-cloud</artifactId>
+ <artifactId>camel-quarkus-aws-eks</artifactId>
<version>${camel-quarkus.version}</version>
</dependency>
<dependency>
<groupId>org.apache.camel.quarkus</groupId>
- <artifactId>camel-quarkus-core-xml</artifactId>
+ <artifactId>camel-quarkus-aws-kms</artifactId>
<version>${camel-quarkus.version}</version>
</dependency>
<dependency>
<groupId>org.apache.camel.quarkus</groupId>
- <artifactId>camel-quarkus-http-common</artifactId>
+ <artifactId>camel-quarkus-aws-s3</artifactId>
<version>${camel-quarkus.version}</version>
</dependency>
-
- <!-- Quarkus Camel (in alphabetical order) -->
<dependency>
<groupId>org.apache.camel.quarkus</groupId>
- <artifactId>camel-quarkus-attachments</artifactId>
+ <artifactId>camel-quarkus-aws-sns</artifactId>
<version>${camel-quarkus.version}</version>
</dependency>
<dependency>
<groupId>org.apache.camel.quarkus</groupId>
- <artifactId>camel-quarkus-aws-eks</artifactId>
+ <artifactId>camel-quarkus-aws-sqs</artifactId>
<version>${camel-quarkus.version}</version>
</dependency>
<dependency>
<groupId>org.apache.camel.quarkus</groupId>
- <artifactId>camel-quarkus-aws-s3</artifactId>
+ <artifactId>camel-quarkus-bean</artifactId>
<version>${camel-quarkus.version}</version>
</dependency>
<dependency>
<groupId>org.apache.camel.quarkus</groupId>
- <artifactId>camel-quarkus-aws-sqs</artifactId>
+ <artifactId>camel-quarkus-bean-validator</artifactId>
<version>${camel-quarkus.version}</version>
</dependency>
<dependency>
<groupId>org.apache.camel.quarkus</groupId>
- <artifactId>camel-quarkus-aws-sns</artifactId>
+ <artifactId>camel-quarkus-controlbus</artifactId>
<version>${camel-quarkus.version}</version>
</dependency>
<dependency>
<groupId>org.apache.camel.quarkus</groupId>
- <artifactId>camel-quarkus-bean</artifactId>
+ <artifactId>camel-quarkus-core</artifactId>
<version>${camel-quarkus.version}</version>
</dependency>
<dependency>
<groupId>org.apache.camel.quarkus</groupId>
- <artifactId>camel-quarkus-bean-validator</artifactId>
+ <artifactId>camel-quarkus-core-cloud</artifactId>
<version>${camel-quarkus.version}</version>
</dependency>
<dependency>
<groupId>org.apache.camel.quarkus</groupId>
- <artifactId>camel-quarkus-controlbus</artifactId>
+ <artifactId>camel-quarkus-core-xml</artifactId>
<version>${camel-quarkus.version}</version>
</dependency>
<dependency>
@@ -526,6 +500,11 @@
</dependency>
<dependency>
<groupId>org.apache.camel.quarkus</groupId>
+ <artifactId>camel-quarkus-http-common</artifactId>
+ <version>${camel-quarkus.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.camel.quarkus</groupId>
<artifactId>camel-quarkus-hystrix</artifactId>
<version>${camel-quarkus.version}</version>
</dependency>
@@ -556,17 +535,17 @@
</dependency>
<dependency>
<groupId>org.apache.camel.quarkus</groupId>
- <artifactId>camel-quarkus-microprofile-health</artifactId>
+ <artifactId>camel-quarkus-mail</artifactId>
<version>${camel-quarkus.version}</version>
</dependency>
<dependency>
<groupId>org.apache.camel.quarkus</groupId>
- <artifactId>camel-quarkus-microprofile-metrics</artifactId>
+ <artifactId>camel-quarkus-microprofile-health</artifactId>
<version>${camel-quarkus.version}</version>
</dependency>
<dependency>
<groupId>org.apache.camel.quarkus</groupId>
- <artifactId>camel-quarkus-mail</artifactId>
+ <artifactId>camel-quarkus-microprofile-metrics</artifactId>
<version>${camel-quarkus.version}</version>
</dependency>
<dependency>
@@ -651,6 +630,36 @@
</dependency>
<dependency>
<groupId>org.apache.camel.quarkus</groupId>
+ <artifactId>camel-quarkus-support-common</artifactId>
+ <version>${camel-quarkus.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.camel.quarkus</groupId>
+ <artifactId>camel-quarkus-support-commons-logging</artifactId>
+ <version>${camel-quarkus.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.camel.quarkus</groupId>
+ <artifactId>camel-quarkus-support-jetty</artifactId>
+ <version>${camel-quarkus.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.camel.quarkus</groupId>
+ <artifactId>camel-quarkus-support-xalan</artifactId>
+ <version>${camel-quarkus.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.camel.quarkus</groupId>
+ <artifactId>camel-quarkus-support-xml</artifactId>
+ <version>${camel-quarkus.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.camel.quarkus</groupId>
+ <artifactId>camel-quarkus-support-xstream</artifactId>
+ <version>${camel-quarkus.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.camel.quarkus</groupId>
<artifactId>camel-quarkus-tarfile</artifactId>
<version>${camel-quarkus.version}</version>
</dependency>
@@ -685,26 +694,21 @@
<version>${camel-quarkus.version}</version>
</dependency>
- <!-- Other third party dependencies (in alphabetical order by groupId:artifactId) -->
+ <!--$ Other third party dependencies $-->
<dependency>
<groupId>ca.uhn.hapi.fhir</groupId>
<artifactId>hapi-fhir-server</artifactId>
<version>${hapi.version}</version>
</dependency>
<dependency>
- <groupId>org.eclipse.jetty</groupId>
- <artifactId>jetty-client</artifactId>
- <version>${jetty.version}</version>
- </dependency>
- <dependency>
<groupId>com.thoughtworks.xstream</groupId>
<artifactId>xstream</artifactId>
<version>${xstream.version}</version>
</dependency>
<dependency>
- <groupId>org.yaml</groupId>
- <artifactId>snakeyaml</artifactId>
- <version>${snakeyaml.version}</version>
+ <groupId>org.apache.activemq</groupId>
+ <artifactId>artemis-server</artifactId>
+ <version>${artemis.version}</version>
</dependency>
<dependency>
<groupId>org.apache.geronimo.specs</groupId>
@@ -712,25 +716,20 @@
<version>${geronimo-jms_2.0_spec.version}</version>
</dependency>
<dependency>
- <groupId>org.apache.activemq</groupId>
- <artifactId>artemis-server</artifactId>
- <version>${artemis.version}</version>
+ <groupId>org.eclipse.jetty</groupId>
+ <artifactId>jetty-client</artifactId>
+ <version>${jetty.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.yaml</groupId>
+ <artifactId>snakeyaml</artifactId>
+ <version>${snakeyaml.version}</version>
</dependency>
<dependency>
<groupId>xalan</groupId>
<artifactId>xalan</artifactId>
<version>${xalan.version}</version>
</dependency>
- <dependency>
- <groupId>org.apache.camel.quarkus</groupId>
- <artifactId>camel-quarkus-aws-kms</artifactId>
- <version>${camel-quarkus.version}</version>
- </dependency>
- <dependency>
- <groupId>org.apache.camel.quarkus</groupId>
- <artifactId>camel-quarkus-aws-ecs</artifactId>
- <version>${camel-quarkus.version}</version>
- </dependency>
</dependencies>
</dependencyManagement>
diff --git a/tooling/scripts/sort-poms.groovy b/tooling/scripts/sort-poms.groovy
new file mode 100644
index 0000000..bb35016
--- /dev/null
+++ b/tooling/scripts/sort-poms.groovy
@@ -0,0 +1,176 @@
+/*
+ * 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.
+ */
+
+import java.nio.file.Path
+import java.nio.file.Paths
+import java.nio.file.Files
+import java.util.regex.Matcher
+import java.util.regex.Pattern
+
+@groovy.transform.Field
+final Path baseDir = basedir.toPath()
+
+final String[] sortDepManagementPaths = properties['sortDependencyManagementPaths'].split(',')
+sortDependencyManagement(sortDepManagementPaths)
+
+final String[] sortModulesPaths = properties['sortModulesPaths'].split(',')
+sortModules(sortModulesPaths)
+
+void sortDependencyManagement(String[] pomPaths) {
+ for (pomPath in pomPaths) {
+ final Path pomXmlPath = baseDir.resolve(pomPath.trim())
+ final String xmlSource = new String(Files.readAllBytes(pomXmlPath), 'UTF-8')
+
+ final Pattern sortSpanPattern = Pattern.compile('(a\\.\\.z[^>]*>)(.*)</dependencies>(\\r?\\n)([ ]*)</dependencyManagement>', Pattern.DOTALL)
+ final Pattern groupIdPattern = Pattern.compile('<groupId>([^<]+)</groupId>')
+
+ final Matcher matcher = sortSpanPattern.matcher(xmlSource)
+ if (matcher.find()) {
+ String dependenciesString = matcher.group(2)
+ final String eol = matcher.group(3)
+ final String indent = matcher.group(4)
+
+ dependenciesString = dependenciesString.replaceAll('<!--\\$[^>]*\\$-->', '')
+ final String[] dependenciesArray = dependenciesString.split('</dependency>')
+ /* Sort by adding to a TreeMap */
+ final Map<String, Map<String, String>> sortedDeps = new TreeMap<>();
+ for (dep in dependenciesArray) {
+ dep = dep.trim()
+ if (!dep.isEmpty()) {
+ String key = dep
+ .replaceAll('>[ \n\r\t]+', '>')
+ .replaceAll('[ \n\r\t]+<', '<')
+ final Matcher gMatcher = groupIdPattern.matcher(key)
+ gMatcher.find()
+ final String groupId = gMatcher.group(1)
+ key = key.replaceAll('<[^>]+>', ' ').replaceAll(' +', ' ')
+
+ Map<String, String> groupMap = sortedDeps.get(groupId)
+ if (groupMap == null) {
+ groupMap = new TreeMap<String, String>()
+ sortedDeps.put(groupId, groupMap)
+ }
+ groupMap.put(key, dep);
+ }
+ }
+ final StringBuilder result = new StringBuilder(xmlSource)
+ result.setLength(matcher.end(1))
+
+ final Appender appender = new Appender(eol, indent, sortedDeps, result)
+
+ appender.appendGroup('org.apache.camel', true)
+ appender.appendGroup('org.apache.camel.quarkus', true)
+
+ appender.appendOther()
+ appender.result().append(eol).append(indent).append(indent).append(xmlSource.substring(matcher.end(2)))
+
+ Files.write(pomXmlPath, result.toString().getBytes('UTF-8'));
+ } else {
+ throw new RuntimeException('Could not match ' + sortSpanPattern + ' in ' + pomXmlPath)
+ }
+ }
+}
+
+class Appender {
+ private final Set<String> processedGroupIds = new HashSet<>()
+ private final String eol
+ private final String indent
+ private final Map<String, Map<String, String>> sortedDeps
+ private final StringBuilder result
+
+ public Appender(String eol, String indent, Map<String, Map<String, String>> sortedDeps, StringBuilder result) {
+ this.eol = eol
+ this.indent = indent
+ this.sortedDeps = sortedDeps
+ this.result = result
+ }
+
+ public void comment(String comment) {
+ result.append(eol).append(eol)
+ .append(indent).append(indent).append(indent).append('<!--$ '+ comment +' $-->')
+ }
+
+ public void appendGroup(String groupId, boolean isComment) {
+ final Map<String, String> deps = sortedDeps.get(groupId)
+ if (deps == null || processedGroupIds.contains(groupId)) {
+ return
+ }
+ processedGroupIds.add(groupId)
+ if (isComment) {
+ comment(groupId)
+ }
+ for (dep in deps.values()) {
+ result.append(eol)
+ .append(indent).append(indent).append(indent).append(dep)
+ .append(eol).append(indent).append(indent).append(indent).append('</dependency>')
+ }
+ }
+
+ public void appendOther() {
+ if (processedGroupIds.size() < sortedDeps.size()) {
+ comment('Other third party dependencies')
+ for (group in sortedDeps.entrySet()) {
+ appendGroup(group.getKey(), false)
+ }
+ }
+ }
+
+ public StringBuilder result() {
+ return result
+ }
+}
+
+void sortModules(String[] sortModulesPaths) {
+ for (pomPath in sortModulesPaths) {
+ final Path pomXmlPath = basedir.toPath().resolve(pomPath.trim())
+ final String xmlSource = new String(Files.readAllBytes(pomXmlPath), 'UTF-8')
+
+ final Pattern sortSpanPattern = Pattern.compile('(a\\.\\.z[^>]*>)(.*)(\\r?\\n)([ ]*)</modules>', Pattern.DOTALL)
+
+ final Matcher matcher = sortSpanPattern.matcher(xmlSource)
+ if (matcher.find()) {
+ final String modulesString = matcher.group(2)
+ final String eol = matcher.group(3)
+ final String indent = matcher.group(4)
+ final String[] modulesArray = modulesString.split('[\r\n]+ *')
+ final Map<String, String> sortedModules = new TreeMap<String, String>()
+ for (module in modulesArray) {
+ module = module.trim()
+ if (!module.isEmpty()) {
+ String key = module
+ .replaceAll('>[ \n\r\t]+', '>')
+ .replaceAll('[ \n\r\t]+<', '<')
+ key = key.replaceAll('<[^>]+>', '')
+ if (!key.isEmpty()) {
+ sortedModules.put(key, module);
+ }
+ }
+ }
+
+ final StringBuilder result = new StringBuilder(xmlSource)
+ result.setLength(matcher.end(1))
+ for (module in sortedModules.values()) {
+ result.append(eol).append(indent).append(indent).append(module)
+ }
+ result.append(eol).append(indent).append(xmlSource.substring(matcher.end(4)))
+
+ Files.write(pomXmlPath, result.toString().getBytes('UTF-8'));
+ } else {
+ throw new RuntimeException('Could not match ' + sortSpanPattern + ' in ' + pomXmlPath)
+ }
+ }
+}