InDefero

Sign in or create your account | Project List | Help

Issue 3: Management of git repositories

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

Labels: Type:Enhancement, -Type:Defect

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

Labels: Priority:Low, -Priority:Medium

Comment 4 by Loïc d'Anterroches, Dec 2, 2008

Labels: Milestone:Release1.0

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.
Summary: Git/Gitosis integration plugin

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.
Labels: Priority:Medium, -Priority:Low
Owner: loic

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.
Status: Started

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.
Summary: Management of git repositories

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.
Status: Fixed

Created: 1 year 6 months ago by Loïc d'Anterroches

Updated: 1 year 19 days ago

Status: Fixed

Owner: Loïc d'Anterroches

Labels:
Priority:Medium
Type:Enhancement
Milestone:Release1.0