/**
  * @see sfTask
  */
 protected function execute($arguments = array(), $options = array())
 {
     // load Propel configuration before Phing
     $databaseManager = new sfDatabaseManager($this->configuration);
     require_once sfConfig::get('sf_symfony_lib_dir') . '/plugins/sfPropelPlugin/lib/propel/sfPropelAutoload.php';
     $buildAll = new sfPropelBuildAllTask($this->dispatcher, $this->formatter);
     $buildAll->setCommandApplication($this->commandApplication);
     $buildAll->run(array(), $options['skip-forms'] ? array('--skip-forms') : array());
     $loadData = new sfPropelLoadDataTask($this->dispatcher, $this->formatter);
     $loadData->setCommandApplication($this->commandApplication);
     $loadData->run(array('application' => $arguments['application']), array('--env=' . $options['env'], '--connection=' . $options['connection']));
 }
 /**
  * @see sfTask
  */
 protected function execute($arguments = array(), $options = array())
 {
     // load Propel configuration before Phing
     $databaseManager = new sfDatabaseManager($this->configuration);
     $buildAll = new sfPropelBuildAllTask($this->dispatcher, $this->formatter);
     $buildAll->setCommandApplication($this->commandApplication);
     $buildAll->setConfiguration($this->configuration);
     $ret = $buildAll->run(array(), array('phing-arg' => $options['phing-arg'], 'skip-forms' => $options['skip-forms'], 'classes-only' => $options['classes-only'], 'no-confirmation' => $options['no-confirmation'], 'connection' => $options['connection']));
     if (0 == $ret) {
         $loadData = new sfPropelDataLoadTask($this->dispatcher, $this->formatter);
         $loadData->setCommandApplication($this->commandApplication);
         $loadData->setConfiguration($this->configuration);
         $loadData->run($options['dir'], array('append' => $options['append'], 'connection' => $options['connection']));
     }
     $this->cleanup();
     return $ret;
 }
 /**
  * @see sfTask
  */
 protected function execute($arguments = array(), $options = array())
 {
     // load Propel configuration before Phing
     $databaseManager = new sfDatabaseManager($this->configuration);
     require_once dirname(__FILE__) . '/../addon/sfPropelAutoload.php';
     $buildAll = new sfPropelBuildAllTask($this->dispatcher, $this->formatter);
     $buildAll->setCommandApplication($this->commandApplication);
     $buildAllOptions = array('--env=' . $options['env'], '--connection=' . $options['connection']);
     foreach ($options['phing-arg'] as $arg) {
         $buildAllOptions[] = '--phing-arg=' . escapeshellarg($arg);
     }
     if ($options['application']) {
         $buildAllOptions[] = '--application=' . $options['application'];
     }
     if ($options['skip-forms']) {
         $buildAllOptions[] = '--skip-forms';
     }
     if ($options['classes-only']) {
         $buildAllOptions[] = '--classes-only';
     }
     if ($options['no-confirmation']) {
         $buildAllOptions[] = '--no-confirmation';
     }
     $ret = $buildAll->run(array(), $buildAllOptions);
     if (0 == $ret) {
         $loadData = new sfPropelLoadDataTask($this->dispatcher, $this->formatter);
         $loadData->setCommandApplication($this->commandApplication);
         $dataLoadOptions = array('--env=' . $options['env'], '--connection=' . $options['connection']);
         if ($options['application']) {
             $dataLoadOptions[] = '--application=' . $options['application'];
         }
         if ($options['dir']) {
             foreach ($options['dir'] as $dir) {
                 $dataLoadOptions[] = '--dir=' . $dir;
             }
         }
         if ($options['append']) {
             $dataLoadOptions[] = '--append';
         }
         $loadData->run(array(), $dataLoadOptions);
     }
     $this->cleanup();
     return $ret;
 }
Example #4
0
 protected function execute($arguments = array(), $options = array())
 {
     ini_set('memory_limit', '128M');
     // initialize the database connection
     $databaseManager = new sfDatabaseManager($this->configuration);
     $connection = $databaseManager->getDatabase($options['connection'])->getConnection();
     // delete previous tables
     $deleteTablesTask = new deleteTablesTask($this->dispatcher, $this->formatter);
     $return = $deleteTablesTask->run(array(), array('no-confirmation', 'connection' => $options['connection']));
     if ($return) {
         return $return;
     }
     // generates Propel model and form classes, SQL and initializes the database
     $propelBuildAllTask = new sfPropelBuildAllTask($this->dispatcher, $this->formatter);
     $return = $propelBuildAllTask->run(array(), array('no-confirmation'));
     if ($return) {
         return $return;
     }
     // loads YAML fixture data
     $propelDataLoadTask = new sfPropelDataLoadTask($this->dispatcher, $this->formatter);
     $return = $propelDataLoadTask->run(array(), array());
     if ($return) {
         return $return;
     }
     // clear cache
     $clearCacheTask = new cacheClearTask($this->dispatcher, $this->formatter);
     $return = $clearCacheTask->run(array(), array());
     if ($return) {
         return $return;
     }
     // clear log
     $clearLogTask = new logClearTask($this->dispatcher, $this->formatter);
     $return = $clearLogTask->run(array(), array());
     if ($return) {
         return $return;
     }
     // permission
     $permissionsTask = new sfProjectPermissionsTask($this->dispatcher, $this->formatter);
     $return = $permissionsTask->run(array(), array());
     if ($return) {
         return $return;
     }
     return 0;
 }