From 45f0a5445e325986e8c38f9979a05c3fc34a4f85 Mon Sep 17 00:00:00 2001
From: kubbot & kubecub <3293172751ysy@gmail.com>
Date: Fri, 30 Jun 2023 23:22:16 +0800
Subject: [PATCH] fix: script -> scripts

Signed-off-by: kubbot & kubecub <3293172751ysy@gmail.com>
---
 Dockerfile                        |  10 +-
 deploy.Dockerfile                 |  10 +-
 docker-compose.yaml               |  22 +--
 init_docker.sh                    |   4 +-
 install_guide.sh                  |   8 +-
 install_im_compose.sh             |   2 +-
 install_im_server.sh              |   4 +-
 script/LICENSE/LICENSE            | 201 ---------------------------
 script/LICENSE/LICENSE_TEMPLATES  |  13 --
 script/batch_build_all_service.sh |  60 --------
 script/batch_start_all.sh         |  60 --------
 script/build_all_service.sh       |  36 -----
 script/build_images.sh            |  11 --
 script/build_push_k8s_images.sh   |  32 -----
 script/check_all.sh               |  54 --------
 script/docker_check_service.sh    |  12 --
 script/docker_start_all.sh        |  34 -----
 script/enterprise/check_all.sh    |  28 ----
 script/enterprise/function.sh     |  15 --
 script/enterprise/path_info.cfg   |  29 ----
 script/env_check.sh               |  56 --------
 script/function.sh                |  15 --
 script/githooks/commit-msg        |  77 -----------
 script/githooks/pre-commit        | 112 ---------------
 script/githooks/pre-push          |  52 -------
 script/init_pwd.sh                |  11 --
 script/make-rules/common.mk       | 178 ------------------------
 script/make-rules/copyright.mk    |  57 --------
 script/make-rules/dependencies.mk |  41 ------
 script/make-rules/gen.mk          |  82 -----------
 script/make-rules/golang.mk       | 195 --------------------------
 script/make-rules/image.mk        | 155 ---------------------
 script/make-rules/release.mk      |  42 ------
 script/make-rules/tools.mk        | 222 ------------------------------
 script/mongo-init.sh              |  12 --
 script/msg_gateway_start.sh       |  54 --------
 script/msg_transfer_start.sh      |  46 -------
 script/path_info.cfg              |  92 -------------
 script/push_start.sh              |  49 -------
 script/sdk_svr_start.sh           |  46 -------
 script/start_all.sh               |  30 ----
 script/start_cron.sh              |  37 -----
 script/start_rpc_service.sh       |  88 ------------
 script/stop_all.sh                |  19 ---
 script/style_info.cfg             |   9 --
 45 files changed, 30 insertions(+), 2392 deletions(-)
 delete mode 100644 script/LICENSE/LICENSE
 delete mode 100644 script/LICENSE/LICENSE_TEMPLATES
 delete mode 100644 script/batch_build_all_service.sh
 delete mode 100644 script/batch_start_all.sh
 delete mode 100644 script/build_all_service.sh
 delete mode 100644 script/build_images.sh
 delete mode 100644 script/build_push_k8s_images.sh
 delete mode 100644 script/check_all.sh
 delete mode 100644 script/docker_check_service.sh
 delete mode 100644 script/docker_start_all.sh
 delete mode 100644 script/enterprise/check_all.sh
 delete mode 100644 script/enterprise/function.sh
 delete mode 100644 script/enterprise/path_info.cfg
 delete mode 100644 script/env_check.sh
 delete mode 100644 script/function.sh
 delete mode 100644 script/githooks/commit-msg
 delete mode 100644 script/githooks/pre-commit
 delete mode 100644 script/githooks/pre-push
 delete mode 100644 script/init_pwd.sh
 delete mode 100644 script/make-rules/common.mk
 delete mode 100644 script/make-rules/copyright.mk
 delete mode 100644 script/make-rules/dependencies.mk
 delete mode 100644 script/make-rules/gen.mk
 delete mode 100644 script/make-rules/golang.mk
 delete mode 100644 script/make-rules/image.mk
 delete mode 100644 script/make-rules/release.mk
 delete mode 100644 script/make-rules/tools.mk
 delete mode 100644 script/mongo-init.sh
 delete mode 100644 script/msg_gateway_start.sh
 delete mode 100644 script/msg_transfer_start.sh
 delete mode 100644 script/path_info.cfg
 delete mode 100644 script/push_start.sh
 delete mode 100644 script/sdk_svr_start.sh
 delete mode 100644 script/start_all.sh
 delete mode 100644 script/start_cron.sh
 delete mode 100644 script/start_rpc_service.sh
 delete mode 100644 script/stop_all.sh
 delete mode 100644 script/style_info.cfg

diff --git a/Dockerfile b/Dockerfile
index 1738bda80..ad212bb1b 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -9,7 +9,7 @@ WORKDIR /Open-IM-Server
 # add all files to the container
 COPY . .
 
-WORKDIR /Open-IM-Server/script
+WORKDIR /Open-IM-Serverscript
 RUN chmod +x *.sh
 
 RUN /bin/sh -c ./build_all_service.sh
@@ -27,13 +27,13 @@ RUN apt-get install -y vim curl tzdata gawk
 RUN ln -fs /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && dpkg-reconfigure -f noninteractive tzdata
 
 
-#set directory to map logs,config file,script file.
-VOLUME ["/Open-IM-Server/logs","/Open-IM-Server/config","/Open-IM-Server/script","/Open-IM-Server/db/sdk"]
+#set directory to map logs,config file,scripts file.
+VOLUME ["/Open-IM-Server/logs","/Open-IM-Server/config","/Open-IM-Serverscript","/Open-IM-Server/db/sdk"]
 
 #Copy scripts files and binary files to the blank image
-COPY --from=build /Open-IM-Server/script /Open-IM-Server/script
+COPY --from=build /Open-IM-Serverscript /Open-IM-Serverscript
 COPY --from=build /Open-IM-Server/bin /Open-IM-Server/bin
 
-WORKDIR /Open-IM-Server/script
+WORKDIR /Open-IM-Serverscript
 
 CMD ["./docker_start_all.sh"]
diff --git a/deploy.Dockerfile b/deploy.Dockerfile
index 1738bda80..01923032c 100644
--- a/deploy.Dockerfile
+++ b/deploy.Dockerfile
@@ -9,7 +9,7 @@ WORKDIR /Open-IM-Server
 # add all files to the container
 COPY . .
 
-WORKDIR /Open-IM-Server/script
+WORKDIR /Open-IM-Server/scripts
 RUN chmod +x *.sh
 
 RUN /bin/sh -c ./build_all_service.sh
@@ -27,13 +27,13 @@ RUN apt-get install -y vim curl tzdata gawk
 RUN ln -fs /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && dpkg-reconfigure -f noninteractive tzdata
 
 
-#set directory to map logs,config file,script file.
-VOLUME ["/Open-IM-Server/logs","/Open-IM-Server/config","/Open-IM-Server/script","/Open-IM-Server/db/sdk"]
+#set directory to map logs,config file,scripts file.
+VOLUME ["/Open-IM-Server/logs","/Open-IM-Server/config","/Open-IM-Server/scripts","/Open-IM-Server/db/sdk"]
 
 #Copy scripts files and binary files to the blank image
-COPY --from=build /Open-IM-Server/script /Open-IM-Server/script
+COPY --from=build /Open-IM-Server/scripts /Open-IM-Server/scripts
 COPY --from=build /Open-IM-Server/bin /Open-IM-Server/bin
 
-WORKDIR /Open-IM-Server/script
+WORKDIR /Open-IM-Server/scripts
 
 CMD ["./docker_start_all.sh"]
diff --git a/docker-compose.yaml b/docker-compose.yaml
index de0d5910c..dee6ecae0 100644
--- a/docker-compose.yaml
+++ b/docker-compose.yaml
@@ -15,7 +15,7 @@ services:
     restart: always
 
   mongodb:
-    image: mongo:4.0
+    image: mongo:6.0
     ports:
       - 37017:27017
     container_name: mongo
@@ -24,7 +24,7 @@ services:
       - ${DATA_DIR}/components/mongodb/data/db:/data/db
       - ${DATA_DIR}/components/mongodb/data/logs:/data/logs
       - ${DATA_DIR}/components/mongodb/data/conf:/etc/mongo
-      - ./script/mongo-init.sh:/docker-entrypoint-initdb.d/mongo-init.sh:ro 
+      - ./scripts/mongo-init.sh:/docker-entrypoint-initdb.d/mongo-init.sh:ro 
     environment:
       - TZ=Asia/Shanghai
       # cache
@@ -37,7 +37,7 @@ services:
     restart: always
 
   redis:
-    image: redis
+    image: redis:6.2.5
     ports:
       - 16379:6379
     container_name: redis
@@ -107,7 +107,7 @@ services:
       - ./config/config.yaml:/Open-IM-Server/config/config.yaml
       - ./config/notification.yaml:/Open-IM-Server/config/notification.yaml
       - ${DATA_DIR}/db/sdk:/Open-IM-Server/db/sdk
-      - ./script:/Open-IM-Server/script
+      - ./scripts:/Open-IM-Server/scripts
     restart: always
     depends_on:
       - kafka
@@ -122,12 +122,12 @@ services:
         max-size: "1g"
         max-file: "2"
 
-  open_im_enterprise:
-    image: openim/open_im_enterprise:v1.0.2
-    container_name: open_im_enterprise
+  openim_chat:
+    image: openim/openim_chat:v1.0
+    container_name: openim_chat
     volumes:
-      - ./logs:/Open-IM-Enterprise/logs
-      - ./.docker-compose_cfg/config.yaml:/Open-IM-Enterprise/config/config.yaml
+      - ./logs:/openim-chat/logs
+      - ./openim-chat/config/config.yaml:/openim-chat/config/config.yaml
     restart: always
     depends_on:
       - mysql
@@ -142,7 +142,7 @@ services:
         max-size: "1g"
         max-file: "2"
     environment:
-      CONFIG_NAME: "/Open-IM-Enterprise"
+      CONFIG_NAME: "/openim-chat"
 
   prometheus:
     image: prom/prometheus
@@ -172,4 +172,4 @@ services:
   #   container_name: node-exporter
   #   restart: always
   #   ports:
-  #     - "9100:9100"
+  #     - "9100:9100"
\ No newline at end of file
diff --git a/init_docker.sh b/init_docker.sh
index aa188d65f..edc1df58d 100644
--- a/init_docker.sh
+++ b/init_docker.sh
@@ -1,9 +1,9 @@
 #!/usr/bin/env bash
 
-cd script ;
+cd scripts ;
 chmod +x *.sh ;
 ./env_check.sh;
 cd .. ;
 docker-compose up -d;
-cd script ;
+cd scripts ;
 ./docker_check_service.sh
diff --git a/install_guide.sh b/install_guide.sh
index b0067396a..57fad73dd 100644
--- a/install_guide.sh
+++ b/install_guide.sh
@@ -1,6 +1,6 @@
 #!/bin/bash
 
-echo "Welcome to the Open-IM-Server installation script."
+echo "Welcome to the Open-IM-Server installation scripts."
 echo "Please select an deploy option:"
 echo "1. docker-compose install"
 echo "2. exit"
@@ -145,13 +145,13 @@ EOF
     edit_config
     edit_enterprise_config
     
-    cd script;
+    cd scripts;
     chmod +x *.sh;
     ./init_pwd.sh;
     ./env_check.sh;
     cd ..;
     docker-compose up -d;
-    cd script;
+    cd scripts;
     ./docker_check_service.sh;
 }
 
@@ -167,7 +167,7 @@ case $choice in
   3)
     ;;
   4)
-    echo "Exiting installation script..."
+    echo "Exiting installation scripts..."
     exit 0
     ;;
   *)
diff --git a/install_im_compose.sh b/install_im_compose.sh
index 36d3a4b73..687a827d1 100644
--- a/install_im_compose.sh
+++ b/install_im_compose.sh
@@ -9,7 +9,7 @@ if [ $MINIO_ENDPOINT == "http://127.0.0.1:10005" ]; then
 
 fi
 
-cd script ;
+cd scripts ;
 chmod +x *.sh ;
 ./init_pwd.sh
 ./env_check.sh;
diff --git a/install_im_server.sh b/install_im_server.sh
index ea641d0f8..edf4b8331 100644
--- a/install_im_server.sh
+++ b/install_im_server.sh
@@ -9,11 +9,11 @@ if [ $MINIO_ENDPOINT == "http://127.0.0.1:10005" ]; then
 
 fi
 	
-cd script ;
+cd scripts ;
 chmod +x *.sh ;
 ./init_pwd.sh
 ./env_check.sh;
 cd .. ;
 docker-compose up -d;
-cd script ;
+cd scripts ;
 ./docker_check_service.sh
diff --git a/script/LICENSE/LICENSE b/script/LICENSE/LICENSE
deleted file mode 100644
index 261eeb9e9..000000000
--- a/script/LICENSE/LICENSE
+++ /dev/null
@@ -1,201 +0,0 @@
-                                 Apache License
-                           Version 2.0, January 2004
-                        http://www.apache.org/licenses/
-
-   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
-
-   1. Definitions.
-
-      "License" shall mean the terms and conditions for use, reproduction,
-      and distribution as defined by Sections 1 through 9 of this document.
-
-      "Licensor" shall mean the copyright owner or entity authorized by
-      the copyright owner that is granting the License.
-
-      "Legal Entity" shall mean the union of the acting entity and all
-      other entities that control, are controlled by, or are under common
-      control with that entity. For the purposes of this definition,
-      "control" means (i) the power, direct or indirect, to cause the
-      direction or management of such entity, whether by contract or
-      otherwise, or (ii) ownership of fifty percent (50%) or more of the
-      outstanding shares, or (iii) beneficial ownership of such entity.
-
-      "You" (or "Your") shall mean an individual or Legal Entity
-      exercising permissions granted by this License.
-
-      "Source" form shall mean the preferred form for making modifications,
-      including but not limited to software source code, documentation
-      source, and configuration files.
-
-      "Object" form shall mean any form resulting from mechanical
-      transformation or translation of a Source form, including but
-      not limited to compiled object code, generated documentation,
-      and conversions to other media types.
-
-      "Work" shall mean the work of authorship, whether in Source or
-      Object form, made available under the License, as indicated by a
-      copyright notice that is included in or attached to the work
-      (an example is provided in the Appendix below).
-
-      "Derivative Works" shall mean any work, whether in Source or Object
-      form, that is based on (or derived from) the Work and for which the
-      editorial revisions, annotations, elaborations, or other modifications
-      represent, as a whole, an original work of authorship. For the purposes
-      of this License, Derivative Works shall not include works that remain
-      separable from, or merely link (or bind by name) to the interfaces of,
-      the Work and Derivative Works thereof.
-
-      "Contribution" shall mean any work of authorship, including
-      the original version of the Work and any modifications or additions
-      to that Work or Derivative Works thereof, that is intentionally
-      submitted to Licensor for inclusion in the Work by the copyright owner
-      or by an individual or Legal Entity authorized to submit on behalf of
-      the copyright owner. For the purposes of this definition, "submitted"
-      means any form of electronic, verbal, or written communication sent
-      to the Licensor or its representatives, including but not limited to
-      communication on electronic mailing lists, source code control systems,
-      and issue tracking systems that are managed by, or on behalf of, the
-      Licensor for the purpose of discussing and improving the Work, but
-      excluding communication that is conspicuously marked or otherwise
-      designated in writing by the copyright owner as "Not a Contribution."
-
-      "Contributor" shall mean Licensor and any individual or Legal Entity
-      on behalf of whom a Contribution has been received by Licensor and
-      subsequently incorporated within the Work.
-
-   2. Grant of Copyright License. Subject to the terms and conditions of
-      this License, each Contributor hereby grants to You a perpetual,
-      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
-      copyright license to reproduce, prepare Derivative Works of,
-      publicly display, publicly perform, sublicense, and distribute the
-      Work and such Derivative Works in Source or Object form.
-
-   3. Grant of Patent License. Subject to the terms and conditions of
-      this License, each Contributor hereby grants to You a perpetual,
-      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
-      (except as stated in this section) patent license to make, have made,
-      use, offer to sell, sell, import, and otherwise transfer the Work,
-      where such license applies only to those patent claims licensable
-      by such Contributor that are necessarily infringed by their
-      Contribution(s) alone or by combination of their Contribution(s)
-      with the Work to which such Contribution(s) was submitted. If You
-      institute patent litigation against any entity (including a
-      cross-claim or counterclaim in a lawsuit) alleging that the Work
-      or a Contribution incorporated within the Work constitutes direct
-      or contributory patent infringement, then any patent licenses
-      granted to You under this License for that Work shall terminate
-      as of the date such litigation is filed.
-
-   4. Redistribution. You may reproduce and distribute copies of the
-      Work or Derivative Works thereof in any medium, with or without
-      modifications, and in Source or Object form, provided that You
-      meet the following conditions:
-
-      (a) You must give any other recipients of the Work or
-          Derivative Works a copy of this License; and
-
-      (b) You must cause any modified files to carry prominent notices
-          stating that You changed the files; and
-
-      (c) You must retain, in the Source form of any Derivative Works
-          that You distribute, all copyright, patent, trademark, and
-          attribution notices from the Source form of the Work,
-          excluding those notices that do not pertain to any part of
-          the Derivative Works; and
-
-      (d) If the Work includes a "NOTICE" text file as part of its
-          distribution, then any Derivative Works that You distribute must
-          include a readable copy of the attribution notices contained
-          within such NOTICE file, excluding those notices that do not
-          pertain to any part of the Derivative Works, in at least one
-          of the following places: within a NOTICE text file distributed
-          as part of the Derivative Works; within the Source form or
-          documentation, if provided along with the Derivative Works; or,
-          within a display generated by the Derivative Works, if and
-          wherever such third-party notices normally appear. The contents
-          of the NOTICE file are for informational purposes only and
-          do not modify the License. You may add Your own attribution
-          notices within Derivative Works that You distribute, alongside
-          or as an addendum to the NOTICE text from the Work, provided
-          that such additional attribution notices cannot be construed
-          as modifying the License.
-
-      You may add Your own copyright statement to Your modifications and
-      may provide additional or different license terms and conditions
-      for use, reproduction, or distribution of Your modifications, or
-      for any such Derivative Works as a whole, provided Your use,
-      reproduction, and distribution of the Work otherwise complies with
-      the conditions stated in this License.
-
-   5. Submission of Contributions. Unless You explicitly state otherwise,
-      any Contribution intentionally submitted for inclusion in the Work
-      by You to the Licensor shall be under the terms and conditions of
-      this License, without any additional terms or conditions.
-      Notwithstanding the above, nothing herein shall supersede or modify
-      the terms of any separate license agreement you may have executed
-      with Licensor regarding such Contributions.
-
-   6. Trademarks. This License does not grant permission to use the trade
-      names, trademarks, service marks, or product names of the Licensor,
-      except as required for reasonable and customary use in describing the
-      origin of the Work and reproducing the content of the NOTICE file.
-
-   7. Disclaimer of Warranty. Unless required by applicable law or
-      agreed to in writing, Licensor provides the Work (and each
-      Contributor provides its Contributions) on an "AS IS" BASIS,
-      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
-      implied, including, without limitation, any warranties or conditions
-      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
-      PARTICULAR PURPOSE. You are solely responsible for determining the
-      appropriateness of using or redistributing the Work and assume any
-      risks associated with Your exercise of permissions under this License.
-
-   8. Limitation of Liability. In no event and under no legal theory,
-      whether in tort (including negligence), contract, or otherwise,
-      unless required by applicable law (such as deliberate and grossly
-      negligent acts) or agreed to in writing, shall any Contributor be
-      liable to You for damages, including any direct, indirect, special,
-      incidental, or consequential damages of any character arising as a
-      result of this License or out of the use or inability to use the
-      Work (including but not limited to damages for loss of goodwill,
-      work stoppage, computer failure or malfunction, or any and all
-      other commercial damages or losses), even if such Contributor
-      has been advised of the possibility of such damages.
-
-   9. Accepting Warranty or Additional Liability. While redistributing
-      the Work or Derivative Works thereof, You may choose to offer,
-      and charge a fee for, acceptance of support, warranty, indemnity,
-      or other liability obligations and/or rights consistent with this
-      License. However, in accepting such obligations, You may act only
-      on Your own behalf and on Your sole responsibility, not on behalf
-      of any other Contributor, and only if You agree to indemnify,
-      defend, and hold each Contributor harmless for any liability
-      incurred by, or claims asserted against, such Contributor by reason
-      of your accepting any such warranty or additional liability.
-
-   END OF TERMS AND CONDITIONS
-
-   APPENDIX: How to apply the Apache License to your work.
-
-      To apply the Apache License to your work, attach the following
-      boilerplate notice, with the fields enclosed by brackets "[]"
-      replaced with your own identifying information. (Don't include
-      the brackets!)  The text should be enclosed in the appropriate
-      comment syntax for the file format. We also recommend that a
-      file or class name and description of purpose be included on the
-      same "printed page" as the copyright notice for easier
-      identification within third-party archives.
-
-   Copyright [yyyy] [name of copyright owner]
-
-   Licensed 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.
diff --git a/script/LICENSE/LICENSE_TEMPLATES b/script/LICENSE/LICENSE_TEMPLATES
deleted file mode 100644
index dbc5ce2c8..000000000
--- a/script/LICENSE/LICENSE_TEMPLATES
+++ /dev/null
@@ -1,13 +0,0 @@
-Copyright © {{.Year}} {{.Holder}} All rights reserved.
-
-Licensed 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.
diff --git a/script/batch_build_all_service.sh b/script/batch_build_all_service.sh
deleted file mode 100644
index bf780008f..000000000
--- a/script/batch_build_all_service.sh
+++ /dev/null
@@ -1,60 +0,0 @@
-#!/usr/bin/env bash
-
-source ./style_info.cfg
-source ./path_info.cfg
-source ./function.sh
-
-bin_dir="../bin"
-logs_dir="../logs"
-sdk_db_dir="../db/sdk/"
-#Automatically created when there is no bin, logs folder
-if [ ! -d $bin_dir ]; then
-  mkdir -p $bin_dir
-fi
-if [ ! -d $logs_dir ]; then
-  mkdir -p $logs_dir
-fi
-if [ ! -d $sdk_db_dir ]; then
-  mkdir -p $sdk_db_dir
-fi
-
-#begin path
-begin_path=$PWD
-
-
-build_pid_array=()
-
-for ((i = 0; i < ${#service_source_root[*]}; i++)); do
-  cd $begin_path
-  service_path=${service_source_root[$i]}
-  cd $service_path
-  make install > /dev/null &
-  build_pid=$!
-  build_pid_array[i]=$build_pid
-done
-
-
-echo "wait all build finish....."
-
-success_num=0
-for ((i = 0; i < ${#service_source_root[*]}; i++)); do
-  echo "wait pid: " ${build_pid_array[i]} ${service_names[$i]}
-  wait ${build_pid_array[i]}
-  stat=$?
-  echo ${service_names[$i]} "pid: " ${build_pid_array[i]}  "stat: " $stat
- if [ $stat == 0 ]
- then
-      echo -e "${GREEN_PREFIX}${service_names[$i]} successfully be built ${COLOR_SUFFIX}\n"
-      let success_num=$success_num+1
-
- else
-      echo -e "${RED_PREFIX}${service_names[$i]} build failed ${COLOR_SUFFIX}\n"
-      exit -1
- fi
-done
-
-echo "success_num" $success_num  "service num:" ${#service_source_root[*]}
-if [ $success_num == ${#service_source_root[*]} ]
-then
-  echo -e ${YELLOW_PREFIX}"all services build success"${COLOR_SUFFIX}
-fi
diff --git a/script/batch_start_all.sh b/script/batch_start_all.sh
deleted file mode 100644
index 085690717..000000000
--- a/script/batch_start_all.sh
+++ /dev/null
@@ -1,60 +0,0 @@
-#!/usr/bin/env bash
-#fixme This script is the total startup script
-#fixme The full name of the shell script that needs to be started is placed in the need_to_start_server_shell array
-
-#fixme Put the shell script name here
-need_to_start_server_shell=(
-  start_rpc_service.sh
-  msg_gateway_start.sh
-  push_start.sh
-  msg_transfer_start.sh
-  sdk_svr_start.sh
-)
-time=`date +"%Y-%m-%d %H:%M:%S"`
-echo "==========================================================">>../logs/openIM.log 2>&1 &
-echo "==========================================================">>../logs/openIM.log 2>&1 &
-echo "==========================================================">>../logs/openIM.log 2>&1 &
-echo "==========server start time:${time}===========">>../logs/openIM.log 2>&1 &
-echo "==========================================================">>../logs/openIM.log 2>&1 &
-echo "==========================================================">>../logs/openIM.log 2>&1 &
-echo "==========================================================">>../logs/openIM.log 2>&1 &
-
-build_pid_array=()
-idx=0
-for i in ${need_to_start_server_shell[*]}; do
-  chmod +x $i
-  ./$i &
-  build_pid=$!
-  echo "build_pid " $build_pid
-  build_pid_array[idx]=$build_pid
-  let idx=idx+1
-done
-
-echo "wait all start finish....."
-
-exit 0
-
-success_num=0
-for ((i = 0; i < ${#need_to_start_server_shell[*]}; i++)); do
-  echo "wait pid: " ${build_pid_array[i]} ${need_to_start_server_shell[$i]}
-  wait ${build_pid_array[i]}
-  stat=$?
-  echo ${build_pid_array[i]}  " " $stat
- if [ $stat == 0 ]
- then
-     # echo -e "${GREEN_PREFIX}${need_to_start_server_shell[$i]} successfully be built ${COLOR_SUFFIX}\n"
-      let success_num=$success_num+1
-
- else
-      #echo -e "${RED_PREFIX}${need_to_start_server_shell[$i]} build failed ${COLOR_SUFFIX}\n"
-      exit -1
- fi
-done
-
-echo "success_num" $success_num  "service num:" ${#need_to_start_server_shell[*]}
-if [ $success_num == ${#need_to_start_server_shell[*]} ]
-then
-  echo -e ${YELLOW_PREFIX}"all services build success"${COLOR_SUFFIX}
-fi
-
-
diff --git a/script/build_all_service.sh b/script/build_all_service.sh
deleted file mode 100644
index 0d9814bec..000000000
--- a/script/build_all_service.sh
+++ /dev/null
@@ -1,36 +0,0 @@
-#!/usr/bin/env bash
-
-source ./style_info.cfg
-source ./path_info.cfg
-source ./function.sh
-
-bin_dir="../bin"
-logs_dir="../logs"
-sdk_db_dir="../db/sdk/"
-#Automatically created when there is no bin, logs folder
-if [ ! -d $bin_dir ]; then
-  mkdir -p $bin_dir
-fi
-if [ ! -d $logs_dir ]; then
-  mkdir -p $logs_dir
-fi
-if [ ! -d $sdk_db_dir ]; then
-  mkdir -p $sdk_db_dir
-fi
-
-#begin path
-begin_path=$PWD
-
-for ((i = 0; i < ${#service_source_root[*]}; i++)); do
-  cd $begin_path
-  service_path=${service_source_root[$i]}
-  cd $service_path
-  make install
-  if [ $? -ne 0 ]; then
-        echo -e "${RED_PREFIX}${service_names[$i]} build failed ${COLOR_SUFFIX}\n"
-        exit -1
-        else
-         echo -e "${GREEN_PREFIX}${service_names[$i]} successfully be built ${COLOR_SUFFIX}\n"
-  fi
-done
-echo -e ${YELLOW_PREFIX}"all services build success"${COLOR_SUFFIX}
diff --git a/script/build_images.sh b/script/build_images.sh
deleted file mode 100644
index ad37e24e4..000000000
--- a/script/build_images.sh
+++ /dev/null
@@ -1,11 +0,0 @@
-#!/usr/bin/env bash
-image=openim/open_im_server:v1.0.5
-rm Open-IM-Server -rf
-git clone https://github.com/OpenIMSDK/Open-IM-Server.git --recursive
-cd Open-IM-Server
-git checkout tuoyun
-cd cmd/Open-IM-SDK-Core/
-git checkout tuoyun
-cd ../../
-docker build -t  $image . -f deploy.Dockerfile
-docker push $image
\ No newline at end of file
diff --git a/script/build_push_k8s_images.sh b/script/build_push_k8s_images.sh
deleted file mode 100644
index 432457298..000000000
--- a/script/build_push_k8s_images.sh
+++ /dev/null
@@ -1,32 +0,0 @@
-#!/usr/bin/env bash
-version=errcode
-repository=${1}
-if [[ -z ${repository} ]]
-then
-  echo "repository is empty"
-  exit 0
-fi
-
-set +e
-echo "repository: ${repository}"
-source ./path_info.cfg
-echo "start to build docker images"
-currentPwd=`pwd`
-echo ${currentPwd}
-i=0
-for path in  ${service_source_root[*]}
-do
-  cd ${path}
-  make build
-  image="${repository}/${image_names[${i}]}:$version"
-  echo ${image}
-  docker build -t $image . -f ./deploy.Dockerfile
-  echo "build ${image} success"
-  docker push ${image}
-  echo "push ${image} success"
-  echo "=============================="
-  i=$((i + 1))
-  cd ${currentPwd}
-done
-
-echo "build all images success"
\ No newline at end of file
diff --git a/script/check_all.sh b/script/check_all.sh
deleted file mode 100644
index e4feb7f93..000000000
--- a/script/check_all.sh
+++ /dev/null
@@ -1,54 +0,0 @@
-#!/usr/bin/env bash
-
-source ./style_info.cfg
-source ./path_info.cfg
-source ./function.sh
-service_port_name=(
-  openImWsPort
-  openImApiPort
-  openImUserPort
-  openImFriendPort
-  openImMessagePort
-  openImMessageGatewayPort
-  openImGroupPort
-  openImAuthPort
-  openImPushPort
-  openImConversationPort
-  openImThirdPort
-)
-for i in ${service_port_name[*]}; do
-  list=$(cat $config_path | grep -w ${i} | awk -F '[:]' '{print $NF}')
-  list_to_string $list
-  for j in ${ports_array}; do
-    port=$(ss -tunlp| grep open_im | awk '{print $5}' | grep -w ${j} | awk -F '[:]' '{print $NF}')
-    if [[ ${port} -ne ${j} ]]; then
-      echo -e ${YELLOW_PREFIX}${i}${COLOR_SUFFIX}${RED_PREFIX}" service does not start normally,not initiated port is "${COLOR_SUFFIX}${YELLOW_PREFIX}${j}${COLOR_SUFFIX}
-      echo -e ${RED_PREFIX}"please check ../logs/openIM.log "${COLOR_SUFFIX}
-      exit -1
-    else
-      echo -e ${j}${GREEN_PREFIX}" port has been listening,belongs service is "${i}${COLOR_SUFFIX}
-    fi
-  done
-done
-
-#Check launched service process
-check=$(ps aux | grep -w ./${msg_transfer_name} | grep -v grep | wc -l)
-if [ $check -eq ${msg_transfer_service_num} ]; then
-  echo -e ${GREEN_PREFIX}"none  port has been listening,belongs service is openImMsgTransfer"${COLOR_SUFFIX}
-else
-  echo -e ${RED_PREFIX}"openImMsgTransfer service does not start normally, num err"${COLOR_SUFFIX}
-        echo -e ${RED_PREFIX}"please check ../logs/openIM.log "${COLOR_SUFFIX}
-      exit -1
-fi
-
-
-check=$(ps aux | grep -w ./${cron_task_name} | grep -v grep | wc -l)
-if [ $check -ge 1 ]; then
-  echo -e ${GREEN_PREFIX}"none  port has been listening,belongs service is openImCronTask"${COLOR_SUFFIX}
-else
-  echo -e ${RED_PREFIX}"cron_task_name service does not start normally"${COLOR_SUFFIX}
-        echo -e ${RED_PREFIX}"please check ../logs/openIM.log "${COLOR_SUFFIX}
-      exit -1
-fi
-
-echo -e ${YELLOW_PREFIX}"all services launch success"${COLOR_SUFFIX}
diff --git a/script/docker_check_service.sh b/script/docker_check_service.sh
deleted file mode 100644
index 87ed75802..000000000
--- a/script/docker_check_service.sh
+++ /dev/null
@@ -1,12 +0,0 @@
-#!/usr/bin/env bash
-echo "docker-compose ps..........................."
-docker-compose ps
-
-echo "check OpenIM, waiting 30s...................."
-sleep 60
-
-echo "check OpenIM................................"
-./check_all.sh
-# chmod +x ./enterprise/*.sh
-# ./enterprise/check_all.sh
-
diff --git a/script/docker_start_all.sh b/script/docker_start_all.sh
deleted file mode 100644
index b7b24dd4b..000000000
--- a/script/docker_start_all.sh
+++ /dev/null
@@ -1,34 +0,0 @@
-#!/usr/bin/env bash
-#fixme This script is the total startup script
-#fixme The full name of the shell script that needs to be started is placed in the need_to_start_server_shell array
-
-#fixme Put the shell script name here
-need_to_start_server_shell=(
-  start_rpc_service.sh
-  msg_gateway_start.sh
-  push_start.sh
-  msg_transfer_start.sh
-  sdk_svr_start.sh
-  start_cron.sh
-)
-
-#fixme The 10 second delay to start the project is for the docker-compose one-click to start openIM when the infrastructure dependencies are not started
-
-sleep 10
-time=`date +"%Y-%m-%d %H:%M:%S"`
-echo "==========================================================">>../logs/openIM.log 2>&1 &
-echo "==========================================================">>../logs/openIM.log 2>&1 &
-echo "==========================================================">>../logs/openIM.log 2>&1 &
-echo "==========server start time:${time}===========">>../logs/openIM.log 2>&1 &
-echo "==========================================================">>../logs/openIM.log 2>&1 &
-echo "==========================================================">>../logs/openIM.log 2>&1 &
-echo "==========================================================">>../logs/openIM.log 2>&1 &
-for i in ${need_to_start_server_shell[*]}; do
-  chmod +x $i
-  ./$i
-done
-
-sleep 15
-
-#fixme prevents the openIM service exit after execution in the docker container
-tail -f /dev/null
diff --git a/script/enterprise/check_all.sh b/script/enterprise/check_all.sh
deleted file mode 100644
index 0f6cb0d5c..000000000
--- a/script/enterprise/check_all.sh
+++ /dev/null
@@ -1,28 +0,0 @@
-#!/usr/bin/env bash
-
-source ./style_info.cfg
-source ./enterprise/path_info.cfg
-source ./enterprise/function.sh
-service_port_name=(
- openImChatApiPort
- openImAdminApiPort
-   #api port name
-   openImAdminPort
-   openImChatPort
-)
-
-for i in ${service_port_name[*]}; do
-  list=$(cat $config_path | grep -w ${i} | awk -F '[:]' '{print $NF}')
-  list_to_string $list
-  for j in ${ports_array}; do
-    port=$(ss -tunlp| grep open_im | awk '{print $5}' | grep -w ${j} | awk -F '[:]' '{print $NF}')
-    if [[ ${port} -ne ${j} ]]; then
-      echo -e ${YELLOW_PREFIX}${i}${COLOR_SUFFIX}${RED_PREFIX}" service does not start normally,not initiated port is "${COLOR_SUFFIX}${YELLOW_PREFIX}${j}${COLOR_SUFFIX}
-      echo -e ${RED_PREFIX}"please check ../logs/openIM.log "${COLOR_SUFFIX}
-      exit -1
-    else
-      echo -e ${j}${GREEN_PREFIX}" port has been listening,belongs service is "${i}${COLOR_SUFFIX}
-    fi
-  done
-done
-
diff --git a/script/enterprise/function.sh b/script/enterprise/function.sh
deleted file mode 100644
index 97f19187a..000000000
--- a/script/enterprise/function.sh
+++ /dev/null
@@ -1,15 +0,0 @@
-#!/usr/bin/env bash
-#input:[10023,2323,3434]
-#output:10023 2323 3434
-list_to_string(){
-ports_list=$*
-sub_s1=`echo $ports_list | sed 's/ //g'`
-sub_s2=${sub_s1//,/ }
-sub_s3=${sub_s2#*[}
-sub_s4=${sub_s3%]*}
-ports_array=$sub_s4
-}
-remove_space(){
-  value=$*
-  result=`echo $value | sed 's/ //g'`
-}
\ No newline at end of file
diff --git a/script/enterprise/path_info.cfg b/script/enterprise/path_info.cfg
deleted file mode 100644
index 7106ac5d5..000000000
--- a/script/enterprise/path_info.cfg
+++ /dev/null
@@ -1,29 +0,0 @@
-#Don't put the space between "="
-
-
-demo_server_name="open_im_chat_api"
-demo_server_binary_root="../bin/"
-
-
-
-#Global configuration file default dir
-config_path="../.docker-compose_cfg/config.yaml"
-
-#servicefile dir path
-service_source_root=(
-  #api service file
-  ../cmd/api/chat/
-  ../cmd/api/admin/
-  #rpc service file
-  ../cmd/rpc/admin/
-  ../cmd/rpc/chat/
-)
-#service filename
-service_names=(
-  #api service filename
-  open_im_chat_api
-   open_im_admin_api
-  #rpc service filename
-  open_im_admin
-  open_im_chat
-)
diff --git a/script/env_check.sh b/script/env_check.sh
deleted file mode 100644
index f51dca451..000000000
--- a/script/env_check.sh
+++ /dev/null
@@ -1,56 +0,0 @@
-#!/usr/bin/env bash
-source ./style_info.cfg
-
-echo -e "check time synchronize.................................."
-t=`curl http://time.akamai.com/?iso -s`
-t1=`date -d $t +%s`
-t2=`date +%s`
-let between=t2-t1
-if [[ $between -gt 10 ]] || [[ $between -lt -10 ]]; then
-  echo -e ${RED_PREFIX}"Warning: The difference between the iso time and the server's time is too large: "$between"s" ${COLOR_SUFFIX}
-else
-   echo -e ${GREEN_PREFIX} "ok: Server time is synchronized " ${COLOR_SUFFIX}
-fi
-
-
-
-echo -e "check login user........................................"
-user=`whoami`
-if [ $user == "root" ] ; then
-  echo -e ${GREEN_PREFIX} "ok: login user is root" ${COLOR_SUFFIX}
-else
-  echo -e ${RED_PREFIX}"Warning: The current user is not root "${COLOR_SUFFIX}
-fi
-
-
-
-echo -e "check docker............................................"
-docker_running=`systemctl status docker | grep running |  grep active | wc -l`
-
-docker_version=`docker-compose -v; docker -v`
-
-if [ $docker_running -gt 0 ]; then
-	echo -e ${GREEN_PREFIX} "ok: docker is running"   ${COLOR_SUFFIX}
-	echo -e ${GREEN_PREFIX}  $docker_version ${COLOR_SUFFIX}
-
-else
-	echo -e ${RED_PREFIX}"docker not running"${COLOR_SUFFIX}
-fi
-
-
-echo -e "check environment......................................."
-SYSTEM=`uname -s`
-if [ $SYSTEM != "Linux" ] ; then
-        echo -e ${RED_PREFIX}"Warning: Currently only Linux is supported"${COLOR_SUFFIX}
-else
-        echo -e ${GREEN_PREFIX} "ok: system is linux"${COLOR_SUFFIX}
-fi
-
-echo -e "check memory............................................"
-available=`free -m | grep Mem | awk '{print $NF}'`
-if [ $available -lt 2000 ] ; then
-        echo -e ${RED_PREFIX}"Warning: Your memory not enough, available is: " "$available"m${COLOR_SUFFIX}"\c"
-        echo -e ${RED_PREFIX}", must be greater than 2000m"${COLOR_SUFFIX}
-else
-        echo -e ${GREEN_PREFIX} "ok: available memory is: "$available"m${COLOR_SUFFIX}"
-fi
diff --git a/script/function.sh b/script/function.sh
deleted file mode 100644
index 97f19187a..000000000
--- a/script/function.sh
+++ /dev/null
@@ -1,15 +0,0 @@
-#!/usr/bin/env bash
-#input:[10023,2323,3434]
-#output:10023 2323 3434
-list_to_string(){
-ports_list=$*
-sub_s1=`echo $ports_list | sed 's/ //g'`
-sub_s2=${sub_s1//,/ }
-sub_s3=${sub_s2#*[}
-sub_s4=${sub_s3%]*}
-ports_array=$sub_s4
-}
-remove_space(){
-  value=$*
-  result=`echo $value | sed 's/ //g'`
-}
\ No newline at end of file
diff --git a/script/githooks/commit-msg b/script/githooks/commit-msg
deleted file mode 100644
index 66b40d016..000000000
--- a/script/githooks/commit-msg
+++ /dev/null
@@ -1,77 +0,0 @@
-#!/usr/bin/env bash
-# Copyright © 2023 OpenIMSDK.
-#
-# Licensed 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.
-#
-# ==============================================================================
-#
-# Store this file as .git/hooks/commit-msg in your repository in order to
-# enforce checking for proper commit message format before actual commits.
-# You may need to make the scripts executable by 'chmod +x .git/hooks/commit-msg'.
-
-# commit-msg use go-gitlint tool, install go-gitlint via `go get github.com/llorllale/go-gitlint/cmd/go-gitlint`
-# go-gitlint --msg-file="$1"
-
-# An example hook scripts to check the commit log message.
-# Called by "git commit" with one argument, the name of the file
-# that has the commit message.  The hook should exit with non-zero
-# status after issuing an appropriate message if it wants to stop the
-# commit.  The hook is allowed to edit the commit message file.
-
-YELLOW="\e[93m"
-GREEN="\e[32m"
-RED="\e[31m"
-ENDCOLOR="\e[0m"
-
-printMessage() {
-   printf "${YELLOW}OpenIM : $1${ENDCOLOR}\n"
-}
-
-printSuccess() {
-   printf "${GREEN}OpenIM : $1${ENDCOLOR}\n"
-}
-
-printError() {
-   printf "${RED}OpenIM : $1${ENDCOLOR}\n"
-}
-
-printMessage "Running the OpenIM commit-msg hook."
-
-# This example catches duplicate Signed-off-by lines.
-
-test "" = "$(grep '^Signed-off-by: ' "$1" |
-	 sort | uniq -c | sed -e '/^[ 	]*1[ 	]/d')" || {
-	echo >&2 Duplicate Signed-off-by lines.
-	exit 1
-}
-
-# TODO: go-gitlint dir set
-GITLINT_DIR="./_output/tools/go-gitlint"
-
-$GITLINT_DIR \
-    --msg-file=$1 \
-    --subject-regex="^(build|chore|ci|docs|feat|feature|fix|perf|refactor|revert|style|test)(.*)?:\s?.*" \
-    --subject-maxlen=150 \
-    --subject-minlen=10 \
-    --body-regex=".*" \
-    --max-parents=1
-
-if [ $? -ne 0 ]
-then
-    if ! command -v $GITLINT_DIR &>/dev/null; then
-        printError "$GITLINT_DIR not found. Please run 'make tools' OR 'make tools.verify.go-gitlint' make verto install it."
-    fi
-    printError "Please fix your commit message to match kubecub coding standards"
-    printError "https://gist.github.com/cubxxw/126b72104ac0b0ca484c9db09c3e5694#file-githook-md"
-    exit 1
-fi
\ No newline at end of file
diff --git a/script/githooks/pre-commit b/script/githooks/pre-commit
deleted file mode 100644
index db9d7cf17..000000000
--- a/script/githooks/pre-commit
+++ /dev/null
@@ -1,112 +0,0 @@
-#!/usr/bin/env bash
-# Copyright © 2023 OpenIMSDK.
-#
-# Licensed 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.
-#
-# ==============================================================================
-# This is a pre-commit hook that ensures attempts to commit files that are
-# are larger than $limit to your _local_ repo fail, with a helpful error message.
-
-# You can override the default limit of 2MB by supplying the environment variable:
-# GIT_FILE_SIZE_LIMIT=50000000 git commit -m "test: this commit is allowed file sizes up to 50MB"
-#
-# ==============================================================================
-#
-
-LC_ALL=C
-
-local_branch="$(git rev-parse --abbrev-ref HEAD)"
-valid_branch_regex="^(main|master|develop)$|(feature|feat|release|hotfix|test|bug|ci|style|)\/[a-z0-9._-]+$|^HEAD$"
-
-
-YELLOW="\e[93m"
-GREEN="\e[32m"
-RED="\e[31m"
-ENDCOLOR="\e[0m"
-
-printMessage() {
-   printf "${YELLOW}openim : $1${ENDCOLOR}\n"
-}
-
-printSuccess() {
-   printf "${GREEN}openim : $1${ENDCOLOR}\n"
-}
-
-printError() {
-   printf "${RED}openim : $1${ENDCOLOR}\n"
-}
-
-printMessage "Running local openim pre-commit hook."
-
-# flutter format .
-# https://gist.github.com/cubxxw/126b72104ac0b0ca484c9db09c3e5694#file-githook-md
-# TODO! GIT_FILE_SIZE_LIMIT=50000000 git commit -m "test: this commit is allowed file sizes up to 50MB"
-# Maximum file size limit in bytes
-limit=${GIT_FILE_SIZE_LIMIT:-2000000} # Default 2MB
-limitInMB=$(( $limit / 1000000 ))
-
-function file_too_large(){
-	filename=$0
-	filesize=$(( $1 / 2**20 ))
-
-	cat <<HEREDOC
-
-	File $filename is $filesize MB, which is larger than github's maximum
-        file size (2 MB). We will not be able to push this file to GitHub.
-	Commit aborted
-
-HEREDOC
-    git status
-
-}
-
-# Move to the repo root so git files paths make sense
-repo_root=$( git rev-parse --show-toplevel )
-cd $repo_root
-
-empty_tree=$( git hash-object -t tree /dev/null )
-
-if git rev-parse --verify HEAD > /dev/null 2>&1
-then
-	against=HEAD
-else
-	against="$empty_tree"
-fi
-
-# Set split so that for loop below can handle spaces in file names by splitting on line breaks
-IFS='
-'
-
-shouldFail=false
-for file in $( git diff-index --cached --name-only $against ); do
-	file_size=$(([ ! -f $file ] && echo 0) || (ls -la $file | awk '{ print $5 }'))
-	if [ "$file_size" -gt  "$limit" ]; then
-	    printError "File $file is $(( $file_size / 10**6 )) MB, which is larger than our configured limit of $limitInMB MB"
-        shouldFail=true
-	fi
-done
-
-if $shouldFail
-then
-    printMessage "If you really need to commit this file, you can override the size limit by setting the GIT_FILE_SIZE_LIMIT environment variable, e.g. GIT_FILE_SIZE_LIMIT=42000000 for 42MB. Or, commit with the --no-verify switch to skip the check entirely."
-	  printError "Commit aborted"
-    exit 1;
-fi
-
-if [[ ! $local_branch =~ $valid_branch_regex ]]
-then
-    printError "There is something wrong with your branch name. Branch names in this project must adhere to this contract: $valid_branch_regex. 
-Your commit will be rejected. You should rename your branch to a valid name(feat/name OR bug/name) and try again."
-    printError "For more on this, read on: https://gist.github.com/cubxxw/126b72104ac0b0ca484c9db09c3e5694"
-    exit 1
-fi
\ No newline at end of file
diff --git a/script/githooks/pre-push b/script/githooks/pre-push
deleted file mode 100644
index c8ad61a60..000000000
--- a/script/githooks/pre-push
+++ /dev/null
@@ -1,52 +0,0 @@
-#!/usr/bin/env bash
-# Copyright © 2023 OpenIMSDK.
-#
-# Licensed 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.
-#
-# ==============================================================================
-#
-
-YELLOW="\e[93m"
-GREEN="\e[32m"
-RED="\e[31m"
-ENDCOLOR="\e[0m"
-
-printMessage() {
-   printf "${YELLOW}OpenIM : $1${ENDCOLOR}\n"
-}
-
-printSuccess() {
-   printf "${GREEN}OpenIM : $1${ENDCOLOR}\n"
-}
-
-printError() {
-   printf "${RED}OpenIM : $1${ENDCOLOR}\n"
-}
-
-printMessage "Running local OpenIM pre-push hook."
-
-if [[ `git status --porcelain` ]]; then
-  printError "This scripts needs to run against committed code only. Please commit or stash you changes."
-  exit 1
-fi
-
-#
-#printMessage "Running the Flutter analyzer"
-#flutter analyze
-#
-#if [ $? -ne 0 ]; then
-#  printError "Flutter analyzer error"
-#  exit 1
-#fi
-#
-#printMessage "Finished running the Flutter analyzer"
diff --git a/script/init_pwd.sh b/script/init_pwd.sh
deleted file mode 100644
index 6dd15c6c8..000000000
--- a/script/init_pwd.sh
+++ /dev/null
@@ -1,11 +0,0 @@
-echo "your user is:$USER"
-echo "your password is:$PASSWORD"
-echo "your minio endPoint is:$MINIO_ENDPOINT"
-echo "your data dir is $DATA_DIR"
-
-sed -i "/^\([[:space:]]*dbMysqlUserName: *\).*/s//\1$USER/;0,/\([[:space:]]*dbUserName: *\).*/s//\1 $USER/;/\([[:space:]]*accessKeyID: *\).*/s//\1 $USER/;/\([[:space:]]*endpoint: *\).*/s//\1\"abc\"/;" ../config/config.yaml
-sed -i "/^\([[:space:]]*dbMysqlPassword: *\).*/s//\1$PASSWORD/;/\([[:space:]]*dbPassword: *\).*/s//\1$PASSWORD/;/\([[:space:]]*secret: *\).*/s//\1$PASSWORD/;/\([[:space:]]*secretAccessKey: *\).*/s//\1$PASSWORD/;" ../config/config.yaml
-
-sed -i "/\([[:space:]]*endpoint: *\).*/s##\1$MINIO_ENDPOINT#;" ../config/config.yaml
-sed -i "/\([[:space:]]*dbPassWord: *\).*/s//\1$PASSWORD/;" ../config/config.yaml
-sed -i "/\([[:space:]]*secret: *\).*/s//\1$PASSWORD/;" ../.docker-compose_cfg/config.yaml
diff --git a/script/make-rules/common.mk b/script/make-rules/common.mk
deleted file mode 100644
index 568b019ca..000000000
--- a/script/make-rules/common.mk
+++ /dev/null
@@ -1,178 +0,0 @@
-# Copyright © 2023 OpenIMSDK.
-#
-# Licensed 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.
-
-# ==============================================================================
-# Makefile helper functions for common tasks
-#
-
-SHELL := /bin/bash
-GO:=go
-DIRS=$(shell ls)
-DEBUG ?= 0
-GIT_TAG := $(shell git describe --exact-match --tags --abbrev=0  2> /dev/null || echo untagged)
-GIT_COMMIT ?= $(shell git rev-parse --short HEAD || echo "0.0.0")
-BUILD_DATE ?=$(shell date -u +'%Y-%m-%dT%H:%M:%SZ')	# Blank error: date '+%FT %T %z':"buildDate":"2023-03-31T 20:05:43 +0800"
-
-# include the common makefile
-COMMON_SELF_DIR := $(dir $(lastword $(MAKEFILE_LIST)))
-
-SRC = $(shell find . -type f -name '*.go' -not -path "./vendor/*")
-
-# ROOT_DIR: root directory of the code base
-ifeq ($(origin ROOT_DIR),undefined)
-ROOT_DIR := $(abspath $(shell cd $(COMMON_SELF_DIR)/../.. && pwd -P))
-endif
-
-# OUTPUT_DIR: The directory where the build output is stored.
-ifeq ($(origin OUTPUT_DIR),undefined)
-OUTPUT_DIR := $(ROOT_DIR)/_output
-$(shell mkdir -p $(OUTPUT_DIR))
-endif
-
-# BIN_DIR: Directory where executable files are stored.
-ifeq ($(origin BIN_DIR),undefined)
-BIN_DIR := $(OUTPUT_DIR)/bin
-$(shell mkdir -p $(BIN_DIR))
-endif
-
-# TOOLS_DIR: The directory where tools are stored for build and testing.
-ifeq ($(origin TOOLS_DIR),undefined)
-TOOLS_DIR := $(OUTPUT_DIR)/tools
-$(shell mkdir -p $(TOOLS_DIR))
-endif
-
-# TMP_DIR: directory where temporary files are stored.
-ifeq ($(origin TMP_DIR),undefined)
-TMP_DIR := $(OUTPUT_DIR)/tmp
-$(shell mkdir -p $(TMP_DIR))
-endif
-
-ifeq ($(origin VERSION), undefined)
-# VERSION := $(shell git describe --abbrev=0 --dirty --always --tags | sed 's/-/./g')	#v2.3.3.dirty
-VERSION := $(shell git describe --tags --always --match="v*" --dirty | sed 's/-/./g')	#v2.3.3.631.g00abdc9b.dirty
-# v2.3.3: git tag
-endif
-
-# Check if the tree is dirty. default to dirty(maybe u should commit?)
-GIT_TREE_STATE:="dirty"
-ifeq (, $(shell git status --porcelain 2>/dev/null))
-	GIT_TREE_STATE="clean"
-endif
-GIT_COMMIT:=$(shell git rev-parse HEAD)
-
-# Minimum test coverage
-# can u use make cover COVERAGE=90
-ifeq ($(origin COVERAGE),undefined)
-COVERAGE := 60
-endif
-
-# Get the currently used golang install path (in GOPATH/bin, unless GOBIN is set)
-ifeq (,$(shell go env GOBIN))
-GOBIN=$(shell go env GOPATH)/bin
-else
-GOBIN=$(shell go env GOBIN)
-endif
-
-# The OS must be linux when building docker images
-PLATFORMS ?= linux_amd64 linux_arm64
-# The OS can be linux/windows/darwin when building binaries
-# PLATFORMS ?= darwin_amd64 windows_amd64 linux_amd64 linux_arm64
-
-# only support linux
-GOOS=linux
-
-# set a specific PLATFORM, defaults to the host platform
-ifeq ($(origin PLATFORM), undefined)
-	ifeq ($(origin GOARCH), undefined)
-		GOARCH := $(shell go env GOARCH)
-	endif
-	ifeq ($(origin GOARCH), undefined)
-		GOARCH := $(shell go env GOARCH)
-	endif
-	PLATFORM := $(GOOS)_$(GOARCH)
-	# Use linux as the default OS when building images
-	IMAGE_PLAT := linux_$(GOARCH)
-else
-	# such as: PLATFORM = linux_amd64
-	GOOS := $(word 1, $(subst _, ,$(PLATFORM)))
-	GOARCH := $(word 2, $(subst _, ,$(PLATFORM)))
-	IMAGE_PLAT := $(PLATFORM)
-endif
-
-# Linux command settings
-# TODO: Whether you need to join utils?
-FIND := find . ! -path './utils/*' ! -path './vendor/*'
-XARGS := xargs -r
-
-# Linux command settings-CODE DIRS Copyright
-CODE_DIRS := $(ROOT_DIR)/pkg $(ROOT_DIR)/cmd $(ROOT_DIR)/config $(ROOT_DIR)/db $(ROOT_DIR)/deploy $(ROOT_DIR)/deploy_k8s $(ROOT_DIR)/docker-compose_cfg $(ROOT_DIR)/internal $(ROOT_DIR)/scripts $(ROOT_DIR)/test
-FINDS := find $(CODE_DIRS)
-
-# Makefile settings: Select different behaviors by determining whether V option is set
-ifndef V
-MAKEFLAGS += --no-print-directory
-endif
-
-# Copy githook scripts when execute makefile
-# TODO! GIT_FILE_SIZE_LIMIT=42000000 git commit -m "This commit is allowed file sizes up to 42MB"
-COPY_GITHOOK:=$(shell cp -f scripts/githooks/* .git/hooks/; chmod +x .git/hooks/*)
-
-# COMMA: Concatenate multiple strings to form a list of strings
-COMMA := ,
-# SPACE: Used to separate strings
-SPACE :=
-# SPACE: Replace multiple consecutive Spaces with a single space
-SPACE +=
-
-# ==============================================================================
-# Makefile helper functions for common tasks
-
-# Help information for the makefile package
-define makehelp
-	@printf "\n\033[1mUsage: make <TARGETS> <OPTIONS> ...\033[0m\n\n\\033[1mTargets:\\033[0m\n\n"
-	@sed -n 's/^##//p' $< | awk -F':' '{printf "\033[36m%-28s\033[0m %s\n", $$1, $$2}' | sed -e 's/^/ /'
-	@printf "\n\033[1m$$USAGE_OPTIONS\033[0m\n"
-endef
-
-# Here are some examples of builds
-define MAKEFILE_EXAMPLE
-# make build BINS=imctl                                          Only a single imctl binary is built.
-# make -j (nproc) all                                            Run tidy gen add-copyright format lint cover build concurrently.
-# make gen                                                       Generate all necessary files.
-# make linux.arm64                                               imctl is compiled on arm64 platform.
-# make verify-copyright                                          Verify the license headers for all files.
-# make install-deepcopy-gen                                      Install deepcopy-gen tools if the license is missing.
-# make build BINS=imctl V=1 DEBUG=1                              Build debug binaries for only imctl.
-# make multiarch PLATFORMS="linux_arm64 linux_amd64" V=1         Build binaries for both platforms.
-endef
-export MAKEFILE_EXAMPLE
-
-# Define all help functions	@printf "\n\033[1mCurrent imctl version information: $(shell imctl version):\033[0m\n\n"
-define makeallhelp
-	@printf "\n\033[1mMake example:\033[0m\n\n"
-	$(call MAKEFILE_EXAMPLE)
-	@printf "\n\033[1mAriables:\033[0m\n\n"
-	@echo "  DEBUG: $(DEBUG)"
-	@echo "  BINS: $(BINS)"
-	@echo "  PLATFORMS: $(PLATFORMS)"
-	@echo "  V: $(V)"
-endef
-
-# Help information for other makefile packages
-CUT_OFF?="---------------------------------------------------------------------------------"
-HELP_NAME:=$(shell basename $(MAKEFILE_LIST))
-define smallhelp
-	@sed -n 's/^##//p' $< | awk -F':' '{printf "\033[36m%-35s\033[0m %s\n", $$1, $$2}' | sed -e 's/^/ /'
-	@echo $(CUT_OFF)
-endef
\ No newline at end of file
diff --git a/script/make-rules/copyright.mk b/script/make-rules/copyright.mk
deleted file mode 100644
index d1c243caf..000000000
--- a/script/make-rules/copyright.mk
+++ /dev/null
@@ -1,57 +0,0 @@
-# Copyright © 2023 OpenIMSDK.
-#
-# Licensed 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.
-#
-# ==============================================================================
-# wget https://github.com/google/addlicense/releases/download/v1.0.0/addlicense_1.0.0_Linux_x86_64.tar.gz
-# Makefile helper functions for copyright
-#
-
-LICENSE_TEMPLATE ?= $(ROOT_DIR)/scripts/LICENSE/LICENSE_TEMPLATES
-
-## copyright.verify: Validate boilerplate headers for assign files
-.PHONY: copyright.verify
-copyright.verify: tools.verify.addlicense
-	@echo "===========> Validate boilerplate headers for assign files starting in the $(ROOT_DIR) directory"
-	@$(TOOLS_DIR)/addlicense -v -check -ignore **/test/** -f $(LICENSE_TEMPLATE) $(CODE_DIRS)
-	@echo "===========> End of boilerplate headers check..."
-
-## copyright.add: Add the boilerplate headers for all files
-.PHONY: copyright.add
-copyright.add: tools.verify.addlicense
-	@echo "===========> Adding $(LICENSE_TEMPLATE) the boilerplate headers for all files"
-	@$(TOOLS_DIR)/addlicense -y $(shell date +"%Y") -v -c "OpenIM." -f $(LICENSE_TEMPLATE) $(CODE_DIRS)
-	@echo "===========> End the copyright is added..."
-
-# Addlicense Flags:
-#   -c string
-#         copyright holder (default "Google LLC")
-#   -check
-#         check only mode: verify presence of license headers and exit with non-zero code if missing
-#   -f string
-#         license file
-#   -ignore value
-#         file patterns to ignore, for example: -ignore **/*.go -ignore vendor/**
-#   -l string
-#         license type: apache, bsd, mit, mpl (default "apache")
-#   -s    Include SPDX identifier in license header. Set -s=only to only include SPDX identifier.
-#   -skip value
-#         [deprecated: see -ignore] file extensions to skip, for example: -skip rb -skip go
-#   -v    verbose mode: print the name of the files that are modified or were skipped
-#   -y string
-#         copyright year(s) (default "2023")
-
-## copyright.help: Show copyright help
-.PHONY: copyright.help
-copyright.help: scripts/make-rules/copyright.mk
-	$(call smallhelp)
\ No newline at end of file
diff --git a/script/make-rules/dependencies.mk b/script/make-rules/dependencies.mk
deleted file mode 100644
index 1a896f1ff..000000000
--- a/script/make-rules/dependencies.mk
+++ /dev/null
@@ -1,41 +0,0 @@
-# Copyright © 2023 OpenIMSDK.
-#
-# Licensed 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.
-
-# ==============================================================================
-# Makefile helper functions for dependencies
-#
-
-.PHONY: dependencies.run
-dependencies.run: dependencies.packages dependencies.tools
-
-.PHONY: dependencies.packages
-dependencies.packages:
-	@$(GO) mod tidy
-
-.PHONY: dependencies.tools
-dependencies.tools: dependencies.tools.blocker dependencies.tools.critical
-
-.PHONY: dependencies.tools.blocker
-dependencies.tools.blocker: go.build.verify $(addprefix tools.verify., $(BLOCKER_TOOLS))
-
-.PHONY: dependencies.tools.critical
-dependencies.tools.critical: $(addprefix tools.verify., $(CRITICAL_TOOLS))
-
-.PHONY: dependencies.tools.trivial
-dependencies.tools.trivial: $(addprefix tools.verify., $(TRIVIAL_TOOLS))
-
-## dependencies.help: Print help for dependencies targets
-.PHONY: dependencies.help
-dependencies.help: scripts/make-rules/dependencies.mk
-	$(call smallhelp)
\ No newline at end of file
diff --git a/script/make-rules/gen.mk b/script/make-rules/gen.mk
deleted file mode 100644
index a0d44befa..000000000
--- a/script/make-rules/gen.mk
+++ /dev/null
@@ -1,82 +0,0 @@
-# Copyright © 2023 OpenIMSDK.
-#
-# Licensed 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.
-
-# ==============================================================================
-# Makefile helper functions for generate necessary files and docs
-# https://cloud.redhat.com/blog/kubernetes-deep-dive-code-generation-customresources
-# ! The stock of code generated by `make gen` should be idempotent
-#
-# Questions about go mod instead of go path: https://github.com/kubernetes/kubernetes/issues/117181
-# ==============================================================================
-# Makefile helper functions for generate necessary files
-#
-
-.PHONY: gen.run
-#gen.run: gen.errcode gen.docgo
-gen.run: gen.clean gen.errcode gen.docgo.doc
-
-.PHONY: gen.errcode
-gen.errcode: gen.errcode.code gen.errcode.doc
-
-.PHONY: gen.errcode.code
-gen.errcode.code: tools.verify.codegen
-	@echo "===========> Generating iam error code go source files"
-	@codegen -type=int ${ROOT_DIR}/internal/pkg/code
-
-.PHONY: gen.errcode.doc
-gen.errcode.doc: tools.verify.codegen
-	@echo "===========> Generating error code markdown documentation"
-	@codegen -type=int -doc \
-		-output ${ROOT_DIR}/docs/guide/zh-CN/api/error_code_generated.md ${ROOT_DIR}/internal/pkg/code
-
-.PHONY: gen.ca.%
-gen.ca.%:
-	$(eval CA := $(word 1,$(subst ., ,$*)))
-	@echo "===========> Generating CA files for $(CA)"
-	@${ROOT_DIR}/scripts/gencerts.sh generate-iam-cert $(OUTPUT_DIR)/cert $(CA)
-
-.PHONY: gen.ca
-gen.ca: $(addprefix gen.ca., $(CERTIFICATES))
-
-.PHONY: gen.docgo.doc
-gen.docgo.doc:
-	@echo "===========> Generating missing doc.go for go packages"
-	@${ROOT_DIR}/scripts/gendoc.sh
-
-.PHONY: gen.docgo.check
-gen.docgo.check: gen.docgo.doc
-	@n="$$(git ls-files --others '*/doc.go' | wc -l)"; \
-	if test "$$n" -gt 0; then \
-		git ls-files --others '*/doc.go' | sed -e 's/^/  /'; \
-		echo "$@: untracked doc.go file(s) exist in working directory" >&2 ; \
-		false ; \
-	fi
-
-.PHONY: gen.docgo.add
-gen.docgo.add:
-	@git ls-files --others '*/doc.go' | $(XARGS) -- git add
-
-.PHONY: gen.defaultconfigs
-gen.defaultconfigs:
-	@${ROOT_DIR}/scripts/gen_default_config.sh
-
-.PHONY: gen.clean
-gen.clean:
-	@rm -rf ./api/client/{clientset,informers,listers}
-	@$(FIND) -type f -name '*_generated.go' -delete
-
-## gen.help: show help for gen
-.PHONY: gen.help
-gen.help: scripts/make-rules/gen.mk
-	$(call smallhelp)
\ No newline at end of file
diff --git a/script/make-rules/golang.mk b/script/make-rules/golang.mk
deleted file mode 100644
index 336fead4a..000000000
--- a/script/make-rules/golang.mk
+++ /dev/null
@@ -1,195 +0,0 @@
-# Copyright © 2023 OpenIMSDK.
-#
-# Licensed 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.
-
-# ==============================================================================
-# Build management helpers.  These functions help to set, save and load the
-#
-
-GO := go
-GO_SUPPORTED_VERSIONS ?= |1.15|1.16|1.17|1.18|1.19|1.20|
-
-GO_LDFLAGS += -X $(VERSION_PACKAGE).gitVersion=$(GIT_TAG) \
-	-X $(VERSION_PACKAGE).gitCommit=$(GIT_COMMIT) \
-	-X $(VERSION_PACKAGE).gitTreeState=$(GIT_TREE_STATE) \
-	-X $(VERSION_PACKAGE).buildDate=$(BUILD_DATE) \
-	-s -w		# -s -w deletes debugging information and symbol tables
-ifeq ($(DEBUG), 1)
-	GO_BUILD_FLAGS += -gcflags "all=-N -l"
-	GO_LDFLAGS=
-endif
-
-GO_BUILD_FLAGS += -ldflags "$(GO_LDFLAGS)"
-
-ifeq ($(GOOS),windows)
-	GO_OUT_EXT := .exe
-endif
-
-ifeq ($(ROOT_PACKAGE),)
-	$(error the variable ROOT_PACKAGE must be set prior to including golang.mk, ->/Makefile)
-endif
-
-GOPATH ?= $(shell go env GOPATH)
-ifeq ($(origin GOBIN), undefined)
-	GOBIN := $(GOPATH)/bin
-endif
-
-# COMMANDS is Specify all files under ${ROOT_DIR}/cmd/ except those ending in.md
-COMMANDS ?= $(filter-out %.md, $(wildcard ${ROOT_DIR}/cmd/*))
-ifeq (${COMMANDS},)
-  $(error Could not determine COMMANDS, set ROOT_DIR or run in source dir)
-endif
-
-# BINS is the name of each file in ${COMMANDS}, excluding the directory path
-# If there are no files in ${COMMANDS}, or if all files end in.md, ${BINS} will be empty
-BINS ?= $(foreach cmd,${COMMANDS},$(notdir ${cmd}))
-ifeq (${BINS},)
-  $(error Could not determine BINS, set ROOT_DIR or run in source dir)
-endif
-
-ifeq (${COMMANDS},)
-  $(error Could not determine COMMANDS, set ROOT_DIR or run in source dir)
-endif
-ifeq (${BINS},)
-  $(error Could not determine BINS, set ROOT_DIR or run in source dir)
-endif
-
-# TODO: EXCLUDE_TESTS variable, which contains the name of the package to be excluded from the test
-EXCLUDE_TESTS=github.com/OpenIMSDK/Open-IM-Server/test github.com/OpenIMSDK/Open-IM-Server/pkg/log github.com/OpenIMSDK/Open-IM-Server/db github.com/OpenIMSDK/Open-IM-Server/scripts github.com/OpenIMSDK/Open-IM-Server/deploy_k8s github.com/OpenIMSDK/Open-IM-Server/deploy github.com/OpenIMSDK/Open-IM-Server/config
-
-# ==============================================================================
-# ❯ tree -L 1 cmd
-# cmd
-# ├── openim-sdk-core/ - main.go
-# ├── open_im_api	
-# ├── open_im_cms_api
-# ├── open_im_cron_task
-# ├── open_im_demo
-# ├── open_im_msg_gateway
-# ├── open_im_msg_transfer
-# ├── open_im_push
-# ├── rpc/open_im_admin_cms/ - main.go
-# └── test/ - main.go
-# COMMAND=openim
-# PLATFORM=linux_amd64
-# OS=linux
-# ARCH=amd64
-# BINS=open_im_api open_im_cms_api open_im_cron_task open_im_demo open_im_msg_gateway open_im_msg_transfer open_im_push 
-# BIN_DIR=/root/workspaces/OpenIM/_output/bin
-# ==============================================================================
-
-## go.build: Build binaries
-.PHONY: go.build
-go.build: go.build.verify $(addprefix go.build., $(addprefix $(PLATFORM)., $(BINS)))
-	@echo "===========> Building binary $(BINS) $(VERSION) for $(PLATFORM)"
-
-## go.build.verify: Verify that a suitable version of Go exists
-.PHONY: go.build.verify
-go.build.verify:
-ifneq ($(shell $(GO) version | grep -q -E '\bgo($(GO_SUPPORTED_VERSIONS))\b' && echo 0 || echo 1), 0)
-	$(error unsupported go version. Please make install one of the following supported version: '$(GO_SUPPORTED_VERSIONS)')
-endif
-
-.PHONY: go.build.%
-go.build.%:
-	$(eval COMMAND := $(word 2,$(subst ., ,$*)))
-	$(eval PLATFORM := $(word 1,$(subst ., ,$*)))
-	$(eval OS := $(word 1,$(subst _, ,$(PLATFORM))))
-	$(eval ARCH := $(word 2,$(subst _, ,$(PLATFORM))))
-	@echo "=====> COMMAND=$(COMMAND)"
-	@echo "=====> PLATFORM=$(PLATFORM)"
-	@echo "=====> BIN_DIR=$(BIN_DIR)"
-	@echo "===========> Building binary $(COMMAND) $(VERSION) for $(OS)_$(ARCH)"
-	@mkdir -p $(BIN_DIR)/platforms/$(OS)/$(ARCH)
-	@if [ "$(COMMAND)" == "openim-sdk-core" ]; then \
-		echo "===========> DEBUG: Compilation is not yet supported $(COMMAND)"; \
-	elif [ "$(COMMAND)" == "rpc" ]; then \
-		for d in $(wildcard $(ROOT_DIR)/cmd/rpc/*/); do \
-			cd $$d && CGO_ENABLED=0 GOOS=$(OS) GOARCH=$(ARCH) $(GO) build $(GO_BUILD_FLAGS) -o\
-			 $(BIN_DIR)/platforms/$(OS)/$(ARCH)/$$(basename $$d)$(GO_OUT_EXT) .; \
-		done; \
-	else \
-		CGO_ENABLED=0 GOOS=$(OS) GOARCH=$(ARCH) $(GO) build $(GO_BUILD_FLAGS) -o \
-		$(BIN_DIR)/platforms/$(OS)/$(ARCH)/$(COMMAND)$(GO_OUT_EXT) $(ROOT_DIR)/cmd/$(COMMAND)/main.go; \
-	fi
-
-## go.multiarch: Build multi-arch binaries
-.PHONY: go.build.multiarch
-go.build.multiarch: go.build.verify $(foreach p,$(PLATFORMS),$(addprefix go.build., $(addprefix $(p)., $(BINS))))
-
-## go.lint: Run golangci to lint source codes
-.PHONY: go.lint
-go.lint: tools.verify.golangci-lint
-	@echo "===========> Run golangci to lint source codes"
-	@$(BIN_DIR)/golangci-lint run -c $(ROOT_DIR)/.golangci.yml $(ROOT_DIR)/...
-
-## go.test: Run unit test
-.PHONY: go.test
-go.test:
-	@$(GO) test ./...
-
-# ## go.test.junit-report: Run unit test
-# .PHONY: go.test.junit-report
-# go.test.junit-report: tools.verify.go-junit-report
-# 	@echo "===========> Run unit test > $(TMP_DIR)/report.xml"
-# 	@$(GO) test -v -coverprofile=$(TMP_DIR)/coverage.out 2>&1 $(GO_BUILD_FLAGS) ./... | $(TOOLS_DIR)/go-junit-report -set-exit-code > $(TMP_DIR)/report.xml
-# 	@sed -i '/mock_.*.go/d' $(TMP_DIR)/coverage.out
-# 	@echo "===========> Test coverage of Go code is reported to $(TMP_DIR)/coverage.html by generating HTML"
-# 	@$(GO) tool cover -html=$(TMP_DIR)/coverage.out -o $(TMP_DIR)/coverage.html
-
-## go.test.junit-report: Run unit test
-.PHONY: go.test.junit-report
-go.test.junit-report: tools.verify.go-junit-report
-	@echo "===========> Run unit test > $(TMP_DIR)/report.xml"
-	@$(GO) test -v -coverprofile=$(TMP_DIR)/coverage.out 2>&1 ./... | $(TOOLS_DIR)/go-junit-report -set-exit-code > $(OUTPUT_DIR)/report.xml
-	@sed -i '/mock_.*.go/d' $(TMP_DIR)/coverage.out
-	@echo "===========> Test coverage of Go code is reported to $(TMP_DIR)/coverage.html by generating HTML"
-	@$(GO) tool cover -html=$(TMP_DIR)/coverage.out -o $(TMP_DIR)/coverage.html
-
-## go.test.cover: Run unit test with coverage
-.PHONY: go.test.cover
-go.test.cover: go.test.junit-report
-	@touch $(TMP_DIR)/coverage.out
-	@$(GO) tool cover -func=$(TMP_DIR)/coverage.out | \
-		awk -v target=$(COVERAGE) -f $(ROOT_DIR)/scripts/coverage.awk
-
-## go.format: Run unit test and format codes
-.PHONY: go.format
-go.format: tools.verify.golines tools.verify.goimports
-	@echo "===========> Formating codes"
-	@$(FIND) -type f -name '*.go' | $(XARGS) gofmt -s -w
-	@$(FIND) -type f -name '*.go' | $(XARGS) $(TOOLS_DIR)/goimports -w -local $(ROOT_PACKAGE)
-	@$(FIND) -type f -name '*.go' | $(XARGS) $(TOOLS_DIR)/golines -w --max-len=120 --reformat-tags --shorten-comments --ignore-generated .
-	@$(GO) mod edit -fmt
-
-## imports: task to automatically handle import packages in Go files using goimports tool
-.PHONY: go.imports
-go.imports: tools.verify.goimports
-	@$(TOOLS_DIR)/goimports -l -w $(SRC)
-
-## go.updates: Check for updates to go.mod dependencies
-.PHONY: go.updates
-go.updates: tools.verify.go-mod-outdated
-	@$(GO) list -u -m -json all | go-mod-outdated -update -direct
-
-## go.clean: Clean all builds directories and files
-.PHONY: go.clean
-go.clean:
-	@echo "===========> Cleaning all builds TMP_DIR($(TMP_DIR)) AND BIN_DIR($(BIN_DIR))"
-	@-rm -vrf $(TMP_DIR) $(BIN_DIR)
-	@echo "===========> End clean..."
-
-## copyright.help: Show copyright help
-.PHONY: go.help
-go.help: scripts/make-rules/golang.mk
-	$(call smallhelp)
diff --git a/script/make-rules/image.mk b/script/make-rules/image.mk
deleted file mode 100644
index adcffa1cc..000000000
--- a/script/make-rules/image.mk
+++ /dev/null
@@ -1,155 +0,0 @@
-# Copyright © 2023 OpenIMSDK.
-#
-# Licensed 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.
-
-# ==============================================================================
-# Makefile helper functions for docker image
-# TODO: For the time being only used for compilation, it can be arm or amd, please do not delete it, it can be extended with new functions
-# ==============================================================================
-# Path: scripts/make-rules/image.mk
-# docker registry: registry.example.com/namespace/image:tag as: registry.hub.docker.com/cubxxw/<image-name>:<tag>
-#
-
-DOCKER := docker
-DOCKER_SUPPORTED_API_VERSION ?= 1.32|1.40|1.41
-
-REGISTRY_PREFIX ?= cubxxw
-BASE_IMAGE = centos:centos8
-
-EXTRA_ARGS ?= --no-cache
-_DOCKER_BUILD_EXTRA_ARGS :=
-
-ifdef HTTP_PROXY
-_DOCKER_BUILD_EXTRA_ARGS += --build-arg HTTP_PROXY=${HTTP_PROXY}
-endif
-
-ifneq ($(EXTRA_ARGS), )
-_DOCKER_BUILD_EXTRA_ARGS += $(EXTRA_ARGS)
-endif
-
-# Determine image files by looking into build/docker/*/Dockerfile
-IMAGES_DIR ?= $(wildcard ${ROOT_DIR}/build/docker/*)
-# Determine images names by stripping out the dir names
-IMAGES ?= $(filter-out tools,$(foreach image,${IMAGES_DIR},$(notdir ${image})))
-
-# ifeq (${IMAGES},)
-#   $(error Could not determine IMAGES, set ROOT_DIR or run in source dir)
-# endif
-
-# ==============================================================================
-# Image targets
-# ==============================================================================
-
-## image.verify: Verify docker version
-.PHONY: image.verify
-image.verify:
-	$(eval API_VERSION := $(shell $(DOCKER) version | grep -E 'API version: {1,6}[0-9]' | head -n1 | awk '{print $$3} END { if (NR==0) print 0}' ))
-	$(eval PASS := $(shell echo "$(API_VERSION) > $(DOCKER_SUPPORTED_API_VERSION)" | bc))
-	@if [ $(PASS) -ne 1 ]; then \
-		$(DOCKER) -v ;\
-		echo "Unsupported docker version. Docker API version should be greater than $(DOCKER_SUPPORTED_API_VERSION)"; \
-		exit 1; \
-	fi
-
-## image.daemon.verify: Verify docker daemon experimental features
-.PHONY: image.daemon.verify
-image.daemon.verify:
-	$(eval PASS := $(shell $(DOCKER) version | grep -q -E 'Experimental: {1,5}true' && echo 1 || echo 0))
-	@if [ $(PASS) -ne 1 ]; then \
-		echo "Experimental features of Docker daemon is not enabled. Please add \"experimental\": true in '/etc/docker/daemon.json' and then restart Docker daemon."; \
-		exit 1; \
-	fi
-
-## image.build: Build docker images
-.PHONY: image.build
-image.build: image.verify go.build.verify $(addprefix image.build., $(addprefix $(IMAGE_PLAT)., $(IMAGES)))
-
-## image.build.multiarch: Build docker images for all platforms
-.PHONY: image.build.multiarch
-image.build.multiarch: image.verify go.build.verify $(foreach p,$(PLATFORMS),$(addprefix image.build., $(addprefix $(p)., $(IMAGES))))
-
-## image.build.%: Build docker image for a specific platform
-.PHONY: image.build.%
-image.build.%: go.build.%
-	$(eval IMAGE := $(COMMAND))
-	$(eval IMAGE_PLAT := $(subst _,/,$(PLATFORM)))
-	@echo "===========> Building docker image $(IMAGE) $(VERSION) for $(IMAGE_PLAT)"
-	@mkdir -p $(TMP_DIR)/$(IMAGE)
-	@cat $(ROOT_DIR)/build/docker/$(IMAGE)/Dockerfile\
-		| sed "s#BASE_IMAGE#$(BASE_IMAGE)#g" >$(TMP_DIR)/$(IMAGE)/Dockerfile
-	@cp $(OUTPUT_DIR)/platforms/$(IMAGE_PLAT)/$(IMAGE) $(TMP_DIR)/$(IMAGE)/
-	@DST_DIR=$(TMP_DIR)/$(IMAGE) $(ROOT_DIR)/build/docker/$(IMAGE)/build.sh 2>/dev/null || true
-	$(eval BUILD_SUFFIX := $(_DOCKER_BUILD_EXTRA_ARGS) --pull -t $(REGISTRY_PREFIX)/$(IMAGE)-$(ARCH):$(VERSION) $(TMP_DIR)/$(IMAGE))
-	@if [ $(shell $(GO) env GOARCH) != $(ARCH) ] ; then \
-		$(MAKE) image.daemon.verify ;\
-		$(DOCKER) build --platform $(IMAGE_PLAT) $(BUILD_SUFFIX) ; \
-	else \
-		$(DOCKER) build $(BUILD_SUFFIX) ; \
-	fi
-	@rm -rf $(TMP_DIR)/$(IMAGE)
-
-## image.push: Push docker images
-.PHONY: image.push
-image.push: image.verify go.build.verify $(addprefix image.push., $(addprefix $(IMAGE_PLAT)., $(IMAGES)))
-
-## image.push.multiarch: Push docker images for all platforms
-.PHONY: image.push.multiarch
-image.push.multiarch: image.verify go.build.verify $(foreach p,$(PLATFORMS),$(addprefix image.push., $(addprefix $(p)., $(IMAGES))))
-
-## image.push.%: Push docker image for a specific platform
-.PHONY: image.push.%
-image.push.%: image.build.%
-	@echo "===========> Pushing image $(IMAGE) $(VERSION) to $(REGISTRY_PREFIX)"
-	$(DOCKER) push $(REGISTRY_PREFIX)/$(IMAGE)-$(ARCH):$(VERSION)
-
-## image.manifest.push: Push manifest list for multi-arch images
-.PHONY: image.manifest.push
-image.manifest.push: export DOCKER_CLI_EXPERIMENTAL := enabled
-image.manifest.push: image.verify go.build.verify \
-$(addprefix image.manifest.push., $(addprefix $(IMAGE_PLAT)., $(IMAGES)))
-
-## image.manifest.push.%: Push manifest list for multi-arch images for a specific platform
-.PHONY: image.manifest.push.%
-image.manifest.push.%: image.push.% image.manifest.remove.%
-	@echo "===========> Pushing manifest $(IMAGE) $(VERSION) to $(REGISTRY_PREFIX) and then remove the local manifest list"
-	@$(DOCKER) manifest create $(REGISTRY_PREFIX)/$(IMAGE):$(VERSION) \
-		$(REGISTRY_PREFIX)/$(IMAGE)-$(ARCH):$(VERSION)
-	@$(DOCKER) manifest annotate $(REGISTRY_PREFIX)/$(IMAGE):$(VERSION) \
-		$(REGISTRY_PREFIX)/$(IMAGE)-$(ARCH):$(VERSION) \
-		--os $(OS) --arch ${ARCH}
-	@$(DOCKER) manifest push --purge $(REGISTRY_PREFIX)/$(IMAGE):$(VERSION)
-
-# Docker cli has a bug: https://github.com/docker/cli/issues/954
-# If you find your manifests were not updated,
-# Please manually delete them in $HOME/.docker/manifests/
-# and re-run.
-## image.manifest.remove.%: Remove local manifest list
-.PHONY: image.manifest.remove.%
-image.manifest.remove.%:
-	@rm -rf ${HOME}/.docker/manifests/docker.io_$(REGISTRY_PREFIX)_$(IMAGE)-$(VERSION)
-
-## image.manifest.push.multiarch: Push manifest list for multi-arch images for all platforms
-.PHONY: image.manifest.push.multiarch
-image.manifest.push.multiarch: image.push.multiarch $(addprefix image.manifest.push.multiarch., $(IMAGES))
-
-## image.manifest.push.multiarch.%: Push manifest list for multi-arch images for all platforms for a specific image
-.PHONY: image.manifest.push.multiarch.%
-image.manifest.push.multiarch.%:
-	@echo "===========> Pushing manifest $* $(VERSION) to $(REGISTRY_PREFIX) and then remove the local manifest list"
-	REGISTRY_PREFIX=$(REGISTRY_PREFIX) PLATFROMS="$(PLATFORMS)" IMAGE=$* VERSION=$(VERSION) DOCKER_CLI_EXPERIMENTAL=enabled \
-	  $(ROOT_DIR)/build/lib/create-manifest.sh
-
-## image.help: Print help for image targets
-.PHONY: image.help
-image.help: scripts/make-rules/image.mk
-	$(call smallhelp)
\ No newline at end of file
diff --git a/script/make-rules/release.mk b/script/make-rules/release.mk
deleted file mode 100644
index 06b7b7e47..000000000
--- a/script/make-rules/release.mk
+++ /dev/null
@@ -1,42 +0,0 @@
-# Copyright © 2023 OpenIMSDK.
-#
-# Licensed 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.
-
-# ==============================================================================
-# Makefile helper functions for release
-# Versions are used after merging
-#
-
-## release: release the project
-.PHONY: release.run
-release.run: release.verify release.ensure-tag
-	@scripts/release.sh
-
-## release.verify: Check if a tool is installed and install it
-.PHONY: release.verify
-release.verify: tools.verify.git-chglog tools.verify.github-release tools.verify.coscmd
-
-## release.tag: release the project
-.PHONY: release.tag
-release.tag: tools.verify.gsemver release.ensure-tag
-	@git push origin `git describe --tags --abbrev=0`
-
-## release.ensure-tag: ensure tag
-.PHONY: release.ensure-tag
-release.ensure-tag: tools.verify.gsemver
-	@scripts/ensure_tag.sh
-
-## release.help: Display help information about the release package
-.PHONY: release.help
-release.help: scripts/make-rules/release.mk
-	$(call smallhelp)
\ No newline at end of file
diff --git a/script/make-rules/tools.mk b/script/make-rules/tools.mk
deleted file mode 100644
index f91ef2231..000000000
--- a/script/make-rules/tools.mk
+++ /dev/null
@@ -1,222 +0,0 @@
-# Copyright © 2023 OpenIMSDK.
-#
-# Licensed 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.
-
-# ==============================================================================
-# Makefile helper functions for tools(https://github.com/avelino/awesome-go) -> DIR: {TOOT_DIR}/tools | (go >= 1.19)
-# Why download to the tools directory, thinking we might often switch Go versions using gvm.
-#
-
-# openim build use BUILD_TOOLS
-BUILD_TOOLS ?= golangci-lint goimports addlicense deepcopy-gen conversion-gen ginkgo go-junit-report go-gitlint
-# Code analysis tools
-ANALYSIS_TOOLS = golangci-lint goimports golines go-callvis kube-score
-# Code generation tools
-GENERATION_TOOLS = deepcopy-gen conversion-gen protoc-gen-go cfssl rts codegen
-# Testing tools
-TEST_TOOLS = ginkgo go-junit-report gotests
-# tenxun cos tools
-COS_TOOLS = coscli coscmd
-# Version control tools
-VERSION_CONTROL_TOOLS = addlicense go-gitlint git-chglog github-release gsemver
-# Utility tools
-UTILITY_TOOLS = go-mod-outdated mockgen gothanks richgo kubeconform
-# All tools
-ALL_TOOLS ?= $(ANALYSIS_TOOLS) $(GENERATION_TOOLS) $(TEST_TOOLS) $(VERSION_CONTROL_TOOLS) $(UTILITY_TOOLS) $(COS_TOOLS)
-
-## tools.install: Install a must tools
-.PHONY: tools.install
-tools.install: $(addprefix tools.verify., $(BUILD_TOOLS))
- 
-## tools.install-all: Install all tools
-.PHONY: tools.install-all
-tools.install-all: $(addprefix tools.install-all., $(ALL_TOOLS))
-
-## tools.install.%: Install a single tool in $GOBIN/
-.PHONY: tools.install.%
-tools.install.%:
-	@echo "===========> Installing $,The default installation path is $(GOBIN)/$*"
-	@$(MAKE) install.$*
-
-## tools.install-all.%: Parallelism install a single tool in ./tools/*
-.PHONY: tools.install-all.%
-tools.install-all.%:
-	@echo "===========> Installing $,The default installation path is $(TOOLS_DIR)/$*"
-	@$(MAKE) -j $(nproc) install.$*
-
-## tools.verify.%: Check if a tool is installed and install it
-.PHONY: tools.verify.%
-tools.verify.%:
-	@echo "===========> Verifying $* is installed"
-	@if [ ! -f $(TOOLS_DIR)/$* ]; then GOBIN=$(TOOLS_DIR) $(MAKE) tools.install.$*; fi
-	@echo "===========> $* is install in $(TOOLS_DIR)/$*"
-
-## install.golangci-lint: Install golangci-lint
-.PHONY: install.golangci-lint
-install.golangci-lint:
-	@$(GO) install github.com/golangci/golangci-lint/cmd/golangci-lint@latest
-
-## install.goimports: Install goimports, used to format go source files
-.PHONY: install.goimports
-install.goimports:
-	@$(GO) install golang.org/x/tools/cmd/goimports@latest
-
-## install.addlicense: Install addlicense, used to add license header to source files
-.PHONY: install.addlicense
-install.addlicense:
-	@$(GO) install github.com/google/addlicense@latest
-
-## install.deepcopy-gen: Install deepcopy-gen, used to generate deep copy functions
-.PHONY: install.deepcopy-gen
-install.deepcopy-gen:
-	@$(GO) install k8s.io/code-generator/cmd/deepcopy-gen@latest
-
-## install.conversion-gen: Install conversion-gen, used to generate conversion functions
-.PHONY: install.conversion-gen
-install.conversion-gen:
-	@$(GO) install k8s.io/code-generator/cmd/conversion-gen@latest
-
-## install.ginkgo: Install ginkgo to run a single test or set of tests
-.PHONY: install.ginkgo
-install.ginkgo:
-	@$(GO) install github.com/onsi/ginkgo/ginkgo@v1.16.2
-
-## Install go-gitlint: Install go-gitlint, used to check git commit message
-.PHONY: install.go-gitlint
-install.go-gitlint:
-	@$(GO) install github.com/marmotedu/go-gitlint/cmd/go-gitlint@latest
-
-## install.go-junit-report: Install go-junit-report, used to convert go test output to junit xml
-.PHONY: install.go-junit-report
-install.go-junit-report:
-	@$(GO) install github.com/jstemmer/go-junit-report@latest
-
-# ==============================================================================
-# Tools that might be used include go gvm
-#
-
-## install.kube-score: Install kube-score, used to check kubernetes yaml files
-.PHONY: install.kube-score
-install.kube-score:
-	@$(GO) install github.com/zegl/kube-score/cmd/kube-score@latest
-
-## install.kubeconform: Install kubeconform, used to check kubernetes yaml files
-.PHONY: install.kubeconform
-install.kubeconform:
-	@$(GO) install github.com/yannh/kubeconform/cmd/kubeconform@latest
-
-## install.gsemver: Install gsemver, used to generate semver
-.PHONY: install.gsemver
-install.gsemver:
-	@$(GO) install github.com/arnaud-deprez/gsemver@latest
-
-## install.git-chglog: Install git-chglog, used to generate changelog
-.PHONY: install.git-chglog
-install.git-chglog:
-	@$(GO) install github.com/git-chglog/git-chglog/cmd/git-chglog@latest
-
-## install.github-release: Install github-release, used to create github release
-.PHONY: install.github-release
-install.github-release:
-	@$(GO) install github.com/github-release/github-release@latest
-
-## install.coscli: Install coscli, used to upload files to cos
-# example: ./coscli  cp/sync -r  /home/off-line/docker-off-line/ cos://openim-1306374445/openim/image/amd/off-line/off-line/ -e cos.ap-guangzhou.myqcloud.com
-# https://cloud.tencent.com/document/product/436/71763
-.PHONY: install.coscli
-install.coscli:
-	@wget -q https://ghproxy.com/https://github.com/tencentyun/coscli/releases/download/v0.13.0-beta/coscli-linux -O ${TOOLS_DIR}/coscli
-	@chmod +x ${TOOLS_DIR}/coscli
-
-## install.coscmd: Install coscmd, used to upload files to cos
-.PHONY: install.coscmd
-install.coscmd:
-	@if which pip &>/dev/null; then pip install coscmd; else pip3 install coscmd; fi
-
-## install.delve: Install delve, used to debug go program
-.PHONY: install.delve
-install.delve:
-	@$(GO) install github.com/go-delve/delve/cmd/dlv@latest
-
-## install.air: Install air, used to hot reload go program
-.PHONY: install.air
-install.air:
-	@$(GO) install github.com/cosmtrek/air@latest
-
-## install.gvm: Install gvm, gvm is a Go version manager, built on top of the official go tool.
-# github: https://github.com/moovweb/gvm
-.PHONY: install.gvm
-install.gvm:
-	@echo "===========> Installing gvm,The default installation path is ~/.gvm/scripts/gvm"
-	@bash < <(curl -s -S -L https://raw.githubusercontent.com/moovweb/gvm/master/binscripts/gvm-installer)
-	@$(shell source /root/.gvm/scripts/gvm)
-
-## install.golines: Install golines, used to format long lines
-.PHONY: install.golines
-install.golines:
-	@$(GO) install github.com/segmentio/golines@latest
-
-## install.go-mod-outdated: Install go-mod-outdated, used to check outdated dependencies
-.PHONY: install.go-mod-outdated
-install.go-mod-outdated:
-	@$(GO) install github.com/psampaz/go-mod-outdated@latest
-
-## install.mockgen: Install mockgen, used to generate mock functions
-.PHONY: install.mockgen
-install.mockgen:
-	@$(GO) install github.com/golang/mock/mockgen@latest
-
-## install.gotests: Install gotests, used to generate test functions
-.PHONY: install.gotests
-install.gotests:
-	@$(GO) install github.com/cweill/gotests/gotests@latest
-
-## install.protoc-gen-go: Install protoc-gen-go, used to generate go source files from protobuf files
-.PHONY: install.protoc-gen-go
-install.protoc-gen-go:
-	@$(GO) install github.com/golang/protobuf/protoc-gen-go@latest
-
-## install.cfssl: Install cfssl, used to generate certificates
-.PHONY: install.cfssl
-install.cfssl:
-	@$(ROOT_DIR)/scripts/install/install.sh iam::install::install_cfssl
-
-## install.depth: Install depth, used to check dependency tree
-.PHONY: install.depth
-install.depth:
-	@$(GO) install github.com/KyleBanks/depth/cmd/depth@latest
-
-## install.go-callvis: Install go-callvis, used to visualize call graph
-.PHONY: install.go-callvis
-install.go-callvis:
-	@$(GO) install github.com/ofabry/go-callvis@latest
-
-## install.gothanks: Install gothanks, used to thank go dependencies
-.PHONY: install.gothanks
-install.gothanks:
-	@$(GO) install github.com/psampaz/gothanks@latest
-
-## install.richgo: Install richgo
-.PHONY: install.richgo
-install.richgo:
-	@$(GO) install github.com/kyoh86/richgo@latest
-
-## install.rts: Install rts
-.PHONY: install.rts
-install.rts:
-	@$(GO) install github.com/galeone/rts/cmd/rts@latest
-
-## tools.help: Display help information about the tools package
-.PHONY: tools.help
-tools.help: scripts/make-rules/tools.mk
-	$(call smallhelp)
\ No newline at end of file
diff --git a/script/mongo-init.sh b/script/mongo-init.sh
deleted file mode 100644
index 3d1faa60b..000000000
--- a/script/mongo-init.sh
+++ /dev/null
@@ -1,12 +0,0 @@
-mongo -- "$MONGO_INITDB_DATABASE" <<EOF
-db = db.getSiblingDB('admin')
-db.auth('$MONGO_INITDB_ROOT_USERNAME', '$MONGO_INITDB_ROOT_PASSWORD')
-db = db.getSiblingDB('$MONGO_INITDB_DATABASE')
-db.createUser({
-  user: "$MONGO_USERNAME",
-  pwd: "$MONGO_PASSWORD",
-  roles: [
-  { role: 'root', db: '$MONGO_INITDB_DATABASE' }
-  ]
-})
-EOF
diff --git a/script/msg_gateway_start.sh b/script/msg_gateway_start.sh
deleted file mode 100644
index e29a7ce3d..000000000
--- a/script/msg_gateway_start.sh
+++ /dev/null
@@ -1,54 +0,0 @@
-#!/usr/bin/env bash
-#Include shell font styles and some basic information
-source ./style_info.cfg
-source ./path_info.cfg
-source ./function.sh
-ulimit -n 200000
-
-list1=$(cat $config_path | grep openImMessageGatewayPort | awk -F '[:]' '{print $NF}')
-list2=$(cat $config_path | grep openImWsPort | awk -F '[:]' '{print $NF}')
-list3=$(cat $config_path | grep messageGatewayPrometheusPort | awk -F '[:]' '{print $NF}')
-list_to_string $list1
-rpc_ports=($ports_array)
-list_to_string $list2
-ws_ports=($ports_array)
-list_to_string $list3
-prome_ports=($ports_array)
-if [ ${#rpc_ports[@]} -ne ${#ws_ports[@]} ]; then
-
-  echo -e ${RED_PREFIX}"ws_ports does not match push_rpc_ports or prome_ports in quantity!!!"${COLOR_SUFFIX}
-  exit -1
-
-fi
-#Check if the service exists
-#If it is exists,kill this process
-check=$(ps aux | grep -w ./${msg_gateway_name} | grep -v grep | wc -l)
-if [ $check -ge 1 ]; then
-  oldPid=$(ps aux | grep -w ./${msg_gateway_name} | grep -v grep | awk '{print $2}')
-    kill -9 ${oldPid}
-fi
-#Waiting port recycling
-sleep 1
-cd ${msg_gateway_binary_root}
-for ((i = 0; i < ${#ws_ports[@]}; i++)); do
-  echo "==========================start msg_gateway server===========================">>../logs/openIM.log
-  nohup ./${msg_gateway_name} --port ${rpc_ports[$i]} --ws_port ${ws_ports[$i]} --prometheus_port ${prome_ports[$i]} >>../logs/openIM.log 2>&1 &
-done
-
-#Check launched service process
-sleep 3
-check=$(ps aux | grep -w ./${msg_gateway_name} | grep -v grep | wc -l)
-allPorts=""
-if [ $check -ge 1 ]; then
-  allNewPid=$(ps aux | grep -w ./${msg_gateway_name} | grep -v grep | awk '{print $2}')
-  for i in $allNewPid; do
-    ports=$(netstat -netulp | grep -w ${i} | awk '{print $4}' | awk -F '[:]' '{print $NF}')
-      allPorts=${allPorts}"$ports "
-  done
-  echo -e ${SKY_BLUE_PREFIX}"SERVICE START SUCCESS"${COLOR_SUFFIX}
-  echo -e ${SKY_BLUE_PREFIX}"SERVICE_NAME: "${COLOR_SUFFIX}${YELLOW_PREFIX}${msg_gateway_name}${COLOR_SUFFIX}
-  echo -e ${SKY_BLUE_PREFIX}"PID: "${COLOR_SUFFIX}${YELLOW_PREFIX}${allNewPid}${COLOR_SUFFIX}
-  echo -e ${SKY_BLUE_PREFIX}"LISTENING_PORT: "${COLOR_SUFFIX}${YELLOW_PREFIX}${allPorts}${COLOR_SUFFIX}
-else
-  echo -e ${YELLOW_PREFIX}${msg_gateway_name}${COLOR_SUFFIX}${RED_PREFIX}"SERVICE START ERROR, PLEASE CHECK openIM.log"${COLOR_SUFFIX}
-fi
diff --git a/script/msg_transfer_start.sh b/script/msg_transfer_start.sh
deleted file mode 100644
index 86b1d62ee..000000000
--- a/script/msg_transfer_start.sh
+++ /dev/null
@@ -1,46 +0,0 @@
-#!/usr/bin/env bash
-#Include shell font styles and some basic information
-source ./style_info.cfg
-source ./path_info.cfg
-source ./function.sh
-
-list1=$(cat $config_path | grep messageTransferPrometheusPort | awk -F '[:]' '{print $NF}')
-list_to_string $list1
-prome_ports=($ports_array)
-
-
-#Check if the service exists
-#If it is exists,kill this process
-check=`ps aux | grep -w ./${msg_transfer_name} | grep -v grep| wc -l`
-if [ $check -ge 1 ]
-then
-oldPid=`ps aux | grep -w ./${msg_transfer_name} | grep -v grep|awk '{print $2}'`
- kill -9 $oldPid
-fi
-#Waiting port recycling
-sleep 1
-
-cd ${msg_transfer_binary_root}
-for ((i = 0; i < ${msg_transfer_service_num}; i++)); do
-      prome_port=${prome_ports[$i]}
-      cmd="nohup ./${msg_transfer_name}"
-      if [ $prome_port != "" ]; then
-        cmd="$cmd --prometheus_port $prome_port"
-      fi
-      echo "==========================start msg_transfer server===========================">>../logs/openIM.log
-      $cmd >>../logs/openIM.log 2>&1 &
-done
-
-#Check launched service process
-check=`ps aux | grep -w ./${msg_transfer_name} | grep -v grep| wc -l`
-if [ $check -ge 1 ]
-then
-newPid=`ps aux | grep -w ./${msg_transfer_name} | grep -v grep|awk '{print $2}'`
-allPorts=""
-    echo -e ${SKY_BLUE_PREFIX}"SERVICE START SUCCESS "${COLOR_SUFFIX}
-    echo -e ${SKY_BLUE_PREFIX}"SERVICE_NAME: "${COLOR_SUFFIX}${YELLOW_PREFIX}${msg_transfer_name}${COLOR_SUFFIX}
-    echo -e ${SKY_BLUE_PREFIX}"PID: "${COLOR_SUFFIX}${YELLOW_PREFIX}${newPid}${COLOR_SUFFIX}
-    echo -e ${SKY_BLUE_PREFIX}"LISTENING_PORT: "${COLOR_SUFFIX}${YELLOW_PREFIX}${allPorts}${COLOR_SUFFIX}
-else
-    echo -e ${YELLOW_PREFIX}${msg_transfer_name}${COLOR_SUFFIX}${RED_PREFIX}"SERVICE START ERROR, PLEASE CHECK openIM.log"${COLOR_SUFFIX}
-fi
diff --git a/script/path_info.cfg b/script/path_info.cfg
deleted file mode 100644
index 75200e069..000000000
--- a/script/path_info.cfg
+++ /dev/null
@@ -1,92 +0,0 @@
-#Don't put the space between "="
-msg_gateway_name="open_im_msg_gateway"
-msg_gateway_binary_root="../bin/"
-msg_gateway_source_root="../cmd/msggateway/"
-
-msg_name="open_im_msg"
-msg_binary_root="../bin/"
-msg_source_root="../cmd/rpc/msg/"
-
-push_name="open_im_push"
-push_binary_root="../bin/"
-push_source_root="../cmd/push/"
-
-
-
-msg_transfer_name="open_im_msg_transfer"
-msg_transfer_binary_root="../bin/"
-msg_transfer_source_root="../cmd/msgtransfer/"
-msg_transfer_service_num=4
-
-
-sdk_server_name="open_im_sdk_server"
-sdk_server_binary_root="../bin/"
-sdk_server_source_root="../cmd/Open-IM-SDK-Core/"
-
-
-cron_task_name="open_im_cron_task"
-cron_task_binary_root="../bin/"
-cron_task_source_root="../cmd/crontask/"
-
-
-cmd_utils_name="open_im_cmd_utils"
-cmd_utils_binary_root="../bin/"
-cmd_utils_source_root="../cmd/cmduitls/"
-
-#Global configuration file default dir
-config_path="../config/config.yaml"
-
-#servicefile dir path
-service_source_root=(
-  #api service file
-  ../cmd/api/
-  #rpc service file
-  ../cmd/rpc/user/
-  ../cmd/rpc/friend/
-  ../cmd/rpc/group/
-  ../cmd/rpc/auth/
-  ../cmd/rpc/conversation/
-  ../cmd/rpc/third/
-  ../cmd/crontask
-  ${msg_gateway_source_root}
-  ${msg_transfer_source_root/}
-  ${msg_source_root}
-  ${push_source_root}
-  # ${sdk_server_source_root}
-)
-#service filename
-service_names=(
-  #api service filename
-  open_im_api
-  #rpc service filename
-  open_im_user
-  open_im_friend
-  open_im_group
-  open_im_auth
-  open_im_conversation
-  open_im_third
-  open_im_cron_task
-  ${msg_gateway_name}
-  ${msg_transfer_name}
-  ${msg_name}
-  ${push_name}
-  # ${sdk_server_name}
-)
-
-image_names=(
-  #api service file
-  api
-  #rpc service file
-  user
-  friend
-  group
-  auth
-  conversation
-  third
-  cron_task
-  msg_gateway
-  msg_transfer
-  msg
-  push
-  # sdk_server
-)
\ No newline at end of file
diff --git a/script/push_start.sh b/script/push_start.sh
deleted file mode 100644
index d047a0500..000000000
--- a/script/push_start.sh
+++ /dev/null
@@ -1,49 +0,0 @@
-#!/usr/bin/env bash
-#Include shell font styles and some basic information
-source ./style_info.cfg
-source ./path_info.cfg
-source ./function.sh
-
-
-
-list1=$(cat $config_path | grep openImPushPort | awk -F '[:]' '{print $NF}')
-list2=$(cat $config_path | grep pushPrometheusPort | awk -F '[:]' '{print $NF}')
-list_to_string $list1
-rpc_ports=($ports_array)
-list_to_string $list2
-prome_ports=($ports_array)
-
-#Check if the service exists
-#If it is exists,kill this process
-check=$(ps aux | grep -w ./${push_name} | grep -v grep | wc -l)
-if [ $check -ge 1 ]; then
-  oldPid=$(ps aux | grep -w ./${push_name} | grep -v grep | awk '{print $2}')
-  kill -9 $oldPid
-fi
-#Waiting port recycling
-sleep 1
-cd ${push_binary_root}
-
-for ((i = 0; i < ${#rpc_ports[@]}; i++)); do
-  echo "==========================start push server===========================">>../logs/openIM.log
-  nohup ./${push_name} --port ${rpc_ports[$i]} --prometheus_port ${prome_ports[$i]} >>../logs/openIM.log 2>&1 &
-done
-
-sleep 3
-#Check launched service process
-check=$(ps aux | grep -w ./${push_name} | grep -v grep | wc -l)
-if [ $check -ge 1 ]; then
-  newPid=$(ps aux | grep -w ./${push_name} | grep -v grep | awk '{print $2}')
-  ports=$(netstat -netulp | grep -w ${newPid} | awk '{print $4}' | awk -F '[:]' '{print $NF}')
-  allPorts=""
-
-  for i in $ports; do
-    allPorts=${allPorts}"$i "
-  done
-  echo -e ${SKY_BLUE_PREFIX}"SERVICE START SUCCESS "${COLOR_SUFFIX}
-  echo -e ${SKY_BLUE_PREFIX}"SERVICE_NAME: "${COLOR_SUFFIX}${YELLOW_PREFIX}${push_name}${COLOR_SUFFIX}
-  echo -e ${SKY_BLUE_PREFIX}"PID: "${COLOR_SUFFIX}${YELLOW_PREFIX}${newPid}${COLOR_SUFFIX}
-  echo -e ${SKY_BLUE_PREFIX}"LISTENING_PORT: "${COLOR_SUFFIX}${YELLOW_PREFIX}${allPorts}${COLOR_SUFFIX}
-else
-  echo -e ${YELLOW_PREFIX}${push_name}${COLOR_SUFFIX}${RED_PREFIX}"SERVICE START ERROR, PLEASE CHECK openIM.log"${COLOR_SUFFIX}
-fi
diff --git a/script/sdk_svr_start.sh b/script/sdk_svr_start.sh
deleted file mode 100644
index c1747fa3b..000000000
--- a/script/sdk_svr_start.sh
+++ /dev/null
@@ -1,46 +0,0 @@
-#!/usr/bin/env bash
-#Include shell font styles and some basic information
-source ./style_info.cfg
-source ./path_info.cfg
-source ./function.sh
-ulimit -n 200000
-
-ws_address=$(cat $config_path | grep openImWsAddress | awk -F '[ ]' '{print $NF}')
-api_address=$(cat $config_path | grep openImApiAddress | awk -F '[ ]' '{print $NF}')
-list3=$(cat $config_path | grep openImSdkWsPort | awk -F '[:]' '{print $NF}')
-logLevel=$(cat $config_path | grep remainLogLevel | awk -F '[:]' '{print $NF}')
-list_to_string $list3
-sdkws_ports=($ports_array)
-
-
-
-#Check if the service exists
-#If it is exists,kill this process
-check=$(ps aux | grep -w ./${sdk_server_name} | grep -v grep | wc -l)
-if [ $check -ge 1 ]; then
-  oldPid=$(ps aux | grep -w ./${sdk_server_name} | grep -v grep | awk '{print $2}')
-    kill -9 ${oldPid}
-fi
-#Waiting port recycling
-sleep 1
-cd ${sdk_server_binary_root}
-  echo "==========================start js sdk server===========================">>../logs/openIM.log
-  nohup ./${sdk_server_name}  -openIM_ws_address ${ws_address}  -sdk_ws_port ${sdkws_ports[0]} -openIM_api_address ${api_address} -openIM_log_level ${logLevel} >>../logs/openIM.log 2>&1 &
-
-#Check launched service process
-sleep 3
-check=$(ps aux | grep -w ./${sdk_server_name} | grep -v grep | wc -l)
-allPorts=""
-if [ $check -ge 1 ]; then
-  allNewPid=$(ps aux | grep -w ./${sdk_server_name} | grep -v grep | awk '{print $2}')
-  for i in $allNewPid; do
-    ports=$(netstat -netulp | grep -w ${i} | awk '{print $4}' | awk -F '[:]' '{print $NF}')
-      allPorts=${allPorts}"$ports "
-  done
-  echo -e ${SKY_BLUE_PREFIX}"SERVICE START SUCCESS "${COLOR_SUFFIX}
-  echo -e ${SKY_BLUE_PREFIX}"SERVICE_NAME: "${COLOR_SUFFIX}${YELLOW_PREFIX}${sdk_server_name}${COLOR_SUFFIX}
-  echo -e ${SKY_BLUE_PREFIX}"PID: "${COLOR_SUFFIX}${YELLOW_PREFIX}${allNewPid}${COLOR_SUFFIX}
-  echo -e ${SKY_BLUE_PREFIX}"LISTENING_PORT: "${COLOR_SUFFIX}${YELLOW_PREFIX}${allPorts}${COLOR_SUFFIX}
-else
-  echo -e ${YELLOW_PREFIX}${sdk_server_name}${COLOR_SUFFIX}${RED_PREFIX}"SERVICE START ERROR PLEASE CHECK openIM.log"${COLOR_SUFFIX}
-fi
diff --git a/script/start_all.sh b/script/start_all.sh
deleted file mode 100644
index 6cf8f822c..000000000
--- a/script/start_all.sh
+++ /dev/null
@@ -1,30 +0,0 @@
-#!/usr/bin/env bash
-#fixme This script is the total startup script
-#fixme The full name of the shell script that needs to be started is placed in the need_to_start_server_shell array
-
-#fixme Put the shell script name here
-need_to_start_server_shell=(
-  start_rpc_service.sh
-  push_start.sh
-  msg_transfer_start.sh
-#  sdk_svr_start.sh
-  msg_gateway_start.sh
-  start_cron.sh
-)
-time=`date +"%Y-%m-%d %H:%M:%S"`
-echo "==========================================================">>../logs/openIM.log 2>&1 &
-echo "==========================================================">>../logs/openIM.log 2>&1 &
-echo "==========================================================">>../logs/openIM.log 2>&1 &
-echo "==========server start time:${time}===========">>../logs/openIM.log 2>&1 &
-echo "==========================================================">>../logs/openIM.log 2>&1 &
-echo "==========================================================">>../logs/openIM.log 2>&1 &
-echo "==========================================================">>../logs/openIM.log 2>&1 &
-
-for i in ${need_to_start_server_shell[*]}; do
-  chmod +x $i
-  echo "=====================exec ${i}======================">>../logs/openIM.log
-  ./$i
-    if [ $? -ne 0 ]; then
-        exit -1
-  fi
-done
diff --git a/script/start_cron.sh b/script/start_cron.sh
deleted file mode 100644
index a0b62a2d2..000000000
--- a/script/start_cron.sh
+++ /dev/null
@@ -1,37 +0,0 @@
-#!/usr/bin/env bash
-#Include shell font styles and some basic information
-source ./style_info.cfg
-source ./path_info.cfg
-
-
-
-#Check if the service exists
-#If it is exists,kill this process
-check=`ps aux | grep -w ./${cron_task_name} | grep -v grep| wc -l`
-if [ $check -ge 1 ]
-then
-oldPid=`ps aux | grep -w ./${cron_task_name} | grep -v grep|awk '{print $2}'`
- kill -9 $oldPid
-fi
-#Waiting port recycling
-sleep 1
-
-cd ${cron_task_binary_root}
-#for ((i = 0; i < ${cron_task_service_num}; i++)); do
-      echo "==========================start cron_task process===========================">>../logs/openIM.log
-nohup ./${cron_task_name}  >>../logs/openIM.log 2>&1 &
-#done
-
-#Check launched service process
-check=`ps aux | grep -w ./${cron_task_name} | grep -v grep| wc -l`
-if [ $check -ge 1 ]
-then
-newPid=`ps aux | grep -w ./${cron_task_name} | grep -v grep|awk '{print $2}'`
-allPorts=""
-    echo -e ${SKY_BLUE_PREFIX}"SERVICE START SUCCESS "${COLOR_SUFFIX}
-    echo -e ${SKY_BLUE_PREFIX}"SERVICE_NAME: "${COLOR_SUFFIX}${YELLOW_PREFIX}${cron_task_name}${COLOR_SUFFIX}
-    echo -e ${SKY_BLUE_PREFIX}"PID: "${COLOR_SUFFIX}${YELLOW_PREFIX}${newPid}${COLOR_SUFFIX}
-    echo -e ${SKY_BLUE_PREFIX}"LISTENING_PORT: "${COLOR_SUFFIX}${YELLOW_PREFIX}${allPorts}${COLOR_SUFFIX}
-else
-    echo -e ${YELLOW_PREFIX}${cron_task_name}${COLOR_SUFFIX}${RED_PREFIX}"SERVICE START ERROR, PLEASE CHECK openIM.log"${COLOR_SUFFIX}
-fi
diff --git a/script/start_rpc_service.sh b/script/start_rpc_service.sh
deleted file mode 100644
index d3935e64f..000000000
--- a/script/start_rpc_service.sh
+++ /dev/null
@@ -1,88 +0,0 @@
-#!/usr/bin/env bash
-
-source ./style_info.cfg
-source ./path_info.cfg
-source ./function.sh
-
-#service filename
-service_filename=(
-  #api
-  open_im_api
-  #rpc
-  open_im_user
-  open_im_friend
-  open_im_group
-  open_im_auth
-  ${msg_name}
-  open_im_conversation
-  open_im_third
-)
-
-#service config port name
-service_port_name=(
-  #api port name
-  openImApiPort
-  #rpc port name
-  openImUserPort
-  openImFriendPort
-  openImGroupPort
-  openImAuthPort
-  openImMessagePort
-  openImConversationPort
-  openImThirdPort
-)
-
-service_prometheus_port_name=(
-  #api port name
-  openImApiPort
-  #rpc port name
-  userPrometheusPort
-  friendPrometheusPort
-  groupPrometheusPort
-  authPrometheusPort
-  messagePrometheusPort
-  conversationPrometheusPort
-  thirdPrometheusPort
-)
-
-for ((i = 0; i < ${#service_filename[*]}; i++)); do
-  #Check whether the service exists
-  service_name="ps -aux |grep -w ${service_filename[$i]} |grep -v grep"
-  count="${service_name}| wc -l"
-
-  if [ $(eval ${count}) -gt 0 ]; then
-    pid="${service_name}| awk '{print \$2}'"
-    echo  "${service_filename[$i]} service has been started,pid:$(eval $pid)"
-    echo  "killing the service ${service_filename[$i]} pid:$(eval $pid)"
-    #kill the service that existed
-    kill -9 $(eval $pid)
-    sleep 0.5
-  fi
-  cd ../bin
-  #Get the rpc port in the configuration file
-  portList=$(cat $config_path | grep ${service_port_name[$i]} | awk -F '[:]' '{print $NF}')
-  list_to_string ${portList}
-  service_ports=($ports_array)
-
-  portList2=$(cat $config_path | grep ${service_prometheus_port_name[$i]} | awk -F '[:]' '{print $NF}')
-  list_to_string $portList2
-  prome_ports=($ports_array)
-  #Start related rpc services based on the number of ports
-  for ((j = 0; j < ${#service_ports[*]}; j++)); do
-    #Start the service in the background
-    if [ -z "${prome_ports[$j]}" ]; then
-      cmd="./${service_filename[$i]} --port ${service_ports[$j]}"
-    else
-      cmd="./${service_filename[$i]} --port ${service_ports[$j]} --prometheus_port ${prome_ports[$j]}"
-    fi
-    if [ $i -eq 0 -o $i -eq 1 ]; then
-      cmd="./${service_filename[$i]} --port ${service_ports[$j]}"
-    fi
-    echo $cmd
-    echo "=====================start ${service_filename[$i]}======================">>../logs/openIM.log
-    nohup $cmd >>../logs/openIM.log 2>&1 &
-    sleep 1
-    pid="netstat -ntlp|grep $j |awk '{printf \$7}'|cut -d/ -f1"
-    echo -e "${GREEN_PREFIX}${service_filename[$i]} start success,port number:${service_ports[$j]} pid:$(eval $pid)$COLOR_SUFFIX"
-  done
-done
diff --git a/script/stop_all.sh b/script/stop_all.sh
deleted file mode 100644
index 2e1e119c1..000000000
--- a/script/stop_all.sh
+++ /dev/null
@@ -1,19 +0,0 @@
-#!/usr/bin/env bash
-#fixme This script is to stop the service
-
-source ./style_info.cfg
-source ./path_info.cfg
-
-
-for i in ${service_names[*]}; do
-  #Check whether the service exists
-  name="ps -aux |grep -w $i |grep -v grep"
-  count="${name}| wc -l"
-  if [ $(eval ${count}) -gt 0 ]; then
-    pid="${name}| awk '{print \$2}'"
-    echo -e "${SKY_BLUE_PREFIX}Killing service:$i pid:$(eval $pid)${COLOR_SUFFIX}"
-    #kill the service that existed
-    kill -9 $(eval $pid)
-    echo -e "${SKY_BLUE_PREFIX}service:$i was killed ${COLOR_SUFFIX}"
-  fi
-done
diff --git a/script/style_info.cfg b/script/style_info.cfg
deleted file mode 100644
index ff28dcb88..000000000
--- a/script/style_info.cfg
+++ /dev/null
@@ -1,9 +0,0 @@
-#Shell font formatting information
-COLOR_SUFFIX="\033[0m"
-BLACK_PREFIX="\033[30m"
-RED_PREFIX="\033[31m"
-GREEN_PREFIX="\033[32m"
-YELLOW_PREFIX="\033[33m"
-BLUE_PREFIX="\033[34m"
-PURPLE_PREFIX="\033[35m"
-SKY_BLUE_PREFIX="\033[36m"