]project-open[ CVS+ACL Permission Configuration


Published on

Published in: Technology
1 Like
  • Be the first to comment

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

]project-open[ CVS+ACL Permission Configuration

  1. 1. Using ]project-open[ to manage SVN / CVS+ACL permission configuration How to use ]project-open[ as a Web interface to maintain the permission configuration files of the Subversion (SVN) and CVS+ACL source code version control system. (cc) Except where otherwise noted, content on this slide is licensed under a Creative Commons Attribution 3.0 License
  2. 2. © ]project-opem[ 2010, ALM / Frank Bergmann / 2 The Problem  Manually maintaining the permission configuration of SVN or CVS+ACL is error prone and requires system administrator privileges  Permission management of individual SVN/CVS “projects” should be delegated to the project owner.
  3. 3. © ]project-opem[ 2010, ALM / Frank Bergmann / 3 The Solution 1. Use ]project-open[ as a Web-front-end to manage the configuration. 2. Model the SVN/CVS projects in ]po[ as configuration items. 3. Assign the SVN/CVS project owners as administrators to the ]po[ configuration items representing the CVS/CVS projects 4. Use a Perl script (or any other language) to generate the SVN/CVS configuration files based on the ]po[ configuration. The Perl script can use the ]po[ REST interface to query a remote ]po[ server
  4. 4. © ]project-opem[ 2010, ALM / Frank Bergmann / 4 The Solution  On the ]project- open[ server, a REST interface exposes the SVN/CVS configuration as a Web service  On the SVN/CVS server, the Perl script retrieves the configuration and writes the configuration files for the SVN/CVS daemon ]project-open[ Server AOL server PostgreSQL Database ]po[ REST API ]po[ Libraries OpenACS Libs SVN / CVS Server CVSd ProcessConfig Files Perl Script Retrieves configuration via REST and writes config files REST
  5. 5. © ]project-opem[ 2010, ALM / Frank Bergmann / 5 Group Management for CVS + ACL  CVS+ACL (cvsacl.sourceforge.net/) is a patch for CVS that adds ACLs (Access Control Lists) permissions to CVS  A “CVS ACL Group Admin” portlet (at the right) is shown in the ] po[ UserViewPage. It allows to manage the user’s CVS group membership.  The CVS ACS portlet is integrated into the ]po[ permission system, allowing to delegate permissions.  A Perl client uses the ]po[ REST Interface to retrieve the group information and writes the CVSROOT/group configuration file  The example at the right shows the resulting “group” file for CVS+ACL generated by the Perl client.
  6. 6. © ]project-opem[ 2010, ALM / Frank Bergmann / 6 Installing Group Management for CVS + ACL  Make sure you are running ]po[ 3.5 or higher  Retrieve the package “intranet-cvs-integration” from the ]po[ CVS server (=> see www.project-open.org for details)  Install the package using /acs-admin/apm/ -> Install packages  You will see the CVS Group Admin portlet in every user’s page  Go to the Perl directory ~/packages/intranet-rest/perl- client-examples/ and run “perl generate-cvs-acl-group- conf.perl”  For questions and issues please go to www.sourceforge.net/projects/project-open/ => Open Discussion or contact info@project-open.com for support services.
  7. 7. © ]project-opem[ 2010, ALM / Frank Bergmann / 7 Thank You