Add worker to refresh SSH signature status when email or SSH keys are updated
Everyone can contribute. Help move this issue forward while earning points, leveling up and collecting rewards.
Why are we doing this work
In order for an SSH commit signature to be considered valid, the user who signed the commit needs to have the SSH key associated with the account, and the email address on the commit also need to be associated with their account and confirmed.
If someone fixes these things after their commit has been pushed, the commit will continue to remain in an unverified state. When an email or ssh key is updated, when should refresh the status of associated signatures so that the status can change from "unverified" to "verified" when a user fixes their email or keys.
For GPG keys, we do this via InvalidGpgSignatureUpdateWorker
. We can implement a similar worker for SSH signatures.
- https://gitlab.com/gitlab-org/gitlab/-/blob/ea19eb139eb86bee675af39a308193e9724a6fe2/app/models/email.rb#L15
- https://gitlab.com/gitlab-org/gitlab/-/blob/ea19eb139eb86bee675af39a308193e9724a6fe2/app/models/gpg_key.rb#L43
Non-functional requirements
-
Documentation: -
Feature flag: -
Performance: -
Testing: