From b6c69e5075bb742be89f02ee9321c4ce969dec0a Mon Sep 17 00:00:00 2001 From: Antoine Lambert Date: Fri, 2 Sep 2022 15:45:07 +0200 Subject: [PATCH] aur: Create also a git origin for each listed package repository It will enable to archive the history of the PKGBUILD file associated to the AUR package. --- swh/lister/aur/lister.py | 7 +++++++ swh/lister/aur/tests/test_lister.py | 11 +++++++++-- 2 files changed, 16 insertions(+), 2 deletions(-) diff --git a/swh/lister/aur/lister.py b/swh/lister/aur/lister.py index 2e20395..778a848 100644 --- a/swh/lister/aur/lister.py +++ b/swh/lister/aur/lister.py @@ -145,3 +145,10 @@ class AurLister(StatelessLister[AurListerPage]): "aur_metadata": aur_metadata, }, ) + + yield ListedOrigin( + lister_id=self.lister_obj.id, + visit_type="git", + url=origin["git_url"], + last_update=last_update, + ) diff --git a/swh/lister/aur/tests/test_lister.py b/swh/lister/aur/tests/test_lister.py index be36337..7b67d4a 100644 --- a/swh/lister/aur/tests/test_lister.py +++ b/swh/lister/aur/tests/test_lister.py @@ -116,16 +116,19 @@ def test_aur_lister(datadir, swh_scheduler, requests_mock): res = lister.run() assert res.pages == 4 - assert res.origins == 4 + assert res.origins == 8 scheduler_origins = swh_scheduler.get_listed_origins(lister.lister_obj.id).results + aur_origins = [origin for origin in scheduler_origins if origin.visit_type == "aur"] + git_origins = [origin for origin in scheduler_origins if origin.visit_type == "git"] + assert [ ( scheduled.visit_type, scheduled.url, scheduled.extra_loader_arguments["artifacts"], ) - for scheduled in sorted(scheduler_origins, key=lambda scheduled: scheduled.url) + for scheduled in sorted(aur_origins, key=lambda scheduled: scheduled.url) ] == [ ( "aur", @@ -134,3 +137,7 @@ def test_aur_lister(datadir, swh_scheduler, requests_mock): ) for expected in sorted(expected_origins, key=lambda expected: expected["url"]) ] + + assert {origin.url for origin in git_origins} == { + origin["git_url"] for origin in expected_origins + }