#14 Forge listing support

Відкрито
1 рік тому відкрито JustAnotherArchivist · 0 коментарів
JustAnotherArchivist прокоментував(ла) 1 рік тому

Forges usually have ways of listing repositories, either globally or per user/organisation. codearchiver should have a way of listing those to archive forges in their entirety or subsections of them, e.g. codearchiver https://gitea.arpa.li/ or codearchiver https://gitea.arpa.li/JustAnotherArchivist. This would emit some data from the forge listing and run each discovered repository with the appropriate module (possibly with an option to skip that).

Software Heritage has implementations of listers for various forges: https://gitlab.softwareheritage.org/swh/devel/swh-lister

Implementing this would likely mean separate FooInstance, FooUser/FooOrganisation, and FooRepository modules. Note that these can’t be detected from the URL alone, even if you know the forge type. For example, GitLab does not allow for distinguishing users and repositories; a URL like https://gitlab.example.org/foo/bar could be an ‘subgroup’ (subunit of an organisation) bar of foo or a ‘project’ (~ repository).

Forges usually have ways of listing repositories, either globally or per user/organisation. codearchiver should have a way of listing those to archive forges in their entirety or subsections of them, e.g. `codearchiver https://gitea.arpa.li/` or `codearchiver https://gitea.arpa.li/JustAnotherArchivist`. This would emit some data from the forge listing and run each discovered repository with the appropriate module (possibly with an option to skip that). Software Heritage has implementations of listers for various forges: https://gitlab.softwareheritage.org/swh/devel/swh-lister Implementing this would likely mean separate `FooInstance`, `FooUser`/`FooOrganisation`, and `FooRepository` modules. Note that these can't be detected from the URL alone, even if you know the forge type. For example, GitLab does not allow for distinguishing users and repositories; a URL like `https://gitlab.example.org/foo/bar` could be an 'subgroup' (subunit of an organisation) `bar` of `foo` or a 'project' (~ repository).
JustAnotherArchivist added the
enhancement
label 1 рік тому
Підпишіться щоб приєднатися до обговорення.
Етап відсутній
Немає виконавеця
1 учасників
Сповіщення
Дата завершення

Термін виконання не встановлений.

Залежності

Ця проблема в даний час не має залежностей.

Завантаження…
Тут ще немає жодного змісту.