#14 Forge listing support

Open
opened 1 jaar geleden by JustAnotherArchivist · 0 comments

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 voegde het
enhancement
label 1 jaar geleden toe
Log in om deel te nemen aan deze discussie.
Geen mijlpaal
Niet toegewezen
1 deelnemers
Notificaties
Vervaldatum

Geen vervaldatum ingesteld.

Afhankelijkheden

Deze kwestie heeft momenteel geen afhankelijkheden.

Laden…
Er is nog geen inhoud.