<br><br><div class="gmail_quote">On Tue, Sep 28, 2010 at 4:39 PM, Max Bowsher <span dir="ltr">&lt;<a href="mailto:maxb@f2s.com">maxb@f2s.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
<div><div></div><div class="h5">On 28/09/10 16:47, Maritza Mendez wrote:<br>
&gt; Hi.  There are a couple current threads here (ok, including one I<br>
&gt; started) which include discussion of ACL-like properties for branches.<br>
&gt; So I assume there is interest in this topic.  I have had typically bad<br>
&gt; expereinces with the ACL layer tacked onto some commercial version<br>
&gt; control systems.  So I am very cautious about suggesting similar<br>
&gt; &quot;enhancements&quot; to bzrlib.  Instead, I&#39;ve been thinking about the Un*x<br>
&gt; way -- many &quot;little&quot; tools, each of which does one job extremely well --<br>
&gt; and leveraging the expertise and architecture already baked into every<br>
&gt; Linux box.<br>
&gt;<br>
&gt; Currently, I provide access controls for centralized &quot;trunk&quot; branches<br>
&gt; for about a dozen projects in my organization.  In the simplest case, I<br>
&gt; set up a new branch a server and &#39;chown -R&#39; the root of the branch to a<br>
&gt; specific dummy user and &#39;chmod og-rwx&#39;.  More generally, a single dummy<br>
&gt; user may own a &quot;bzr group&quot; of branches.  My developers publish their RSA<br>
&gt; public keys.  I then manage access by adding/removing their keys from<br>
&gt; the .ssh/authorized_keys in each dummy user&#39;s homedir.<br>
&gt;<br>
&gt; This scheme works fine for a small number of branches but quickly gets<br>
&gt; tedious.  I started to imagine an administration tool, using a PyQt GUI<br>
&gt; with an SQLite backend to track the registered branches, dummy accounts<br>
&gt; across multiple severs and developer&#39;s public keys.   As I went through<br>
&gt; the use cases, I realized right away that I wanted more fine-grained<br>
&gt; control.  Namely, per-branch rather than per-dummy-user, because the<br>
&gt; membership of a &quot;bzr group&quot; may change.  The only way I can think of<br>
&gt; getting per-branch control is by adding a user for *every* branch.  I<br>
&gt; suppose that&#39;s not too bad (as long as users are deleted when their<br>
&gt; brnach is deleted) but it does seem a little clumsy.<br>
&gt;<br>
&gt; So can anyone think of a better way to get from per-user access control<br>
&gt; to per-branch access control with the tools we already have, i.e.<br>
&gt; without modifying bzrlib?<br>
<br>
</div></div>Have you tried the contrib/bzr_access script within the bzr source tree?<br>
I have not, but it looks exactly like the kind of thing I think I&#39;d be<br>
aiming for if I ever manage to promote Bazaar sufficiently within my own<br>
workplace.<br>
<font color="#888888"><br>
Max.<br>
<br>
</font></blockquote></div><br>I was not aware of this.  Thanks for the pointer.  I will check it out.<br><br>~M<br><br>