private function _choose_project() { $name_prefix = isset($this->_param['name_prefix']) ? $this->_param['name_prefix'] : ''; $project_biz = Biz_Project::get_instance(); $list = $project_biz->get_all_list($name_prefix); $this->_request->set_attribute('list', $list); $this->_request->set_attribute('name_prefix', $name_prefix); $this->_request->set_attribute('page_title', '请先选择项目'); $this->_request->set_attribute('viewpage', 'version/choose'); $this->_request->set_attribute('menu_id', 3); return "Abstract"; }
private function _switch() { $pid = intval($this->_param['pid']); $param = isset($this->_param['param']) ? trim($this->_param['param']) : ''; $desc = isset($this->_param['desc']) ? trim($this->_param['desc']) : ''; $project = Biz_Project::get_instance()->get_info($pid); $input = array(); $input['pid'] = $pid; $input['user_id'] = $this->_user->id; $input['op'] = 2; $input['param'] = $param; $input['desc'] = $desc; $input['status'] = 0; $oplog_id = Biz_OperateLog::get_instance()->insert($input); $input['id'] = $oplog_id; Biz_Command::get_instance()->insert($input); Biz_Project::get_instance()->update($pid, array('pversion' => $project->version, 'version' => $param)); $this->_response->redirect(PageHelper::get_domain() . '/project/op?pid=' . $pid); }
private function _delete() { $pid = intval($this->_param['pid']); Biz_Project::get_instance()->delete($pid); $url = PageHelper::get_domain() . '/project/list'; $this->_response->redirect($url); }
private function _get_switch_cmd($pid, $param) { $pid = intval($pid); $param = trim($param); $project = Biz_Project::get_instance()->get_info($pid); $script_path = APF::get_instance()->get_config('script_path'); $hosts = array(); foreach ($project->hosts as $host) { $hosts[] = $host->hostname; } $hosts = implode(',', $hosts); $cmd = sprintf("sh %s/switch.sh -p '%s' -h '%s' -f '%s'", $script_path, $param, $hosts, $project->version_file); return $cmd; }