I maintain the ansible’s gitlab modules that make use of python-gitlab to interact with the API ( I also tested it with just a simple
curl call to the API.
I got a bug report in which a user was unable to add the same deploy key to 2 separate projects. After some time of digging around, looks like the issue arises when the deploy key has spaces in the comment section. After writing some simple repro code, looks like the comment of the deploy key is being truncated after the space, making the API think it needs to re-create the ssh key, causing a failure because the fingerprint already exists.
Hope this is the right place to ask this question, please let me know if you need more info, I can share both the repro code and the keys used for this.