static $cli_desc = "Update SQL - Beta";
-
+
var $cli = false;
function getAuth() {
if (preg_match('/migrate/i', basename($fn))) { // skip migration scripts at present..
continue;
}
-
+ // .my.sql but not .pg.sql
+ if (preg_match('/#.[a-z]{2}\.sql#i', basename($bfn))
+ && !preg_match('/#\.my\.sql#i', basename($bfn))
+ ) { // skip migration scripts at present..
+ continue;
+ }
$cmd = "$mysql_cmd -f < " . escapeshellarg($fn) ;
echo $cmd. ($this->cli ? "\n" : "<BR>\n");
$fd = $this->rootDir. "/Pman/$m/DataObjects";
- foreach(glob($fd.'/*.sql') as $fn) {
+ foreach(glob($fd.'/*.sql') as $bfn) {
- if (preg_match('/migrate/i', basename($fn))) { // skip migration scripts at present..
+ if (preg_match('/migrate/i', basename($bfn))) { // skip migration scripts at present..
continue;
}
- $fn = $this->convertToPG($fn);
+ if (preg_match('#\.[a-z]{2}\.sql#i', basename($bfn))
+ && !preg_match('#\.pg\.sql#i', basename($bfn))
+ ) { // skip migration scripts at present..
+ continue;
+ }
+ // files ending in .pg.sql are native postgres files..
+ $fn = preg_match('#\.pg\.sql$#', basename($bfn)) ? false : $this->convertToPG($bfn);
- $cmd = "$psql_cmd -f " . escapeshellarg($fn) ;
+ $cmd = "$psql_cmd -f " . escapeshellarg($fn ? $fn : $bfn) . ' 2>&1' ;
+
+ echo "$bfn: $cmd ". ($this->cli ? "\n" : "<BR>\n");
- echo $cmd. ($this->cli ? "\n" : "<BR>\n");
passthru($cmd);
-
- unlink($fn);
+
+ if ($fn) {
+ unlink($fn);
+ }
}
}
*/
function convertToPG($src)
{
- $fn = $this->tempName('.sql');
+ $fn = $this->tempName('sql');
$ret = array( ); // pad it a bit.
$extra = array("", "" );
}
$ret = array_merge($extra,$ret);
- echo implode("\n", $ret); //exit;
+ //echo implode("\n", $ret); //exit;
file_put_contents($fn, implode("\n", $ret));
return $fn;