public function modify_write() { $viewData = new ViewData(); $deployment = $this->getDeployment('svc_error'); $this->checkGroupAuth($deployment); $this->checkDeploymentRevStatus($deployment); $viewData->deployment = $deployment; $modrevision = RevDeploy::getDeploymentNextRev($deployment); $svcName = $this->getParam('svcName'); $svcInfo = $this->fetchSvcInfo($deployment, 'modify_write', $modrevision); if (RevDeploy::modifyDeploymentSvc($deployment, $svcName, $svcInfo, $modrevision) === false) { $viewData->header = $this->getErrorHeader('svc_error'); $viewData->error = 'Unable to write service template information for ' . $svcName . ' into ' . $deployment . ' Deployment'; $this->sendError('generic_error', $viewData); } $viewData->svc = $svcName; $this->sendResponse('svc_write', $viewData); }
$app->halt(404, $apiResponse->returnJson()); } // You get a pass if you have the use template key defined... if (!isset($serviceInfo['use']) || empty($serviceInfo['use'])) { // Lets make sure we have the minimum required keys for defining a service foreach ($required_keys as $rkey) { if (!isset($serviceInfo[$rkey]) || empty($serviceInfo[$rkey])) { $apiResponse = new APIViewData(1, $deployment, "Unable to detect required parameter {$rkey} " . service_rkeyMessage($rkey)); $app->halt(404, $apiResponse->returnJson()); } } } $serviceInfo = service_validate($app, $deployment, $serviceInfo); $deployRev = RevDeploy::getDeploymentNextRev($deployment); if (RevDeploy::existsDeploymentSvc($deployment, $serviceInfo['name'], $deployRev) === true) { RevDeploy::modifyDeploymentSvc($deployment, $serviceInfo['name'], $serviceInfo, $deployRev); $apiResponse = new APIViewData(0, $deployment, "Successfully Modified Service " . $serviceInfo['name']); } else { RevDeploy::createDeploymentSvc($deployment, $serviceInfo['name'], $serviceInfo, $deployRev); $apiResponse = new APIViewData(0, $deployment, "Successfully Created Service " . $serviceInfo['name']); } $apiResponse->printJson(); })->name('saigon-api-create-service'); $app->delete('/sapi/service/:deployment/:service', function ($deployment, $service) use($app) { check_deployment_exists($app, $deployment); check_auth($app, $deployment); check_revision_status($deployment); $deployRev = RevDeploy::getDeploymentNextRev($deployment); if (preg_match('/,/', $service)) { $services = preg_split('/\\s?,\\s?/', $service); foreach ($services as $stemp) {