!33 从master同步至v1.2.1
From: @rabbitali Reviewed-by: @Lostwayzxc Signed-off-by: @Lostwayzxc
This commit is contained in:
commit
1147f3a517
41
0001-add-paging-parameter-schema.patch
Normal file
41
0001-add-paging-parameter-schema.patch
Normal file
@ -0,0 +1,41 @@
|
|||||||
|
From db18901aae967d1bf6b26a751d25a8f63eba7c2d Mon Sep 17 00:00:00 2001
|
||||||
|
From: rabbitali <shusheng.wen@outlook.com>
|
||||||
|
Date: Wed, 7 Jun 2023 16:35:22 +0800
|
||||||
|
Subject: [PATCH] add paging parameter schema
|
||||||
|
|
||||||
|
---
|
||||||
|
vulcanus/restful/serialize/validate.py | 13 +++++++++++--
|
||||||
|
1 file changed, 11 insertions(+), 2 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/vulcanus/restful/serialize/validate.py b/vulcanus/restful/serialize/validate.py
|
||||||
|
index 1c00804..0e5c6ea 100644
|
||||||
|
--- a/vulcanus/restful/serialize/validate.py
|
||||||
|
+++ b/vulcanus/restful/serialize/validate.py
|
||||||
|
@@ -16,7 +16,8 @@ Author:
|
||||||
|
Description:
|
||||||
|
"""
|
||||||
|
import re
|
||||||
|
-from marshmallow import ValidationError
|
||||||
|
+
|
||||||
|
+from marshmallow import Schema, ValidationError, fields
|
||||||
|
|
||||||
|
|
||||||
|
def validate(verifier, data, load=False):
|
||||||
|
@@ -72,4 +73,12 @@ class ValidateRules:
|
||||||
|
validation rules for password, which only contains string or number
|
||||||
|
"""
|
||||||
|
if not re.findall("[a-zA-Z0-9]{6,20}", string):
|
||||||
|
- raise ValidationError("password should only contains string or number, between 6 and 20 characters!!")
|
||||||
|
\ No newline at end of file
|
||||||
|
+ raise ValidationError("password should only contains string or number, between 6 and 20 characters!!")
|
||||||
|
+
|
||||||
|
+
|
||||||
|
+class PaginationSchema(Schema):
|
||||||
|
+ """
|
||||||
|
+ filter schema of paging parameter
|
||||||
|
+ """
|
||||||
|
+ page = fields.Integer(required=False, validate=lambda s: 10**6 > s > 0)
|
||||||
|
+ per_page = fields.Integer(required=False, validate=lambda s: 10**3 > s > 0)
|
||||||
|
--
|
||||||
|
Gitee
|
||||||
|
|
||||||
@ -1,104 +0,0 @@
|
|||||||
From 5ecf2c9769dc81b1a9da2c4ef1821184766a370b Mon Sep 17 00:00:00 2001
|
|
||||||
From: gongzt <gong_zhengtang@163.com>
|
|
||||||
Date: Mon, 24 Apr 2023 09:36:25 +0800
|
|
||||||
Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E4=B8=80=E9=94=AE=E9=83=A8?=
|
|
||||||
=?UTF-8?q?=E7=BD=B2=E4=B8=AD=E6=A3=80=E6=9F=A5docker=E3=80=81docker-compo?=
|
|
||||||
=?UTF-8?q?se=E5=AE=89=E8=A3=85=E7=9A=84=E9=94=99=E8=AF=AF=EF=BC=8C?=
|
|
||||||
=?UTF-8?q?=E4=BF=AE=E5=A4=8D=E4=BA=A4=E4=BA=92=E5=BC=8F=E5=91=BD=E4=BB=A4?=
|
|
||||||
=?UTF-8?q?=E4=B8=AD=E6=A0=87=E8=AF=86=E7=AC=A6=E9=94=99=E8=AF=AF?=
|
|
||||||
MIME-Version: 1.0
|
|
||||||
Content-Type: text/plain; charset=UTF-8
|
|
||||||
Content-Transfer-Encoding: 8bit
|
|
||||||
|
|
||||||
---
|
|
||||||
.../deploy/container/aops-apollo/Dockerfile | 2 +-
|
|
||||||
.../deploy/container/aops-diana/Dockerfile | 2 +-
|
|
||||||
scripts/deploy/container/run.sh | 22 ++++++++++++-------
|
|
||||||
3 files changed, 16 insertions(+), 10 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/scripts/deploy/container/aops-apollo/Dockerfile b/scripts/deploy/container/aops-apollo/Dockerfile
|
|
||||||
index 996b7ec..ea0a3fc 100644
|
|
||||||
--- a/scripts/deploy/container/aops-apollo/Dockerfile
|
|
||||||
+++ b/scripts/deploy/container/aops-apollo/Dockerfile
|
|
||||||
@@ -1,5 +1,5 @@
|
|
||||||
FROM openeuler/openeuler:22.03-lts-sp1
|
|
||||||
WORKDIR /app
|
|
||||||
-COPY *.repo /app/
|
|
||||||
+COPY * /app/
|
|
||||||
RUN dnf install aops-apollo -y --setopt=reposdir=/app
|
|
||||||
CMD ["/bin/bash","/app/start.sh"]
|
|
||||||
\ No newline at end of file
|
|
||||||
diff --git a/scripts/deploy/container/aops-diana/Dockerfile b/scripts/deploy/container/aops-diana/Dockerfile
|
|
||||||
index 03297ec..9e9eef9 100644
|
|
||||||
--- a/scripts/deploy/container/aops-diana/Dockerfile
|
|
||||||
+++ b/scripts/deploy/container/aops-diana/Dockerfile
|
|
||||||
@@ -1,5 +1,5 @@
|
|
||||||
FROM openeuler/openeuler:22.03-lts-sp1
|
|
||||||
WORKDIR /app
|
|
||||||
-COPY *.repo /app/
|
|
||||||
+COPY * /app/
|
|
||||||
RUN dnf install aops-diana -y --setopt=reposdir=/app
|
|
||||||
CMD ["/bin/bash","/app/start.sh"]
|
|
||||||
\ No newline at end of file
|
|
||||||
diff --git a/scripts/deploy/container/run.sh b/scripts/deploy/container/run.sh
|
|
||||||
index c32a57a..581c0bc 100755
|
|
||||||
--- a/scripts/deploy/container/run.sh
|
|
||||||
+++ b/scripts/deploy/container/run.sh
|
|
||||||
@@ -44,10 +44,6 @@ prometheus(){
|
|
||||||
docker_build(){
|
|
||||||
copy_aops_conf
|
|
||||||
prepare_dockerfile_repo
|
|
||||||
- storage_mysql_data
|
|
||||||
- storage_es_data
|
|
||||||
- prometheus
|
|
||||||
- docker-compose -f docker-compose-base-service.yml build --no-cache
|
|
||||||
docker-compose build --no-cache
|
|
||||||
rm ./aops-apollo/*.repo
|
|
||||||
rm ./aops-diana/*.repo
|
|
||||||
@@ -56,14 +52,21 @@ docker_build(){
|
|
||||||
}
|
|
||||||
|
|
||||||
install_docker_compose(){
|
|
||||||
- installed_docker_compose=`rpm -ql docker-compose`
|
|
||||||
- if [ "$(echo $installed_docker_compose | grep "is not installed")" != "" ]; then
|
|
||||||
+ docker_compose_installed=`rpm -q docker-compose`
|
|
||||||
+ if [ $? -ne 0 ] ; then
|
|
||||||
dnf install docker-compose -y
|
|
||||||
+ else
|
|
||||||
+ echo "docker-compose is already installed."
|
|
||||||
+ fi
|
|
||||||
+ docker_installed=`rpm -q docker`
|
|
||||||
+ if [ $? -ne 0 ] ; then
|
|
||||||
+ dnf install docker -y
|
|
||||||
+ else
|
|
||||||
+ echo "docker is already installed."
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
main(){
|
|
||||||
-
|
|
||||||
install_docker_compose
|
|
||||||
while :
|
|
||||||
do
|
|
||||||
@@ -71,7 +74,7 @@ main(){
|
|
||||||
echo "1. Build the docker container (build)."
|
|
||||||
echo "2. Start the container orchestration service (start-service/start-env)."
|
|
||||||
echo "3. Stop all container services (stop-service/stop-env)."
|
|
||||||
- read "Enter to exit the operation (Q/q)."
|
|
||||||
+ echo "Enter to exit the operation (Q/q)."
|
|
||||||
read -p "Select an operation procedure to continue: " operation
|
|
||||||
case $operation in
|
|
||||||
"build")
|
|
||||||
@@ -82,6 +85,9 @@ main(){
|
|
||||||
docker-compose up -d
|
|
||||||
;;
|
|
||||||
"start-env")
|
|
||||||
+ prometheus
|
|
||||||
+ storage_es_data
|
|
||||||
+ storage_mysql_data
|
|
||||||
docker-compose -f docker-compose-base-service.yml up -d
|
|
||||||
;;
|
|
||||||
"stop-service")
|
|
||||||
--
|
|
||||||
Gitee
|
|
||||||
|
|
||||||
@ -1,78 +0,0 @@
|
|||||||
From e1a72048bed334ff2e5014e2437598aa5580760f Mon Sep 17 00:00:00 2001
|
|
||||||
From: rabbitali <shusheng.wen@outlook.com>
|
|
||||||
Date: Wed, 26 Apr 2023 19:25:32 +0800
|
|
||||||
Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E8=87=AA=E5=AE=9A=E4=B9=89?=
|
|
||||||
=?UTF-8?q?=E6=A0=A1=E9=AA=8C=E8=A7=84=E5=88=99;=E6=B7=BB=E5=8A=A0?=
|
|
||||||
=?UTF-8?q?=E7=94=A8=E6=88=B7=E9=80=80=E5=87=BA=E7=99=BB=E5=BD=95=E6=8E=A5?=
|
|
||||||
=?UTF-8?q?=E5=8F=A3=E7=9A=84=E8=B7=AF=E7=94=B1?=
|
|
||||||
MIME-Version: 1.0
|
|
||||||
Content-Type: text/plain; charset=UTF-8
|
|
||||||
Content-Transfer-Encoding: 8bit
|
|
||||||
|
|
||||||
---
|
|
||||||
vulcanus/conf/constant.py | 1 +
|
|
||||||
vulcanus/restful/serialize/validate.py | 31 ++++++++++++++++++++++++++
|
|
||||||
2 files changed, 32 insertions(+)
|
|
||||||
|
|
||||||
diff --git a/vulcanus/conf/constant.py b/vulcanus/conf/constant.py
|
|
||||||
index 9779602..7185685 100644
|
|
||||||
--- a/vulcanus/conf/constant.py
|
|
||||||
+++ b/vulcanus/conf/constant.py
|
|
||||||
@@ -53,6 +53,7 @@ GET_GROUP = "/manage/host/group/get"
|
|
||||||
COLLECT_CONFIG = '/manage/config/collect'
|
|
||||||
|
|
||||||
USER_LOGIN = "/manage/account/login"
|
|
||||||
+LOGOUT = "/manage/account/logout"
|
|
||||||
CHANGE_PASSWORD = '/manage/account/change'
|
|
||||||
ADD_USER = '/manage/account/add'
|
|
||||||
GITEE_AUTH_LOGIN = "/manage/account/gitee/login"
|
|
||||||
diff --git a/vulcanus/restful/serialize/validate.py b/vulcanus/restful/serialize/validate.py
|
|
||||||
index bfe25ad..1c00804 100644
|
|
||||||
--- a/vulcanus/restful/serialize/validate.py
|
|
||||||
+++ b/vulcanus/restful/serialize/validate.py
|
|
||||||
@@ -15,6 +15,7 @@ Time:
|
|
||||||
Author:
|
|
||||||
Description:
|
|
||||||
"""
|
|
||||||
+import re
|
|
||||||
from marshmallow import ValidationError
|
|
||||||
|
|
||||||
|
|
||||||
@@ -42,3 +43,33 @@ def validate(verifier, data, load=False):
|
|
||||||
errors = verifier().validate(data)
|
|
||||||
|
|
||||||
return result, errors
|
|
||||||
+
|
|
||||||
+
|
|
||||||
+class ValidateRules:
|
|
||||||
+ """
|
|
||||||
+ Custom validation rules
|
|
||||||
+ """
|
|
||||||
+
|
|
||||||
+ @staticmethod
|
|
||||||
+ def space_character_check(string: str) -> None:
|
|
||||||
+ """
|
|
||||||
+ one of validation rules for string, no spaces are allowed at the beginning or end.
|
|
||||||
+ """
|
|
||||||
+ if len(string.strip()) != len(string):
|
|
||||||
+ raise ValidationError("there may be space character exists at the beginning or end!")
|
|
||||||
+
|
|
||||||
+ @staticmethod
|
|
||||||
+ def account_name_check(string: str) -> None:
|
|
||||||
+ """
|
|
||||||
+ validation rules for username, which only contains string or number
|
|
||||||
+ """
|
|
||||||
+ if not re.findall("[a-zA-Z0-9]{5,20}", string):
|
|
||||||
+ raise ValidationError("username should only contains string or number, between 5 and 20 characters!")
|
|
||||||
+
|
|
||||||
+ @staticmethod
|
|
||||||
+ def account_password_check(string: str) -> None:
|
|
||||||
+ """
|
|
||||||
+ validation rules for password, which only contains string or number
|
|
||||||
+ """
|
|
||||||
+ if not re.findall("[a-zA-Z0-9]{6,20}", string):
|
|
||||||
+ raise ValidationError("password should only contains string or number, between 6 and 20 characters!!")
|
|
||||||
\ No newline at end of file
|
|
||||||
--
|
|
||||||
Gitee
|
|
||||||
|
|
||||||
24
0002-updateuwsgi-conf-file-generation-function.patch
Normal file
24
0002-updateuwsgi-conf-file-generation-function.patch
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
From af4cb1a8f4b898e94d67020a7425d781e28013f5 Mon Sep 17 00:00:00 2001
|
||||||
|
From: rabbitali <shusheng.wen@outlook.com>
|
||||||
|
Date: Mon, 5 Jun 2023 23:48:03 +0800
|
||||||
|
Subject: [PATCH] update uwsgi.ini generation function
|
||||||
|
|
||||||
|
---
|
||||||
|
aops-vulcanus | 1 -
|
||||||
|
1 file changed, 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/aops-vulcanus b/aops-vulcanus
|
||||||
|
index dea2b61..ce63dbd 100644
|
||||||
|
--- a/aops-vulcanus
|
||||||
|
+++ b/aops-vulcanus
|
||||||
|
@@ -67,7 +67,6 @@ callable=app
|
||||||
|
http-timeout=${http_timeout}
|
||||||
|
harakiri=${harakiri}
|
||||||
|
processes=${processes}
|
||||||
|
-lazy-apps=true
|
||||||
|
daemonize=${daemonize}" >"${OUT_PATH}"/"${service_name}".ini
|
||||||
|
if [ ${gevent} ]
|
||||||
|
then
|
||||||
|
--
|
||||||
|
Gitee
|
||||||
|
|
||||||
@ -1,29 +0,0 @@
|
|||||||
From: gongzt <gong_zhengtang@163.com>
|
|
||||||
Date: Sat, 6 May 2023 10:12:42 +0800
|
|
||||||
Subject:[PATCH] fix old token can still be used normally
|
|
||||||
MIME-Version: 1.0
|
|
||||||
Content-Type: text/plain; charset=UTF-8
|
|
||||||
Content-Transfer-Encoding: 8bit
|
|
||||||
|
|
||||||
---
|
|
||||||
vulcanus/restful/response.py | 5 ++---
|
|
||||||
1 file changed, 2 insertions(+), 3 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/vulcanus/restful/response.py b/vulcanus/restful/response.py
|
|
||||||
index 0cb8c4b..f21e6ca 100644
|
|
||||||
--- a/vulcanus/restful/response.py
|
|
||||||
+++ b/vulcanus/restful/response.py
|
|
||||||
@@ -139,9 +139,8 @@ class BaseResponse(Resource):
|
|
||||||
except ValueError:
|
|
||||||
return state.TOKEN_ERROR
|
|
||||||
|
|
||||||
- cache_token = RedisProxy.redis_connect.get(
|
|
||||||
- "token_" + verify_info["key"])
|
|
||||||
- if not cache_token:
|
|
||||||
+ cache_token = RedisProxy.redis_connect.get("token_" + verify_info["key"])
|
|
||||||
+ if not cache_token or cache_token != token:
|
|
||||||
return state.TOKEN_ERROR
|
|
||||||
|
|
||||||
args['username'] = verify_info["key"]
|
|
||||||
--
|
|
||||||
Gitee
|
|
||||||
@ -1,40 +0,0 @@
|
|||||||
From: rabbitali <shusheng.wen@outlook.com>
|
|
||||||
Date: Mon, 8 May 2023 10:34:39 +0800
|
|
||||||
Subject: [PATCH] add gevent conf item when create uwsgi conf file
|
|
||||||
|
|
||||||
---
|
|
||||||
aops-vulcanus | 9 ++++++++-
|
|
||||||
1 file changed, 8 insertions(+), 1 deletion(-)
|
|
||||||
|
|
||||||
diff --git a/aops-vulcanus b/aops-vulcanus
|
|
||||||
index 368c57f..d7e4cb9 100644
|
|
||||||
--- a/aops-vulcanus
|
|
||||||
+++ b/aops-vulcanus
|
|
||||||
@@ -42,6 +42,7 @@ function create_config_file() {
|
|
||||||
harakiri=$(get_config "${config_file}" "uwsgi" "harakiri")
|
|
||||||
processes=$(get_config "${config_file}" "uwsgi" "processes")
|
|
||||||
threads=$(get_config "${config_file}" "uwsgi" "threads")
|
|
||||||
+ gevent=$(get_config "${config_file}" "uwsgi" "gevent")
|
|
||||||
|
|
||||||
check_file $daemonize
|
|
||||||
echo "[INFO] run ${service_name} under path: ${wsgi_file}"
|
|
||||||
@@ -65,10 +66,16 @@ pidfile=${OUT_PATH}/${service_name}.pid
|
|
||||||
callable=app
|
|
||||||
http-timeout=${http_timeout}
|
|
||||||
harakiri=${harakiri}
|
|
||||||
-threads=${threads}
|
|
||||||
processes=${processes}
|
|
||||||
lazy-apps=true
|
|
||||||
daemonize=${daemonize}" >"${OUT_PATH}"/"${service_name}".ini
|
|
||||||
+ if [ ${gevent} ]
|
|
||||||
+ then
|
|
||||||
+ echo "gevent=${gevent}
|
|
||||||
+gevent-monkey-patch=true" >>"${OUT_PATH}"/"${service_name}".ini
|
|
||||||
+ else
|
|
||||||
+ echo "threads=${threads}" >>"${OUT_PATH}"/"${service_name}".ini
|
|
||||||
+ fi
|
|
||||||
chown root: ${OUT_PATH}/"${service_name}".ini
|
|
||||||
chmod 750 ${OUT_PATH}/"${service_name}".ini
|
|
||||||
echo "[INFO] create ${service_name} uwsgi file ok,path is ${OUT_PATH}/${service_name}.ini"
|
|
||||||
--
|
|
||||||
|
|
||||||
@ -1,25 +0,0 @@
|
|||||||
From 4276d15604e0445558009a7c48dce323073cd2d3 Mon Sep 17 00:00:00 2001
|
|
||||||
From: rabbitali <shusheng.wen@outlook.com>
|
|
||||||
Date: Tue, 9 May 2023 11:03:45 +0800
|
|
||||||
Subject: [PATCH] update length limit of username field
|
|
||||||
|
|
||||||
---
|
|
||||||
vulcanus/database/table.py | 2 +-
|
|
||||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
|
||||||
|
|
||||||
diff --git a/vulcanus/database/table.py b/vulcanus/database/table.py
|
|
||||||
index 0c8d2c1..23ad889 100644
|
|
||||||
--- a/vulcanus/database/table.py
|
|
||||||
+++ b/vulcanus/database/table.py
|
|
||||||
@@ -56,7 +56,7 @@ class Host(Base, MyBase): # pylint: disable=R0903
|
|
||||||
last_scan = Column(Integer)
|
|
||||||
scene = Column(String(255))
|
|
||||||
os_version = Column(String(40))
|
|
||||||
- ssh_user = Column(String(20), default="root")
|
|
||||||
+ ssh_user = Column(String(40), default="root")
|
|
||||||
ssh_port = Column(Integer(), default=22)
|
|
||||||
pkey = Column(String(2048))
|
|
||||||
status = Column(Integer(), default=2)
|
|
||||||
--
|
|
||||||
Gitee
|
|
||||||
|
|
||||||
Binary file not shown.
BIN
aops-vulcanus-v1.2.1.tar.gz
Normal file
BIN
aops-vulcanus-v1.2.1.tar.gz
Normal file
Binary file not shown.
@ -1,15 +1,12 @@
|
|||||||
Name: aops-vulcanus
|
Name: aops-vulcanus
|
||||||
Version: v1.2.0
|
Version: v1.2.1
|
||||||
Release: 4
|
Release: 2
|
||||||
Summary: A basic tool libraries of aops, including logging, configure and response, etc.
|
Summary: A basic tool libraries of aops, including logging, configure and response, etc.
|
||||||
License: MulanPSL2
|
License: MulanPSL2
|
||||||
URL: https://gitee.com/openeuler/%{name}
|
URL: https://gitee.com/openeuler/%{name}
|
||||||
Source0: %{name}-%{version}.tar.gz
|
Source0: %{name}-%{version}.tar.gz
|
||||||
Patch0001: 0001-fix-script-docker-install-error.patch
|
Patch0001: 0001-add-paging-parameter-schema.patch
|
||||||
Patch0002: 0002-add-custom-validation-rules.patch
|
Patch0002: 0002-updateuwsgi-conf-file-generation-function.patch
|
||||||
Patch0003: 0003-old-token-is-invalid.patch
|
|
||||||
Patch0004: 0004-add-gevent-config-item-for-uwsgi.patch
|
|
||||||
Patch0005: 0005-update-length-limit-of-username-field.patch
|
|
||||||
|
|
||||||
|
|
||||||
BuildRequires: python3-setuptools
|
BuildRequires: python3-setuptools
|
||||||
@ -65,6 +62,13 @@ cp -r scripts %{buildroot}/opt/aops/
|
|||||||
|
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Thu Jun 08 2023 wenxin<shusheng.wen@outlook.com> - v1.2.1-2
|
||||||
|
- fix issue: aops-zeus app failed to load when first start by uwsgi
|
||||||
|
- add paging parameter schema
|
||||||
|
|
||||||
|
* Tue May 23 2023 wenxin<shusheng.wen@outlook.com> - v1.2.1-1
|
||||||
|
- add cve rollback url for aops-zeus
|
||||||
|
|
||||||
* Tue May 9 2023 wenxin<shusheng.wen@outlook.com> - v1.2.0-4
|
* Tue May 9 2023 wenxin<shusheng.wen@outlook.com> - v1.2.0-4
|
||||||
- update length limit of username field
|
- update length limit of username field
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user