I have come across an issue with working with diffrent remotes and CI, etc.
In short the issue is that we need another remote to push to GitLab from time to time. However to allow push access without an user account we can only can setup Deploy Keys.
Though we have no control over the (public) key the build server, that will try to push to GitLab, will use. And Deploy Tokens have no option to allow write access.
Additionally we likely can’t even use SSH (due to difficulties with configuring it in the fire wall and security concerns from our boss), so even if we could make sure the server that will push always uses the same key, it won’t help much when we need to push over HTTPS.