Search code examples
githubzenodo

How to template Zenodo auto release archive


I would like to use Zenodo to archive next releases of my project. The project repository is on GitHub. I configured connection from Zenodo to GitHub and when I'm creating next release it is automatically stored in Zenodo.

But:

  • description is only description form release,
  • the license is set to other instead of GPL,
  • authors are showed by their nick from GitHub, not by name (also without orcid).
  • many others fields are set to empty.

After I edit this in one release I need to fix it in next release.

Is there any option to automatize it? Some configuration file?

Here is my project https://zenodo.org/record/3363876


Solution

  • Note that Zenodo automatically extracts metadata about your repository from GitHub APIs. For example, the authors are determined from the repository's contributor statistics. This automatic extraction is solely a best guess. You can, however, add a ".zenodo.json" file in the root of your repository to explicitly define the metadata (list of authors, title, license etc).

    The format of the JSON file is the same as for our REST API and this is an example of the minimal required metadata:

    { "creators": [
            {
                "name": "Bigarella, Chiara",
            },
    
        ],
    
        "description": "My project description.",
        "license": {
            "id": "Apache-2.0"
        },
        "title": "My project title"
    }
    

    However if you go to https://zenodo.org/account/settings/github/ and find your repository, and click on one of the releases, you can see an example JSON for your specific repository.

    You can also have a look at the ".zenodo.json" used by other Github projects that are using Zenodo. You cand find an example here: https://github.com/xenon-middleware/xenon/blob/3.0.1/.zenodo.json