Esempio n. 1
0
 public function addJob()
 {
     $request =& HTTPRequest::instance();
     $group_id = $request->get('group_id');
     $job_url = $request->get('hudson_job_url');
     try {
         $job = new HudsonJob($job_url);
         $use_svn_trigger = $request->get('hudson_use_svn_trigger') === 'on';
         $use_cvs_trigger = $request->get('hudson_use_cvs_trigger') === 'on';
         $token = $request->get('hudson_trigger_token');
         $svn_paths = $this->svn_paths_updater->transformContent($request->get('hudson_svn_paths'));
         $job_dao = new PluginHudsonJobDao(CodendiDataAccess::instance());
         $jobId = $job_dao->createHudsonJob($group_id, $job_url, $job->getName(), $use_svn_trigger, $use_cvs_trigger, $token, $svn_paths);
         if (!$jobId) {
             $GLOBALS['Response']->addFeedback('error', $GLOBALS['Language']->getText('plugin_hudson', 'add_job_error'));
         } else {
             $em = EventManager::instance();
             $params = array('job_id' => $jobId, 'request' => $request);
             $em->processEvent('save_ci_triggers', $params);
             $GLOBALS['Response']->addFeedback('info', $GLOBALS['Language']->getText('plugin_hudson', 'job_added'));
             $GLOBALS['Response']->redirect('/plugins/hudson/?group_id=' . intval($group_id));
         }
     } catch (Exception $e) {
         $GLOBALS['Response']->addFeedback('error', $e->getMessage());
     }
 }