kubitron/redmine_git_hosting — Issue #17: [FEATURE] Deploy key for each project
Author: phindmarsh
Created: 2012-02-23 21:06:35+00:00
State: open

Another idea, we currently have a 'Deploy User' that is added to each project as a 'Deployer' (role that only has read access to the repository).

Our production server is set up such that each site has its own user with a set of ssh keys. For each site we deploy we add that key to the Deploy User in Redmine. From there when we want to deploy changes we can just `git pull` and the server user can clone from the repository.

Herein lies the problem, because that deploy user has the keys for each deployed site, that account has read access to all our repositories which could be construed as a bit of a security risk. An alternative I considered is to make a new 'Deploy User' for each project, but we could end up with hundreds of user accounts which is a little unnecessary.

My proposed feature would be ability to paste a public key that can be used to deploy that repository alone, rather than adding it to a user then making that user a member of the project with read rights only. An added benefit would be having the ability to toggle write access to this key so that if a change is made on the public server that needs to be pushed to the repository it can be enabled temporarily.

As always, I appreciate your efforts with this plugin. I certainly makes our workflow so much nicer. Im happy to help where I can :)