Newbie Where to start perhaps a hash-table is what I need to learn about ?
I was given a project that seems to require Perl I could use a sample just to extract a list of names associated with a group or repo and print them. 1) Assigned a task to extract data fron a text file. 2) Output file needs to be very specific, and created monthly 3) tried doing in korn shell too complex 4) Figured Perl my best option, but don't know Perl 5) Got the Modern Perl in PDF format 6) Installed Strawberry Perl Output format is simple ??, but extracting the data and printing it I haven't a clue where to start. ( I am not trying to get someone to write this for me, just a simple extract and print example and point me in the right direction ) Desired output: [code] UserName~RepoName/PATH~GroupName~Access (Note: _admn is a special case and repeated in every Repo so its output would look like UserName~~GroupName~Read Write Access Access need to be spelled out r = Read only, rw = Read Write) [/code] Example Input File: [code] #[groups] svnAdmins_admn = johnl1, bill4, saras2 auditors_cgrp = dave101 other_cgrp = gullapp, pughj, frayerm1, naidue, ramseym4, kochw, leej95, joness22, davidsm9 build_cgrp = mohameh, johnsod5 foospecial_cgrp = browng3, mintzh, scottj11, svnbeta barspecial_cgrp = lambt4, cheny1, locklie, nicholk9 repo1_devs = ritched2, appalas, bohnerc, davidss1, goulett2, kriegn, kumara19, kumarr19 repo1_owners = nadign, pengh1, poojary, predovc, settyp, shirwan repo1_readers = mandeh1, dinwidg, pals, rajendk1, pantk repo2_devs = yonuta1, cmbuild, carmacs, greeng1, rickg repo2_owners = sundarb1, dhayagp, thoomuv repo2_readers = buschm2, todorob, shukkun, enjetyv1 #[Repo access rules] [repo1:/] @repo1_devs = r @repo1_owners = rw @repo1_readers = r @svnAdmins_admn = rw @auditors_cgrp = r @other_cgrp = r @build_cgrp = r @foospecial_cgrp = r [repo1:/branches] @repo1_devs = rw @foospecial_cgrp = rw [repo1:/tags] @foospecial_cgrp = rw [repo1:/trunk] @repo1_devs = rw [repo1:/trunk/project1] @repo1_devs = rw @other_cgrp = rw [repo1:/trunk/project2] @foospecial_cgrp = rw @repo1_devs = rw [repo1:/trunk/project3] @repo1_devs = rw @build_cgrp = rw [repo2:/] @repo1_devs = r @repo1_owners = rw @repo1_readers = r @svnAdmins_admn = rw @auditors_cgrp = r @foospecial_cgrp = r [repo2:/branches] @repo1_devs = rw [repo2:/tags] @foospecial_cgrp = rw [repo2:/trunk] @repo1_devs = rw [repo2:/trunk/project1] @repo2_devs = rw @other_cgrp = rw [repo2:/trunk/project2/foo] @repo1_devs = rw @foospecial_cgrp = rw @barspecial_cgrp = r [repo2:/trunk/project3/foo/bar] @repo1_devs = rw @build_cgrp = rw @barspecial_cgrp = rw [/code] phil -- To unsubscribe, e-mail: beginners-unsubscr...@perl.org For additional commands, e-mail: beginners-h...@perl.org http://learn.perl.org/
Re: Newbie Where to start perhaps a hash-table is what I need to learn about ?
On Tue, 3 Jul 2012 09:47:00 -0400 Phil Pinkerton wrote: > I was given a project that seems to require Perl > > I could use a sample just to extract a list of names associated with > a group or repo and print them. > > 1) Assigned a task to extract data fron a text file. > 2) Output file needs to be very specific, and created monthly > 3) tried doing in korn shell too complex > 4) Figured Perl my best option, but don't know Perl > 5) Got the Modern Perl in PDF format > 6) Installed Strawberry Perl > > Output format is simple ??, but extracting the data and printing it > I haven't a clue where to start. ( I am not trying to get someone to > write this for me, just a simple extract and print example and point > me in the right direction ) First pointer - a lot of things you want to do in Perl will be a lot easier if you consult CPAN to see if someone has done this before and shared reusable code which will make your life easier. In this case, you've not described what the input data is, but to me it looks very much like a Subversion access control file. So, with that in mind, I searched CPAN, and found SVN::Access: https://metacpan.org/module/SVN::Access Ahah - looks like it takes all the hard work out of things for you - it'll take care of the parsing, and let you just get at the data. So, glancing at its docs and whipping something up: [code] #!/usr/bin/perl use strict; use SVN::Access; my $acl = SVN::Access->new( acl_file => 'data' ); # Walk through the resources in the ACL file: for my $repopath ($acl->resources) { # For this resource, find out what authorisations exist: for my $auth ($repopath->authorized) { # $repopath->authorized gives us hashrefs of group => perms # TODO: I don't know if it might also give individual users, if # had per-user grants. my ($group, $perms) = each %$auth; if ($group =~ s/^@//) { # For each group, list out the members, along with the repo # permissions for my $user ($acl->group($group)->members) { say join '~', $user, $repopath->name, $group, $perms; } } else { die "Can't handle individual user permissions!"; } } } [/code] If you install SVN::Access, the above should work for you, and should produce mostly what you need, e.g.: ritched2~repo1:/~repo1_devs~r appalas~repo1:/~repo1_devs~r Handing the _admn groups as a special case is left as an exercise to you, but should be reasonably easy given the above as a starting point. -- David Precious ("bigpresh") http://www.preshweb.co.uk/ www.preshweb.co.uk/twitter www.preshweb.co.uk/linkedinwww.preshweb.co.uk/facebook www.preshweb.co.uk/cpanwww.preshweb.co.uk/github -- To unsubscribe, e-mail: beginners-unsubscr...@perl.org For additional commands, e-mail: beginners-h...@perl.org http://learn.perl.org/
Re: Newbie Where to start perhaps a hash-table is what I need to learn about ?
Very nice to know about CPAN. got a syntax error though with your script syntax error at ./getACLinfo.pl line 51, near "say join" Execution of ./getACLinfo.pl aborted due to compilation errors. [code] #!/usr/bin/perl use strict; use SVN::Access; my $acl = SVN::Access->new( acl_file => 'data' ); # Walk through the resources in the ACL file: for my $repopath ($acl->resources) { # For this resource, find out what authorisations exist: for my $auth ($repopath->authorized) { # $repopath->authorized gives us hashrefs of group => perms # TODO: I don't know if it might also give individual users, if # had per-user grants. my ($group, $perms) = each %$auth; if ($group =~ s/^@//) { # For each group, list out the members, along with the repo # permissions for my $user ($acl->group($group)->members) { say join '~', $user, $repopath->name, $group, $perms; } } else { die "Can't handle individual user permissions!"; } } } [/code] On Jul 3, 2012, at 11:25 AM, David Precious wrote: > On Tue, 3 Jul 2012 09:47:00 -0400 > Phil Pinkerton wrote: > >> I was given a project that seems to require Perl >> >> I could use a sample just to extract a list of names associated with >> a group or repo and print them. >> >> 1) Assigned a task to extract data fron a text file. >> 2) Output file needs to be very specific, and created monthly >> 3) tried doing in korn shell too complex >> 4) Figured Perl my best option, but don't know Perl >> 5) Got the Modern Perl in PDF format >> 6) Installed Strawberry Perl >> >> Output format is simple ??, but extracting the data and printing it >> I haven't a clue where to start. ( I am not trying to get someone to >> write this for me, just a simple extract and print example and point >> me in the right direction ) > > First pointer - a lot of things you want to do in Perl will be a lot > easier if you consult CPAN to see if someone has done this before and > shared reusable code which will make your life easier. > > In this case, you've not described what the input data is, but to me it > looks very much like a Subversion access control file. So, with that > in mind, I searched CPAN, and found SVN::Access: > > https://metacpan.org/module/SVN::Access > > Ahah - looks like it takes all the hard work out of things for you - > it'll take care of the parsing, and let you just get at the data. > > So, glancing at its docs and whipping something up: > > [code] > #!/usr/bin/perl > > use strict; > use SVN::Access; > my $acl = SVN::Access->new( acl_file => 'data' ); > > # Walk through the resources in the ACL file: > for my $repopath ($acl->resources) { ># For this resource, find out what authorisations exist: >for my $auth ($repopath->authorized) { > ># $repopath->authorized gives us hashrefs of group => perms ># TODO: I don't know if it might also give individual users, if ># had per-user grants. >my ($group, $perms) = each %$auth; > >if ($group =~ s/^@//) { ># For each group, list out the members, along with the repo ># permissions > >for my $user ($acl->group($group)->members) { >say join '~', $user, $repopath->name, $group, $perms; >} >} else { >die "Can't handle individual user permissions!"; >} >} > } > [/code] > > If you install SVN::Access, the above should work for you, and should > produce mostly what you need, e.g.: > > ritched2~repo1:/~repo1_devs~r > appalas~repo1:/~repo1_devs~r > > Handing the _admn groups as a special case is left as an exercise to > you, but should be reasonably easy given the above as a starting point. > > > > -- > David Precious ("bigpresh") > http://www.preshweb.co.uk/ www.preshweb.co.uk/twitter > www.preshweb.co.uk/linkedinwww.preshweb.co.uk/facebook > www.preshweb.co.uk/cpanwww.preshweb.co.uk/github > > > -- > To unsubscribe, e-mail: beginners-unsubscr...@perl.org > For additional commands, e-mail: beginners-h...@perl.org > http://learn.perl.org/ > > -- To unsubscribe, e-mail: beginners-unsubscr...@perl.org For additional commands, e-mail: beginners-h...@perl.org http://learn.perl.org/
Re: Newbie Where to start perhaps a hash-table is what I need to learn about ?
"Phil Pinkerton" wrote in message news:7a962da1-a5fb-4046-bbf5-f888dd715...@gmail.com... Very nice to know about CPAN. got a syntax error though with your script syntax error at ./getACLinfo.pl line 51, near "say join" Execution of ./getACLinfo.pl aborted due to compilation errors. [code] #!/usr/bin/perl use strict; use SVN::Access; my $acl = SVN::Access->new( acl_file => 'data' ); # Walk through the resources in the ACL file: for my $repopath ($acl->resources) { # For this resource, find out what authorisations exist: for my $auth ($repopath->authorized) { # $repopath->authorized gives us hashrefs of group => perms # TODO: I don't know if it might also give individual users, if # had per-user grants. my ($group, $perms) = each %$auth; if ($group =~ s/^@//) { # For each group, list out the members, along with the repo # permissions for my $user ($acl->group($group)->members) { say join '~', $user, $repopath->name, $group, $perms; } } else { die "Can't handle individual user permissions!"; } } } [/code] Hello Phil, Your script needs to use 5.010 or better to use the 'say' function. Right after the 'use strict;' line, enter 'use 5.010;' or a newer version if that is what you have. Or, replace say with 'print': print join('~', $user, $repopath->name, $group, $perms), "\n"; Chris -- To unsubscribe, e-mail: beginners-unsubscr...@perl.org For additional commands, e-mail: beginners-h...@perl.org http://learn.perl.org/
Re: Newbie Where to start perhaps a hash-table is what I need to learn about ?
On Wed, 4 Jul 2012 17:01:35 -0400 Phil Pinkerton wrote: > Very nice to know about CPAN. IMO, CPAN is one of Perl's strongest features :) > got a syntax error though with your script > > syntax error at ./getACLinfo.pl line 51, near "say join" > Execution of ./getACLinfo.pl aborted due to compilation errors. Whoops - as Chris pointed out, 'say' requires perl 5.10 or newer; I should have included 'use 5.010' in the script to indicate that, but forgot to (I have $PERL5OPT set to '-M5.010' on most boxes). Chris's mail contains full instructions to work round that problem. -- David Precious ("bigpresh") http://www.preshweb.co.uk/ www.preshweb.co.uk/twitter www.preshweb.co.uk/linkedinwww.preshweb.co.uk/facebook www.preshweb.co.uk/cpanwww.preshweb.co.uk/github -- To unsubscribe, e-mail: beginners-unsubscr...@perl.org For additional commands, e-mail: beginners-h...@perl.org http://learn.perl.org/
Re: Newbie Where to start perhaps a hash-table is what I need to learn about ?
Wow I am impressed on the 4th of July no-less I have revision 5 version 14 subversion 2 on linux and v5.12.3 on my mac On Jul 4, 2012, at 5:46 PM, Chris Charley wrote: > > > "Phil Pinkerton" wrote in message > news:7a962da1-a5fb-4046-bbf5-f888dd715...@gmail.com... >> Very nice to know about CPAN. >> >> got a syntax error though with your script >> >> syntax error at ./getACLinfo.pl line 51, near "say join" >> Execution of ./getACLinfo.pl aborted due to compilation errors. >> >> [code] >> #!/usr/bin/perl >> >> use strict; >> use SVN::Access; >> my $acl = SVN::Access->new( acl_file => 'data' ); >> >> # Walk through the resources in the ACL file: >> for my $repopath ($acl->resources) { >> # For this resource, find out what authorisations exist: >> for my $auth ($repopath->authorized) { >> >> # $repopath->authorized gives us hashrefs of group => perms >> # TODO: I don't know if it might also give individual users, if >> # had per-user grants. >> my ($group, $perms) = each %$auth; >> >> if ($group =~ s/^@//) { >> # For each group, list out the members, along with the repo >> # permissions >> >> for my $user ($acl->group($group)->members) { >> say join '~', $user, $repopath->name, $group, $perms; >> } >> } else { >> die "Can't handle individual user permissions!"; >> } >> } >> } >> [/code] > > Hello Phil, > > Your script needs to use 5.010 or better to use the 'say' function. > > Right after the 'use strict;' line, enter 'use 5.010;' or > a newer version if that is what you have. > > Or, replace say with 'print': > > print join('~', $user, $repopath->name, $group, $perms), "\n"; > > Chris > > -- > To unsubscribe, e-mail: beginners-unsubscr...@perl.org > For additional commands, e-mail: beginners-h...@perl.org > http://learn.perl.org/ > > -- To unsubscribe, e-mail: beginners-unsubscr...@perl.org For additional commands, e-mail: beginners-h...@perl.org http://learn.perl.org/
Re: Newbie Where to start perhaps a hash-table is what I need to learn about ?
> > "Phil Pinkerton" wrote in message > news:7a962da1-a5fb-4046-bbf5-f888dd715...@gmail.com... >> Very nice to know about CPAN. >> >> got a syntax error though with your script >> >> syntax error at ./getACLinfo.pl line 51, near "say join" >> Execution of ./getACLinfo.pl aborted due to compilation errors. >> >> [code] >> #!/usr/bin/perl >> >> use strict; >> use SVN::Access; >> my $acl = SVN::Access->new( acl_file => 'data' ); >> >> # Walk through the resources in the ACL file: >> for my $repopath ($acl->resources) { >> # For this resource, find out what authorisations exist: >> for my $auth ($repopath->authorized) { >> >> # $repopath->authorized gives us hashrefs of group => perms >> # TODO: I don't know if it might also give individual users, if >> # had per-user grants. >> my ($group, $perms) = each %$auth; >> >> if ($group =~ s/^@//) { >> # For each group, list out the members, along with the repo >> # permissions >> >> for my $user ($acl->group($group)->members) { >> say join '~', $user, $repopath->name, $group, $perms; >> } >> } else { >> die "Can't handle individual user permissions!"; >> } >> } >> } >> [/code] > > Hello Phil, > > Your script needs to use 5.010 or better to use the 'say' function. > > Right after the 'use strict;' line, enter 'use 5.010;' or > a newer version if that is what you have. > added use 5.12.3 made some progress but still have errors $ ./getACLinfo.pl Use of uninitialized value $current_resource in string eq at /Library/Perl/5.12/SVN/Access.pm line 70, line 3. Use of uninitialized value $current_resource in string eq at /Library/Perl/5.12/SVN/Access.pm line 73, line 3. Use of uninitialized value $resource_name in string eq at /Library/Perl/5.12/SVN/Access.pm line 259, line 3. Use of uninitialized value $resource_name in pattern match (m//) at /Library/Perl/5.12/SVN/Access.pm line 265, line 3. Use of uninitialized value $resource_name in concatenation (.) or string at /Library/Perl/5.12/SVN/Access.pm line 266, line 3. Invalid resource format in ! (format 'repo:/path')! #!/usr/bin/perl [code] use strict; use 5.12.3; use SVN::Access; my $acl = SVN::Access->new( acl_file => '/Users/pnkerton/scripts/ACLexample.txt' ); # Walk through the resources in the ACL file: for my $repopath ($acl->resources) { # For this resource, find out what authorisations exist: for my $auth ($repopath->authorized) { # $repopath->authorized gives us hashrefs of group => perms # TODO: I don't know if it might also give individual users, if # had per-user grants. my ($group, $perms) = each %$auth; if ($group =~ s/^@//) { # For each group, list out the members, along with the repo # permissions for my $user ($acl->group($group)->members) { say join "~", $user, $repopath->name, $group, $perms; } } else { die "Can't handle individual user permissions!"; } } } [/code] -- To unsubscribe, e-mail: beginners-unsubscr...@perl.org For additional commands, e-mail: beginners-h...@perl.org http://learn.perl.org/
Re: Newbie Where to start perhaps a hash-table is what I need to learn about ?
On Jul 4, 2012, at 6:02 PM, David Precious wrote: > On Wed, 4 Jul 2012 17:01:35 -0400 > Phil Pinkerton wrote: > >> Very nice to know about CPAN. > > IMO, CPAN is one of Perl's strongest features :) > > >> got a syntax error though with your script >> >> syntax error at ./getACLinfo.pl line 51, near "say join" >> Execution of ./getACLinfo.pl aborted due to compilation errors. > > Whoops - as Chris pointed out, 'say' requires perl 5.10 or newer; I > should have included 'use 5.010' in the script to indicate that, but > forgot to (I have $PERL5OPT set to '-M5.010' on most boxes). > > Chris's mail contains full instructions to work round that problem. > ok using the example input file I got errors Use of uninitialized value $current_resource in string eq at /Library/Perl/5.12/SVN/Access.pm line 70, line 3. Use of uninitialized value $current_resource in string eq at /Library/Perl/5.12/SVN/Access.pm line 73, line 3. Use of uninitialized value $resource_name in string eq at /Library/Perl/5.12/SVN/Access.pm line 259, line 3. Use of uninitialized value $resource_name in pattern match (m//) at /Library/Perl/5.12/SVN/Access.pm line 265, line 3. Use of uninitialized value $resource_name in concatenation (.) or string at /Library/Perl/5.12/SVN/Access.pm line 266, line 3. Invalid resource format in ! (format 'repo:/path')! but substituting a copy of our actual svn access file I get Can't add new group cvs_cscda_owners: group already exists! So I may have a format issue with the example inout file phil -- To unsubscribe, e-mail: beginners-unsubscr...@perl.org For additional commands, e-mail: beginners-h...@perl.org http://learn.perl.org/
Re: Newbie Where to start perhaps a hash-table is what I need to learn about ?
On Jul 4, 2012, at 5:46 PM, Chris Charley wrote: > > > "Phil Pinkerton" wrote in message > news:7a962da1-a5fb-4046-bbf5-f888dd715...@gmail.com... >> Very nice to know about CPAN. >> >> got a syntax error though with your script >> >> syntax error at ./getACLinfo.pl line 51, near "say join" >> Execution of ./getACLinfo.pl aborted due to compilation errors. >> >> [code] >> #!/usr/bin/perl >> >> use strict; >> use SVN::Access; >> my $acl = SVN::Access->new( acl_file => 'data' ); >> >> # Walk through the resources in the ACL file: >> for my $repopath ($acl->resources) { >> # For this resource, find out what authorisations exist: >> for my $auth ($repopath->authorized) { >> >> # $repopath->authorized gives us hashrefs of group => perms >> # TODO: I don't know if it might also give individual users, if >> # had per-user grants. >> my ($group, $perms) = each %$auth; >> >> if ($group =~ s/^@//) { >> # For each group, list out the members, along with the repo >> # permissions >> >> for my $user ($acl->group($group)->members) { >> say join '~', $user, $repopath->name, $group, $perms; >> } >> } else { >> die "Can't handle individual user permissions!"; >> } >> } >> } >> [/code] > > Hello Phil, > > Your script needs to use 5.010 or better to use the 'say' function. > > Right after the 'use strict;' line, enter 'use 5.010;' or > a newer version if that is what you have. > > Or, replace say with 'print': > > print join('~', $user, $repopath->name, $group, $perms), "\n"; > > Chris After switching input files It partially works but only for the first repository in the access file? -- To unsubscribe, e-mail: beginners-unsubscr...@perl.org For additional commands, e-mail: beginners-h...@perl.org http://learn.perl.org/
Re: Newbie Where to start perhaps a hash-table is what I need to learn about ?
On Thu, 5 Jul 2012 09:30:01 -0400 Phil Pinkerton wrote: > ok using the example input file I got errors > > Use of uninitialized value $current_resource in string eq > at /Library/Perl/5.12/SVN/Access.pm line 70, line 3. [...] > Invalid resource format in ! (format 'repo:/path')! Ah, I recall now I had to uncomment the "#[groups]" line in the example input you originally supplied before the script would work. > but substituting a copy of our actual svn access file I get > > Can't add new group cvs_cscda_owners: group already exists! > > So I may have a format issue with the example inout file Yeah, sounds like there's something potentially wrong with the input file - have you perhaps defined the cvs_cscda_owners group twice? -- To unsubscribe, e-mail: beginners-unsubscr...@perl.org For additional commands, e-mail: beginners-h...@perl.org http://learn.perl.org/
Re: Newbie Where to start perhaps a hash-table is what I need to learn about ?
On Jul 5, 2012, at 10:46 AM, David Precious wrote: > On Thu, 5 Jul 2012 09:30:01 -0400 > Phil Pinkerton wrote: >> ok using the example input file I got errors >> >> Use of uninitialized value $current_resource in string eq >> at /Library/Perl/5.12/SVN/Access.pm line 70, line 3. > [...] >> Invalid resource format in ! (format 'repo:/path')! > > Ah, I recall now I had to uncomment the "#[groups]" line in the example > input you originally supplied before the script would work. > > >> but substituting a copy of our actual svn access file I get >> >> Can't add new group cvs_cscda_owners: group already exists! >> >> So I may have a format issue with the example inout file > > Yeah, sounds like there's something potentially wrong with the input > file - have you perhaps defined the cvs_cscda_owners group twice? > Yes actually there were several duplicates. Once they were all removed the script seemed to work but just for the first Repository entry ? Not sure what is missing since it found all those duplicates but only seemed to actually complete just the first repo The final message after listing the last entry of the first repository: "Can't handle individual user permissions! at line 60" of the script ( which is just that message ) die " Can't handle individual user permissions!"; -- To unsubscribe, e-mail: beginners-unsubscr...@perl.org For additional commands, e-mail: beginners-h...@perl.org http://learn.perl.org/
Re: Newbie Where to start perhaps a hash-table is what I need to learn about ?
On Jul 5, 2012, at 10:46 AM, David Precious wrote: > On Thu, 5 Jul 2012 09:30:01 -0400 > Phil Pinkerton wrote: >> ok using the example input file I got errors >> >> Use of uninitialized value $current_resource in string eq >> at /Library/Perl/5.12/SVN/Access.pm line 70, line 3. > [...] >> Invalid resource format in ! (format 'repo:/path')! > > Ah, I recall now I had to uncomment the "#[groups]" line in the example > input you originally supplied before the script would work. > > >> but substituting a copy of our actual svn access file I get >> >> Can't add new group cvs_cscda_owners: group already exists! >> >> So I may have a format issue with the example inout file > > Yeah, sounds like there's something potentially wrong with the input > file - have you perhaps defined the cvs_cscda_owners group twice? > I think I found the problem at first I though it was the double spaces ( lines) between the repositories, but after I commented out what listed properly I re-ran and got further down the list. What I saw was a pattern that was if a repository had subdirectories listed but no group assigned the script stopped When I commented those lines out or added groups it continued. example: [code] [foo::/] @group = rw @group2 = r [foo:/branches] [foo;/tags] [foo:/trunk 'script stops here' < example 2: [/code] [code] [foo::/] @group = rw @group2 = r [foo:/branches] @group3 = rw @group1 = r [foo;/tags] @grou4 = rw @group2 = rrw [foo:/trunk @group5 = rw @group6 = r 'script continues ok' < --- [/code] phil -- To unsubscribe, e-mail: beginners-unsubscr...@perl.org For additional commands, e-mail: beginners-h...@perl.org http://learn.perl.org/
Re: Newbie Where to start perhaps a hash-table is what I need to learn about ?
On Jul 5, 2012, at 10:46 AM, David Precious wrote: > On Thu, 5 Jul 2012 09:30:01 -0400 > Phil Pinkerton wrote: >> ok using the example input file I got errors >> >> Use of uninitialized value $current_resource in string eq >> at /Library/Perl/5.12/SVN/Access.pm line 70, line 3. > [...] >> Invalid resource format in ! (format 'repo:/path')! > > Ah, I recall now I had to uncomment the "#[groups]" line in the example > input you originally supplied before the script would work. > > >> but substituting a copy of our actual svn access file I get >> >> Can't add new group cvs_cscda_owners: group already exists! >> >> So I may have a format issue with the example inout file > > Yeah, sounds like there's something potentially wrong with the input > file - have you perhaps defined the cvs_cscda_owners group twice? > The script also stops when a single user is entered instead of a group This should not happen example: [code] [foo:/] @group1 = rw @group2 = rw [foo:/trunk] userID = r I believe for Subversion this is a valid entry > but script stops when not a group [/code] phil -- To unsubscribe, e-mail: beginners-unsubscr...@perl.org For additional commands, e-mail: beginners-h...@perl.org http://learn.perl.org/