You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@iotdb.apache.org by qi...@apache.org on 2022/05/12 15:01:01 UTC

[iotdb] branch master updated: [IOTDB-3146] add confignode to distribution package (#5861)

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

qiaojialin pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/iotdb.git


The following commit(s) were added to refs/heads/master by this push:
     new 80b34089e2 [IOTDB-3146] add confignode to distribution package (#5861)
80b34089e2 is described below

commit 80b34089e28d2ebef83a7c9c07848e8759082f32
Author: Haonan <hh...@outlook.com>
AuthorDate: Thu May 12 23:00:55 2022 +0800

    [IOTDB-3146] add confignode to distribution package (#5861)
---
 .github/workflows/main-unix.yml          |  2 +-
 .github/workflows/sonar-coveralls.yml    |  2 +-
 distribution/pom.xml                     | 38 ++++++++++++++++-----
 distribution/src/assembly/all.xml        | 51 ++++++++++++++++++----------
 distribution/src/assembly/confignode.xml | 58 ++++++++++++++++++++++++++++++++
 pom.xml                                  |  1 +
 testcontainer/pom.xml                    | 52 ++++++++++++++--------------
 7 files changed, 150 insertions(+), 54 deletions(-)

diff --git a/.github/workflows/main-unix.yml b/.github/workflows/main-unix.yml
index 02eb05329b..a6448d2406 100644
--- a/.github/workflows/main-unix.yml
+++ b/.github/workflows/main-unix.yml
@@ -56,4 +56,4 @@ jobs:
         shell: bash
         # we do not compile client-cpp for saving time, it is tested in client.yml
         # old cluster is deprecated, skip the test
-        run: mvn -B clean verify -Dtest.port.closed=true -Dcluster.skip.test=true -P '!testcontainer'
+        run: mvn -B clean verify -Dtest.port.closed=true -Dcluster.test.skip=true -P '!testcontainer'
diff --git a/.github/workflows/sonar-coveralls.yml b/.github/workflows/sonar-coveralls.yml
index f5633aba2c..84b30f0d0b 100644
--- a/.github/workflows/sonar-coveralls.yml
+++ b/.github/workflows/sonar-coveralls.yml
@@ -48,7 +48,7 @@ jobs:
           restore-keys: ${{ runner.os }}-m2-
       - name: IT/UT Test
         # we do not compile client-cpp for saving time, it is tested in client.yml
-        run: mvn -B clean compile post-integration-test -Dcluster.skip.test=true -Dtest.port.closed=true -Pcode-coverage -P '!testcontainer,!influxdb-protocol'
+        run: mvn -B clean compile post-integration-test -Dcluster.test.skip=true -Dtest.port.closed=true -Pcode-coverage -P '!testcontainer,!influxdb-protocol'
       - name: Code Coverage (Coveralls)
         if: ${{ success() }}
         run: |
diff --git a/distribution/pom.xml b/distribution/pom.xml
index 041d1d0c65..b9b4dad132 100644
--- a/distribution/pom.xml
+++ b/distribution/pom.xml
@@ -32,6 +32,28 @@
     <modules/>
     <build>
         <plugins>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-antrun-plugin</artifactId>
+                <version>3.0.0</version>
+                <executions>
+                    <execution>
+                        <phase>package</phase>
+                        <configuration>
+                            <target>
+                                <mkdir dir="target/apache-iotdb-${project.version}-all-bin/apache-iotdb-${project.version}-all-bin/datanode"/>
+                                <mkdir dir="target/apache-iotdb-${project.version}-all-bin/apache-iotdb-${project.version}-all-bin/confignode"/>
+                                <mkdir dir="target/apache-iotdb-${project.version}-all-bin/apache-iotdb-${project.version}-all-bin/lib"/>
+                                <symlink link="${maven.multiModuleProjectDirectory}/distribution/target/apache-iotdb-${project.version}-all-bin/apache-iotdb-${project.version}-all-bin/datanode/lib" resource="../lib"/>
+                                <symlink link="${maven.multiModuleProjectDirectory}/distribution/target/apache-iotdb-${project.version}-all-bin/apache-iotdb-${project.version}-all-bin/confignode/lib" resource="../lib"/>
+                            </target>
+                        </configuration>
+                        <goals>
+                            <goal>run</goal>
+                        </goals>
+                    </execution>
+                </executions>
+            </plugin>
             <plugin>
                 <groupId>org.apache.maven.plugins</groupId>
                 <artifactId>maven-assembly-plugin</artifactId>
@@ -48,7 +70,7 @@
                             <descriptors>
                                 <descriptor>src/assembly/all.xml</descriptor>
                                 <descriptor>src/assembly/server.xml</descriptor>
-                                <!--descriptor>src/assembly/cluster.xml</descriptor-->
+                                <descriptor>src/assembly/confignode.xml</descriptor>
                                 <descriptor>src/assembly/cli.xml</descriptor>
                                 <descriptor>src/assembly/grafana-connector.xml</descriptor>
                                 <descriptor>src/assembly/client-cpp.xml</descriptor>
@@ -85,7 +107,7 @@
                                         <include>apache-iotdb-${project.version}-all-bin.zip</include>
                                         <include>apache-iotdb-${project.version}-server-bin.zip</include>
                                         <include>apache-iotdb-${project.version}-cli-bin.zip</include>
-                                        <!--include>apache-iotdb-${project.version}-cluster-bin.zip</include-->
+                                        <include>apache-iotdb-${project.version}-confignode-bin.zip</include>
                                         <include>apache-iotdb-${project.version}-grafana-connector-bin.zip</include>
                                         <include>apache-iotdb-${project.version}-client-cpp-${os.classifier}-bin.zip</include>
                                         <include>apache-iotdb-${project.version}-grafana-plugin-bin.zip</include>
@@ -123,12 +145,12 @@
             <version>${project.version}</version>
             <type>pom</type>
         </dependency>
-        <!--        <dependency>-->
-        <!--            <groupId>org.apache.iotdb</groupId>-->
-        <!--            <artifactId>iotdb-cluster</artifactId>-->
-        <!--            <version>${project.version}</version>-->
-        <!--            <type>zip</type>-->
-        <!--        </dependency>-->
+        <dependency>
+            <groupId>org.apache.iotdb</groupId>
+            <artifactId>iotdb-confignode</artifactId>
+            <version>${project.version}</version>
+            <type>zip</type>
+        </dependency>
         <dependency>
             <groupId>org.apache.iotdb</groupId>
             <artifactId>client-cpp</artifactId>
diff --git a/distribution/src/assembly/all.xml b/distribution/src/assembly/all.xml
index 76d9d259c3..fb48d282c0 100644
--- a/distribution/src/assembly/all.xml
+++ b/distribution/src/assembly/all.xml
@@ -31,11 +31,18 @@
             <includes>
                 <include>*:iotdb-server:zip:*</include>
                 <include>*:iotdb-cli:zip:*</include>
-                <!--                <include>*:iotdb-cluster:zip:*</include>-->
+                <include>*:iotdb-confignode:zip:*</include>
             </includes>
             <outputDirectory>${file.separator}</outputDirectory>
             <outputFileNameMapping>${artifact.artifactId}.${artifact.extension}</outputFileNameMapping>
             <unpack>true</unpack>
+            <unpackOptions>
+                <excludes>
+                    <exclude>tools/**</exclude>
+                    <exclude>conf/**</exclude>
+                    <exclude>sbin/**</exclude>
+                </excludes>
+            </unpackOptions>
         </dependencySet>
         <dependencySet>
             <includes>
@@ -47,12 +54,16 @@
         </dependencySet>
     </dependencySets>
     <fileSets>
-        <!--        <fileSet>-->
-        <!--            <outputDirectory>conf</outputDirectory>-->
-        <!--            <directory>${maven.multiModuleProjectDirectory}/server/src/assembly/resources/conf</directory>-->
-        <!--        </fileSet>-->
         <fileSet>
-            <outputDirectory>conf</outputDirectory>
+            <outputDirectory>datanode/conf</outputDirectory>
+            <directory>${maven.multiModuleProjectDirectory}/server/src/assembly/resources/conf</directory>
+        </fileSet>
+        <fileSet>
+            <outputDirectory>confignode/conf</outputDirectory>
+            <directory>${maven.multiModuleProjectDirectory}/confignode/src/assembly/resources/conf</directory>
+        </fileSet>
+        <fileSet>
+            <outputDirectory>datanode/conf</outputDirectory>
             <directory>${maven.multiModuleProjectDirectory}/metrics/interface/src/main/assembly/resources/conf</directory>
         </fileSet>
         <fileSet>
@@ -60,17 +71,22 @@
             <directory>${maven.multiModuleProjectDirectory}/grafana-metrics-example</directory>
         </fileSet>
         <fileSet>
-            <outputDirectory>sbin</outputDirectory>
+            <outputDirectory>datanode/sbin</outputDirectory>
             <directory>${maven.multiModuleProjectDirectory}/server/src/assembly/resources/sbin</directory>
             <fileMode>0755</fileMode>
         </fileSet>
+        <fileSet>
+            <outputDirectory>confignode/sbin</outputDirectory>
+            <directory>${maven.multiModuleProjectDirectory}/confignode/src/assembly/resources/sbin</directory>
+            <fileMode>0755</fileMode>
+        </fileSet>
         <fileSet>
             <outputDirectory>tools</outputDirectory>
             <directory>${maven.multiModuleProjectDirectory}/server/src/assembly/resources/tools</directory>
             <fileMode>0755</fileMode>
         </fileSet>
         <fileSet>
-            <outputDirectory>sbin</outputDirectory>
+            <outputDirectory>datanode/sbin</outputDirectory>
             <directory>${maven.multiModuleProjectDirectory}/cli/src/assembly/resources/sbin</directory>
             <fileMode>0755</fileMode>
         </fileSet>
@@ -79,15 +95,14 @@
             <directory>${maven.multiModuleProjectDirectory}/cli/src/assembly/resources/tools</directory>
             <fileMode>0755</fileMode>
         </fileSet>
-        <!--        <fileSet>-->
-        <!--            <outputDirectory>conf</outputDirectory>-->
-        <!--            <directory>${maven.multiModuleProjectDirectory}/cluster/src/assembly/resources/conf</directory>-->
-        <!--        </fileSet>-->
-        <!--        <fileSet>-->
-        <!--            <outputDirectory>sbin</outputDirectory>-->
-        <!--            <directory>${maven.multiModuleProjectDirectory}/cluster/src/assembly/resources/sbin</directory>-->
-        <!--            <fileMode>0755</fileMode>-->
-        <!--        </fileSet>-->
+        <fileSet>
+            <outputDirectory>datanode</outputDirectory>
+            <directory>${maven.multiModuleProjectDirectory}/distribution/target/apache-iotdb-${project.version}-all-bin/apache-iotdb-${project.version}-all-bin/datanode</directory>
+        </fileSet>
+        <fileSet>
+            <outputDirectory>confignode</outputDirectory>
+            <directory>${maven.multiModuleProjectDirectory}/distribution/target/apache-iotdb-${project.version}-all-bin/apache-iotdb-${project.version}-all-bin/confignode</directory>
+        </fileSet>
         <fileSet>
             <directory>${maven.multiModuleProjectDirectory}/docs</directory>
             <outputDirectory>docs</outputDirectory>
@@ -100,7 +115,7 @@
         </file>
         <file>
             <source>${maven.multiModuleProjectDirectory}/server/src/assembly/resources/conf/iotdb-env.sh</source>
-            <destName>conf/iotdb-env.sh</destName>
+            <destName>datanode/conf/iotdb-env.sh</destName>
             <fileMode>0755</fileMode>
         </file>
     </files>
diff --git a/distribution/src/assembly/confignode.xml b/distribution/src/assembly/confignode.xml
new file mode 100644
index 0000000000..3c830e28c7
--- /dev/null
+++ b/distribution/src/assembly/confignode.xml
@@ -0,0 +1,58 @@
+<?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>confignode-bin</id>
+    <formats>
+        <format>dir</format>
+        <format>zip</format>
+    </formats>
+    <baseDirectory>apache-iotdb-${project.version}-confignode-bin</baseDirectory>
+    <dependencySets>
+        <dependencySet>
+            <includes>
+                <include>*:iotdb-confignode:zip:*</include>
+            </includes>
+            <outputDirectory>${file.separator}</outputDirectory>
+            <outputFileNameMapping>${artifact.artifactId}.${artifact.extension}</outputFileNameMapping>
+            <unpack>true</unpack>
+        </dependencySet>
+    </dependencySets>
+    <fileSets>
+        <fileSet>
+            <directory>${maven.multiModuleProjectDirectory}/confignode/src/assembly/resources/sbin</directory>
+            <outputDirectory>sbin</outputDirectory>
+            <fileMode>0755</fileMode>
+        </fileSet>
+        <fileSet>
+            <directory>${maven.multiModuleProjectDirectory}/confignode/src/assembly/resources/conf</directory>
+            <outputDirectory>conf</outputDirectory>
+        </fileSet>
+        <!--    <fileSet>-->
+        <!--      <directory>${maven.multiModuleProjectDirectory}/confignode/src/assembly/resources/tools</directory>-->
+        <!--      <outputDirectory>tools</outputDirectory>-->
+        <!--      <fileMode>0755</fileMode>-->
+        <!--    </fileSet>-->
+    </fileSets>
+    <componentDescriptors>
+        <componentDescriptor>common-files.xml</componentDescriptor>
+    </componentDescriptors>
+</assembly>
diff --git a/pom.xml b/pom.xml
index d2265f6d50..e9f0829436 100644
--- a/pom.xml
+++ b/pom.xml
@@ -1415,6 +1415,7 @@
                             <excludes>
                                 <exclude>org/apache/iotdb/service/sync/thrift/*</exclude>
                                 <exclude>org/apache/iotdb/service/rpc/thrift/*</exclude>
+                                <exclude>org/apache/iotdb/cluster/*</exclude>
                                 <exclude>org/apache/iotdb/cluster/rpc/thrift/*</exclude>
                                 <exclude>org/apache/iotdb/protocol/influxdb/rpc/thrift/*</exclude>
                                 <exclude>org/apache/iotdb/db/qp/sql/*</exclude>
diff --git a/testcontainer/pom.xml b/testcontainer/pom.xml
index e3067d56ab..debb00e7db 100644
--- a/testcontainer/pom.xml
+++ b/testcontainer/pom.xml
@@ -33,8 +33,8 @@
         <docker.build.executable>docker</docker.build.executable>
         <docker.build.single.argument>build -t apache/iotdb:maven-development -f ${basedir}/../docker/src/main/Dockerfile-single ${basedir}/../.</docker.build.single.argument>
         <docker.clean.single.argument>image rm apache/iotdb:maven-development</docker.clean.single.argument>
-<!--        <docker.build.cluster.argument>build -t apache/iotdb:cluster-maven-development -f ${basedir}/../docker/src/main/Dockerfile-cluster ${basedir}/../.</docker.build.cluster.argument>-->
-<!--        <docker.clean.cluster.argument>image rm apache/iotdb:cluster-maven-development</docker.clean.cluster.argument>-->
+        <!--        <docker.build.cluster.argument>build -t apache/iotdb:cluster-maven-development -f ${basedir}/../docker/src/main/Dockerfile-cluster ${basedir}/../.</docker.build.cluster.argument>-->
+        <!--        <docker.clean.cluster.argument>image rm apache/iotdb:cluster-maven-development</docker.clean.cluster.argument>-->
         <docker.build.sync.argument>build -t apache/iotdb:sync-maven-development -f ${basedir}/../docker/src/main/Dockerfile-single-tc ${basedir}/../.</docker.build.sync.argument>
         <docker.clean.sync.argument>image rm apache/iotdb:sync-maven-development</docker.clean.sync.argument>
     </properties>
@@ -90,18 +90,18 @@
                                     <commandlineArgs>${docker.build.single.argument}</commandlineArgs>
                                 </configuration>
                             </execution>
-<!--                            <execution>-->
-<!--                                <id>build-cluster-docker-image</id>-->
-<!--                                <phase>pre-integration-test</phase>-->
-<!--                                <goals>-->
-<!--                                    <goal>exec</goal>-->
-<!--                                </goals>-->
-<!--                                <configuration>-->
-<!--                                    <skip>${docker.test.skip}</skip>-->
-<!--                                    <executable>${docker.build.executable}</executable>-->
-<!--                                    <commandlineArgs>${docker.build.cluster.argument}</commandlineArgs>-->
-<!--                                </configuration>-->
-<!--                            </execution>-->
+                            <!--                            <execution>-->
+                            <!--                                <id>build-cluster-docker-image</id>-->
+                            <!--                                <phase>pre-integration-test</phase>-->
+                            <!--                                <goals>-->
+                            <!--                                    <goal>exec</goal>-->
+                            <!--                                </goals>-->
+                            <!--                                <configuration>-->
+                            <!--                                    <skip>${docker.test.skip}</skip>-->
+                            <!--                                    <executable>${docker.build.executable}</executable>-->
+                            <!--                                    <commandlineArgs>${docker.build.cluster.argument}</commandlineArgs>-->
+                            <!--                                </configuration>-->
+                            <!--                            </execution>-->
                             <execution>
                                 <id>build-sync-docker-image</id>
                                 <phase>pre-integration-test</phase>
@@ -126,18 +126,18 @@
                                     <commandlineArgs>${docker.clean.single.argument}</commandlineArgs>
                                 </configuration>
                             </execution>
-<!--                            <execution>-->
-<!--                                <id>clean-cluster-docker-image</id>-->
-<!--                                <phase>post-integration-test</phase>-->
-<!--                                <goals>-->
-<!--                                    <goal>exec</goal>-->
-<!--                                </goals>-->
-<!--                                <configuration>-->
-<!--                                    <skip>${docker.test.skip}</skip>-->
-<!--                                    <executable>${docker.build.executable}</executable>-->
-<!--                                    <commandlineArgs>${docker.clean.cluster.argument}</commandlineArgs>-->
-<!--                                </configuration>-->
-<!--                            </execution>-->
+                            <!--                            <execution>-->
+                            <!--                                <id>clean-cluster-docker-image</id>-->
+                            <!--                                <phase>post-integration-test</phase>-->
+                            <!--                                <goals>-->
+                            <!--                                    <goal>exec</goal>-->
+                            <!--                                </goals>-->
+                            <!--                                <configuration>-->
+                            <!--                                    <skip>${docker.test.skip}</skip>-->
+                            <!--                                    <executable>${docker.build.executable}</executable>-->
+                            <!--                                    <commandlineArgs>${docker.clean.cluster.argument}</commandlineArgs>-->
+                            <!--                                </configuration>-->
+                            <!--                            </execution>-->
                             <execution>
                                 <id>clean-sync-docker-image</id>
                                 <phase>post-integration-test</phase>