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

sijie pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-pulsar.git


The following commit(s) were added to refs/heads/master by this push:
     new b22e883  Package Pulsar IO connectors into separate tgz in form of nar 
archives (#2054)
b22e883 is described below

commit b22e883890fe4729675e67868f62d448cc42ed6a
Author: Matteo Merli <[email protected]>
AuthorDate: Mon Jul 2 00:22:01 2018 -0700

    Package Pulsar IO connectors into separate tgz in form of nar archives 
(#2054)
    
    ### Motivation
    
    We need to package Pulsar IO connectors as part of the release.
    We provide a new file `apache-pulsar-io-connectors-$VERSION-bin.tar.gz` 
that contains 
[NAR](https://medium.com/hashmapinc/nifi-nar-files-explained-14113f7796fd).
    
    In subsequent PR, I'll add the logic to load and use these archives.
---
 .travis.yml                                        |  2 +-
 bin/bookkeeper                                     |  2 +-
 bin/pulsar                                         |  2 +-
 bin/pulsar-admin                                   |  2 +-
 bin/pulsar-client                                  |  2 +-
 bin/pulsar-perf                                    |  2 +-
 {pulsar-io/cassandra => distribution/io}/pom.xml   | 57 ++++++++-------
 distribution/io/src/assemble/README                | 10 +++
 distribution/io/src/assemble/io.xml                | 84 ++++++++++++++++++++++
 {pulsar-io/twitter => distribution}/pom.xml        | 43 +++--------
 .../server}/licenses/LICENSE-AspectJ.txt           |  0
 .../server}/licenses/LICENSE-CC0.txt               |  0
 .../server}/licenses/LICENSE-CDDL-1.1.txt          |  0
 .../server}/licenses/LICENSE-EA-Agent-Loader.txt   |  0
 .../server}/licenses/LICENSE-EPL-1.0.txt           |  0
 .../server}/licenses/LICENSE-Hamcrest.txt          |  0
 .../server}/licenses/LICENSE-HdrHistogram.txt      |  0
 .../server}/licenses/LICENSE-HdrHistogram0.txt     |  0
 .../server}/licenses/LICENSE-JSR305.txt            |  0
 .../server}/licenses/LICENSE-LevelDB.txt           |  0
 .../server}/licenses/LICENSE-Lombok.txt            |  0
 .../server}/licenses/LICENSE-SLF4J.txt             |  0
 .../server}/licenses/LICENSE-SemVer.txt            |  0
 .../server}/licenses/LICENSE-Webbit.txt            |  0
 .../server}/licenses/LICENSE-bouncycastle.txt      |  0
 .../licenses/LICENSE-google-auth-library.txt       |  0
 .../server}/licenses/LICENSE-jbzip2.txt            |  0
 .../server}/licenses/LICENSE-jfastlz.txt           |  0
 .../server}/licenses/LICENSE-libdivsufsort.txt     |  0
 .../server}/licenses/LICENSE-protobuf.txt          |  0
 .../server}/licenses/LICENSE-xz.txt                |  0
 {all => distribution/server}/pom.xml               |  6 +-
 .../server}/src/assemble/LICENSE.bin.txt           |  0
 .../server}/src/assemble/NOTICE.bin.txt            |  0
 .../server}/src/assemble/README.bin.txt            |  0
 {all => distribution/server}/src/assemble/bin.xml  | 16 ++---
 {all => distribution/server}/src/assemble/src.xml  |  2 +-
 docker/pulsar/pom.xml                              |  6 +-
 pom.xml                                            | 21 +++++-
 pulsar-client-cpp/pkg/deb/build-deb.sh             |  2 +-
 pulsar-client-cpp/pkg/rpm/build-rpm.sh             |  2 +-
 pulsar-client-cpp/run-unit-tests.sh                |  2 +-
 pulsar-io/aerospike/pom.xml                        | 12 +++-
 pulsar-io/cassandra/pom.xml                        | 10 ++-
 .../pulsar/io/cassandra/CassandraAbstractSink.java |  9 +--
 .../java/org/apache/pulsar/io/core/PushSource.java |  1 -
 pulsar-io/kafka/pom.xml                            | 10 ++-
 pulsar-io/kinesis/pom.xml                          | 34 ++-------
 pulsar-io/rabbitmq/pom.xml                         | 11 ++-
 pulsar-io/twitter/pom.xml                          | 11 ++-
 .../apache/pulsar/io/twitter/TwitterFireHose.java  | 10 +--
 src/stage-release.sh                               |  5 +-
 52 files changed, 241 insertions(+), 135 deletions(-)

diff --git a/.travis.yml b/.travis.yml
index 2dfe30c..35528b6 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -75,7 +75,7 @@ deploy:
     api_key:
       secure: 
cmjsJ43FwlwWUVh+4TJ/V+yKu/bd78ov0Olm0BFao0tco5ZYNfbRB5jxWD9X4AxpRN4Rfn+u/17oRavUSfv1M/CKMj6mTzXl8gQ6gieIWrgGYfdZrpBxEY0mccaEbaXSGNEWFj/e8oJixdeBeFCp3AkUSTO9DS5f+yoKeF1XibeJIhDLY0xWgeLMkUimzizsiplQBhrPmHExM8DRwSEojs4np56QgcJHdpU9snxkKzjCW5kKcQ6vPXzWpRLBRxLNU0MzYf6HRSqsGE5M3oG8PXNi+WuMS+4pKfxhcw7vS7642/8dWV28Flvet9E+rXutaM7I+jd5ZQG+/jTo2IOTUJ164ZaxYl6rjsf94d8u51AxDPLer+/C19DfrjiYGOLX8Cad+dLWT+otVISie76oNTeThqyG/5W+PpX9cTP/yBeZs5j/mgYJI4mVU4z0fACgyh+Gc3SyBwPvc3eePsFoVS4CvksgoM
 [...]
     file_glob: true
-    file: "all/target/pulsar-*.tar.gz"
+    file: "distribution/server/target/pulsar-*.tar.gz"
     on:
       repo: apache/incubator-pulsar
       tags: true
diff --git a/bin/bookkeeper b/bin/bookkeeper
index d2866c4..80c2a9b 100755
--- a/bin/bookkeeper
+++ b/bin/bookkeeper
@@ -119,7 +119,7 @@ add_maven_deps_to_classpath() {
     # Need to generate classpath from maven pom. This is costly so generate it
     # and cache it. Save the file into our target dir so a mvn clean will get
     # clean it up and force us create a new one.
-    f="${BK_HOME}/all/target/classpath.txt"
+    f="${BK_HOME}/distribution/server/target/classpath.txt"
     if [ ! -f "${f}" ]
     then
        ${MVN} -f "${BK_HOME}/pom.xml" dependency:build-classpath 
-Dmdep.outputFile="${f}" &> /dev/null
diff --git a/bin/pulsar b/bin/pulsar
index e096d27..d8f6e21 100755
--- a/bin/pulsar
+++ b/bin/pulsar
@@ -151,7 +151,7 @@ add_maven_deps_to_classpath() {
     # Need to generate classpath from maven pom. This is costly so generate it
     # and cache it. Save the file into our target dir so a mvn clean will get
     # clean it up and force us create a new one.
-    f="${PULSAR_HOME}/all/target/classpath.txt"
+    f="${PULSAR_HOME}/distribution/server/target/classpath.txt"
     if [ ! -f "${f}" ]
     then
            ${MVN} -f "${PULSAR_HOME}/pom.xml" dependency:build-classpath 
-DincludeScope=compile -Dmdep.outputFile="${f}" &> /dev/null
diff --git a/bin/pulsar-admin b/bin/pulsar-admin
index 837a605..c984617 100755
--- a/bin/pulsar-admin
+++ b/bin/pulsar-admin
@@ -72,7 +72,7 @@ add_maven_deps_to_classpath() {
     # Need to generate classpath from maven pom. This is costly so generate it
     # and cache it. Save the file into our target dir so a mvn clean will get
     # clean it up and force us create a new one.
-    f="${PULSAR_HOME}/all/target/classpath.txt"
+    f="${PULSAR_HOME}/distribution/server/target/classpath.txt"
     if [ ! -f "${f}" ]
     then
        ${MVN} -f "${PULSAR_HOME}/pom.xml" dependency:build-classpath 
-DincludeScope=compile -Dmdep.outputFile="${f}" &> /dev/null
diff --git a/bin/pulsar-client b/bin/pulsar-client
index 650322a..e48bd1a 100755
--- a/bin/pulsar-client
+++ b/bin/pulsar-client
@@ -65,7 +65,7 @@ add_maven_deps_to_classpath() {
     # Need to generate classpath from maven pom. This is costly so generate it
     # and cache it. Save the file into our target dir so a mvn clean will get
     # clean it up and force us create a new one.
-    f="${PULSAR_HOME}/all/target/classpath.txt"
+    f="${PULSAR_HOME}/distribution/server/target/classpath.txt"
     if [ ! -f "${f}" ]
     then
        ${MVN} -f "${PULSAR_HOME}/pom.xml" dependency:build-classpath 
-Dmdep.outputFile="${f}" &> /dev/null
diff --git a/bin/pulsar-perf b/bin/pulsar-perf
index 8226b7e..7a250b7 100755
--- a/bin/pulsar-perf
+++ b/bin/pulsar-perf
@@ -65,7 +65,7 @@ add_maven_deps_to_classpath() {
     # Need to generate classpath from maven pom. This is costly so generate it
     # and cache it. Save the file into our target dir so a mvn clean will get
     # clean it up and force us create a new one.
-    f="${PULSAR_HOME}/all/target/classpath.txt"
+    f="${PULSAR_HOME}/distribution/server/target/classpath.txt"
     if [ ! -f "${f}" ]
     then
        ${MVN} -f "${PULSAR_HOME}/pom.xml" dependency:build-classpath 
-Dmdep.outputFile="${f}" &> /dev/null
diff --git a/pulsar-io/cassandra/pom.xml b/distribution/io/pom.xml
similarity index 56%
copy from pulsar-io/cassandra/pom.xml
copy to distribution/io/pom.xml
index e9f3e00..c00a5e6 100644
--- a/pulsar-io/cassandra/pom.xml
+++ b/distribution/io/pom.xml
@@ -19,43 +19,50 @@
 
 -->
 <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";>
+  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.pulsar</groupId>
-    <artifactId>pulsar-io</artifactId>
+    <artifactId>distribution</artifactId>
     <version>2.2.0-incubating-SNAPSHOT</version>
+    <relativePath>..</relativePath>
   </parent>
 
-  <artifactId>pulsar-io-cassandra</artifactId>
-  <name>Pulsar IO :: Cassandra</name>
+  <artifactId>pulsar-io-distribution</artifactId>
+  <packaging>pom</packaging>
+  <name>Pulsar :: Distribution :: IO</name>
 
   <dependencies>
-
     <dependency>
-      <groupId>${project.groupId}</groupId>
+      <groupId>org.apache.pulsar</groupId>
       <artifactId>pulsar-io-core</artifactId>
       <version>${project.version}</version>
     </dependency>
-
-    <dependency>
-      <groupId>com.fasterxml.jackson.core</groupId>
-      <artifactId>jackson-databind</artifactId>
-      <version>${jackson.version}</version>
-    </dependency>
-
-    <dependency>
-      <groupId>com.fasterxml.jackson.dataformat</groupId>
-      <artifactId>jackson-dataformat-yaml</artifactId>
-      <version>${jackson.version}</version>
-    </dependency>
-
-    <dependency>
-      <groupId>com.datastax.cassandra</groupId>
-      <artifactId>cassandra-driver-core</artifactId>
-      <version>${cassandra-driver-core.version}</version>
-    </dependency>
-
   </dependencies>
 
+  <build>
+    <plugins>
+      <plugin>
+        <artifactId>maven-assembly-plugin</artifactId>
+        <executions>
+          <execution>
+            <id>distro-assembly</id>
+            <phase>package</phase>
+            <goals>
+              <goal>single</goal>
+            </goals>
+            <configuration>
+              <attach>false</attach>
+              <tarLongFileMode>posix</tarLongFileMode>
+              
<finalName>apache-pulsar-io-connectors-${project.version}</finalName>
+              <descriptors>
+                <descriptor>src/assemble/io.xml</descriptor>
+              </descriptors>
+            </configuration>
+          </execution>
+        </executions>
+      </plugin>
+    </plugins>
+  </build>
 </project>
diff --git a/distribution/io/src/assemble/README 
b/distribution/io/src/assemble/README
new file mode 100644
index 0000000..f4ca180
--- /dev/null
+++ b/distribution/io/src/assemble/README
@@ -0,0 +1,10 @@
+
+Please refer to http://pulsar.incubator.apache.org/ for access to 
documentation.
+
+This package contains Pulsar IO connectors archives. Each archive
+contains:
+
+ * the connector code plus all the dependencies
+
+ * META-INF/DEPEDENCIES file with licensing information for all transitive
+   dependencies
\ No newline at end of file
diff --git a/distribution/io/src/assemble/io.xml 
b/distribution/io/src/assemble/io.xml
new file mode 100644
index 0000000..f69d5ce
--- /dev/null
+++ b/distribution/io/src/assemble/io.xml
@@ -0,0 +1,84 @@
+<!--
+
+    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
+  xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.2";
+  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
+  
xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.2
 http://maven.apache.org/xsd/assembly-1.1.2.xsd";>
+  <id>bin</id>
+  <formats>
+    <format>tar.gz</format>
+  </formats>
+  <includeBaseDirectory>true</includeBaseDirectory>
+  <files>
+    <file>
+      <source>${basedir}/../../DISCLAIMER</source>
+      <outputDirectory>.</outputDirectory>
+      <fileMode>644</fileMode>
+    </file>
+    <file>
+      <source>${basedir}/../../LICENSE</source>
+      <outputDirectory>.</outputDirectory>
+      <fileMode>644</fileMode>
+    </file>
+    <file>
+      <source>${basedir}/src/assemble/README</source>
+      <destName>README</destName>
+      <outputDirectory>.</outputDirectory>
+      <fileMode>644</fileMode>
+    </file>
+
+    <file>
+      
<source>${basedir}/../../pulsar-io/cassandra/target/pulsar-io-cassandra-${project.version}.nar</source>
+      <outputDirectory>connectors</outputDirectory>
+      <fileMode>644</fileMode>
+    </file>
+
+    <file>
+      
<source>${basedir}/../../pulsar-io/twitter/target/pulsar-io-twitter-${project.version}.nar</source>
+      <outputDirectory>connectors</outputDirectory>
+      <fileMode>644</fileMode>
+    </file>
+
+    <file>
+      
<source>${basedir}/../../pulsar-io/kafka/target/pulsar-io-kafka-${project.version}.nar</source>
+      <outputDirectory>connectors</outputDirectory>
+      <fileMode>644</fileMode>
+    </file>
+
+    <file>
+      
<source>${basedir}/../../pulsar-io/kinesis/target/pulsar-io-kinesis-${project.version}.nar</source>
+      <outputDirectory>connectors</outputDirectory>
+      <fileMode>644</fileMode>
+    </file>
+
+    <file>
+      
<source>${basedir}/../../pulsar-io/rabbitmq/target/pulsar-io-rabbitmq-${project.version}.nar</source>
+      <outputDirectory>connectors</outputDirectory>
+      <fileMode>644</fileMode>
+    </file>
+
+    <file>
+      
<source>${basedir}/../../pulsar-io/aerospike/target/pulsar-io-aerospike-${project.version}.nar</source>
+      <outputDirectory>connectors</outputDirectory>
+      <fileMode>644</fileMode>
+    </file>
+  </files>
+</assembly>
diff --git a/pulsar-io/twitter/pom.xml b/distribution/pom.xml
similarity index 56%
copy from pulsar-io/twitter/pom.xml
copy to distribution/pom.xml
index 5b22390..36b4917 100644
--- a/pulsar-io/twitter/pom.xml
+++ b/distribution/pom.xml
@@ -19,43 +19,22 @@
 
 -->
 <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";>
+  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.pulsar</groupId>
-    <artifactId>pulsar-io</artifactId>
+    <artifactId>pulsar</artifactId>
     <version>2.2.0-incubating-SNAPSHOT</version>
+    <relativePath>..</relativePath>
   </parent>
 
-  <artifactId>pulsar-io-twitter</artifactId>
-  <name>Pulsar IO :: Twitter</name>
-
-  <dependencies>
-
-    <dependency>
-      <groupId>${project.groupId}</groupId>
-      <artifactId>pulsar-io-core</artifactId>
-      <version>${project.version}</version>
-    </dependency>
-
-    <dependency>
-      <groupId>com.fasterxml.jackson.core</groupId>
-      <artifactId>jackson-databind</artifactId>
-      <version>${jackson.version}</version>
-    </dependency>
-
-    <dependency>
-      <groupId>com.fasterxml.jackson.dataformat</groupId>
-      <artifactId>jackson-dataformat-yaml</artifactId>
-      <version>${jackson.version}</version>
-    </dependency>
-
-    <dependency>
-      <groupId>com.twitter</groupId>
-      <artifactId>hbc-core</artifactId>
-      <version>${hbc-core.version}</version>
-    </dependency>
-
-  </dependencies>
+  <artifactId>distribution</artifactId>
+  <packaging>pom</packaging>
+  <name>Pulsar :: Distribution</name>
 
+  <modules>
+    <module>server</module>
+    <module>io</module>
+  </modules>
 </project>
diff --git a/all/licenses/LICENSE-AspectJ.txt 
b/distribution/server/licenses/LICENSE-AspectJ.txt
similarity index 100%
rename from all/licenses/LICENSE-AspectJ.txt
rename to distribution/server/licenses/LICENSE-AspectJ.txt
diff --git a/all/licenses/LICENSE-CC0.txt 
b/distribution/server/licenses/LICENSE-CC0.txt
similarity index 100%
rename from all/licenses/LICENSE-CC0.txt
rename to distribution/server/licenses/LICENSE-CC0.txt
diff --git a/all/licenses/LICENSE-CDDL-1.1.txt 
b/distribution/server/licenses/LICENSE-CDDL-1.1.txt
similarity index 100%
rename from all/licenses/LICENSE-CDDL-1.1.txt
rename to distribution/server/licenses/LICENSE-CDDL-1.1.txt
diff --git a/all/licenses/LICENSE-EA-Agent-Loader.txt 
b/distribution/server/licenses/LICENSE-EA-Agent-Loader.txt
similarity index 100%
rename from all/licenses/LICENSE-EA-Agent-Loader.txt
rename to distribution/server/licenses/LICENSE-EA-Agent-Loader.txt
diff --git a/all/licenses/LICENSE-EPL-1.0.txt 
b/distribution/server/licenses/LICENSE-EPL-1.0.txt
similarity index 100%
rename from all/licenses/LICENSE-EPL-1.0.txt
rename to distribution/server/licenses/LICENSE-EPL-1.0.txt
diff --git a/all/licenses/LICENSE-Hamcrest.txt 
b/distribution/server/licenses/LICENSE-Hamcrest.txt
similarity index 100%
rename from all/licenses/LICENSE-Hamcrest.txt
rename to distribution/server/licenses/LICENSE-Hamcrest.txt
diff --git a/all/licenses/LICENSE-HdrHistogram.txt 
b/distribution/server/licenses/LICENSE-HdrHistogram.txt
similarity index 100%
rename from all/licenses/LICENSE-HdrHistogram.txt
rename to distribution/server/licenses/LICENSE-HdrHistogram.txt
diff --git a/all/licenses/LICENSE-HdrHistogram0.txt 
b/distribution/server/licenses/LICENSE-HdrHistogram0.txt
similarity index 100%
rename from all/licenses/LICENSE-HdrHistogram0.txt
rename to distribution/server/licenses/LICENSE-HdrHistogram0.txt
diff --git a/all/licenses/LICENSE-JSR305.txt 
b/distribution/server/licenses/LICENSE-JSR305.txt
similarity index 100%
rename from all/licenses/LICENSE-JSR305.txt
rename to distribution/server/licenses/LICENSE-JSR305.txt
diff --git a/all/licenses/LICENSE-LevelDB.txt 
b/distribution/server/licenses/LICENSE-LevelDB.txt
similarity index 100%
rename from all/licenses/LICENSE-LevelDB.txt
rename to distribution/server/licenses/LICENSE-LevelDB.txt
diff --git a/all/licenses/LICENSE-Lombok.txt 
b/distribution/server/licenses/LICENSE-Lombok.txt
similarity index 100%
rename from all/licenses/LICENSE-Lombok.txt
rename to distribution/server/licenses/LICENSE-Lombok.txt
diff --git a/all/licenses/LICENSE-SLF4J.txt 
b/distribution/server/licenses/LICENSE-SLF4J.txt
similarity index 100%
rename from all/licenses/LICENSE-SLF4J.txt
rename to distribution/server/licenses/LICENSE-SLF4J.txt
diff --git a/all/licenses/LICENSE-SemVer.txt 
b/distribution/server/licenses/LICENSE-SemVer.txt
similarity index 100%
rename from all/licenses/LICENSE-SemVer.txt
rename to distribution/server/licenses/LICENSE-SemVer.txt
diff --git a/all/licenses/LICENSE-Webbit.txt 
b/distribution/server/licenses/LICENSE-Webbit.txt
similarity index 100%
rename from all/licenses/LICENSE-Webbit.txt
rename to distribution/server/licenses/LICENSE-Webbit.txt
diff --git a/all/licenses/LICENSE-bouncycastle.txt 
b/distribution/server/licenses/LICENSE-bouncycastle.txt
similarity index 100%
rename from all/licenses/LICENSE-bouncycastle.txt
rename to distribution/server/licenses/LICENSE-bouncycastle.txt
diff --git a/all/licenses/LICENSE-google-auth-library.txt 
b/distribution/server/licenses/LICENSE-google-auth-library.txt
similarity index 100%
rename from all/licenses/LICENSE-google-auth-library.txt
rename to distribution/server/licenses/LICENSE-google-auth-library.txt
diff --git a/all/licenses/LICENSE-jbzip2.txt 
b/distribution/server/licenses/LICENSE-jbzip2.txt
similarity index 100%
rename from all/licenses/LICENSE-jbzip2.txt
rename to distribution/server/licenses/LICENSE-jbzip2.txt
diff --git a/all/licenses/LICENSE-jfastlz.txt 
b/distribution/server/licenses/LICENSE-jfastlz.txt
similarity index 100%
rename from all/licenses/LICENSE-jfastlz.txt
rename to distribution/server/licenses/LICENSE-jfastlz.txt
diff --git a/all/licenses/LICENSE-libdivsufsort.txt 
b/distribution/server/licenses/LICENSE-libdivsufsort.txt
similarity index 100%
rename from all/licenses/LICENSE-libdivsufsort.txt
rename to distribution/server/licenses/LICENSE-libdivsufsort.txt
diff --git a/all/licenses/LICENSE-protobuf.txt 
b/distribution/server/licenses/LICENSE-protobuf.txt
similarity index 100%
rename from all/licenses/LICENSE-protobuf.txt
rename to distribution/server/licenses/LICENSE-protobuf.txt
diff --git a/all/licenses/LICENSE-xz.txt 
b/distribution/server/licenses/LICENSE-xz.txt
similarity index 100%
rename from all/licenses/LICENSE-xz.txt
rename to distribution/server/licenses/LICENSE-xz.txt
diff --git a/all/pom.xml b/distribution/server/pom.xml
similarity index 97%
rename from all/pom.xml
rename to distribution/server/pom.xml
index 0124ac9..ca4e821 100644
--- a/all/pom.xml
+++ b/distribution/server/pom.xml
@@ -24,14 +24,14 @@
 
   <parent>
     <groupId>org.apache.pulsar</groupId>
-    <artifactId>pulsar</artifactId>
+    <artifactId>distribution</artifactId>
     <version>2.2.0-incubating-SNAPSHOT</version>
     <relativePath>..</relativePath>
   </parent>
 
-  <artifactId>distribution</artifactId>
+  <artifactId>pulsar-server-distribution</artifactId>
   <packaging>pom</packaging>
-  <name>distribution</name>
+  <name>Pulsar :: Distribution :: Server</name>
 
   <dependencies>
     <dependency>
diff --git a/all/src/assemble/LICENSE.bin.txt 
b/distribution/server/src/assemble/LICENSE.bin.txt
similarity index 100%
rename from all/src/assemble/LICENSE.bin.txt
rename to distribution/server/src/assemble/LICENSE.bin.txt
diff --git a/all/src/assemble/NOTICE.bin.txt 
b/distribution/server/src/assemble/NOTICE.bin.txt
similarity index 100%
rename from all/src/assemble/NOTICE.bin.txt
rename to distribution/server/src/assemble/NOTICE.bin.txt
diff --git a/all/src/assemble/README.bin.txt 
b/distribution/server/src/assemble/README.bin.txt
similarity index 100%
rename from all/src/assemble/README.bin.txt
rename to distribution/server/src/assemble/README.bin.txt
diff --git a/all/src/assemble/bin.xml b/distribution/server/src/assemble/bin.xml
similarity index 86%
rename from all/src/assemble/bin.xml
rename to distribution/server/src/assemble/bin.xml
index bdbbf1b..ff7c1a3 100644
--- a/all/src/assemble/bin.xml
+++ b/distribution/server/src/assemble/bin.xml
@@ -34,23 +34,23 @@
   </moduleSets>
   <fileSets>
     <fileSet>
-      <directory>${basedir}/../conf</directory>
+      <directory>${basedir}/../../conf</directory>
     </fileSet>
     <fileSet>
-      <directory>${basedir}/../bin</directory>
+      <directory>${basedir}/../../bin</directory>
       <fileMode>755</fileMode>
     </fileSet>
     <fileSet>
       <directory>${basedir}/licenses</directory>
     </fileSet>
     <fileSet>
-      
<directory>${basedir}/../pulsar-functions/runtime/target/python-instance</directory>
+      
<directory>${basedir}/../../pulsar-functions/runtime/target/python-instance</directory>
       <outputDirectory>instances/python-instance</outputDirectory>
     </fileSet>
   </fileSets>
   <files>
     <file>
-      <source>${basedir}/../DISCLAIMER</source>
+      <source>${basedir}/../../DISCLAIMER</source>
       <outputDirectory>.</outputDirectory>
       <fileMode>644</fileMode>
     </file>
@@ -73,22 +73,22 @@
       <fileMode>644</fileMode>
     </file>
     <file>
-      
<source>${basedir}/../pulsar-functions/runtime-all/target/java-instance.jar</source>
+      
<source>${basedir}/../../pulsar-functions/runtime-all/target/java-instance.jar</source>
       <destName>java-instance.jar</destName>
       <outputDirectory>instances</outputDirectory>
     </file>
     <file>
-      
<source>${basedir}/../pulsar-functions/java-examples/target/pulsar-functions-api-examples.jar</source>
+      
<source>${basedir}/../../pulsar-functions/java-examples/target/pulsar-functions-api-examples.jar</source>
       <destName>api-examples.jar</destName>
       <outputDirectory>examples</outputDirectory>
     </file>
     <file>
-      
<source>${basedir}/../pulsar-functions/java-examples/src/main/resources/example-function-config.yaml</source>
+      
<source>${basedir}/../../pulsar-functions/java-examples/src/main/resources/example-function-config.yaml</source>
       <destName>example-function-config.yaml</destName>
       <outputDirectory>examples</outputDirectory>
     </file>
     <file>
-      
<source>${basedir}/../pulsar-functions/java-examples/src/main/resources/example-window-function-config.yaml</source>
+      
<source>${basedir}/../../pulsar-functions/java-examples/src/main/resources/example-window-function-config.yaml</source>
       <destName>example-window-function-config.yaml</destName>
       <outputDirectory>examples</outputDirectory>
     </file>
diff --git a/all/src/assemble/src.xml b/distribution/server/src/assemble/src.xml
similarity index 99%
rename from all/src/assemble/src.xml
rename to distribution/server/src/assemble/src.xml
index 616c9a4..55c54ae 100644
--- a/all/src/assemble/src.xml
+++ b/distribution/server/src/assemble/src.xml
@@ -29,7 +29,7 @@
   <includeBaseDirectory>true</includeBaseDirectory>
   <fileSets>
     <fileSet>
-      <directory>..</directory>
+      <directory>../..</directory>
       <useDefaultExcludes>true</useDefaultExcludes>
       <includes>
         <include>**/README.md</include>
diff --git a/docker/pulsar/pom.xml b/docker/pulsar/pom.xml
index 2a35504..f798c9a 100644
--- a/docker/pulsar/pom.xml
+++ b/docker/pulsar/pom.xml
@@ -34,7 +34,7 @@
   <dependencies>
     <dependency>
       <groupId>org.apache.pulsar</groupId>
-      <artifactId>distribution</artifactId>
+      <artifactId>pulsar-server-distribution</artifactId>
       <version>${project.parent.version}</version>
       <classifier>bin</classifier>
       <type>tar.gz</type>
@@ -95,7 +95,7 @@
               <pullNewerImage>false</pullNewerImage>
               <tag>${project.version}</tag>
               <buildArgs>
-                
<PULSAR_TARBALL>target/distribution-${project.version}-bin.tar.gz</PULSAR_TARBALL>
+                
<PULSAR_TARBALL>target/pulsar-server-distribution-${project.version}-bin.tar.gz</PULSAR_TARBALL>
               </buildArgs>
             </configuration>
           </plugin>
@@ -111,7 +111,7 @@
                 <phase>generate-resources</phase>
                 <configuration>
                   
<outputDirectory>${project.build.directory}/</outputDirectory>
-                  <includeArtifactIds>distribution</includeArtifactIds>
+                  
<includeArtifactIds>pulsar-server-distribution</includeArtifactIds>
                   <excludeTransitive>true</excludeTransitive>
                 </configuration>
               </execution>
diff --git a/pom.xml b/pom.xml
index 5acf556..1c7f899 100644
--- a/pom.xml
+++ b/pom.xml
@@ -97,7 +97,6 @@ flexible messaging model and an intuitive client 
API.</description>
     <module>pulsar-client-auth-athenz</module>
     <module>pulsar-client-kafka-compat</module>
     <module>pulsar-zookeeper</module>
-    <module>all</module>
     <module>docker</module>
     <module>tests</module>
     <module>pulsar-log4j2-appender</module>
@@ -108,6 +107,8 @@ flexible messaging model and an intuitive client 
API.</description>
 
     <!-- connector-related modules -->
     <module>pulsar-io</module>
+
+    <module>distribution</module>
   </modules>
 
   <issueManagement>
@@ -1163,6 +1164,24 @@ flexible messaging model and an intuitive client 
API.</description>
           <version>2.5</version>
         </plugin>
         <plugin>
+          <groupId>org.apache.nifi</groupId>
+          <artifactId>nifi-nar-maven-plugin</artifactId>
+          <version>1.2.0</version>
+          <extensions>true</extensions>
+          <configuration>
+            <finalName>${project.artifactId}-${project.version}</finalName>
+          </configuration>
+          <executions>
+            <execution>
+              <id>default-nar</id>
+              <phase>package</phase>
+              <goals>
+                <goal>nar</goal>
+              </goals>
+            </execution>
+          </executions>
+        </plugin>
+        <plugin>
           <groupId>org.apache.maven.plugins</groupId>
           <artifactId>maven-checkstyle-plugin</artifactId>
           <version>3.0.0</version>
diff --git a/pulsar-client-cpp/pkg/deb/build-deb.sh 
b/pulsar-client-cpp/pkg/deb/build-deb.sh
index b0b1781..74f25a2 100755
--- a/pulsar-client-cpp/pkg/deb/build-deb.sh
+++ b/pulsar-client-cpp/pkg/deb/build-deb.sh
@@ -34,7 +34,7 @@ CPP_DIR=$ROOT_DIR/pulsar-client-cpp
 rm -rf BUILD
 mkdir BUILD
 cd BUILD
-tar xfz $SRC_ROOT_DIR/all/target/apache-pulsar-$POM_VERSION-src.tar.gz
+tar xfz 
$SRC_ROOT_DIR/distribution/server/target/apache-pulsar-$POM_VERSION-src.tar.gz
 pushd $CPP_DIR
 
 cmake . -DBUILD_TESTS=OFF -DLINK_STATIC=ON
diff --git a/pulsar-client-cpp/pkg/rpm/build-rpm.sh 
b/pulsar-client-cpp/pkg/rpm/build-rpm.sh
index 3541c79..099a015 100755
--- a/pulsar-client-cpp/pkg/rpm/build-rpm.sh
+++ b/pulsar-client-cpp/pkg/rpm/build-rpm.sh
@@ -31,7 +31,7 @@ VERSION=`echo $POM_VERSION | awk -F-  '{print $1}'`
 
 mkdir -p BUILD RPMS SOURCES SPECS SRPMS
 
-cp $ROOT_DIR/all/target/apache-pulsar-$POM_VERSION-src.tar.gz SOURCES
+cp $ROOT_DIR/distribution/server/target/apache-pulsar-$POM_VERSION-src.tar.gz 
SOURCES
 
 rpmbuild -v -bb --clean \
         --define "version $VERSION" \
diff --git a/pulsar-client-cpp/run-unit-tests.sh 
b/pulsar-client-cpp/run-unit-tests.sh
index 4eac803..ed4b6b4 100755
--- a/pulsar-client-cpp/run-unit-tests.sh
+++ b/pulsar-client-cpp/run-unit-tests.sh
@@ -23,7 +23,7 @@
 
 rm -rf ./pulsar-dist
 mkdir pulsar-dist
-tar xfz ../all/target/apache-pulsar*bin.tar.gz  -C pulsar-dist 
--strip-components 1
+tar xfz ../distribution/server/target/apache-pulsar*bin.tar.gz  -C pulsar-dist 
--strip-components 1
 
 PULSAR_STANDALONE_CONF=$PWD/test-conf/standalone.conf pulsar-dist/bin/pulsar 
standalone --no-functions-worker --no-stream-storage > broker.log &
 standalone_pid=$!;
diff --git a/pulsar-io/aerospike/pom.xml b/pulsar-io/aerospike/pom.xml
index 233b409..1a2d546 100644
--- a/pulsar-io/aerospike/pom.xml
+++ b/pulsar-io/aerospike/pom.xml
@@ -41,13 +41,11 @@
     <dependency>
       <groupId>com.fasterxml.jackson.core</groupId>
       <artifactId>jackson-databind</artifactId>
-      <version>${jackson.version}</version>
     </dependency>
 
     <dependency>
       <groupId>com.fasterxml.jackson.dataformat</groupId>
       <artifactId>jackson-dataformat-yaml</artifactId>
-      <version>${jackson.version}</version>
     </dependency>
 
     <dependency>
@@ -58,4 +56,14 @@
 
   </dependencies>
 
+  <build>
+    <plugins>
+      <plugin>
+        <groupId>org.apache.nifi</groupId>
+        <artifactId>nifi-nar-maven-plugin</artifactId>
+      </plugin>
+    </plugins>
+  </build>
+
+
 </project>
diff --git a/pulsar-io/cassandra/pom.xml b/pulsar-io/cassandra/pom.xml
index e9f3e00..51feeef 100644
--- a/pulsar-io/cassandra/pom.xml
+++ b/pulsar-io/cassandra/pom.xml
@@ -41,13 +41,11 @@
     <dependency>
       <groupId>com.fasterxml.jackson.core</groupId>
       <artifactId>jackson-databind</artifactId>
-      <version>${jackson.version}</version>
     </dependency>
 
     <dependency>
       <groupId>com.fasterxml.jackson.dataformat</groupId>
       <artifactId>jackson-dataformat-yaml</artifactId>
-      <version>${jackson.version}</version>
     </dependency>
 
     <dependency>
@@ -58,4 +56,12 @@
 
   </dependencies>
 
+  <build>
+    <plugins>
+      <plugin>
+        <groupId>org.apache.nifi</groupId>
+        <artifactId>nifi-nar-maven-plugin</artifactId>
+      </plugin>
+    </plugins>
+  </build>
 </project>
diff --git 
a/pulsar-io/cassandra/src/main/java/org/apache/pulsar/io/cassandra/CassandraAbstractSink.java
 
b/pulsar-io/cassandra/src/main/java/org/apache/pulsar/io/cassandra/CassandraAbstractSink.java
index 7bdc4ac..8c330cd 100644
--- 
a/pulsar-io/cassandra/src/main/java/org/apache/pulsar/io/cassandra/CassandraAbstractSink.java
+++ 
b/pulsar-io/cassandra/src/main/java/org/apache/pulsar/io/cassandra/CassandraAbstractSink.java
@@ -27,22 +27,19 @@ import com.datastax.driver.core.ResultSetFuture;
 import com.datastax.driver.core.Session;
 import com.google.common.util.concurrent.FutureCallback;
 import com.google.common.util.concurrent.Futures;
-import org.apache.pulsar.io.core.KeyValue;
-import org.apache.pulsar.io.core.SimpleSink;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
 
 import java.util.Map;
 import java.util.concurrent.CompletableFuture;
 
+import org.apache.pulsar.io.core.KeyValue;
+import org.apache.pulsar.io.core.SimpleSink;
+
 /**
  * A Simple abstract class for Cassandra sink
  * Users need to implement extractKeyValue function to use this sink
  */
 public abstract class CassandraAbstractSink<K, V> extends SimpleSink<byte[]> {
 
-    private static final Logger LOG = 
LoggerFactory.getLogger(CassandraAbstractSink.class);
-
     // ----- Runtime fields
     private Cluster cluster;
     private Session session;
diff --git 
a/pulsar-io/core/src/main/java/org/apache/pulsar/io/core/PushSource.java 
b/pulsar-io/core/src/main/java/org/apache/pulsar/io/core/PushSource.java
index af304b9..a33ad63 100644
--- a/pulsar-io/core/src/main/java/org/apache/pulsar/io/core/PushSource.java
+++ b/pulsar-io/core/src/main/java/org/apache/pulsar/io/core/PushSource.java
@@ -20,7 +20,6 @@ package org.apache.pulsar.io.core;
 
 import java.util.Map;
 import java.util.concurrent.LinkedBlockingQueue;
-import java.util.function.Consumer;
 
 /**
  * Pulsar's Push Source interface. PushSource read data from
diff --git a/pulsar-io/kafka/pom.xml b/pulsar-io/kafka/pom.xml
index 769b9ab..5a36ade 100644
--- a/pulsar-io/kafka/pom.xml
+++ b/pulsar-io/kafka/pom.xml
@@ -41,13 +41,11 @@
     <dependency>
       <groupId>com.fasterxml.jackson.core</groupId>
       <artifactId>jackson-databind</artifactId>
-      <version>${jackson.version}</version>
     </dependency>
 
     <dependency>
       <groupId>com.fasterxml.jackson.dataformat</groupId>
       <artifactId>jackson-dataformat-yaml</artifactId>
-      <version>${jackson.version}</version>
     </dependency>
 
     <dependency>
@@ -58,4 +56,12 @@
 
   </dependencies>
 
+  <build>
+    <plugins>
+      <plugin>
+        <groupId>org.apache.nifi</groupId>
+        <artifactId>nifi-nar-maven-plugin</artifactId>
+      </plugin>
+    </plugins>
+  </build>
 </project>
diff --git a/pulsar-io/kinesis/pom.xml b/pulsar-io/kinesis/pom.xml
index ab39043..08c3004 100644
--- a/pulsar-io/kinesis/pom.xml
+++ b/pulsar-io/kinesis/pom.xml
@@ -57,7 +57,7 @@
       <groupId>com.fasterxml.jackson.dataformat</groupId>
       <artifactId>jackson-dataformat-yaml</artifactId>
     </dependency>
-    
+
     <dependency>
       <groupId>com.google.code.gson</groupId>
       <artifactId>gson</artifactId>
@@ -74,7 +74,7 @@
       <artifactId>amazon-kinesis-client</artifactId>
       <version>1.9.0</version>
     </dependency>
-    
+
     <dependency>
       <groupId>com.amazonaws</groupId>
       <artifactId>amazon-kinesis-producer</artifactId>
@@ -83,36 +83,12 @@
        <!-- /kinesis dependencies -->
 
   </dependencies>
-  
+
   <build>
     <plugins>
       <plugin>
-        <groupId>org.apache.maven.plugins</groupId>
-        <artifactId>maven-shade-plugin</artifactId>
-        <executions>
-          <execution>
-            <phase>package</phase>
-            <goals>
-              <goal>shade</goal>
-            </goals>
-            <configuration>
-              <createDependencyReducedPom>true</createDependencyReducedPom>
-              
<promoteTransitiveDependencies>true</promoteTransitiveDependencies>
-              <minimizeJar>false</minimizeJar>
-              <artifactSet>
-                <includes>
-                  <include>*:*</include>
-                </includes>
-              </artifactSet>
-              <relocations>
-                <relocation>
-                  <pattern>com.google.protobuf</pattern>
-                  
<shadedPattern>org.apache.pulsar.replicator.com.google.protobuf</shadedPattern>
-                </relocation>
-              </relocations>
-            </configuration>
-          </execution>
-        </executions>
+        <groupId>org.apache.nifi</groupId>
+        <artifactId>nifi-nar-maven-plugin</artifactId>
       </plugin>
     </plugins>
   </build>
diff --git a/pulsar-io/rabbitmq/pom.xml b/pulsar-io/rabbitmq/pom.xml
index a33f32c..8de118d 100644
--- a/pulsar-io/rabbitmq/pom.xml
+++ b/pulsar-io/rabbitmq/pom.xml
@@ -41,13 +41,11 @@
     <dependency>
       <groupId>com.fasterxml.jackson.core</groupId>
       <artifactId>jackson-databind</artifactId>
-      <version>${jackson.version}</version>
     </dependency>
 
     <dependency>
       <groupId>com.fasterxml.jackson.dataformat</groupId>
       <artifactId>jackson-dataformat-yaml</artifactId>
-      <version>${jackson.version}</version>
     </dependency>
 
     <dependency>
@@ -58,4 +56,13 @@
 
   </dependencies>
 
+  <build>
+    <plugins>
+      <plugin>
+        <groupId>org.apache.nifi</groupId>
+        <artifactId>nifi-nar-maven-plugin</artifactId>
+      </plugin>
+    </plugins>
+  </build>
+
 </project>
diff --git a/pulsar-io/twitter/pom.xml b/pulsar-io/twitter/pom.xml
index 5b22390..53bb43c 100644
--- a/pulsar-io/twitter/pom.xml
+++ b/pulsar-io/twitter/pom.xml
@@ -41,13 +41,11 @@
     <dependency>
       <groupId>com.fasterxml.jackson.core</groupId>
       <artifactId>jackson-databind</artifactId>
-      <version>${jackson.version}</version>
     </dependency>
 
     <dependency>
       <groupId>com.fasterxml.jackson.dataformat</groupId>
       <artifactId>jackson-dataformat-yaml</artifactId>
-      <version>${jackson.version}</version>
     </dependency>
 
     <dependency>
@@ -58,4 +56,13 @@
 
   </dependencies>
 
+  <build>
+    <plugins>
+      <plugin>
+        <groupId>org.apache.nifi</groupId>
+        <artifactId>nifi-nar-maven-plugin</artifactId>
+      </plugin>
+    </plugins>
+  </build>
+
 </project>
diff --git 
a/pulsar-io/twitter/src/main/java/org/apache/pulsar/io/twitter/TwitterFireHose.java
 
b/pulsar-io/twitter/src/main/java/org/apache/pulsar/io/twitter/TwitterFireHose.java
index 2c55a4f..5dc495e 100644
--- 
a/pulsar-io/twitter/src/main/java/org/apache/pulsar/io/twitter/TwitterFireHose.java
+++ 
b/pulsar-io/twitter/src/main/java/org/apache/pulsar/io/twitter/TwitterFireHose.java
@@ -28,16 +28,16 @@ import 
com.twitter.hbc.core.processor.HosebirdMessageProcessor;
 import com.twitter.hbc.httpclient.BasicClient;
 import com.twitter.hbc.httpclient.auth.Authentication;
 import com.twitter.hbc.httpclient.auth.OAuth1;
-import org.apache.pulsar.io.core.PushSource;
-import org.apache.pulsar.io.core.Record;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
 
 import java.io.IOException;
 import java.io.InputStream;
 import java.io.Serializable;
 import java.util.Map;
-import java.util.function.Consumer;
+
+import org.apache.pulsar.io.core.PushSource;
+import org.apache.pulsar.io.core.Record;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 /**
  * Simple Push based Twitter FireHose Source
diff --git a/src/stage-release.sh b/src/stage-release.sh
index c4091e8..57182fd 100755
--- a/src/stage-release.sh
+++ b/src/stage-release.sh
@@ -32,8 +32,9 @@ PULSAR_PATH=$(git rev-parse --show-toplevel)
 VERSION=`cat pom.xml | xmllint --format - | sed "s/xmlns=\".*\"//g" | xmllint 
--stream --pattern /project/version --debug - |  grep -A 2 "matches pattern" |  
grep text |  sed "s/.* [0-9] //g"`
 popd
 
-cp $PULSAR_PATH/all/target/apache-pulsar-$VERSION-src.tar.gz $DEST_PATH
-cp $PULSAR_PATH/all/target/apache-pulsar-$VERSION-bin.tar.gz $DEST_PATH
+cp $PULSAR_PATH/distribution/server/target/apache-pulsar-$VERSION-src.tar.gz 
$DEST_PATH
+cp $PULSAR_PATH/distribution/server/target/apache-pulsar-$VERSION-bin.tar.gz 
$DEST_PATH
+cp 
$PULSAR_PATH/distribution/io/target/apache-pulsar-io-connectors-$VERSION-bin.tar.gz
 $DEST_PATH
 
 mkdir $DEST_PATH/RPMS
 cp -r $PULSAR_PATH/pulsar-client-cpp/pkg/rpm/RPMS/x86_64/* $DEST_PATH/RPMS

Reply via email to