Handle mailmapped emails for ssh verified commits
What does this MR do and why?
Adds a new label for commits which is verified but has a commit author email which is not.
Gitaly supports git mailmap behind a feature flag. Mailmap allows repositories to include a file which will map commit email addresses to new addresses. When an email address has been mapped to an unverified email address, this MR will relabel verified commits as shown below.
To do this we check the commit email against the signature email for verified commits.
There are 5 ways in which we can sign commits, this MR only applies the new label to SSH user signed commits.
See verified commits which were previously labels as verified now labelled as ⚠ Verified with an orange label:
MR acceptance checklist
Please evaluate this MR against the MR acceptance checklist. It helps you analyze changes to reduce risks in quality, performance, reliability, security, and maintainability.
How to set up and validate locally
- Enable the feature flag 'check_for_mailmapped_commit_emails'.
- Add SSH signed commits to your GDK by following https://docs.gitlab.com/ee/user/project/repository/signed_commits/ssh.html.
- Follow the description in https://gitlab.com/gitlab-org/gitlab/-/issues/425042 to setup a mailmap user mapping for the commit author.
- Go to the commits page of your project in the GDK to see the new orange verified label.
Related to #425042
