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

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


The following commit(s) were added to refs/heads/master by this push:
     new 75224d21 chore: add check dependencies (#293)
75224d21 is described below

commit 75224d2160471d082d346877926109cbd6e06e4e
Author: Simon Cheung <[email protected]>
AuthorDate: Mon Dec 11 20:06:43 2023 +0800

    chore: add check dependencies (#293)
---
 .github/workflows/license-checker.yml              |  13 +-
 .../scripts/dependency/check_dependencies.sh       |  32 +++
 .../scripts/dependency/known-dependencies.txt      | 277 +++++++++++++++++++++
 .../dependency/regenerate_known_dependencies.sh    |  33 +++
 4 files changed, 348 insertions(+), 7 deletions(-)

diff --git a/.github/workflows/license-checker.yml 
b/.github/workflows/license-checker.yml
index caa3f85f..5d5c8c0c 100644
--- a/.github/workflows/license-checker.yml
+++ b/.github/workflows/license-checker.yml
@@ -55,10 +55,9 @@ jobs:
           cp $HOME/.m2/settings.xml /tmp/settings.xml
           mv -vf .github/configs/settings.xml $HOME/.m2/settings.xml
       - name: Compile install
-        run: mvn package -DskipTests=true -ntp
-
-      # TODO: enable it after the check scripts are ready, lack them now
-      #- name: Generate & check current 3rd-party dependencies
-      #  run: |
-      #    bash $SCRIPT_DEPENDENCY/regenerate_known_dependencies.sh 
current-dependencies.txt
-      #    bash $SCRIPT_DEPENDENCY/check_dependencies.sh
+        run: mvn install -DskipTests=true -ntp
+      - name: Generate & check current 3rd-party dependencies
+        run: |
+          bash $SCRIPT_DEPENDENCY/regenerate_known_dependencies.sh 
current-dependencies.txt
+          cat $SCRIPT_DEPENDENCY/current-dependencies.txt
+          bash $SCRIPT_DEPENDENCY/check_dependencies.sh
diff --git a/computer-dist/scripts/dependency/check_dependencies.sh 
b/computer-dist/scripts/dependency/check_dependencies.sh
new file mode 100644
index 00000000..309063fa
--- /dev/null
+++ b/computer-dist/scripts/dependency/check_dependencies.sh
@@ -0,0 +1,32 @@
+#!/usr/bin/env bash
+#
+# 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.
+#
+
+BASE_PATH=$(cd $(dirname $0); pwd)
+
+# check whether there are new third-party dependencies by diff command,
+# diff generated 'current-dependencies.txt' file with 'known-dependencies.txt' 
file.
+diff -w -B -U0 <(sort < ${BASE_PATH}/known-dependencies.txt) \
+<(sort < ${BASE_PATH}/current-dependencies.txt) > ${BASE_PATH}/result.txt
+
+# if has new third-party,the Action will fail and print diff
+if [ -s ${BASE_PATH}/result.txt ]; then
+  cat ${BASE_PATH}/result.txt
+  exit 1
+else
+  echo 'All third dependencies is known!'
+fi
diff --git a/computer-dist/scripts/dependency/known-dependencies.txt 
b/computer-dist/scripts/dependency/known-dependencies.txt
new file mode 100644
index 00000000..0d2c5096
--- /dev/null
+++ b/computer-dist/scripts/dependency/known-dependencies.txt
@@ -0,0 +1,277 @@
+accessors-smart-1.2.jar
+activation-1.1.jar
+animal-sniffer-annotations-1.18.jar
+annotations-13.0.jar
+annotations-4.1.1.4.jar
+apiguardian-api-1.1.0.jar
+asm-5.0.4.jar
+audience-annotations-0.5.0.jar
+auto-service-annotations-1.0-rc7.jar
+automaton-1.11-8.jar
+avro-1.7.7.jar
+bcprov-jdk18on-1.74.jar
+bolt-1.6.2.jar
+builder-annotations-0.13.1.jar
+byte-buddy-1.10.20.jar
+byte-buddy-agent-1.10.20.jar
+checker-qual-3.33.0.jar
+checker-qual-3.5.0.jar
+commons-beanutils-1.9.3.jar
+commons-beanutils-1.9.4.jar
+commons-cli-1.2.jar
+commons-codec-1.11.jar
+commons-codec-1.13.jar
+commons-collections-3.2.2.jar
+commons-compress-1.18.jar
+commons-configuration-1.10.jar
+commons-configuration2-2.1.1.jar
+commons-configuration2-2.8.0.jar
+commons-crypto-1.0.0.jar
+commons-io-2.5.jar
+commons-io-2.7.jar
+commons-lang-2.6.jar
+commons-lang3-3.12.0.jar
+commons-logging-1.1.1.jar
+commons-logging-1.1.3.jar
+commons-math3-3.1.1.jar
+commons-net-3.6.jar
+commons-text-1.9.jar
+computer-algorithm-1.2.0.jar
+computer-api-1.2.0.jar
+computer-core-1.2.0.jar
+computer-dist-1.2.0.jar
+computer-driver-1.2.0.jar
+computer-k8s-1.2.0.jar
+computer-k8s-operator-1.2.0.jar
+computer-yarn-1.2.0.jar
+curator-client-2.13.0.jar
+curator-framework-2.13.0.jar
+curator-recipes-2.13.0.jar
+disruptor-3.3.7.jar
+error_prone_annotations-2.3.4.jar
+failsafe-2.4.0.jar
+failureaccess-1.0.1.jar
+findbugs-annotations-1.3.9-1.jar
+generex-1.0.2.jar
+groovy-all-2.4.21.jar
+grpc-api-1.33.0.jar
+grpc-context-1.33.0.jar
+grpc-core-1.33.0.jar
+grpc-grpclb-1.33.0.jar
+grpc-netty-1.33.0.jar
+grpc-protobuf-1.33.0.jar
+grpc-protobuf-lite-1.33.0.jar
+grpc-stub-1.33.0.jar
+gson-2.2.4.jar
+guava-30.0-jre.jar
+guava-32.0.1-jre.jar
+hadoop-annotations-3.1.2.jar
+hadoop-auth-3.1.2.jar
+hadoop-common-3.1.2.jar
+hadoop-hdfs-client-3.1.2.jar
+hamcrest-core-1.3.jar
+hbase-client-2.2.3.jar
+hbase-common-2.2.3.jar
+hbase-hadoop-compat-2.2.3.jar
+hbase-hadoop2-compat-2.2.3.jar
+hbase-http-2.2.3.jar
+hbase-mapreduce-2.2.3.jar
+hbase-metrics-2.2.3.jar
+hbase-metrics-api-2.2.3.jar
+hbase-procedure-2.2.3.jar
+hbase-protocol-2.2.3.jar
+hbase-protocol-shaded-2.2.3.jar
+hbase-replication-2.2.3.jar
+hbase-server-2.2.3.jar
+hbase-shaded-client-byo-hadoop-2.2.3.jar
+hbase-shaded-miscellaneous-2.2.1.jar
+hbase-shaded-netty-2.2.1.jar
+hbase-shaded-protobuf-2.2.1.jar
+hbase-zookeeper-2.2.3.jar
+hessian-3.3.7.jar
+htrace-core4-4.1.0-incubating.jar
+httpclient-4.5.2.jar
+httpcore-4.4.4.jar
+j2objc-annotations-1.3.jar
+j2objc-annotations-2.8.jar
+jackson-annotations-2.11.2.jar
+jackson-annotations-2.14.0-rc1.jar
+jackson-annotations-2.15.2.jar
+jackson-core-2.11.2.jar
+jackson-core-2.14.0-rc1.jar
+jackson-core-2.15.2.jar
+jackson-core-asl-1.9.2.jar
+jackson-databind-2.11.2.jar
+jackson-databind-2.14.0-rc1.jar
+jackson-databind-2.15.2.jar
+jackson-dataformat-yaml-2.11.2.jar
+jackson-dataformat-yaml-2.9.3.jar
+jackson-datatype-jsr310-2.11.2.jar
+jackson-jaxrs-1.9.2.jar
+jackson-jaxrs-base-2.14.0-rc1.jar
+jackson-jaxrs-json-provider-2.14.0-rc1.jar
+jackson-mapper-asl-1.9.2.jar
+jackson-module-jaxb-annotations-2.12.3.jar
+jackson-module-jaxb-annotations-2.14.0-rc1.jar
+jackson-xc-1.9.2.jar
+jakarta.activation-2.0.1.jar
+jakarta.activation-api-1.2.1.jar
+jakarta.activation-api-1.2.2.jar
+jakarta.xml.bind-api-2.3.2.jar
+jamon-runtime-2.4.1.jar
+javassist-3.20.0-GA.jar
+javassist-3.28.0-GA.jar
+javax.el-3.0.1-b12.jar
+javax.inject-2.5.0-b32.jar
+javax.json-1.0.jar
+javax.servlet-api-3.1.0.jar
+javax.servlet.jsp-2.3.2.jar
+javax.servlet.jsp-api-2.3.1.jar
+jaxb-api-2.2.2.jar
+jaxb-core-3.0.2.jar
+jaxb-impl-2.2.3-1.jar
+jaxb-impl-3.0.2.jar
+jcip-annotations-1.0-1.jar
+jcodings-1.0.18.jar
+jcommander-1.78.jar
+jersey-container-servlet-core-2.25.1.jar
+jersey-core-1.19.jar
+jersey-json-1.19.jar
+jersey-server-1.19.jar
+jersey-servlet-1.19.jar
+jetcd-common-0.5.4.jar
+jetcd-core-0.5.4.jar
+jettison-1.1.jar
+jetty-http-9.3.24.v20180605.jar
+jetty-io-9.3.24.v20180605.jar
+jetty-security-9.3.24.v20180605.jar
+jetty-server-9.3.24.v20180605.jar
+jetty-servlet-9.3.24.v20180605.jar
+jetty-util-9.3.24.v20180605.jar
+jetty-util-ajax-9.3.27.v20190418.jar
+jetty-webapp-9.3.24.v20180605.jar
+jetty-xml-9.3.24.v20180605.jar
+jline-0.9.94.jar
+joda-time-2.10.8.jar
+joni-2.1.11.jar
+jsch-0.1.54.jar
+json-smart-2.3.jar
+jsp-api-2.1.jar
+jsr305-3.0.1.jar
+jsr305-3.0.2.jar
+junit-4.12.jar
+junit-4.13.1.jar
+junit-jupiter-api-5.7.2.jar
+junit-platform-commons-1.7.2.jar
+kerb-admin-1.0.1.jar
+kerb-client-1.0.1.jar
+kerb-common-1.0.1.jar
+kerb-core-1.0.1.jar
+kerb-crypto-1.0.1.jar
+kerb-identity-1.0.1.jar
+kerb-server-1.0.1.jar
+kerb-simplekdc-1.0.1.jar
+kerb-util-1.0.1.jar
+kerby-asn1-1.0.1.jar
+kerby-config-1.0.1.jar
+kerby-pkix-1.0.1.jar
+kerby-util-1.0.1.jar
+kerby-xdr-1.0.1.jar
+kotlin-stdlib-1.6.20.jar
+kotlin-stdlib-common-1.5.31.jar
+kotlin-stdlib-common-1.6.20.jar
+kotlin-stdlib-jdk7-1.6.10.jar
+kotlin-stdlib-jdk7-1.6.20.jar
+kotlin-stdlib-jdk8-1.6.10.jar
+kotlin-stdlib-jdk8-1.6.20.jar
+kubernetes-client-5.6.0.jar
+kubernetes-model-admissionregistration-5.6.0.jar
+kubernetes-model-apiextensions-5.6.0.jar
+kubernetes-model-apps-5.6.0.jar
+kubernetes-model-autoscaling-5.6.0.jar
+kubernetes-model-batch-5.6.0.jar
+kubernetes-model-certificates-5.6.0.jar
+kubernetes-model-common-5.6.0.jar
+kubernetes-model-coordination-5.6.0.jar
+kubernetes-model-core-5.6.0.jar
+kubernetes-model-discovery-5.6.0.jar
+kubernetes-model-events-5.6.0.jar
+kubernetes-model-extensions-5.6.0.jar
+kubernetes-model-flowcontrol-5.6.0.jar
+kubernetes-model-metrics-5.6.0.jar
+kubernetes-model-networking-5.6.0.jar
+kubernetes-model-node-5.6.0.jar
+kubernetes-model-policy-5.6.0.jar
+kubernetes-model-rbac-5.6.0.jar
+kubernetes-model-scheduling-5.6.0.jar
+kubernetes-model-storageclass-5.6.0.jar
+kubernetes-server-mock-5.6.0.jar
+lightning-csv-8.2.1.jar
+listenablefuture-9999.0-empty-to-avoid-conflict-with-guava.jar
+log4j-1.2.17.jar
+log4j-api-2.18.0.jar
+log4j-core-2.18.0.jar
+log4j-slf4j-impl-2.18.0.jar
+logging-interceptor-3.12.12.jar
+logging-interceptor-4.10.0.jar
+lookout-api-1.4.1.jar
+lz4-java-1.4.0.jar
+metrics-core-3.2.6.jar
+minio-8.5.6.jar
+mockito-core-3.8.0.jar
+mockwebserver-0.1.8.jar
+mvel2-2.4.13.Final.jar
+netty-3.10.6.Final.jar
+netty-all-4.1.42.Final.jar
+nimbus-jose-jwt-4.41.1.jar
+objenesis-3.1.jar
+okhttp-2.7.5.jar
+okhttp-3.12.12.jar
+okhttp-4.10.0.jar
+okhttp-4.11.0.jar
+okio-1.15.0.jar
+okio-3.2.0.jar
+okio-jvm-3.0.0.jar
+okio-jvm-3.2.0.jar
+opentest4j-1.2.0.jar
+opentracing-api-0.22.0.jar
+opentracing-mock-0.22.0.jar
+opentracing-noop-0.22.0.jar
+opentracing-util-0.22.0.jar
+ow2-asm-6.2.jar
+paranamer-2.3.jar
+perfmark-api-0.19.0.jar
+proto-google-common-protos-1.17.0.jar
+protobuf-java-3.12.0.jar
+protobuf-java-util-3.12.0.jar
+re2j-1.1.jar
+resourcecify-annotations-0.13.1.jar
+sfm-converter-8.2.1.jar
+sfm-csv-8.2.1.jar
+sfm-map-8.2.1.jar
+sfm-reflect-8.2.1.jar
+sfm-tuples-8.2.1.jar
+sfm-util-8.2.1.jar
+simple-xml-safe-2.7.1.jar
+slf4j-api-1.7.25.jar
+slf4j-api-1.7.30.jar
+slf4j-api-1.7.31.jar
+snakeyaml-1.18.jar
+snakeyaml-1.26.jar
+snappy-java-1.1.10.1.jar
+sofa-common-tools-1.0.12.jar
+sofa-rpc-all-5.7.6.jar
+stax-api-1.0-2.jar
+stax2-api-3.1.4.jar
+sundr-codegen-0.13.1.jar
+sundr-core-0.13.1.jar
+swagger-annotations-1.5.18.jar
+swagger-core-1.5.18.jar
+swagger-models-1.5.18.jar
+token-provider-1.0.1.jar
+tracer-core-3.0.8.jar
+validation-api-1.1.0.Final.jar
+woodstox-core-5.0.3.jar
+xz-1.8.jar
+zjsonpatch-0.3.0.jar
+zookeeper-3.4.13.jar
diff --git a/computer-dist/scripts/dependency/regenerate_known_dependencies.sh 
b/computer-dist/scripts/dependency/regenerate_known_dependencies.sh
new file mode 100644
index 00000000..b63e7b3a
--- /dev/null
+++ b/computer-dist/scripts/dependency/regenerate_known_dependencies.sh
@@ -0,0 +1,33 @@
+#!/usr/bin/env bash
+#
+# 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.
+#
+
+BASE_PATH=$(cd $(dirname $0); pwd)
+DEP_PATH=$BASE_PATH/all_dependencies
+FILE_NAME=${1:-known-dependencies.txt}
+
+if [[ -d $DEP_PATH ]];then
+  echo "rm -r -f DEP_PATH"
+  rm -r -f $DEP_PATH
+fi
+
+cd $BASE_PATH/../../../
+
+mvn dependency:copy-dependencies -DincludeScope=runtime 
-DoutputDirectory=$DEP_PATH
+
+ls $DEP_PATH | egrep -v "^hugegraph" | sort -n > $BASE_PATH/$FILE_NAME
+rm -r -f $DEP_PATH

Reply via email to