BUG 8607 gulliver propel-build-sql script needs a way to specify... SOLVED.

- Gulliver propel-build-sql script needs a way to specify username and password of the database.
- Was commented on the generation of plugins the task propel-build-sql.
This commit is contained in:
Hector Cortez
2012-03-23 15:30:58 -04:00
parent 297f57fe3e
commit d301830c8c

View File

@@ -223,43 +223,54 @@ function run_propel_build_model($task, $args)
function run_propel_build_sql($task, $args)
{
if ( isset ( $args[1] ) ) {
$propelIniFile = $args[1] . '.ini';
$alternateDir = '';
if ( ! file_exists ( 'config' . PATH_SEP . $propelIniFile ) ) {
$path = explode ( '/', $args[1] );
if ( count($path) > 2 )
throw new Exception('the propel.ini must be in your config directory.');
if ( count($path) == 1 )
$path[1] = 'propel';
// if ( isset ( $args[1] ) ) {
// $propelIniFile = $args[1] . '.ini';
// $alternateDir = '';
// if ( ! file_exists ( 'config' . PATH_SEP . $propelIniFile ) ) {
// $path = explode ( '/', $args[1] );
// if ( count($path) > 2 )
// throw new Exception('the propel.ini must be in your config directory.');
// if ( count($path) == 1 )
// $path[1] = 'propel';
//
// $propelIniFile = 'plugins' .PATH_SEP . $path[0] . PATH_SEP . 'config' . PATH_SEP . $path[1] . '.ini';
// if ( ! file_exists($propelIniFile) )
// throw new Exception("the propel.ini must be in your config directory. ($propelIniFile)");
//
// pake_echo_action('propel.ini', "using the file : $propelIniFile ");
// $alternateDir = PATH_PLUGINS . $path[0] . PATH_SEP;
// //_call_phing($task, 'om', false, $path[1] . '.ini' , PATH_PLUGINS . $path[0] . PATH_SEP );
// //return;
// }
//
// }
$propelIniFile = 'plugins' .PATH_SEP . $path[0] . PATH_SEP . 'config' . PATH_SEP . $path[1] . '.ini';
if ( ! file_exists($propelIniFile) )
throw new Exception("the propel.ini must be in your config directory. ($propelIniFile)");
$aDB = array('mysql', 'mssql', 'oracle', 'pgsql');
pake_echo_action('propel.ini', "using the file : $propelIniFile ");
$alternateDir = PATH_PLUGINS . $path[0] . PATH_SEP;
//_call_phing($task, 'om', false, $path[1] . '.ini' , PATH_PLUGINS . $path[0] . PATH_SEP );
//return;
if ( count($args) > 1 ) {
throw new Exception("specify only one parameter, valid values are: mysql, mssql, oracle, pgsql.\nexample: ./gulliver propel-build-sql mysql");
}
if ( !in_array($args[0], $aDB)) {
throw new Exception('specify database Adapter, valid values are: mysql, mssql, oracle, pgsql.');
}
else {
switch ( $args [0]) {
case 'mysql' : if ( $alternateDir != '' )
_call_phing($task, 'sql', false, 'propel.mysql.ini', $alternateDir );
else
_call_phing($task, 'sql', true, 'propel.mysql.ini' );
break;
case 'mssql' : _call_phing($task, 'sql', true, 'propel.mssql.ini' );
break;
case 'oracle' : _call_phing($task, 'sql', true, 'propel.oracle.ini' );
break;
case 'pgsql' : _call_phing($task, 'sql', true, 'propel.pgsql.ini' );
break;
default :
throw new Exception('specify database Adapter, valid values are: mysql, mssql, oracle, pgsql.');
}
}
switch ( $args [0]) {
case 'mysql' : if ( $alternateDir != '' )
_call_phing($task, 'sql', false, 'propel.mysql.ini', $alternateDir );
else
_call_phing($task, 'sql', true, 'propel.mysql.ini' );
break;
case 'mssql' : _call_phing($task, 'sql', true, 'propel.mssql.ini' );
break;
case 'oracle' : _call_phing($task, 'sql', true, 'propel.oracle.ini' );
break;
case 'pgsql' : _call_phing($task, 'sql', true, 'propel.pgsql.ini' );
break;
default :
throw new Exception('specify database Adapter, valid values are: mysql, mssql, oracle, pgsql.');
}
}
function run_propel_build_db($task, $args)