diff --git a/packageship/packageship/application/apps/package/function/packages.py b/packageship/packageship/application/apps/package/function/packages.py index ba1a74689f311684a9c615dabfddb8a186042eef..94f7df1d92a7ca9833dfe62aebed637b142d411d 100644 --- a/packageship/packageship/application/apps/package/function/packages.py +++ b/packageship/packageship/application/apps/package/function/packages.py @@ -158,6 +158,7 @@ def sing_pack(srcname, tablename): ResponseCode.PACK_NAME_NOT_FOUND)) pack_info_dict = SinglePackInfoSchema( many=False).dump(package_info_obj) + pack_info_dict = parsing_maintainner(srcname, pack_info_dict) issue_count = database_name.session.query( PackagesIssue).filter_by(pkg_name=package_info_obj.name).count() pack_info_dict["issue"] = issue_count @@ -179,6 +180,26 @@ def sing_pack(srcname, tablename): ResponseCode.response_json( ResponseCode.DIS_CONNECTION_DB)) +def parsing_maintainner(srcname,pack_info_dict): + """ + Single package query maintainer and maintainlevel + Args: + srcname: Source package name + pack_info_dict: + Returns: Dictionary of package information + + """ + with DBHelper(db_name="lifecycle") as database_name: + maintainer_obj = database_name.session.query(PackagesMaintainer).filter_by( + name=srcname).first() + if maintainer_obj is None: + pack_info_dict["maintainer"] = None + pack_info_dict["maintainlevel"] = None + else: + pack_info_dict["maintainer"] = maintainer_obj.maintainer + pack_info_dict["maintainlevel"] = maintainer_obj.maintainlevel + return pack_info_dict + def buildrequired_search(srcname, tablename): """ diff --git a/packageship/packageship/application/apps/package/serialize.py b/packageship/packageship/application/apps/package/serialize.py index 3aa63b21c32bb4654fffa0772da8fa1b5547141d..c6993c404833f831803dc2a08aef92c0b61f5be7 100644 --- a/packageship/packageship/application/apps/package/serialize.py +++ b/packageship/packageship/application/apps/package/serialize.py @@ -286,10 +286,8 @@ class SinglePackInfoSchema(Schema): 'version', 'release', 'url', - 'maintainer', 'feature', 'rpm_license', - 'maintainlevel', 'summary', 'description') diff --git a/packageship/packageship/libs/log/loghelper.py b/packageship/packageship/libs/log/loghelper.py index 3b121223c9d01e877f44a9d3e12d16bc22033532..fc53bb214b27863e8d015d29957b957cb33aa697 100644 --- a/packageship/packageship/libs/log/loghelper.py +++ b/packageship/packageship/libs/log/loghelper.py @@ -5,7 +5,7 @@ Logging related import os import pathlib import logging -from logging.handlers import RotatingFileHandler +from concurrent_log_handler import ConcurrentRotatingFileHandler from packageship import system_config from packageship.libs.configutils.readconfig import ReadConfig @@ -44,7 +44,7 @@ def setup_log(config=None): except FileExistsError: pathlib.Path(path).touch() - file_log_handler = RotatingFileHandler( + file_log_handler = ConcurrentRotatingFileHandler( path, maxBytes=max_bytes, backupCount=backup_count) formatter = logging.Formatter( @@ -96,7 +96,7 @@ class Log(): self.max_bytes = 314572800 def __init_handler(self): - self.__file_handler = RotatingFileHandler( + self.__file_handler = ConcurrentRotatingFileHandler( self.__path, maxBytes=self.max_bytes, backupCount=self.backup_count, encoding="utf-8") def __set_handler(self):