app\controllers\ConfController::actionCopy PHP Method

actionCopy() public method

复制项目配置
public actionCopy ( $projectId ) : string
return string
    public function actionCopy($projectId)
    {
        $project = $this->findModel($projectId);
        // 复制为新项目
        $project->name .= ' - copy';
        $copy = new Project();
        $copy->load($project->getAttributes(), '');
        if (!$copy->save()) {
            throw new \Exception(yii::t('conf', 'copy failed'));
        }
        // 删除ansible配置文件
        if ($project->ansible) {
            copy(Project::getAnsibleHostsFile($project->id), Project::getAnsibleHostsFile($copy->id));
        }
        $this->renderJson([]);
    }