Reported by Loïc d'Anterroches, Aug 2, 2008
The members and owners of a project should have read/write access to the corresponding git repository. It should be possible for the user to upload their SSH public key.
Comment 1 by Loïc d'Anterroches, Aug 2, 2008
Comment 2 by Loïc d'Anterroches, Aug 4, 2008
Basically it looks like we will need a way to update the gitosis-admin repository from the web interface. Doing the push will run the hooks to update the access rights. Other alternative, create a clone of gitosis with a database backend. But that would require quite some work (and quite some security checks too).
Comment 3 by Loïc d'Anterroches, Nov 24, 2008
Comment 4 by Loïc d'Anterroches, Dec 2, 2008
Comment 5 by Loïc d'Anterroches, Dec 2, 2008
I think the problem can be solved with a local checkout of the gitosis-admin repository on the server. Note: We need to allow users to provide their public SSH key.
Comment 6 by Loïc d'Anterroches, Dec 4, 2008
Ok, I did some tests and found that basically, we cannot do live changes on the git repositories because we need to do them with the `git` user. So, the way to go is to create objects in the queue when we perform operations and then let a cron job running under the `git` id, perform the update of the gitosis-admin checkout and push the updated version. We already have the queue system in Pluf: http://projects.ceondo.com/p/pluf/source/tree/master/src/Pluf/Queue.p hp so, it is rather easy to create the plugin that will simply push the changes in the queue, the real work will be the cron job that will perform the changes.
Comment 7 by Loïc d'Anterroches, Dec 7, 2008
Again, again, I spent a while looking at the gitosis internals, the code is really nice. What is even nicer, is that it will be rather easy to use it as a basis to directly hook into the indefero database for identification. I will work on that starting 15th of December, as this week I have family at home.
Comment 8 by Loïc d'Anterroches, Dec 14, 2008
So, I started to work on this one. It will take some days to complete as it is not an easy task.
Comment 9 by Loïc d'Anterroches, Jan 13, 2009
I stupidly lost my work before Christmas holidays, so I am now working again on it.
Comment 10 by Loïc d'Anterroches, Jan 14, 2009
Ok, found that the best way is to write a tool from scratch based on the good practices of gitosis. This will allow to have smooth integration with the rights framework of InDefero.
Comment 11 by Loïc d'Anterroches, Jan 14, 2009
I have the access control done in commit 00f3b08 (still requires testing). Now I need to add the ability for a user to upload his SSH key.
Comment 12 by Loïc d'Anterroches, Jan 20, 2009
Completed in commit 1327e5f1e35bc07e4e84c0fc5843f2.