コード例 #1
0
 public function copy_common_stage()
 {
     $viewData = new ViewData();
     $deployment = $this->getDeployment('host_template_error');
     $hostTemplate = $this->getParam('hosttemp');
     if ($hostTemplate === false) {
         $viewData->header = $this->getErrorHeader('host_template_error');
         $viewData->error = 'Unable to detect host template specified in post params';
         $this->sendError('generic_error', $viewData);
     }
     $modrevision = RevDeploy::getDeploymentNextRev($deployment);
     $commonRepo = RevDeploy::getDeploymentCommonRepo($deployment);
     $commonrevision = RevDeploy::getDeploymentRev($commonRepo);
     $viewData->hosttemplates = RevDeploy::getCommonMergedDeploymentHostTemplates($deployment, $modrevision);
     $viewData->hostchkcmds = RevDeploy::getCommonMergedDeploymentHostCheckCommands($deployment, $modrevision);
     $viewData->timeperiods = RevDeploy::getCommonMergedDeploymentTimeperiods($deployment, $modrevision);
     $viewData->hostInfo = RevDeploy::getDeploymentHostTemplate($commonRepo, $hostTemplate, $commonrevision);
     $viewData->contacts = RevDeploy::getCommonMergedDeploymentContacts($deployment, $modrevision);
     $viewData->contactgroups = RevDeploy::getCommonMergedDeploymentContactGroups($deployment, $modrevision);
     $viewData->deployment = $deployment;
     $viewData->hosttemplate = $hostTemplate;
     $viewData->action = 'copy_write';
     $this->sendResponse('host_template_action_stage', $viewData);
 }
コード例 #2
0
                $results[$httemp] = RevDeploy::getDeploymentHostTemplate($deployment, $httemp, $deployRev);
            }
        }
        if (empty($results)) {
            $apiResponse = new APIViewData(1, $deployment, "Unable to detect host templates specified: {$hosttemplate}");
            $app->halt(404, $apiResponse->returnJson());
        } else {
            $apiResponse = new APIViewData(0, $deployment, false);
            $apiResponse->setExtraResponseData('host_templates', $results);
        }
    } else {
        if (RevDeploy::existsDeploymentHostTemplate($deployment, $hosttemplate, $deployRev) === false) {
            $apiResponse = new APIViewData(1, $deployment, "Unable to detect host template specified: {$hosttemplate}");
            $app->halt(404, $apiResponse->returnJson());
        } else {
            $hostTemplateInfo = RevDeploy::getDeploymentHostTemplate($deployment, $hosttemplate, $deployRev);
            $apiResponse = new APIViewData(0, $deployment, false);
            $apiResponse->setExtraResponseData('host_template', $hostTemplateInfo);
        }
    }
    $apiResponse->printJson();
})->name('saigon-api-get-host-template');
$app->post('/sapi/hosttemplate/:deployment', function ($deployment) use($app) {
    check_deployment_exists($app, $deployment);
    check_auth($app, $deployment);
    check_revision_status($deployment);
    $request = $app->request();
    $contentType = $request->headers('Content-Type');
    if ($contentType == 'application/json') {
        $hostTemplateInfo = $request->getBody();
        $hostTemplateInfo = json_decode($hostTemplateInfo, true);