コード例 #1
0
 public function gitDeployProject($git_branch, $extends = null)
 {
     $config = Config::get('github');
     $config['branch'] = $git_branch;
     $config['post_data'] = Input::get('payload');
     if ($config['active'] === FALSE) {
         App::abort(403, 'Модуль отключен');
     }
     if ($config['test_mode_key'] == $extends) {
         $config['test_mode'] = TRUE;
     } else {
         $config['test_mode'] = FALSE;
     }
     $github = new GitHub();
     $github->init($config);
     if ($extends == 'test') {
         echo $github->testConnect('/usr/bin/ssh -T git@github.com');
     } else {
         echo $github->execute('git reset --hard HEAD');
         echo "\n";
         echo $github->pull();
         echo "\n";
         echo $github->setAccessMode();
         echo "\n";
         foreach ($config['directories'] as $directory) {
             echo $github->setAccessMode($directory, '0777');
         }
     }
 }