gwynne Fri Oct 31 03:13:25 2008 UTC Modified files: /SVNROOT run-conversion.php Log: Various passes performed by the script are now specified in a more extensible manner http://cvs.php.net/viewvc.cgi/SVNROOT/run-conversion.php?r1=1.2&r2=1.3&diff_format=u Index: SVNROOT/run-conversion.php diff -u SVNROOT/run-conversion.php:1.2 SVNROOT/run-conversion.php:1.3 --- SVNROOT/run-conversion.php:1.2 Sun Oct 26 23:09:41 2008 +++ SVNROOT/run-conversion.php Fri Oct 31 03:13:25 2008 @@ -1,6 +1,13 @@ <?php -$version = '$Revision: 1.2 $'; +$version = '$Revision: 1.3 $'; + +$passes = array( + 'svncreate', // svnadmin create $SVNROOT + 'cvs2svn', // cvs2svn --options + 'svnrm', // svn rm $SVNROOT/*/.svn + 'reorg', // Reorganize repository +); require_once 'Console/CommandLine.php'; @@ -30,9 +37,9 @@ 'short_name' => '-p', 'long_name' => '--pass', 'default' => NULL, - 'description' => 'Which pass to run. One of: svncreate, cvs2svn, svnrm, reorg. If not specified, all passes will run.', + 'description' => 'Which pass to run. One of: ' . implode(', ', $passes) . '. If not specified, all passes will run.', 'action' => 'StoreString', - 'choices' => array('svncreate', 'cvs2svn', 'svnrm', 'reorg'))); + 'choices' => $passes)); try { $result = $cmdline_parser->parse(); @@ -73,7 +80,16 @@ v(1, "PHP Group CVS->SVN respository conversion.\n"); v(1, "Started at " . date(DATE_RFC2822) . "\n"); -if (is_null($options['pass']) || $options['pass'] == 'svncreate') { +foreach ($passes as $pass) { + if (is_null($options['pass']) || $options['pass'] == $pass) { + call_user_func('pass_' . $pass); + } +} + +function pass_svncreate() +{ + global $options; + v(1, "Running svncreate pass...\n"); $command = "exec svnadmin create {$options['svnroot']} 2>&1"; @@ -86,7 +102,10 @@ v(3, "Output:\n" . implode("\n", $output) . "\n"); } -if (is_null($options['pass']) || $options['pass'] == 'cvs2svn') { +function pass_cvs2svn() +{ + global $options; + v(1, "Running cvs2svn pass...\n"); $command = "exec cvs2svn --options=phpsvn.options"; @@ -116,7 +135,10 @@ v(3, "Output is in ./phpsvn.conversion.out.\n"); } -if (is_null($options['pass']) || $options['pass'] == 'svnrm') { +function pass_svnrm() +{ + global $options; + v(1, "Running svnrm pass...\n"); $command = "exec svn rm -m \"[SVN CONVERSION] Removing .svn directories that break SVN checkout.\" " . @@ -153,7 +175,10 @@ v(3, "Output:\n" . implode("\n", $output) . "\n"); } -if (is_null($options['pass']) || $options['pass'] == 'reorg') { +function pass_reorg() +{ + global $options; + error("If this were implemented yet, a series of svn cp, svn rm, and svn mv commands would follow. It isn't, so they don't. Sorry.\n"); }
-- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php