fix send two emails bug;

fix download sa fail bug;
fix syscare Version too low bug.

(cherry picked from commit 7f219a964c4cb7663f617129c279efbd7e66b358)
This commit is contained in:
young 2023-05-09 10:40:29 +08:00 committed by openeuler-sync-bot
parent 03f263fa40
commit 135bb6100d
2 changed files with 117 additions and 1 deletions

View File

@ -0,0 +1,111 @@
From 4848a4f5e9244fe7e7dfc7958982857cf3dfeb44 Mon Sep 17 00:00:00 2001
From: young <954906362@qq.com>
Date: Tue, 9 May 2023 09:31:04 +0800
Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E4=B8=89=E4=B8=AAissue?=
=?UTF-8?q?=E7=9A=84=E9=97=AE=E9=A2=98?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
aops-apollo.spec | 2 +-
apollo/cron/download_sa_manager.py | 22 ++++++++++------------
conf/apollo.ini | 4 ++--
3 files changed, 13 insertions(+), 15 deletions(-)
diff --git a/aops-apollo.spec b/aops-apollo.spec
index 2d3a771..1e15294 100644
--- a/aops-apollo.spec
+++ b/aops-apollo.spec
@@ -20,7 +20,7 @@ Cve management service, monitor machine vulnerabilities and provide fix function
%package -n dnf-hotpatch-plugin
Summary: dnf hotpatch plugin
-Requires: python3-hawkey python3-dnf syscare
+Requires: python3-hawkey python3-dnf syscare >= 1.0.1
%description -n dnf-hotpatch-plugin
dnf hotpatch plugin, it's about hotpatch query and fix
diff --git a/apollo/cron/download_sa_manager.py b/apollo/cron/download_sa_manager.py
index 6ce97bb..a46ad5a 100644
--- a/apollo/cron/download_sa_manager.py
+++ b/apollo/cron/download_sa_manager.py
@@ -10,16 +10,17 @@
# PURPOSE.
# See the Mulan PSL v2 for more details.
# ******************************************************************************/
+from gevent import monkey; monkey.patch_all(thread=False)
+import gevent
import datetime
import os
import re
import shutil
import sqlalchemy
-import requests
+import urllib.request
+import urllib.error
import retrying
from retrying import retry
-from gevent import monkey; monkey.patch_all(ssl=False)
-import gevent
from apollo.conf import configuration
from apollo.conf.constant import ADVISORY_SAVED_PATH, TIMED_TASK_CONFIG_PATH
@@ -64,7 +65,6 @@ class TimedDownloadSATask(TimedTaskBase):
ElasticsearchProxy.connect(proxy)
download_record, download_failed_advisory = proxy.get_advisory_download_record()
-
sa_name_list = TimedDownloadSATask.get_incremental_sa_name_list(
download_record)
@@ -134,11 +134,10 @@ class TimedDownloadSATask(TimedTaskBase):
response body or "", "" means request failed
"""
try:
- response = requests.get(url, timeout=10)
- if response.status_code != requests.codes["ok"]:
- return None
- return response
- except requests.exceptions.RequestException:
+ response = urllib.request.urlopen(url, timeout=10)
+ return response.read()
+ except urllib.error.HTTPError:
+ LOGGER.info("Exception %s")
return ""
@staticmethod
@@ -155,7 +154,7 @@ class TimedDownloadSATask(TimedTaskBase):
response = TimedDownloadSATask.get_response(sa_url)
if response:
with open(os.path.join(ADVISORY_SAVED_PATH, sa_name), "wb")as w:
- w.write(response.content)
+ w.write(response)
else:
LOGGER.error(f"Download failed request timeout: {sa_name}")
TimedDownloadSATask.save_sa_record.append({"advisory_year": advisory_year,
@@ -178,8 +177,7 @@ class TimedDownloadSATask(TimedTaskBase):
try:
response = TimedDownloadSATask.get_response(TimedDownloadSATask.cvrf_url + "/index.txt")
if response:
- html = response.text
- sa_list = html.replace("\r", "").split("\n")
+ sa_list = response.decode("utf-8").replace("\r", "").split("\n")
security_files = [
# 2021/cvrf-openEuler-SA-2021-1022.xml, we don't need the first five characters
sa_name[5:] for sa_name in sa_list
diff --git a/conf/apollo.ini b/conf/apollo.ini
index 412fff1..f215e63 100644
--- a/conf/apollo.ini
+++ b/conf/apollo.ini
@@ -40,5 +40,5 @@ wsgi-file=manage.py
daemonize=/var/log/aops/uwsgi/apollo.log
http-timeout=600
harakiri=600
-processes=2
-threads=4
+processes=1
+gevent=100
--
Gitee

View File

@ -1,12 +1,13 @@
Name: aops-apollo Name: aops-apollo
Version: v1.2.0 Version: v1.2.0
Release: 2 Release: 3
Summary: Cve management service, monitor machine vulnerabilities and provide fix functions. Summary: Cve management service, monitor machine vulnerabilities and provide fix functions.
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-args-not-effective-bug.patch Patch0001: 0001-fix-args-not-effective-bug.patch
Patch0002: 0002-download-SA-collaborative-process.patch Patch0002: 0002-download-SA-collaborative-process.patch
Patch0003: 0003-fix-send-two-emails-bug.patch
BuildRequires: python3-setuptools BuildRequires: python3-setuptools
Requires: aops-vulcanus >= v1.2.0 Requires: aops-vulcanus >= v1.2.0
@ -54,6 +55,10 @@ cp -r hotpatch %{buildroot}/%{python3_sitelib}/dnf-plugins/
%{python3_sitelib}/dnf-plugins/* %{python3_sitelib}/dnf-plugins/*
%changelog %changelog
* Tue May 9 2023 ptyang<1475324955@qq.com> - v1.2.0-3
- fix args not effective bug
- download SA using a collaborative process
* Thu Apr 27 2023 ptyang<1475324955@qq.com> - v1.2.0-2 * Thu Apr 27 2023 ptyang<1475324955@qq.com> - v1.2.0-2
- fix args not effective bug - fix args not effective bug
- download SA using a collaborative process - download SA using a collaborative process