Summary of existing technical infrastructure
In the 2/15/2022 badging meeting, we discussed documenting the some of the current functionality on the platform that can/could be used to support badging today. Below is the start of a list. @msnell we are not sure for the best places for this info to live or how we might want to make use of it -- your guidance would be greatly appreciated.
GitLab Group and Project badges
Gitlab Group and Project Badges are a unified way to present condensed pieces of information about your projects. Other sites in the open source community sometimes refer to these types of badges as shields or repo badges. They consist of a small image and a URL that the image points to. Examples for badges can be the pipeline status, test coverage, or ways to contact the project maintainers.
GitLab can create default shields for you, or you can use a third-party site such as shields.io.
GitLab API - Custom Attributes
The GitLab API allows administrators to add new custom attributes to the API. If awarding a badge might require admin approval, we could create custom attributes that are set at the Group or Project level via the API. There are a variety of ways you can query the API to confirm whether or not a given attribute has been set.
Documenting badges in GitLab projects
And while it can probably go without saying, we can use GitLab projects (repos, wikis, snippets, etc) to create, track, and manage badges as well.