This is an automated email from the ASF dual-hosted git repository. acosentino pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/camel-kafka-connector.git
commit a5755faee06580d65b568e2439734ecfd883f073 Author: Tom Cunningham <[email protected]> AuthorDate: Mon Oct 12 20:39:08 2020 -0400 ISSUE-524 Create a source distribution module --- distribution/pom.xml | 71 ++++++++++++++++++ distribution/src/main/assemblies/repository.xml | 39 ++++++++++ .../src/main/assemblies/source-release.xml | 84 ++++++++++++++++++++++ pom.xml | 1 + 4 files changed, 195 insertions(+) diff --git a/distribution/pom.xml b/distribution/pom.xml new file mode 100644 index 0000000..ccef06c --- /dev/null +++ b/distribution/pom.xml @@ -0,0 +1,71 @@ +<?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.kafkaconnector</groupId> + <artifactId>camel-kafka-connector-aggregator</artifactId> + <version>0.6.0-SNAPSHOT</version> + </parent> + <modelVersion>4.0.0</modelVersion> + <packaging>pom</packaging> + + <artifactId>apache-camel-kafka-connector-distribution</artifactId> + <profiles> + <profile> + <id>release</id> + <build> + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-assembly-plugin</artifactId> + <version>${maven-assembly-plugin-version}</version> + <executions> + <execution> + <id>source-release</id> + <phase>package</phase> + <goals> + <goal>single</goal> + </goals> + <configuration> + <finalName>camel-kafka-connector-${project.version}</finalName> + <descriptors> + <descriptor>src/main/assemblies/source-release.xml</descriptor> + </descriptors> + </configuration> + </execution> + <execution> + <id>maven-repository</id> + <phase>package</phase> + <goals> + <goal>single</goal> + </goals> + <configuration> + <descriptors> + <descriptor>src/main/assemblies/repository.xml</descriptor> + </descriptors> + </configuration> + </execution> + </executions> + </plugin> + </plugins> + </build> + </profile> + </profiles> +</project> diff --git a/distribution/src/main/assemblies/repository.xml b/distribution/src/main/assemblies/repository.xml new file mode 100644 index 0000000..aabe932 --- /dev/null +++ b/distribution/src/main/assemblies/repository.xml @@ -0,0 +1,39 @@ +<?xml version='1.0' encoding='UTF-8'?> +<!-- + + Licensed to the Apache Software Foundation (ASF) under one or more + contributor license agreements. See the NOTICE file distributed with + this work for additional information regarding copyright ownership. + The ASF licenses this file to You under the Apache License, Version 2.0 + (the "License"); you may not use this file except in compliance with + the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +--> +<assembly> + <id>m2</id> + <formats> + <format>zip</format> + </formats> + + <includeBaseDirectory>false</includeBaseDirectory> + <fileSets> + <fileSet> + <outputDirectory>./</outputDirectory> + <directory>${settings.localRepository}</directory> + <includes> + <include>org/apache/camel/kafkaconnector/**</include> + </includes> + <excludes> + <exclude>org/apache/camel/kafkaconnector/apache-camel-kafka-connector-distribution/**</exclude> + </excludes> + </fileSet> + </fileSets> +</assembly> diff --git a/distribution/src/main/assemblies/source-release.xml b/distribution/src/main/assemblies/source-release.xml new file mode 100644 index 0000000..96e6c0e --- /dev/null +++ b/distribution/src/main/assemblies/source-release.xml @@ -0,0 +1,84 @@ +<?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. + +--> +<assembly> + <id>source-release</id> + <!-- the only thing being done differently here is the base directory --> + <baseDirectory>apache-camel-quarkus-${version}</baseDirectory> + <formats> + <format>zip</format> + </formats> + + <!-- Inlined to exclude all maven wrapper artifacts. This allows us to avoid NOTICE citations --> + <fileSets> + <!-- main project directory structure --> + <fileSet> + <directory>..</directory> + <outputDirectory></outputDirectory> + <includes> + <include>**/*</include> + </includes> + <!--useDefaultExcludes>true</useDefaultExcludes--> + <excludes> + <exclude>Jenkinsfile</exclude> + <exclude>.*</exclude> + + <!-- Exclude the Maven wrapper to avoid the license issue--> + <exclude>.mvn/**</exclude> + <exclude>mvnw</exclude> + <exclude>mvnw.cmd</exclude> + + <!-- build output --> + <exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/).*${project.build.directory}.*]</exclude> + + <!-- NOTE: Most of the following excludes should not be required + if the standard release process is followed. This is because the + release plugin checks out project sources into a location like + target/checkout, then runs the build from there. The result is + a source-release archive that comes from a pretty clean directory + structure. + HOWEVER, if the release plugin is configured to run extra goals + or generate a project website, it's definitely possible that some + of these files will be present. So, it's safer to exclude them. + --> + + <!-- IDEs --> + <exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?maven-eclipse\.xml]</exclude> + <exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?\.project]</exclude> + <exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?\.classpath]</exclude> + <exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?[^/]*\.iws]</exclude> + <exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?\.idea(/.*)?]</exclude> + <exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?out(/.*)?]</exclude> + <exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?[^/]*\.ipr]</exclude> + <exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?[^/]*\.iml]</exclude> + <exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?\.settings(/.*)?]</exclude> + <exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?\.externalToolBuilders(/.*)?]</exclude> + <exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?\.deployables(/.*)?]</exclude> + <exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?\.wtpmodules(/.*)?]</exclude> + + <!-- misc --> + <exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?cobertura\.ser]</exclude> + + <!-- release-plugin temp files --> + <exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?pom\.xml\.releaseBackup]</exclude> + <exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?release\.properties]</exclude> + </excludes> + </fileSet> + </fileSets> +</assembly> diff --git a/pom.xml b/pom.xml index cf31488..a27ec58 100644 --- a/pom.xml +++ b/pom.xml @@ -55,6 +55,7 @@ <module>connectors</module> <module>camel-kafka-connector-catalog</module> <module>tests</module> + <module>distribution</module> </modules> <developers>
