Ability to send snapshots of repos to Zenodo
Everyone can contribute. Help move this issue forward while earning points, leveling up and collecting rewards.
Problem to solve
Make it easy for academic users on private / self-hosted GitLab (CE) instances to send snapshots of their repos to Zenodo.org.
Further details
This would support academically recognised archival, persistent identification (by DOIs) and thus citation of code & software versions. See #35023 for use-cases.
@schlauch and me are posting this issue in the hope of slicing that general request into more specific user stories.
Proposal
As suggested, build a Project Integration like for example mocked-up in GitHub.com/zenodo#1404, that allows project owners to to configure a connection between their GitLab project and Zenodo a deposit (ID, plus API token) activate a tag-hook that triggers a GET /projects/:id/repository/archive to GitLab POSTs the result, plus metadata about the GitLab project into the Zenodo deposit
@schlauch demonstrates that it is possible to mimic the GitHub-Zenodo integration almost completely, incl. updating the deposit to a new version with new files.
As far as we understand, this would not require any changes on Zenodo’s side, because it relies on nothing else than their public ReST API plus a project owner’s Zenodo access token (sandbox; with scopes deposit:actions
& deposit:write
).
What does success look like, and how can we measure that?
Maybe the number of Zenodo records / "deposits" created through GitLab repos? I have asked Zenodo if they know (and can share) this for. Deposits from repos integrated from GitHub: "bit more than 20000" (early Dec. 2018).
Links / references
- #18763: Parent issue with general explanation, use-cases & web-hook-based solution idea for GitLab.com
- GitHub.com/zenodo#1404: Zenodo-side discussion, including mockup
- customer requests: #18763 (comment 215017430) & below
This page may contain information related to upcoming products, features and functionality. It is important to note that the information presented is for informational purposes only, so please do not rely on the information for purchasing or planning purposes. Just like with all projects, the items mentioned on the page are subject to change or delay, and the development, release, and timing of any products, features, or functionality remain at the sole discretion of GitLab Inc.