mesa ACL

Toshio Kuratomi a.badger at gmail.com
Wed Aug 15 22:49:09 UTC 2007


On 8/13/07, Dave Airlie <airlied at redhat.com> wrote:
> On Tue, 2007-08-14 at 15:21 +1000, Dave Airlie wrote:
> >
> > cvs commit...
> > **** Access denied: airlied is not in ACL for rpms/mesa
> > cvs commit: Pre-commit check failed
> > **** Access allowed: airlied is in ACL for rpms/mesa/devel.
> >
>
> Thanks to Toshio for pointing out that it's actually cvs-import.sh
> broken by the ACLs not the ACL missing..

If anyone is having this problem using the cvs-import.sh script, I now
have an updated script.  Before getting to that let me outline the
problem and see if anyone dislikes my solution:

The basic problem is that our cvs tree looks like this:
  rpms/mesa
  rpms/mesa/devel
  rpms/mesa/F-7

cvs-import.sh writes a log of what it does in the toplevel of the
package directory (rpms/mesa).   On subsequent runs, it checks that
file to see if it contains any previous instances of the package.  If
so, it refuses to reimport.

Under the packagedb we set ACLs per branch (in the old system, there
was the option to set them per-branch but only a few people did and
this bug wasn't tripped.)  When cvsextras is in the acl, for all
branches, we have an optimization that lets people commit to the
toplevel so all is well.  When it is not, people are only able to
commit to the branch directories, not the toplevel.  This causes
cvs-import.sh to fail because it cannot write to the toplevel log.

The script I've implemented checks in cvsimport.log in the branch that
is being imported into.  That way if the user has permission to commit
code to the branch they'll also be able to commit the log.  This does
have the potential of adding another file to each of the branch
directories.

Does that sound reasonable?

Ticket with the new cvsimport.sh script attached is here:
https://hosted.fedoraproject.org/projects/packagedb/ticket/46

-Toshio




More information about the fedora-devel-list mailing list