1212from datetime import datetime
1313from typing import Iterable
1414from typing import List
15- from typing import Mapping
1615from typing import Optional
1716
1817from django .db .models import Q
3231from vulnerabilities .importers .debian import DebianImporter
3332from vulnerabilities .importers .debian_oval import DebianOvalImporter
3433from vulnerabilities .importers .elixir_security import ElixirSecurityImporter
35- from vulnerabilities .importers .github import GitHubAPIImporter
3634from vulnerabilities .importers .github_osv import GithubOSVImporter
37- from vulnerabilities .importers .gitlab import GitLabAPIImporter
3835from vulnerabilities .importers .istio import IstioImporter
39- from vulnerabilities .importers .nginx import NginxImporter
4036from vulnerabilities .importers .oss_fuzz import OSSFuzzImporter
4137from vulnerabilities .importers .ruby import RubyImporter
4238from vulnerabilities .importers .ubuntu import UbuntuImporter
4339from vulnerabilities .improver import MAX_CONFIDENCE
4440from vulnerabilities .improver import Improver
4541from vulnerabilities .improver import Inference
4642from vulnerabilities .models import Advisory
43+ from vulnerabilities .pipelines import VulnerableCodeBaseImporterPipeline
44+ from vulnerabilities .pipelines .github_importer import GitHubAPIImporterPipeline
45+ from vulnerabilities .pipelines .gitlab_importer import GitLabImporterPipeline
46+ from vulnerabilities .pipelines .nginx_importer import NginxImporterPipeline
4747from vulnerabilities .pipelines .npm_importer import NpmImporterPipeline
4848from vulnerabilities .utils import AffectedPackage as LegacyAffectedPackage
4949from vulnerabilities .utils import clean_nginx_git_tag
@@ -63,6 +63,8 @@ class ValidVersionImprover(Improver):
6363
6464 @property
6565 def interesting_advisories (self ) -> QuerySet :
66+ if issubclass (self .importer , VulnerableCodeBaseImporterPipeline ):
67+ return Advisory .objects .filter (Q (created_by = self .importer .pipeline_id )).paginated ()
6668 return Advisory .objects .filter (Q (created_by = self .importer .qualified_name )).paginated ()
6769
6870 def get_package_versions (
@@ -220,7 +222,7 @@ class NginxBasicImprover(Improver):
220222
221223 @property
222224 def interesting_advisories (self ) -> QuerySet :
223- return Advisory .objects .filter (created_by = NginxImporter . qualified_name ).paginated ()
225+ return Advisory .objects .filter (created_by = NginxImporterPipeline . pipeline_id ).paginated ()
224226
225227 def get_inferences (self , advisory_data : AdvisoryData ) -> Iterable [Inference ]:
226228 all_versions = list (self .fetch_nginx_version_from_git_tags ())
@@ -364,12 +366,12 @@ class DebianBasicImprover(ValidVersionImprover):
364366
365367
366368class GitLabBasicImprover (ValidVersionImprover ):
367- importer = GitLabAPIImporter
369+ importer = GitLabImporterPipeline
368370 ignorable_versions = []
369371
370372
371373class GitHubBasicImprover (ValidVersionImprover ):
372- importer = GitHubAPIImporter
374+ importer = GitHubAPIImporterPipeline
373375 ignorable_versions = frozenset (
374376 [
375377 "0.1-bulbasaur" ,
0 commit comments