Skip to content
Snippets Groups Projects
Verified Commit aefb260f authored by Antoine R. Dumont's avatar Antoine R. Dumont
Browse files

gitlab: Add support for last_update information during listing

parent 1a19b2c7
No related branches found
No related tags found
No related merge requests found
......@@ -9,6 +9,7 @@ import random
from typing import Any, Dict, Iterator, Optional, Tuple
from urllib.parse import parse_qs, urlparse
import iso8601
import requests
from requests.exceptions import HTTPError
from requests.status_codes import codes
......@@ -174,8 +175,7 @@ class GitLabLister(Lister[GitLabListerState, PageResult]):
lister_id=self.lister_obj.id,
url=repo["http_url_to_repo"],
visit_type="git",
# TODO: Support "last_activity_at" as update information
# last_update=repo["last_activity_at"],
last_update=iso8601.parse_date(repo["last_activity_at"]),
)
def commit_page(self, page_result: PageResult) -> None:
......
......@@ -53,6 +53,7 @@ def test_lister_gitlab(datadir, swh_scheduler, requests_mock):
for listed_origin in scheduler_origins:
assert listed_origin.visit_type == "git"
assert listed_origin.url.startswith(f"https://{instance}")
assert listed_origin.last_update is not None
def gitlab_page_response(datadir, instance: str, page_id: int) -> List[Dict]:
......@@ -94,6 +95,7 @@ def test_lister_gitlab_with_pages(swh_scheduler, requests_mock, datadir):
for listed_origin in scheduler_origins:
assert listed_origin.visit_type == "git"
assert listed_origin.url.startswith(f"https://{instance}")
assert listed_origin.last_update is not None
def test_lister_gitlab_incremental(swh_scheduler, requests_mock, datadir):
......@@ -155,6 +157,7 @@ def test_lister_gitlab_incremental(swh_scheduler, requests_mock, datadir):
for listed_origin in scheduler_origins:
assert listed_origin.visit_type == "git"
assert listed_origin.url.startswith(f"https://{instance}")
assert listed_origin.last_update is not None
def test_lister_gitlab_rate_limit(swh_scheduler, requests_mock, datadir, mocker):
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment