diff --git a/apollo/db/serialize/__init__.py b/apollo/db/serialize/__init__.py index d2db626..459b29f 100644 --- a/apollo/db/serialize/__init__.py +++ b/apollo/db/serialize/__init__.py @@ -99,7 +99,7 @@ class Advisory_Pydantic_V2(BaseModel): cves: list[Advisory_Pydantic_V2_CVE] references: list[str] publishedAt: str - rpms: dict[str, list[str]] + rpms: dict[str, list[Advisory_Pydantic_V2_RPM]] rebootSuggested: bool buildReferences: list[str] diff --git a/apollo/server/routes/api_compat.py b/apollo/server/routes/api_compat.py index 74b75b2..856cab8 100644 --- a/apollo/server/routes/api_compat.py +++ b/apollo/server/routes/api_compat.py @@ -133,8 +133,11 @@ def v3_advisory_to_v2( rpms[name].append(pkg.nevra) rpms_res = {} - for product, rpms in rpms.items(): - rpms_res[product] = [Advisory_Pydantic_V2_RPM(nevra=x) for x in rpms] + if include_rpms: + for product, rpms in rpms.items(): + rpms_res[product] = [ + Advisory_Pydantic_V2_RPM(nevra=x) for x in rpms + ] published_at = advisory.published_at.isoformat("T" ).replace("+00:00", "") + "Z" @@ -153,7 +156,7 @@ def v3_advisory_to_v2( shortCode=advisory.name[0:2], topic=advisory.topic if advisory.topic else "", solution=None, - rpms=rpms, + rpms=rpms_res, affectedProducts=affected_products, references=[], rebootSuggested=False,