feat: optimize scripts and makefiles

Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com>
pull/457/head
Xinwei Xiong(cubxxw-openim) 1 year ago
parent e6bf4da430
commit a5147ca564

@ -306,7 +306,7 @@ content_security_policy = false
# Set Content Security Policy template used when adding the Content-Security-Policy header to your requests. # Set Content Security Policy template used when adding the Content-Security-Policy header to your requests.
# $NONCE in the template includes a random nonce. # $NONCE in the template includes a random nonce.
# $ROOT_PATH is server.root_url without the protocol. # $ROOT_PATH is server.root_url without the protocol.
content_security_policy_template = """script-src 'self' 'unsafe-eval' 'unsafe-inline' 'strict-dynamic' $NONCE;object-src 'none';font-src 'self';style-src 'self' 'unsafe-inline' blob:;img-src * data:;base-uri 'self';connect-src 'self' grafana.com ws://$ROOT_PATH wss://$ROOT_PATH;manifest-src 'self';media-src 'none';form-action 'self';""" content_security_policy_template = """scripts-src 'self' 'unsafe-eval' 'unsafe-inline' 'strict-dynamic' $NONCE;object-src 'none';font-src 'self';style-src 'self' 'unsafe-inline' blob:;img-src * data:;base-uri 'self';connect-src 'self' grafana.com ws://$ROOT_PATH wss://$ROOT_PATH;manifest-src 'self';media-src 'none';form-action 'self';"""
# Controls if old angular plugins are supported or not. This will be disabled by default in future release # Controls if old angular plugins are supported or not. This will be disabled by default in future release
angular_support_enabled = true angular_support_enabled = true

10
.github/sync.yml vendored

@ -3,7 +3,7 @@
OpenIMSDK/.github: OpenIMSDK/.github:
- source: LICENSE - source: LICENSE
dest: LICENSE dest: LICENSE
- source: script/LICENSE/ - source: scripts/LICENSE/
dest: scripts/LICENSE/ dest: scripts/LICENSE/
replace: false replace: false
- source: .github/ - source: .github/
@ -16,7 +16,7 @@ OpenIMSDK/.github:
OpenIMSDK/community: OpenIMSDK/community:
- source: LICENSE - source: LICENSE
dest: LICENSE dest: LICENSE
- source: script/LICENSE/ - source: scripts/LICENSE/
dest: scripts/LICENSE/ dest: scripts/LICENSE/
replace: false replace: false
- source: .github/workflows/ - source: .github/workflows/
@ -33,7 +33,7 @@ OpenIMSDK/community:
OpenIMSDK/openim-sdk-core: OpenIMSDK/openim-sdk-core:
- source: LICENSE - source: LICENSE
dest: LICENSE dest: LICENSE
- source: script/LICENSE/ - source: scripts/LICENSE/
dest: scripts/LICENSE/ dest: scripts/LICENSE/
replace: false replace: false
- source: .github/workflows/issue-robot.yml - source: .github/workflows/issue-robot.yml
@ -49,7 +49,7 @@ OpenIMSDK/OpenIM-Docs:
exclude: | exclude: |
e2e-test.yml e2e-test.yml
sync.yml sync.yml
- source: script/githooks/ - source: scripts/githooks/
dest: scripts/githooks/ dest: scripts/githooks/
replace: true replace: true
@ -77,6 +77,6 @@ group:
- source: .github/workflows/help-comment-issue.yml - source: .github/workflows/help-comment-issue.yml
dest: .github/workflows/help-comment-issue.yml dest: .github/workflows/help-comment-issue.yml
replace: false replace: false
- source: ./script/githooks/ - source: ./scripts/githooks/
dest: ./scripts/githooks/ dest: ./scripts/githooks/
replace: true replace: true

@ -23,13 +23,13 @@ VERSION_PACKAGE=github.com/OpenIMSDK/Open-IM-Server/pkg/version
# ============================================================================== # ==============================================================================
# Includes # Includes
include script/make-rules/common.mk # make sure include common.mk at the first include line include scripts/make-rules/common.mk # make sure include common.mk at the first include line
include script/make-rules/golang.mk include scripts/make-rules/golang.mk
include script/make-rules/image.mk include scripts/make-rules/image.mk
include script/make-rules/copyright.mk include scripts/make-rules/copyright.mk
include script/make-rules/gen.mk include scripts/make-rules/gen.mk
include script/make-rules/dependencies.mk include scripts/make-rules/dependencies.mk
include script/make-rules/tools.mk include scripts/make-rules/tools.mk
# ============================================================================== # ==============================================================================
# Usage # Usage

@ -78,7 +78,7 @@ Open-IM-Server 是一款即时通讯服务器,使用纯 Golang 开发,采用
3. 检查服务 3. 检查服务
``` ```
cd script; cd scripts;
./docker_check_service.sh ./docker_check_service.sh
./check_all.sh ./check_all.sh
``` ```
@ -100,7 +100,7 @@ Open-IM-Server 是一款即时通讯服务器,使用纯 Golang 开发,采用
3. 设置可执行权限 3. 设置可执行权限
``` ```
cd ../../script/ cd ../../scripts/
chmod +x *.sh chmod +x *.sh
``` ```

@ -82,7 +82,7 @@ By deployment of the Open-IM-Server on the customer's server, developers can int
4. Check service 4. Check service
``` ```
cd script; cd scripts;
./docker_check_service.sh./check_all.sh ./docker_check_service.sh./check_all.sh
``` ```
@ -102,7 +102,7 @@ git checkout main
1. Set executable permissions 1. Set executable permissions
```shell ```shell
cd ../../script/ cd ../../scripts/
chmod +x *.sh chmod +x *.sh
``` ```
@ -142,18 +142,18 @@ all services build success
- multiloginpolicy&&tokenpolicy - multiloginpolicy&&tokenpolicy
- Open-IM supports multi-terminal login. Currently, there are three multi-terminal login policies. The PC terminal and the mobile terminal are online at the same time by default. When multiple policies are configured to be true, the first policy with true is used by default, and the token policy is the generated token policy. , The developer can customize the expiration time of the token - Open-IM supports multi-terminal login. Currently, there are three multi-terminal login policies. The PC terminal and the mobile terminal are online at the same time by default. When multiple policies are configured to be true, the first policy with true is used by default, and the token policy is the generated token policy. , The developer can customize the expiration time of the token
### SCRIPT DESCRIPTION ### scripts DESCRIPTION
> Open-IM script provides service compilation, start, and stop script. There are four Open-IM script start modules, one is the http+rpc service start module, the second is the websocket service start module, then the msg_transfer module, and the last is the push module > Open-IM scripts provides service compilation, start, and stop scripts. There are four Open-IM scripts start modules, one is the http+rpc service start module, the second is the websocket service start module, then the msg_transfer module, and the last is the push module
- path_info.cfg&&style_info.cfg&&functions.sh - path_info.cfg&&style_info.cfg&&functions.sh
- Contains the path information of each module, including the path where the source code is located, the name of the service startup, the shell print font style, and some functions for processing shell strings - Contains the path information of each module, including the path where the source code is located, the name of the service startup, the shell print font style, and some functions for processing shell strings
- build_all_service.sh - build_all_service.sh
- Compile the module, compile all the source code of Open-IM into a binary file and put it into the bin directory - Compile the module, compile all the source code of Open-IM into a binary file and put it into the bin directory
- start_rpc_api_service.sh&&msg_gateway_start.sh&&msg_transfer_start.sh&&push_start.sh - start_rpc_api_service.sh&&msg_gateway_start.sh&&msg_transfer_start.sh&&push_start.sh
- Independent script startup module, followed by api and rpc modules, message gateway module, message transfer module, and push module - Independent scripts startup module, followed by api and rpc modules, message gateway module, message transfer module, and push module
- start_all.sh&&stop_all.sh - start_all.sh&&stop_all.sh
- Total script, start all services and close all services - Total scripts, start all services and close all services
## Authentication Clow Chart ## Authentication Clow Chart

@ -1 +0,0 @@
Subproject commit 666684b5ac6af2bc259cbfd8021d9ddc31d1bff8

@ -10,8 +10,8 @@ WORKDIR /Open-IM-Server
# add all files to the container # add all files to the container
COPY . . COPY . .
RUN chmod +x /Open-IM-Server/script/*.sh && \ RUN chmod +x /Open-IM-Server/scripts/*.sh && \
/bin/sh -c /Open-IM-Server/script/build_all_service.sh /bin/sh -c /Open-IM-Server/scripts/build_all_service.sh
#Blank image Multi-Stage Build #Blank image Multi-Stage Build
FROM alpine FROM alpine
@ -22,13 +22,13 @@ RUN apk add --no-cache vim curl tzdata gawk procps net-tools
RUN ln -fs /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && \ RUN ln -fs /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && \
dpkg-reconfigure -f noninteractive tzdata dpkg-reconfigure -f noninteractive tzdata
#set directory to map logs,config file,script file. #set directory to map logs,config file,scripts file.
VOLUME ["/Open-IM-Server/logs","/Open-IM-Server/config","/Open-IM-Server/script","/Open-IM-Server/db/sdk"] VOLUME ["/Open-IM-Server/logs","/Open-IM-Server/config","/Open-IM-Server/scripts","/Open-IM-Server/db/sdk"]
#Copy script files and binary files to the blank image #Copy scripts files and binary files to the blank image
COPY --from=build --chown=root:root /Open-IM-Server/script /Open-IM-Server/script COPY --from=build --chown=root:root /Open-IM-Server/scripts /Open-IM-Server/scripts
COPY --from=build --chown=root:root /Open-IM-Server/bin /Open-IM-Server/bin COPY --from=build --chown=root:root /Open-IM-Server/bin /Open-IM-Server/bin
WORKDIR /Open-IM-Server/script WORKDIR /Open-IM-Server/scripts
CMD ["/Open-IM-Server/script/docker_start_all.sh"] CMD ["/Open-IM-Server/scripts/docker_start_all.sh"]

@ -122,7 +122,7 @@ services:
- ./logs:/Open-IM-Server/logs - ./logs:/Open-IM-Server/logs
- ./config/config.yaml:/Open-IM-Server/config/config.yaml - ./config/config.yaml:/Open-IM-Server/config/config.yaml
- ./db/sdk:/Open-IM-Server/db/sdk - ./db/sdk:/Open-IM-Server/db/sdk
- ./script:/Open-IM-Server/script - ./scripts:/Open-IM-Server/scripts
restart: always restart: always
depends_on: depends_on:
- kafka - kafka
@ -136,4 +136,4 @@ services:
driver: json-file driver: json-file
options: options:
max-size: "1g" max-size: "1g"
max-file: "2" max-file: "2"

@ -1,6 +1,5 @@
version: "3"
#fixme Clone openIM Server project before using docker-compose,project addresshttps://github.com/OpenIMSDK/Open-IM-Server.git #fixme Clone openIM Server project before using docker-compose,project addresshttps://github.com/OpenIMSDK/Open-IM-Server.git
version: "3"
services: services:
mysql: mysql:
image: mysql:5.7 image: mysql:5.7
@ -9,10 +8,10 @@ services:
- 23306:33060 - 23306:33060
container_name: mysql container_name: mysql
volumes: volumes:
- ./components/mysql/data:/var/lib/mysql - ${DATA_DIR}/components/mysql/data:/var/lib/mysql
- /etc/localtime:/etc/localtime - /etc/localtime:/etc/localtime
environment: environment:
MYSQL_ROOT_PASSWORD: openIM MYSQL_ROOT_PASSWORD: ${PASSWORD}
restart: always restart: always
mongodb: mongodb:
@ -22,19 +21,19 @@ services:
container_name: mongo container_name: mongo
command: --wiredTigerCacheSizeGB 1 --auth command: --wiredTigerCacheSizeGB 1 --auth
volumes: volumes:
- ./components/mongodb/data/db:/data/db - ${DATA_DIR}/components/mongodb/data/db:/data/db
- ./components/mongodb/data/logs:/data/logs - ${DATA_DIR}/components/mongodb/data/logs:/data/logs
- ./components/mongodb/data/conf:/etc/mongo - ${DATA_DIR}/components/mongodb/data/conf:/etc/mongo
- ./scripts/mongo-init.sh:/docker-entrypoint-initdb.d/mongo-init.sh:ro
environment: environment:
- TZ=Asia/Shanghai - TZ=Asia/Shanghai
# cache # cache
- wiredTigerCacheSizeGB=1 - wiredTigerCacheSizeGB=1
# environment: - MONGO_INITDB_ROOT_USERNAME=${USER}
# - MONGO_INITDB_ROOT_USERNAME=openIM - MONGO_INITDB_ROOT_PASSWORD=${PASSWORD}
# - MONGO_INITDB_ROOT_PASSWORD=openIM - MONGO_INITDB_DATABASE=openIM
- MONGO_USERNAME=${USER}
- MONGO_PASSWORD=${PASSWORD}
#TZ: Asia/Shanghai
restart: always restart: always
redis: redis:
@ -43,19 +42,19 @@ services:
- 16379:6379 - 16379:6379
container_name: redis container_name: redis
volumes: volumes:
- ./components/redis/data:/data - ${DATA_DIR}/components/redis/data:/data
#redis config file #redis config file
- ./components/redis/config/redis.conf:/usr/local/redis/config/redis.conf - ${DATA_DIR}/components/redis/config/redis.conf:/usr/local/redis/config/redis.conf
environment: environment:
TZ: Asia/Shanghai TZ: Asia/Shanghai
restart: always restart: always
sysctls: sysctls:
net.core.somaxconn: 1024 net.core.somaxconn: 1024
command: redis-server --requirepass openIM --appendonly yes command: redis-server --requirepass ${PASSWORD} --appendonly yes
zookeeper: zookeeper:
image: wurstmeister/zookeeper image: zookeeper
ports: ports:
- 2181:2181 - 2181:2181
container_name: zookeeper container_name: zookeeper
@ -71,17 +70,16 @@ services:
container_name: kafka container_name: kafka
restart: always restart: always
ports: ports:
- 9093:9093 - 9092:9092
environment: environment:
TZ: Asia/Shanghai TZ: Asia/Shanghai
KAFKA_BROKER_ID: 0 KAFKA_BROKER_ID: 0
KAFKA_ZOOKEEPER_CONNECT: 127.0.0.1:2181 KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181
KAFKA_CREATE_TOPICS: "ws2ms_chat:2:1,ms2ps_chat:2:1" KAFKA_CREATE_TOPICS: "latestMsgToRedis:8:1,msgToPush:8:1,offlineMsgToMongoMysql:8:1"
KAFKA_ADVERTISED_LISTENERS: INSIDE://127.0.0.1:9092,OUTSIDE://103.116.45.174:9093 KAFKA_ADVERTISED_LISTENERS: INSIDE://127.0.0.1:9092,OUTSIDE://103.116.45.174:9092
KAFKA_LISTENERS: INSIDE://:9092,OUTSIDE://:9093 KAFKA_LISTENERS: INSIDE://:9092,OUTSIDE://:9093
KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: "INSIDE:PLAINTEXT,OUTSIDE:PLAINTEXT" KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: "INSIDE:PLAINTEXT,OUTSIDE:PLAINTEXT"
KAFKA_INTER_BROKER_LISTENER_NAME: INSIDE KAFKA_INTER_BROKER_LISTENER_NAME: INSIDE
network_mode: "host"
depends_on: depends_on:
- zookeeper - zookeeper
@ -95,40 +93,27 @@ services:
- /mnt/data:/data - /mnt/data:/data
- /mnt/config:/root/.minio - /mnt/config:/root/.minio
environment: environment:
MINIO_ROOT_USER: user12345 MINIO_ROOT_USER: ${USER}
MINIO_ROOT_PASSWORD: key12345 MINIO_ROOT_PASSWORD: ${PASSWORD}
restart: always restart: always
command: minio server /data --console-address ':9090' command: minio server /data --console-address ':9090'
etcd:
image: quay.io/coreos/etcd
ports:
- 2379:2379
- 2380:2380
container_name: etcd
volumes:
- /etc/timezone:/etc/timezone
- /etc/localtime:/etc/localtime
environment:
ETCDCTL_API: 3
restart: always
command: /usr/local/bin/etcd --name etcd0 --data-dir /etcd-data --listen-client-urls http://0.0.0.0:2379 --advertise-client-urls http://0.0.0.0:2379 --listen-peer-urls http://0.0.0.0:2380 --initial-advertise-peer-urls http://0.0.0.0:2380 --initial-cluster etcd0=http://0.0.0.0:2380 --initial-cluster-token tkn --initial-cluster-state new
open_im_server: open_im_server:
image: openim/open_im_server:v2.3.0-rc1 image: openim/open_im_server:v3.0.0
container_name: open_im_server container_name: open_im_server
volumes: volumes:
- ./logs:/Open-IM-Server/logs - ./logs:/Open-IM-Server/logs
- ./config/config.yaml:/Open-IM-Server/config/config.yaml - ./config/config.yaml:/Open-IM-Server/config/config.yaml
- ./db/sdk:/Open-IM-Server/db/sdk - ./config/notification.yaml:/Open-IM-Server/config/notification.yaml
- ./script:/Open-IM-Server/script - ${DATA_DIR}/db/sdk:/Open-IM-Server/db/sdk
- ./scripts:/Open-IM-Server/scripts
restart: always restart: always
depends_on: depends_on:
- kafka - kafka
- mysql - mysql
- mongodb - mongodb
- redis - redis
- etcd
- minio - minio
network_mode: "host" network_mode: "host"
logging: logging:
@ -136,3 +121,55 @@ services:
options: options:
max-size: "1g" max-size: "1g"
max-file: "2" max-file: "2"
open_im_chat:
image: openim/open_im_enterprise:v1.0.2
container_name: open_im_enterprise
volumes:
- ./logs:/Open-IM-chat/logs
- ./.docker-compose_cfg/config.yaml:/Open-IM-Enterprise/config/config.yaml
restart: always
depends_on:
- mysql
- mongodb
- redis
- minio
- open_im_server
network_mode: "host"
logging:
driver: json-file
options:
max-size: "1g"
max-file: "2"
environment:
CONFIG_NAME: "/Open-IM-Enterprise"
prometheus:
image: prom/prometheus
volumes:
- ./.docker-compose_cfg/prometheus-compose.yml:/etc/prometheus/prometheus.yml
container_name: prometheus
# ports:
# - 9091:9091
depends_on:
- open_im_server
command: --web.listen-address=:9091 --config.file="/etc/prometheus/prometheus.yml"
network_mode: "host"
grafana:
image: grafana/grafana
volumes:
- ./.docker-compose_cfg/datasource-compose.yaml:/etc/grafana/provisioning/datasources/datasource.yaml
- ./.docker-compose_cfg/grafana.ini:/etc/grafana/grafana.ini
- ./.docker-compose_cfg/node-exporter-full_rev1.json:/var/lib/grafana/dashboards/node-exporter-full_rev1.json
container_name: grafana
depends_on:
- prometheus
network_mode: "host"
# node-exporter:
# image: quay.io/prometheus/node-exporter
# container_name: node-exporter
# restart: always
# ports:
# - "9100:9100"

Binary file not shown.

@ -1,6 +1,6 @@
#!/usr/bin/env bash #!/usr/bin/env bash
# This script is used to check the environment and start the docker containers # This scripts is used to check the environment and start the docker containers
# Define the directory path # Define the directory path
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
@ -27,7 +27,7 @@ check_command docker-compose
# Check if Docker is running # Check if Docker is running
check_docker check_docker
# Change to the script directory # Change to the scripts directory
cd $SCRIPT_DIR cd $SCRIPT_DIR
# Set permissions for the scripts # Set permissions for the scripts

@ -1,6 +1,6 @@
#!/bin/bash #!/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 "Please select an deploy option:"
echo "1. docker-compose install" echo "1. docker-compose install"
echo "2. exit" echo "2. exit"
@ -145,13 +145,13 @@ EOF
edit_config edit_config
edit_enterprise_config edit_enterprise_config
cd script; cd scripts;
chmod +x *.sh; chmod +x *.sh;
./init_pwd.sh; ./init_pwd.sh;
./env_check.sh; ./env_check.sh;
cd ..; cd ..;
docker-compose up -d; docker-compose up -d;
cd script; cd scripts;
./docker_check_service.sh; ./docker_check_service.sh;
} }
@ -167,11 +167,10 @@ case $choice in
3) 3)
;; ;;
4) 4)
echo "Exiting installation script..." echo "Exiting installation scripts..."
exit 0 exit 0
;; ;;
*) *)
echo "Invalid option, please try again." echo "Invalid option, please try again."
;; ;;
esac esac

@ -9,13 +9,10 @@ if [ $MINIO_ENDPOINT == "http://127.0.0.1:10005" ]; then
fi fi
cd script ; cd scripts ;
chmod +x *.sh ; chmod +x *.sh ;
./init_pwd.sh ./init_pwd.sh
./env_check.sh; ./env_check.sh;
cd .. ; cd .. ;
docker-compose -f im-compose.yaml up -d docker-compose -f im-compose.yaml up -d
docker ps docker ps

@ -1,8 +1,8 @@
#!/usr/bin/env bash #!/usr/bin/env bash
#fixme This script is the total startup script #fixme This scripts is the total startup scripts
#fixme The full name of the shell script that needs to be started is placed in the need_to_start_server_shell array #fixme The full name of the shell scripts that needs to be started is placed in the need_to_start_server_shell array
#fixme Put the shell script name here #fixme Put the shell scripts name here
need_to_start_server_shell=( need_to_start_server_shell=(
start_rpc_service.sh start_rpc_service.sh
msg_gateway_start.sh msg_gateway_start.sh
@ -56,5 +56,3 @@ if [ $success_num == ${#need_to_start_server_shell[*]} ]
then then
echo -e ${YELLOW_PREFIX}"all services build success"${COLOR_SUFFIX} echo -e ${YELLOW_PREFIX}"all services build success"${COLOR_SUFFIX}
fi fi

@ -1,8 +1,8 @@
#!/usr/bin/env bash #!/usr/bin/env bash
#fixme This script is the total startup script #fixme This scripts is the total startup scripts
#fixme The full name of the shell script that needs to be started is placed in the need_to_start_server_shell array #fixme The full name of the shell scripts that needs to be started is placed in the need_to_start_server_shell array
#fixme Put the shell script name here #fixme Put the shell scripts name here
need_to_start_server_shell=( need_to_start_server_shell=(
start_rpc_service.sh start_rpc_service.sh
msg_gateway_start.sh msg_gateway_start.sh

@ -17,12 +17,12 @@
# #
# Store this file as .git/hooks/commit-msg in your repository in order to # Store this file as .git/hooks/commit-msg in your repository in order to
# enforce checking for proper commit message format before actual commits. # enforce checking for proper commit message format before actual commits.
# You may need to make the script executable by 'chmod +x .git/hooks/commit-msg'. # 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` # 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" # go-gitlint --msg-file="$1"
# An example hook script to check the commit log message. # An example hook scripts to check the commit log message.
# Called by "git commit" with one argument, the name of the file # Called by "git commit" with one argument, the name of the file
# that has the commit message. The hook should exit with non-zero # that has the commit message. The hook should exit with non-zero
# status after issuing an appropriate message if it wants to stop the # status after issuing an appropriate message if it wants to stop the

@ -36,7 +36,7 @@ printError() {
printMessage "Running local OpenIM pre-push hook." printMessage "Running local OpenIM pre-push hook."
if [[ `git status --porcelain` ]]; then if [[ `git status --porcelain` ]]; then
printError "This script needs to run against committed code only. Please commit or stash you changes." printError "This scripts needs to run against committed code only. Please commit or stash you changes."
exit 1 exit 1
fi fi

@ -116,7 +116,7 @@ FIND := find . ! -path './utils/*' ! -path './vendor/*'
XARGS := xargs -r XARGS := xargs -r
# Linux command settings-CODE DIRS Copyright # 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)/script $(ROOT_DIR)/test 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) FINDS := find $(CODE_DIRS)
# Makefile settings: Select different behaviors by determining whether V option is set # Makefile settings: Select different behaviors by determining whether V option is set
@ -126,7 +126,7 @@ endif
# Copy githook scripts when execute makefile # Copy githook scripts when execute makefile
# TODO! GIT_FILE_SIZE_LIMIT=42000000 git commit -m "This commit is allowed file sizes up to 42MB" # TODO! GIT_FILE_SIZE_LIMIT=42000000 git commit -m "This commit is allowed file sizes up to 42MB"
COPY_GITHOOK:=$(shell cp -f script/githooks/* .git/hooks/; chmod +x .git/hooks/*) COPY_GITHOOK:=$(shell cp -f scripts/githooks/* .git/hooks/; chmod +x .git/hooks/*)
# COMMA: Concatenate multiple strings to form a list of strings # COMMA: Concatenate multiple strings to form a list of strings
COMMA := , COMMA := ,

@ -17,7 +17,7 @@
# Makefile helper functions for copyright # Makefile helper functions for copyright
# #
LICENSE_TEMPLATE ?= $(ROOT_DIR)/script/LICENSE/LICENSE_TEMPLATES LICENSE_TEMPLATE ?= $(ROOT_DIR)/scripts/LICENSE/LICENSE_TEMPLATES
## copyright.verify: Validate boilerplate headers for assign files ## copyright.verify: Validate boilerplate headers for assign files
.PHONY: copyright.verify .PHONY: copyright.verify
@ -53,5 +53,5 @@ copyright.add: tools.verify.addlicense
## copyright.help: Show copyright help ## copyright.help: Show copyright help
.PHONY: copyright.help .PHONY: copyright.help
copyright.help: script/make-rules/copyright.mk copyright.help: scripts/make-rules/copyright.mk
$(call smallhelp) $(call smallhelp)

@ -37,5 +37,5 @@ dependencies.tools.trivial: $(addprefix tools.verify., $(TRIVIAL_TOOLS))
## dependencies.help: Print help for dependencies targets ## dependencies.help: Print help for dependencies targets
.PHONY: dependencies.help .PHONY: dependencies.help
dependencies.help: script/make-rules/dependencies.mk dependencies.help: scripts/make-rules/dependencies.mk
$(call smallhelp) $(call smallhelp)

@ -78,5 +78,5 @@ gen.clean:
## gen.help: show help for gen ## gen.help: show help for gen
.PHONY: gen.help .PHONY: gen.help
gen.help: script/make-rules/gen.mk gen.help: scripts/make-rules/gen.mk
$(call smallhelp) $(call smallhelp)

@ -65,7 +65,7 @@ ifeq (${BINS},)
endif endif
# TODO: EXCLUDE_TESTS variable, which contains the name of the package to be excluded from the test # 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/script github.com/OpenIMSDK/Open-IM-Server/deploy_k8s github.com/OpenIMSDK/Open-IM-Server/deploy github.com/OpenIMSDK/Open-IM-Server/config 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 # tree -L 1 cmd
@ -191,5 +191,5 @@ go.clean:
## copyright.help: Show copyright help ## copyright.help: Show copyright help
.PHONY: go.help .PHONY: go.help
go.help: script/make-rules/golang.mk go.help: scripts/make-rules/golang.mk
$(call smallhelp) $(call smallhelp)

@ -16,7 +16,7 @@
# Makefile helper functions for docker image # 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 # 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: script/make-rules/image.mk # Path: scripts/make-rules/image.mk
# docker registry: registry.example.com/namespace/image:tag as: registry.hub.docker.com/cubxxw/<image-name>:<tag> # docker registry: registry.example.com/namespace/image:tag as: registry.hub.docker.com/cubxxw/<image-name>:<tag>
# #
@ -151,5 +151,5 @@ image.manifest.push.multiarch.%:
## image.help: Print help for image targets ## image.help: Print help for image targets
.PHONY: image.help .PHONY: image.help
image.help: script/make-rules/image.mk image.help: scripts/make-rules/image.mk
$(call smallhelp) $(call smallhelp)

@ -38,5 +38,5 @@ release.ensure-tag: tools.verify.gsemver
## release.help: Display help information about the release package ## release.help: Display help information about the release package
.PHONY: release.help .PHONY: release.help
release.help: script/make-rules/release.mk release.help: scripts/make-rules/release.mk
$(call smallhelp) $(call smallhelp)

@ -157,9 +157,9 @@ install.air:
# github: https://github.com/moovweb/gvm # github: https://github.com/moovweb/gvm
.PHONY: install.gvm .PHONY: install.gvm
install.gvm: install.gvm:
@echo "===========> Installing gvm,The default installation path is ~/.gvm/script/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) @bash < <(curl -s -S -L https://raw.githubusercontent.com/moovweb/gvm/master/binscripts/gvm-installer)
@$(shell source /root/.gvm/script/gvm) @$(shell source /root/.gvm/scripts/gvm)
## install.golines: Install golines, used to format long lines ## install.golines: Install golines, used to format long lines
.PHONY: install.golines .PHONY: install.golines
@ -189,7 +189,7 @@ install.protoc-gen-go:
## install.cfssl: Install cfssl, used to generate certificates ## install.cfssl: Install cfssl, used to generate certificates
.PHONY: install.cfssl .PHONY: install.cfssl
install.cfssl: install.cfssl:
@$(ROOT_DIR)/script/install/install.sh iam::install::install_cfssl @$(ROOT_DIR)/scripts/install/install.sh iam::install::install_cfssl
## install.depth: Install depth, used to check dependency tree ## install.depth: Install depth, used to check dependency tree
.PHONY: install.depth .PHONY: install.depth
@ -218,5 +218,5 @@ install.rts:
## tools.help: Display help information about the tools package ## tools.help: Display help information about the tools package
.PHONY: tools.help .PHONY: tools.help
tools.help: script/make-rules/tools.mk tools.help: scripts/make-rules/tools.mk
$(call smallhelp) $(call smallhelp)

@ -1,8 +1,8 @@
#!/usr/bin/env bash #!/usr/bin/env bash
#fixme This script is the total startup script #fixme This scripts is the total startup scripts
#fixme The full name of the shell script that needs to be started is placed in the need_to_start_server_shell array #fixme The full name of the shell scripts that needs to be started is placed in the need_to_start_server_shell array
#fixme Put the shell script name here #fixme Put the shell scripts name here
need_to_start_server_shell=( need_to_start_server_shell=(
start_rpc_service.sh start_rpc_service.sh
push_start.sh push_start.sh

@ -1,5 +1,5 @@
#!/usr/bin/env bash #!/usr/bin/env bash
#fixme This script is to stop the service #fixme This scripts is to stop the service
source ./style_info.cfg source ./style_info.cfg
source ./path_info.cfg source ./path_info.cfg
Loading…
Cancel
Save