From 451f0159c78b419720d4ea9bac9d1edce427f0a2 Mon Sep 17 00:00:00 2001 From: jinsaihang Date: Wed, 12 Feb 2025 09:15:57 +0800 Subject: [PATCH] test build process for 2203 Signed-off-by: jinsaihang --- Makefile | 61 ++++++++++++------- .../test/test_xalarm_read_config_exception.sh | 16 +++-- ...alarm_register_and_unregister_exception.sh | 8 ++- .../test/test_xalarm_restart_exception.sh | 6 +- selftest/test/test_xalarm_send_message.sh | 13 ++-- .../test/test_xalarm_upgrade_exception.sh | 7 ++- .../catlib/plugin/cpu_patrol/CMakeLists.txt | 4 +- 7 files changed, 74 insertions(+), 41 deletions(-) diff --git a/Makefile b/Makefile index 8a440b3..f67eb94 100644 --- a/Makefile +++ b/Makefile @@ -9,7 +9,7 @@ SYSTEMDDIR = $(DESTDIR)$(PREFIX)/lib/systemd/system INCLUDEDIR = $(DESTDIR)$(PREFIX)/include LIBINSTALLDIR = $(DESTDIR)$(PREFIX)/lib64 LOGSAVEDIR = $(DESTDIR)$(VARDIR)/log/sysSentry -LOGROTEDIR = $(DESTDIR)$(ETCDIR)/logrotate.d +LOGROTEDIR = $(DESTDIR)$(ETCDIR)/logrotate-sysSentry.conf SRCVERSION = $(shell git rev-parse --short HEAD 2>/dev/null) SHELL = /bin/bash @@ -25,10 +25,14 @@ PYBIN = $(shell which python3) PYNAME = $(shell ls /usr/lib |grep -E '^python'| sort -V | tail -n1) PYDIR = $(DESTDIR)$(PREFIX)/lib/$(PYNAME)/site-packages -ifeq ($(shell uname -r | grep -q "4.19" && echo 1 || echo 0), 1) - KERNEL_IS_4_19 := 1 +PYTHON_VERSION := $(shell $(PYBIN) --version 2>&1 | awk '{print $$2}'| cut -d '.' -f 1,2) +PKGVER := syssentry-$(VERSION)-py$(PYTHON_VERSION) +PKGVEREGG := syssentry-$(VERSION)-py$(PYTHON_VERSION).egg-info + +ifeq ($(shell uname -r | grep -q "5.10" && echo 1 || echo 0), 1) + KERNEL_IS_5_10 := 1 else - KERNEL_IS_4_19 := 0 + KERNEL_IS_5_10 := 0 endif all: lib sentry @@ -50,16 +54,16 @@ dirs: sentry: @echo "Kernel version is $(shell uname -r)" - @if [ $(KERNEL_IS_4_19) -eq 1 ]; then \ - cd $(CURSRCDIR)/sentryCollector/ebpf_collector/ && make; \ + @if [ $(KERNEL_IS_5_10) -eq 1 ]; then \ + cd $(CURSRCDIR)/c/ebpf_collector/ && make; \ else \ - echo "Kernel is not 4.19, skipping building ebpf_collector"; \ + echo "Kernel is not 5.10, skipping building ebpf_collector"; \ fi isentry: - cd $(CURSRCDIR) && $(PYBIN) setup.py install -O1 --root=build/ --record=SENTRY_FILES - find $(CURSRCDIR)/build/ -type d -name '__pycache__' -exec rm -rf {} + - install -m 600 $(CURCONFIGDIR)/logrotate $(LOGROTEDIR)/sysSentry + cd $(CURSRCDIR)/python/ && $(PYBIN) setup.py install -O1 --root=build/ --record=SENTRY_FILES + find $(CURSRCDIR)/python/build/ -type d -name '__pycache__' -exec rm -rf {} + + install -m 600 $(CURCONFIGDIR)/logrotate-sysSentry.conf $(LOGROTEDIR)/ install -m 600 $(CURCONFIGDIR)/inspect.conf $(ETCDIR)/sysSentry/ install -m 600 $(CURCONFIGDIR)/xalarm.conf $(ETCDIR)/sysSentry/ install -m 600 $(CURCONFIGDIR)/collector.conf $(ETCDIR)/sysSentry/ @@ -69,26 +73,35 @@ isentry: install -d -m 550 $(PYDIR)/syssentry install -d -m 550 $(PYDIR)/xalarm install -d -m 550 $(PYDIR)/sentryCollector - install -m 550 src/build/usr/local/lib/$(PYNAME)/site-packages/syssentry/* $(PYDIR)/syssentry - install -m 550 src/build/usr/local/lib/$(PYNAME)/site-packages/xalarm/* $(PYDIR)/xalarm - install -m 550 libs/pyxalarm/register_xalarm.py $(PYDIR)/xalarm - install -m 550 src/build/usr/local/lib/$(PYNAME)/site-packages/sentryCollector/* $(PYDIR)/sentryCollector - install -m 550 $(CURSRCDIR)/syssentry/sentryctl $(BINDIR) - install -m 550 $(CURSRCDIR)/build/usr/local/bin/syssentry $(BINDIR) - install -m 550 $(CURSRCDIR)/build/usr/local/bin/xalarmd $(BINDIR) - install -m 550 $(CURSRCDIR)/build/usr/local/bin/sentryCollector $(BINDIR) + install -d -m 550 $(PYDIR)/$(PKGVEREGG) + install -m 550 src/python/build/usr/local/lib/$(PYNAME)/site-packages/syssentry/* $(PYDIR)/syssentry + install -m 550 src/python/build/usr/local/lib/$(PYNAME)/site-packages/xalarm/* $(PYDIR)/xalarm + install -m 550 src/python/xalarm/register_xalarm.py $(PYDIR)/xalarm + install -m 550 src/python/build/usr/local/lib/$(PYNAME)/site-packages/sentryCollector/* $(PYDIR)/sentryCollector + install -m 550 src/python/build/usr/local/lib/$(PYNAME)/site-packages/$(PKGVEREGG)/* $(PYDIR)/$(PKGVEREGG) + install -m 550 $(CURSRCDIR)/python/syssentry/sentryctl $(BINDIR) + install -m 550 $(CURSRCDIR)/python/build/usr/local/bin/syssentry $(BINDIR) + install -m 550 $(CURSRCDIR)/python/build/usr/local/bin/xalarmd $(BINDIR) + install -m 550 $(CURSRCDIR)/python/build/usr/local/bin/sentryCollector $(BINDIR) @if [ -f "$(CURSRCDIR)/sentryCollector/ebpf_collector/ebpf_collector" ]; then \ install -m 550 $(CURSRCDIR)/sentryCollector/ebpf_collector/ebpf_collector $(BINDIR); \ fi + # ai_block_io + install -d -m 700 $(PYDIR)/sentryPlugins/ai_block_io + install -m 550 $(CURSRCDIR)/python/build/usr/local/bin/ai_block_io $(BINDIR) + install -m 550 src/python/build/usr/local/lib/$(PYNAME)/site-packages/sentryPlugins/ai_block_io/* $(PYDIR)/sentryPlugins/ai_block_io + install -m 600 $(CURCONFIGDIR)/plugins/ai_block_io.ini $(ETCDIR)/sysSentry/plugins + install -m 600 $(CURCONFIGDIR)/tasks/ai_block_io.mod $(ETCDIR)/sysSentry/tasks + lib: - cd $(CURLIBDIR) && cmake . -DXD_INSTALL_BINDIR=$(LIBINSTALLDIR) -B build - cd $(CURLIBDIR)/build && make + cd $(CURSRCDIR)/libso && cmake . -DXD_INSTALL_BINDIR=$(LIBINSTALLDIR) -B build + cd $(CURSRCDIR)/libso/build && make ilib: - cd $(CURLIBDIR)/build && make install + cd $(CURSRCDIR)/libso/build && make install install -d -m 644 $(INCLUDEDIR)/xalarm - install -m 644 $(CURLIBDIR)/libxalarm/register_xalarm.h $(INCLUDEDIR)/xalarm/ + install -m 644 $(CURSRCDIR)/libso/xalarm/register_xalarm.h $(INCLUDEDIR)/xalarm/ clean-install: @@ -108,11 +121,13 @@ clean: clean-install rm -rf $(LIBINSTALLDIR)/libxalarm.so rm -rf $(INCLUDEDIR)/xalarm rm -rf $(ETCDIR)/sysSentry - rm -rf $(LOGROTEDIR)/sysSentry + rm -rf $(LOGROTEDIR)/ rm -rf $(LOGSAVEDIR)/sysSentry rm -rf $(PYDIR)/syssentry rm -rf $(PYDIR)/xalarm rm -rf $(PYDIR)/sentryCollector + rm -rf $(PYDIR)/$(PKGVEREGG) + rm -rf $(PYDIR)/sentryPlugins rm -rf $(SYSTEMDDIR)/sysSentry.service rm -rf $(SYSTEMDDIR)/xalarmd.service rm -rf $(SYSTEMDDIR)/sentryCollector.service diff --git a/selftest/test/test_xalarm_read_config_exception.sh b/selftest/test/test_xalarm_read_config_exception.sh index d31d53b..459c77a 100644 --- a/selftest/test/test_xalarm_read_config_exception.sh +++ b/selftest/test/test_xalarm_read_config_exception.sh @@ -12,7 +12,8 @@ set +e function pre_test() { cp /etc/sysSentry/xalarm.conf /etc/sysSentry/xalarm.conf.bak rm -f ./tmp_log - systemctl stop xalarmd.service + kill $(pgrep -w xalarmd) + sleep 1 } function do_test() { @@ -20,7 +21,7 @@ function do_test() { # 异常的alarm id start_line=$(expr $(wc -l < /var/log/sysSentry/xalarm.log) + 1) echo -e "[filter]\nid_mask = 999,9999,aaa,test-and-run,7869-2431" > /etc/sysSentry/xalarm.conf - systemctl start xalarmd.service + xalarmd & end_line=$(wc -l < /var/log/sysSentry/xalarm.log) sed -n "${start_line}, ${end_line}p" /var/log/sysSentry/xalarm.log >> ./tmp_log wait_cmd_ok "grep \"invalid alarm id 999, ignored\" ./tmp_log" 1 3 @@ -41,7 +42,9 @@ function do_test() { rm -f /etc/sysSentry/xalarm.conf start_line=$(expr $(wc -l < /var/log/sysSentry/xalarm.log) + 1) echo -e "[no_filter]\nid_mask = 123" > /etc/sysSentry/xalarm.conf - systemctl restart xalarmd.service + kill $(pgrep -w xalarmd) + sleep 1 + xalarmd & end_line=$(wc -l < /var/log/sysSentry/xalarm.log) sed -n "${start_line}, ${end_line}p" /var/log/sysSentry/xalarm.log >> ./tmp_log wait_cmd_ok "grep \"no filter conf\" ./tmp_log" 1 3 @@ -50,7 +53,9 @@ function do_test() { rm -f /etc/sysSentry/xalarm.conf start_line=$(expr $(wc -l < /var/log/sysSentry/xalarm.log) + 1) echo -e "[filter]\nid_mask_number = 123" > /etc/sysSentry/xalarm.conf - systemctl restart xalarmd.service + kill $(pgrep -w xalarmd) + sleep 1 + xalarmd & end_line=$(wc -l < /var/log/sysSentry/xalarm.log) sed -n "${start_line}, ${end_line}p" /var/log/sysSentry/xalarm.log >> ./tmp_log wait_cmd_ok "grep \"no id_mask conf\" ./tmp_log" 1 3 @@ -62,7 +67,8 @@ function post_test() { cat ./tmp_log rm -f /etc/sysSentry/xalarm.conf ./tmp_log cp /etc/sysSentry/xalarm.conf.bak /etc/sysSentry/xalarm.conf - systemctl stop xalarmd.service + kill $(pgrep -w xalarmd) + sleep 1 } run_testcase diff --git a/selftest/test/test_xalarm_register_and_unregister_exception.sh b/selftest/test/test_xalarm_register_and_unregister_exception.sh index 5e90995..b3c54e1 100644 --- a/selftest/test/test_xalarm_register_and_unregister_exception.sh +++ b/selftest/test/test_xalarm_register_and_unregister_exception.sh @@ -13,7 +13,7 @@ function pre_test() { rm -rf ./checklog test/xalarm/unreg_demo test/xalarm/send_demo test/xalarm/reg_demo gcc test/xalarm/reg_demo.c -o test/xalarm/reg_demo -lxalarm gcc test/xalarm/unreg_demo.c -o test/xalarm/unreg_demo -lxalarm - systemctl start xalarmd.service + xalarmd & } function do_test() { @@ -33,10 +33,12 @@ function do_test() { } function post_test() { - kill -9 $(pgrep -w unreg_demo) + kill $(pgrep -w unreg_demo) + sleep 1 cat ./checklog rm -rf ./checklog test/xalarm/unreg_demo test/xalarm/reg_demo - systemctl stop xalarmd.service + kill $(pgrep -w xalarmd) + sleep 1 } run_testcase diff --git a/selftest/test/test_xalarm_restart_exception.sh b/selftest/test/test_xalarm_restart_exception.sh index cc24435..0a17b25 100644 --- a/selftest/test/test_xalarm_restart_exception.sh +++ b/selftest/test/test_xalarm_restart_exception.sh @@ -11,7 +11,8 @@ set +e function pre_test() { rm -f ./tmp_log - systemctl stop xalarmd + kill $(pgrep -w xalarmd) + sleep 1 } function do_test() { @@ -21,7 +22,7 @@ function do_test() { /usr/bin/xalarmd end_line=$(wc -l < /var/log/sysSentry/xalarm.log) - process_num=$(ps -ef | grep xalarmd | grep -v grep | wc -l) + process_num=$(ps -ef | grep xalarmd | grep -v grep | grep -v defunct| wc -l) echo "xalarm process num is $process_num" >> ./tmp_log expect_eq $process_num 1 "check xalarmd can launch multiple times" @@ -35,6 +36,7 @@ function do_test() { function post_test() { rm -f ./tmp_log kill $(pgrep -w xalarmd) + sleep 1 } run_testcase diff --git a/selftest/test/test_xalarm_send_message.sh b/selftest/test/test_xalarm_send_message.sh index 310fa53..15ca717 100644 --- a/selftest/test/test_xalarm_send_message.sh +++ b/selftest/test/test_xalarm_send_message.sh @@ -13,7 +13,9 @@ function pre_test() { rm -rf ./checklog ./tmp_log test/xalarm/send_demo test/xalarm/reg_demo gcc test/xalarm/send_demo.c -o test/xalarm/send_demo -lxalarm gcc test/xalarm/reg_demo.c -o test/xalarm/reg_demo -lxalarm - systemctl start xalarmd.service + kill $(pgrep -w xalarmd) + sleep 1 + xalarmd & } function do_test() { @@ -70,7 +72,8 @@ function do_test() { expect_eq $? 0 "check unregister xalarm" # 停止xalarmd服务后发消息 - systemctl stop xalarmd.service + kill $(pgrep -w xalarmd) + sleep 1 ./test/xalarm/send_demo 1001 1 2 "cpu usage high warning" >> checklog 2>&1 & wait_cmd_ok "grep \"xalarm_Report: sendto failed errno: 2\" ./checklog" 1 3 @@ -78,10 +81,12 @@ function do_test() { } function post_test() { - kill -9 $(pgrep -w reg_demo) + kill $(pgrep -w xalarmd) + sleep 1 cat ./checklog rm -rf ./checklog ./tmp_log test/xalarm/send_demo test/xalarm/reg_demo - systemctl stop xalarmd.service + kill $(pgrep -w xalarmd) + sleep 1 } run_testcase diff --git a/selftest/test/test_xalarm_upgrade_exception.sh b/selftest/test/test_xalarm_upgrade_exception.sh index 61aa911..2ea4da1 100644 --- a/selftest/test/test_xalarm_upgrade_exception.sh +++ b/selftest/test/test_xalarm_upgrade_exception.sh @@ -13,11 +13,12 @@ function pre_test() { rm -rf ./checklog test/xalarm/upgrade_demo test/xalarm/send_demo gcc test/xalarm/upgrade_demo.c -o test/xalarm/upgrade_demo -lxalarm gcc test/xalarm/send_demo.c -o test/xalarm/send_demo -lxalarm - systemctl start xalarmd.service + xalarmd & } function do_test() { ./test/xalarm/upgrade_demo 4 0 1001 1002 1003 1004 >> checklog 2>&1 & + sleep 2 ./test/xalarm/send_demo 1004 1 2 "cpu usage high warning" wait_cmd_ok "grep \"id:1004\" ./checklog" 1 3 expect_eq $? 0 "check upgrade take effect" @@ -39,9 +40,11 @@ function do_test() { function post_test() { kill -9 $(pgrep -w upgrade_demo) + sleep 1 cat ./checklog rm -rf ./checklog test/xalarm/upgrade_demo test/xalarm/send_demo - systemctl stop xalarmd.service + kill $(pgrep -w xalarmd) + sleep 1 } run_testcase diff --git a/src/c/catcli/catlib/plugin/cpu_patrol/CMakeLists.txt b/src/c/catcli/catlib/plugin/cpu_patrol/CMakeLists.txt index e11e5e7..08b56fc 100644 --- a/src/c/catcli/catlib/plugin/cpu_patrol/CMakeLists.txt +++ b/src/c/catcli/catlib/plugin/cpu_patrol/CMakeLists.txt @@ -4,8 +4,8 @@ file(GLOB CPU_PATROL_SRC *.c) add_library(cpu_patrol SHARED ${CPU_PATROL_SRC}) -include_directories(${CMAKE_SOURCE_DIR}/../../../libso/) -link_directories(${CMAKE_SOURCE_DIR}/../../../libso/build/xalarm/) +include_directories(${CMAKE_SOURCE_DIR}/../../) +include_directories(${CMAKE_SOURCE_DIR}/../../../../../libso/) TARGET_LINK_LIBRARIES(cpu_patrol pthread -ldl ${CMAKE_SOURCE_DIR}/../../../libso/build/xalarm/libxalarm.so) -- Gitee