Could not determine database connection parameters. Pass --db-url option when site-install i am writing drush script to install drupal site

 $build_make_file = ($build_src = drush_get_option('build-src', FALSE)) ? $build_src : '../builds/build-drupal-core.make ';
    $dest .= ($build_dest = drush_get_option('build-dest', FALSE)) ? $build_dest : 'test';
    $options = array();
    $options['debug'] = drush_get_option('debug', FALSE);
    $options['no-core'] = drush_get_option('no-core', FALSE);
    ($contr_dest = drush_get_option('contrib-destination', FALSE)) ? $options['contrib-destination'] = $contr_dest : '' ;
    $status = drush_invoke_process('@none', 'make', array($build_make_file, $dest), $options);
    drush_print('Site Download '.(($status) ? "SUCCESS" : "FAILURE" ));

    // go to install directory before we do anything else
    drush_op('chdir', $dest);

    $dbHost="localhost";
    $dbName="drupal_test_db";
    $dbUser="test_user";
    $dbPassword="xxxxxx";
    $dbPort ="3306";
    $status = drush_invoke_process('@self', 
                                   'si', 
                                   array(
                                          'db-url' =&gt; 'mysql://'.$dbUser.':'.$dbPassword.'@'.$dbHost.':' . $dbPort . '/'.$dbName,
                                          'account-pass' =&gt; $AdminPassword,
                                      )
                                  );
    drush_print('Site Install - ' . (($status) ? 'SUCCESS' : 'FAILURE'));


The site download part works where it downloads the make file. The second part running 'site-install' returns an error:

Could not determine database connection parameters. Pass --db-url option


How to call 'site-install' command from the drush script correctly? I would appreciate much of your help. Thank you
It appears, i passed one too few parameters to 'drush_invoke_process'. The documentation shows:

function drush_invoke_process($site_alias_record, $command_name, $commandline_args = array(), $commandline_options = array(),....)


In my case, I was not passing in the 'commandline_args' making the 'commandline_options' become 'commandline_args' instead of options including 'db-url'

Here, is the correct one:

$status = drush_invoke_process('@self', 'si', array('standard'), array(
                                                        'db-url' =&gt; 'mysql://'.$dbUser.':'.$dbPassword.'@'.$dbHost.':' . $dbPort . '/'.$dbName,
                                                        'account-pass' =&gt; $AdminPassword,
                                                   )
                              );


I hope this helps anyone