@@ -96,15 +96,15 @@ def get_observations(self, data: dict, product: Product, branch: Optional[Branch
9696 payload = base64 .b64decode (cosign_output ["payload" ]).decode ("utf-8" )
9797 sbom_data = json .loads (payload )["predicate" ]
9898
99- self .components = self ._get_components (data , sbom_data )
100- self .dependencies = self ._get_dependencies (data )
101- observations = self ._create_observations (data , sbom_data )
99+ self .components = self ._get_components (sbom_data or data )
100+ self .dependencies = self ._get_dependencies (sbom_data or data )
101+ observations = self ._create_observations (data )
102102
103103 return observations
104104
105105 def get_license_components (self , data : dict ) -> list [License_Component ]:
106106 if not self .components :
107- self .components = self ._get_components (data , None )
107+ self .components = self ._get_components (data )
108108 if not self .metadata :
109109 self .metadata = self ._get_metadata (data )
110110 if not self .dependencies :
@@ -139,7 +139,7 @@ def _add_license_component_evidence(
139139 evidence .append (dumps (component .json ))
140140 license_component .unsaved_evidences .append (evidence )
141141
142- def _get_components (self , data : dict , sbom_data : Optional [ dict ] ) -> dict [str , Component ]:
142+ def _get_components (self , data : dict ) -> dict [str , Component ]:
143143 components_dict = {}
144144 components_list : list [Component ] = []
145145
@@ -151,15 +151,6 @@ def _get_components(self, data: dict, sbom_data: Optional[dict]) -> dict[str, Co
151151 components = self ._get_sbom_component_with_subs (sbom_component )
152152 components_list .extend (components )
153153
154- if sbom_data :
155- root_components = self ._get_root_component_with_subs (sbom_data )
156- components_list .extend (root_components )
157-
158- sbom_components = sbom_data .get ("components" , [])
159- for sbom_component in sbom_components :
160- components = self ._get_sbom_component_with_subs (sbom_component )
161- components_list .extend (components )
162-
163154 for component in components_list :
164155 components_dict [component .bom_ref ] = component
165156
@@ -223,14 +214,10 @@ def _get_component(self, component_data: dict[str, Any]) -> Optional[Component]:
223214 def _create_observations ( # pylint: disable=too-many-locals
224215 self ,
225216 data : dict ,
226- sbom_data : Optional [dict ],
227217 ) -> list [Observation ]:
228218 observations = []
229219 component_dependencies_cache : dict [str , str ] = {}
230220
231- if not sbom_data :
232- sbom_data = data
233-
234221 for vulnerability in data .get ("vulnerabilities" , []):
235222 vulnerability_id = vulnerability .get ("id" )
236223 cvss3_score , cvss3_vector = self ._get_cvss (vulnerability , 3 )
0 commit comments