#14 Forge listing support

Ouvert
créé il y a 1 an par JustAnotherArchivist · 0 commentaires

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 a ajouté l’étiquette
enhancement
il y a 1 an
Connectez-vous pour rejoindre cette conversation.
Aucun jalon
Pas d'assignataires
1 participants
Notifications
Échéance

Aucune échéance n'a été définie.

Dépendances

Ce ticket n'a actuellement pas de dépendance.

Chargement…
Il n'existe pas encore de contenu.