Skip to content

Commit 6d4cc76

Browse files
committed
Migrate GitHub importer to aboutcode pipeline
Signed-off-by: Keshav Priyadarshi <git@keshav.space>
1 parent 2888d29 commit 6d4cc76

6 files changed

Lines changed: 192 additions & 111 deletions

File tree

vulnerabilities/importers/__init__.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,6 @@
1818
from vulnerabilities.importers import epss
1919
from vulnerabilities.importers import fireeye
2020
from vulnerabilities.importers import gentoo
21-
from vulnerabilities.importers import github
2221
from vulnerabilities.importers import github_osv
2322
from vulnerabilities.importers import gitlab
2423
from vulnerabilities.importers import istio
@@ -39,11 +38,11 @@
3938
from vulnerabilities.importers import ubuntu_usn
4039
from vulnerabilities.importers import vulnrichment
4140
from vulnerabilities.importers import xen
41+
from vulnerabilities.pipelines import github_importer
4242
from vulnerabilities.pipelines import pypa_importer
4343

4444
IMPORTERS_REGISTRY = [
4545
nvd.NVDImporter,
46-
github.GitHubAPIImporter,
4746
gitlab.GitLabAPIImporter,
4847
npm.NpmImporter,
4948
nginx.NginxImporter,
@@ -75,6 +74,7 @@
7574
epss.EPSSImporter,
7675
vulnrichment.VulnrichImporter,
7776
pypa_importer.PyPaImporterPipeline,
77+
github_importer.GitHubAPIImporterPipeline,
7878
]
7979

8080
IMPORTERS_REGISTRY = {x.qualified_name: x for x in IMPORTERS_REGISTRY}

vulnerabilities/improvers/valid_versions.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,6 @@
3131
from vulnerabilities.importers.debian import DebianImporter
3232
from vulnerabilities.importers.debian_oval import DebianOvalImporter
3333
from vulnerabilities.importers.elixir_security import ElixirSecurityImporter
34-
from vulnerabilities.importers.github import GitHubAPIImporter
3534
from vulnerabilities.importers.github_osv import GithubOSVImporter
3635
from vulnerabilities.importers.gitlab import GitLabAPIImporter
3736
from vulnerabilities.importers.istio import IstioImporter
@@ -44,6 +43,7 @@
4443
from vulnerabilities.improver import Improver
4544
from vulnerabilities.improver import Inference
4645
from vulnerabilities.models import Advisory
46+
from vulnerabilities.pipelines.github_importer import GitHubAPIImporterPipeline
4747
from vulnerabilities.utils import AffectedPackage as LegacyAffectedPackage
4848
from vulnerabilities.utils import clean_nginx_git_tag
4949
from vulnerabilities.utils import get_affected_packages_by_patched_package
@@ -368,7 +368,7 @@ class GitLabBasicImprover(ValidVersionImprover):
368368

369369

370370
class GitHubBasicImprover(ValidVersionImprover):
371-
importer = GitHubAPIImporter
371+
importer = GitHubAPIImporterPipeline
372372
ignorable_versions = frozenset(
373373
[
374374
"0.1-bulbasaur",

vulnerabilities/pipelines/__init__.py

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -85,7 +85,12 @@ def advisories_count(self) -> int:
8585

8686
def collect_and_store_advisories(self):
8787
collected_advisory_count = 0
88-
progress = LoopProgress(total_iterations=self.advisories_count(), logger=self.log)
88+
estimated_advisory_count = self.advisories_count()
89+
90+
if estimated_advisory_count > 0:
91+
self.log(f"Collecting {estimated_advisory_count:,d} advisories")
92+
93+
progress = LoopProgress(total_iterations=estimated_advisory_count, logger=self.log)
8994
for advisory in progress.iter(self.collect_advisories()):
9095
if _obj := insert_advisory(
9196
advisory=advisory,

0 commit comments

Comments
 (0)