diff --git a/src/ac/acl/binary/check_binary_file.py b/src/ac/acl/binary/check_binary_file.py index 61f2e3ff9ed6567285d175e1dbd206d4c6aecf7e..bc5ccfa6a3c6ff5fad620176f7c9a1915e7706cf 100644 --- a/src/ac/acl/binary/check_binary_file.py +++ b/src/ac/acl/binary/check_binary_file.py @@ -97,12 +97,17 @@ class CheckBinaryFile(BaseCheck): if self._gr.spec_file is None: logger.error("spec file not find") return - with open(os.path.join(self._work_dir, self._gr.spec_file), "r", encoding="utf-8") as fp: + spec_file_path = os.path.join(self._work_dir, self._gr.spec_file) + with open(spec_file_path, "r", encoding="utf-8") as fp: adapter = Spec.from_string(fp.read()) - for filename in adapter.__dict__.get("sources"): - spec_src_name = replace_macros(filename, adapter) - if "http" in spec_src_name and self._is_compress_tar_file(spec_src_name): - self._tarball_in_spec.add(spec_src_name.split("/")[-1] if filename else "") + + sources = adapter.__dict__.get("sources", []) + self._tarball_in_spec = [ + replace_macros(filename, adapter).split("/")[-1] + for filename in sources + if "http" in replace_macros(filename, adapter) and self._is_compress_tar_file(replace_macros(filename, adapter))] + + info_msg = "spec指定的上游社区压缩包:%s" % self._tarball_in_spec if self._tarball_in_spec else "暂无spec指定的上游社区压缩包" logger.info(info_msg) return self._tarball_in_spec