| @@ -124,7 +124,7 @@ | ||
| 124 | 124 | } | 
| 125 | 125 | |
| 126 | 126 | /** | 
| 127 | - * @return array | |
| 127 | + * @return PredeployBackupOption[] | |
| 128 | 128 | */ | 
| 129 | 129 |  	public function getDeployOptions() { | 
| 130 | 130 | return [ | 
| @@ -174,8 +174,8 @@ discard block | ||
| 174 | 174 |  		Requirements::javascript('deploynaut/javascript/material.js'); | 
| 175 | 175 | |
| 176 | 176 | // Load the buildable dependencies only if not loaded centrally. | 
| 177 | -		if (!is_dir(BASE_PATH . DIRECTORY_SEPARATOR . 'static')) { | |
| 178 | -			if (\Director::isDev()) { | |
| 177 | +		if(!is_dir(BASE_PATH.DIRECTORY_SEPARATOR.'static')) { | |
| 178 | +			if(\Director::isDev()) { | |
| 179 | 179 |  				\Requirements::javascript('deploynaut/static/bundle-debug.js'); | 
| 180 | 180 |  			} else { | 
| 181 | 181 |  				\Requirements::javascript('deploynaut/static/bundle.js'); | 
| @@ -238,7 +238,7 @@ discard block | ||
| 238 | 238 | } | 
| 239 | 239 | |
| 240 | 240 | // Block framework jquery | 
| 241 | - Requirements::block(FRAMEWORK_DIR . '/thirdparty/jquery/jquery.js'); | |
| 241 | + Requirements::block(FRAMEWORK_DIR.'/thirdparty/jquery/jquery.js'); | |
| 242 | 242 | |
| 243 | 243 | self::include_requirements(); | 
| 244 | 244 | } | 
| @@ -257,7 +257,7 @@ discard block | ||
| 257 | 257 | * @return \SS_HTTPResponse | 
| 258 | 258 | */ | 
| 259 | 259 |  	public function index(SS_HTTPRequest $request) { | 
| 260 | - return $this->redirect($this->Link() . 'projects/'); | |
| 260 | + return $this->redirect($this->Link().'projects/'); | |
| 261 | 261 | } | 
| 262 | 262 | |
| 263 | 263 | /** | 
| @@ -417,7 +417,7 @@ discard block | ||
| 417 | 417 | $form->disableSecurityToken(); | 
| 418 | 418 |  		$form->addExtraClass('fields-wide'); | 
| 419 | 419 | // Tweak the action so it plays well with our fake URL structure. | 
| 420 | - $form->setFormAction($project->Link() . '/UploadSnapshotForm'); | |
| 420 | + $form->setFormAction($project->Link().'/UploadSnapshotForm'); | |
| 421 | 421 | |
| 422 | 422 | return $form; | 
| 423 | 423 | } | 
| @@ -467,7 +467,7 @@ discard block | ||
| 467 | 467 | $dataArchive->DataTransfers()->add($dataTransfer); | 
| 468 | 468 | $form->saveInto($dataArchive); | 
| 469 | 469 | $dataArchive->write(); | 
| 470 | - $workingDir = TEMP_FOLDER . DIRECTORY_SEPARATOR . 'deploynaut-transfer-' . $dataTransfer->ID; | |
| 470 | + $workingDir = TEMP_FOLDER.DIRECTORY_SEPARATOR.'deploynaut-transfer-'.$dataTransfer->ID; | |
| 471 | 471 | |
| 472 | 472 |  		$cleanupFn = function() use($workingDir, $dataTransfer, $dataArchive) { | 
| 473 | 473 |  			$process = new AbortableProcess(sprintf('rm -rf %s', escapeshellarg($workingDir))); | 
| @@ -569,7 +569,7 @@ discard block | ||
| 569 | 569 | $form->disableSecurityToken(); | 
| 570 | 570 |  		$form->addExtraClass('fields-wide'); | 
| 571 | 571 | // Tweak the action so it plays well with our fake URL structure. | 
| 572 | - $form->setFormAction($project->Link() . '/PostSnapshotForm'); | |
| 572 | + $form->setFormAction($project->Link().'/PostSnapshotForm'); | |
| 573 | 573 | |
| 574 | 574 | return $form; | 
| 575 | 575 | } | 
| @@ -708,7 +708,7 @@ discard block | ||
| 708 | 708 |  		$branchName = $request->getVar('name'); | 
| 709 | 709 | $branch = $project->DNBranchList()->byName($branchName); | 
| 710 | 710 |  		if(!$branch) { | 
| 711 | -			return new SS_HTTPResponse("Branch '" . Convert::raw2xml($branchName) . "' not found.", 404); | |
| 711 | +			return new SS_HTTPResponse("Branch '".Convert::raw2xml($branchName)."' not found.", 404); | |
| 712 | 712 | } | 
| 713 | 713 | |
| 714 | 714 | return $this->render(array( | 
| @@ -844,7 +844,7 @@ discard block | ||
| 844 | 844 | ); | 
| 845 | 845 | |
| 846 | 846 | // Tweak the action so it plays well with our fake URL structure. | 
| 847 | - $form->setFormAction($project->Link() . '/CreateEnvironmentForm'); | |
| 847 | + $form->setFormAction($project->Link().'/CreateEnvironmentForm'); | |
| 848 | 848 | |
| 849 | 849 | return $form; | 
| 850 | 850 | } | 
| @@ -877,7 +877,7 @@ discard block | ||
| 877 | 877 | $job->write(); | 
| 878 | 878 | $job->start(); | 
| 879 | 879 | |
| 880 | -		return $this->redirect($project->Link('createenv') . '/' . $job->ID); | |
| 880 | +		return $this->redirect($project->Link('createenv').'/'.$job->ID); | |
| 881 | 881 | } | 
| 882 | 882 | |
| 883 | 883 | /** | 
| @@ -938,7 +938,7 @@ discard block | ||
| 938 | 938 | */ | 
| 939 | 939 |  	public function getPlatformSpecificStrings() { | 
| 940 | 940 | $strings = $this->config()->platform_specific_strings; | 
| 941 | -		if ($strings) { | |
| 941 | +		if($strings) { | |
| 942 | 942 | return new ArrayList($strings); | 
| 943 | 943 | } | 
| 944 | 944 | } | 
| @@ -1003,7 +1003,7 @@ discard block | ||
| 1003 | 1003 | |
| 1004 | 1004 | $isCurrentEnvironment = false; | 
| 1005 | 1005 |  				if($project && $currentEnvironment) { | 
| 1006 | -					$isCurrentEnvironment = (bool) $project->DNEnvironmentList()->find('ID', $currentEnvironment->ID); | |
| 1006 | +					$isCurrentEnvironment = (bool)$project->DNEnvironmentList()->find('ID', $currentEnvironment->ID); | |
| 1007 | 1007 | } | 
| 1008 | 1008 | |
| 1009 | 1009 | $navigation->push(array( | 
| @@ -1073,7 +1073,7 @@ discard block | ||
| 1073 | 1073 | return $body; | 
| 1074 | 1074 | } | 
| 1075 | 1075 | |
| 1076 | - $form->setFormAction($this->getRequest()->getURL() . '/DeployForm'); | |
| 1076 | + $form->setFormAction($this->getRequest()->getURL().'/DeployForm'); | |
| 1077 | 1077 | return $form; | 
| 1078 | 1078 | } | 
| 1079 | 1079 | |
| @@ -1097,7 +1097,7 @@ discard block | ||
| 1097 | 1097 | } | 
| 1098 | 1098 | |
| 1099 | 1099 | $options = []; | 
| 1100 | -		foreach ($env->Backend()->getDeployOptions() as $option) { | |
| 1100 | +		foreach($env->Backend()->getDeployOptions() as $option) { | |
| 1101 | 1101 | $options[] = [ | 
| 1102 | 1102 | 'name' => $option->getName(), | 
| 1103 | 1103 | 'title' => $option->getTitle(), | 
| @@ -1230,7 +1230,7 @@ discard block | ||
| 1230 | 1230 | } | 
| 1231 | 1231 | |
| 1232 | 1232 |  	protected function applyRedeploy(SS_HTTPRequest $request, &$data) { | 
| 1233 | -		if (!$request->getVar('redeploy')) return; | |
| 1233 | +		if(!$request->getVar('redeploy')) return; | |
| 1234 | 1234 | |
| 1235 | 1235 | $project = $this->getCurrentProject(); | 
| 1236 | 1236 |  		if(!$project) { | 
| @@ -1244,12 +1244,12 @@ discard block | ||
| 1244 | 1244 | } | 
| 1245 | 1245 | |
| 1246 | 1246 | $current = $env->CurrentBuild(); | 
| 1247 | -		if ($current && $current->exists()) { | |
| 1247 | +		if($current && $current->exists()) { | |
| 1248 | 1248 | $data['preselect_tab'] = 3; | 
| 1249 | 1249 | $data['preselect_sha'] = $current->SHA; | 
| 1250 | 1250 |  		} else { | 
| 1251 | 1251 |  			$master = $project->DNBranchList()->byName('master'); | 
| 1252 | -			if ($master) { | |
| 1252 | +			if($master) { | |
| 1253 | 1253 | $data['preselect_tab'] = 1; | 
| 1254 | 1254 | $data['preselect_sha'] = $master->SHA(); | 
| 1255 | 1255 | } | 
| @@ -1380,7 +1380,7 @@ discard block | ||
| 1380 | 1380 | $deployment->getMachine()->apply(DNDeployment::TR_QUEUE); | 
| 1381 | 1381 | |
| 1382 | 1382 | return json_encode(array( | 
| 1383 | - 'url' => Director::absoluteBaseURL() . $deployment->Link() | |
| 1383 | + 'url' => Director::absoluteBaseURL().$deployment->Link() | |
| 1384 | 1384 | ), JSON_PRETTY_PRINT); | 
| 1385 | 1385 | } | 
| 1386 | 1386 | |
| @@ -1484,7 +1484,7 @@ discard block | ||
| 1484 | 1484 |  			throw new LogicException("Project in URL doesn't match this deploy"); | 
| 1485 | 1485 | } | 
| 1486 | 1486 | |
| 1487 | -		if (!in_array($deployment->Status, ['Queued', 'Deploying', 'Aborting'])) { | |
| 1487 | +		if(!in_array($deployment->Status, ['Queued', 'Deploying', 'Aborting'])) { | |
| 1488 | 1488 |  			throw new LogicException(sprintf("Cannot abort from %s state.", $deployment->Status)); | 
| 1489 | 1489 | } | 
| 1490 | 1490 | |
| @@ -1522,7 +1522,7 @@ discard block | ||
| 1522 | 1522 |  					->addExtraClass('btn') | 
| 1523 | 1523 | ) | 
| 1524 | 1524 | ); | 
| 1525 | - $form->setFormAction($this->getRequest()->getURL() . '/DataTransferForm'); | |
| 1525 | + $form->setFormAction($this->getRequest()->getURL().'/DataTransferForm'); | |
| 1526 | 1526 | |
| 1527 | 1527 | return $form; | 
| 1528 | 1528 | } | 
| @@ -1724,7 +1724,7 @@ discard block | ||
| 1724 | 1724 |  					->addExtraClass('btn') | 
| 1725 | 1725 | ) | 
| 1726 | 1726 | ); | 
| 1727 | - $form->setFormAction($project->Link() . '/DataTransferRestoreForm'); | |
| 1727 | + $form->setFormAction($project->Link().'/DataTransferRestoreForm'); | |
| 1728 | 1728 | |
| 1729 | 1729 | return $form; | 
| 1730 | 1730 | } | 
| @@ -1822,7 +1822,7 @@ discard block | ||
| 1822 | 1822 |  					->addExtraClass('btn') | 
| 1823 | 1823 | ) | 
| 1824 | 1824 | ); | 
| 1825 | - $form->setFormAction($project->Link() . '/DeleteForm'); | |
| 1825 | + $form->setFormAction($project->Link().'/DeleteForm'); | |
| 1826 | 1826 | |
| 1827 | 1827 | return $form; | 
| 1828 | 1828 | } | 
| @@ -1928,7 +1928,7 @@ discard block | ||
| 1928 | 1928 |  					->addExtraClass('btn') | 
| 1929 | 1929 | ) | 
| 1930 | 1930 | ); | 
| 1931 | - $form->setFormAction($this->getCurrentProject()->Link() . '/MoveForm'); | |
| 1931 | + $form->setFormAction($this->getCurrentProject()->Link().'/MoveForm'); | |
| 1932 | 1932 | |
| 1933 | 1933 | return $form; | 
| 1934 | 1934 | } | 
| @@ -2220,7 +2220,7 @@ discard block | ||
| 2220 | 2220 | */ | 
| 2221 | 2221 |  	protected function project404Response() { | 
| 2222 | 2222 | return new SS_HTTPResponse( | 
| 2223 | -			"Project '" . Convert::raw2xml($this->getRequest()->param('Project')) . "' not found.", | |
| 2223 | +			"Project '".Convert::raw2xml($this->getRequest()->param('Project'))."' not found.", | |
| 2224 | 2224 | 404 | 
| 2225 | 2225 | ); | 
| 2226 | 2226 | } | 
| @@ -2230,7 +2230,7 @@ discard block | ||
| 2230 | 2230 | */ | 
| 2231 | 2231 |  	protected function environment404Response() { | 
| 2232 | 2232 |  		$envName = Convert::raw2xml($this->getRequest()->param('Environment')); | 
| 2233 | -		return new SS_HTTPResponse("Environment '" . $envName . "' not found.", 404); | |
| 2233 | +		return new SS_HTTPResponse("Environment '".$envName."' not found.", 404); | |
| 2234 | 2234 | } | 
| 2235 | 2235 | |
| 2236 | 2236 | /** | 
| @@ -2297,7 +2297,7 @@ discard block | ||
| 2297 | 2297 |  	public function AmbientMenu() { | 
| 2298 | 2298 | $list = new ArrayList(); | 
| 2299 | 2299 | |
| 2300 | -		if (Member::currentUserID()) { | |
| 2300 | +		if(Member::currentUserID()) { | |
| 2301 | 2301 | $list->push(new ArrayData(array( | 
| 2302 | 2302 | 'Classes' => 'logout', | 
| 2303 | 2303 | 'FaIcon' => 'sign-out', | 
| @@ -112,7 +112,7 @@ discard block | ||
| 112 | 112 | } | 
| 113 | 113 | |
| 114 | 114 |  	public function getTitle() { | 
| 115 | -		return $this->dbObject('Created')->Nice() . " (Status: {$this->Status})"; | |
| 115 | +		return $this->dbObject('Created')->Nice()." (Status: {$this->Status})"; | |
| 116 | 116 | } | 
| 117 | 117 | |
| 118 | 118 |  	public function Link() { | 
| @@ -233,14 +233,14 @@ discard block | ||
| 233 | 233 | $envName = $this->Environment()->getFullName(); | 
| 234 | 234 |  		if($this->Direction == 'get') { | 
| 235 | 235 |  			if($this->Origin == 'ManualUpload') { | 
| 236 | - $description = 'Manual upload of ' . $this->getModeNice() . ' to ' . $envName; | |
| 236 | + $description = 'Manual upload of '.$this->getModeNice().' to '.$envName; | |
| 237 | 237 |  			} elseif($this->IsBackupDataTransfer()) { | 
| 238 | - $description = 'Automated backup of ' . $this->getModeNice() . ' from ' . $envName; | |
| 238 | + $description = 'Automated backup of '.$this->getModeNice().' from '.$envName; | |
| 239 | 239 |  			} else { | 
| 240 | - $description = 'Backup of ' . $this->getModeNice() . ' to ' . $envName; | |
| 240 | + $description = 'Backup of '.$this->getModeNice().' to '.$envName; | |
| 241 | 241 | } | 
| 242 | 242 |  		} else { | 
| 243 | - $description = 'Restore ' . $this->getModeNice() . ' to ' . $envName; | |
| 243 | + $description = 'Restore '.$this->getModeNice().' to '.$envName; | |
| 244 | 244 | } | 
| 245 | 245 | |
| 246 | 246 | return $description; | 
| @@ -263,7 +263,7 @@ discard block | ||
| 263 | 263 |  			'SELECT COUNT("ID") FROM "DNDeployment" WHERE "BackupDataTransferID" = %d', | 
| 264 | 264 | $this->ID | 
| 265 | 265 | ))->value(); | 
| 266 | -		if ($deploymentBackup) { | |
| 266 | +		if($deploymentBackup) { | |
| 267 | 267 | return true; | 
| 268 | 268 | } | 
| 269 | 269 | |
| @@ -271,7 +271,7 @@ discard block | ||
| 271 | 271 |  			'SELECT COUNT("ID") FROM "DNDataTransfer" WHERE "BackupDataTransferID" = %d', | 
| 272 | 272 | $this->ID | 
| 273 | 273 | ))->value(); | 
| 274 | -		if ($transferBackup) { | |
| 274 | +		if($transferBackup) { | |
| 275 | 275 | return true; | 
| 276 | 276 | } | 
| 277 | 277 | |
| @@ -72,6 +72,9 @@ | ||
| 72 | 72 | echo "[-] DataTransferJob finished" . PHP_EOL; | 
| 73 | 73 | } | 
| 74 | 74 | |
| 75 | + /** | |
| 76 | + * @param DNDataTransfer|null $backupDataTransfer | |
| 77 | + */ | |
| 75 | 78 |  	protected function performBackup($backupDataTransfer, DeploynautLogFile $log) { | 
| 76 | 79 |  		if (!$backupDataTransfer) { | 
| 77 | 80 | return false; | 
| @@ -20,7 +20,7 @@ discard block | ||
| 20 | 20 | } | 
| 21 | 21 | |
| 22 | 22 |  	public function perform() { | 
| 23 | - echo "[-] DataTransferJob starting" . PHP_EOL; | |
| 23 | + echo "[-] DataTransferJob starting".PHP_EOL; | |
| 24 | 24 | $log = new DeploynautLogFile($this->args['logfile']); | 
| 25 | 25 | $dataTransfer = DNDataTransfer::get()->byID($this->args['dataTransferID']); | 
| 26 | 26 | $environment = $dataTransfer->Environment(); | 
| @@ -64,16 +64,16 @@ discard block | ||
| 64 | 64 | $this->performBackup($backupDataTransfer, $log); | 
| 65 | 65 | $environment->Backend()->dataTransfer($dataTransfer, $log); | 
| 66 | 66 |  		} catch(Exception $e) { | 
| 67 | - echo "[-] DataTransferJob failed" . PHP_EOL; | |
| 67 | + echo "[-] DataTransferJob failed".PHP_EOL; | |
| 68 | 68 | throw $e; | 
| 69 | 69 | } | 
| 70 | 70 | |
| 71 | 71 |  		$this->updateStatus('Finished'); | 
| 72 | - echo "[-] DataTransferJob finished" . PHP_EOL; | |
| 72 | + echo "[-] DataTransferJob finished".PHP_EOL; | |
| 73 | 73 | } | 
| 74 | 74 | |
| 75 | 75 |  	protected function performBackup($backupDataTransfer, DeploynautLogFile $log) { | 
| 76 | -		if (!$backupDataTransfer) { | |
| 76 | +		if(!$backupDataTransfer) { | |
| 77 | 77 | return false; | 
| 78 | 78 | } | 
| 79 | 79 | |
| @@ -139,6 +139,9 @@ | ||
| 139 | 139 | $this->updateStatus(DNDeployment::TR_FAIL); | 
| 140 | 140 | } | 
| 141 | 141 | |
| 142 | + /** | |
| 143 | + * @param DNDataTransfer|null $backupDataTransfer | |
| 144 | + */ | |
| 142 | 145 |  	protected function performBackup($backupDataTransfer, DeploynautLogFile $log) { | 
| 143 | 146 |  		if (!$backupDataTransfer) { | 
| 144 | 147 | return false; | 
| @@ -17,9 +17,9 @@ discard block | ||
| 17 | 17 | */ | 
| 18 | 18 |  	public function alarmHandler() { | 
| 19 | 19 | $sigFile = $this->args['sigFile']; | 
| 20 | -		if (file_exists($sigFile) && is_readable($sigFile) && is_writable($sigFile)) { | |
| 20 | +		if(file_exists($sigFile) && is_readable($sigFile) && is_writable($sigFile)) { | |
| 21 | 21 | $signal = (int)file_get_contents($sigFile); | 
| 22 | - if (is_int($signal) && in_array((int)$signal, [ | |
| 22 | + if(is_int($signal) && in_array((int)$signal, [ | |
| 23 | 23 | // The following signals are trapped by both Resque and Rainforest. | 
| 24 | 24 | SIGTERM, | 
| 25 | 25 | SIGINT, | 
| @@ -30,7 +30,7 @@ discard block | ||
| 30 | 30 | SIGCONT | 
| 31 | 31 |  			])) { | 
| 32 | 32 | echo sprintf( | 
| 33 | - '[-] Signal "%s" received, delivering to own process group, PID "%s".' . PHP_EOL, | |
| 33 | + '[-] Signal "%s" received, delivering to own process group, PID "%s".'.PHP_EOL, | |
| 34 | 34 | $signal, | 
| 35 | 35 | getmypid() | 
| 36 | 36 | ); | 
| @@ -40,9 +40,9 @@ discard block | ||
| 40 | 40 | |
| 41 | 41 | // Dispatch to own process group. | 
| 42 | 42 | $pgid = posix_getpgid(getmypid()); | 
| 43 | -				if ($pgid<=0) { | |
| 43 | +				if($pgid <= 0) { | |
| 44 | 44 | echo sprintf( | 
| 45 | - '[-] Unable to send signal to invalid PGID "%s".' . PHP_EOL, | |
| 45 | + '[-] Unable to send signal to invalid PGID "%s".'.PHP_EOL, | |
| 46 | 46 | $pgid | 
| 47 | 47 | ); | 
| 48 | 48 |  				} else { | 
| @@ -61,8 +61,8 @@ discard block | ||
| 61 | 61 | posix_setsid(); | 
| 62 | 62 | |
| 63 | 63 |  		if(function_exists('pcntl_alarm') && function_exists('pcntl_signal')) { | 
| 64 | -			if (!empty($this->args['sigFile'])) { | |
| 65 | -				echo sprintf('[-] Signal file requested, polling "%s".' . PHP_EOL, $this->args['sigFile']); | |
| 64 | +			if(!empty($this->args['sigFile'])) { | |
| 65 | +				echo sprintf('[-] Signal file requested, polling "%s".'.PHP_EOL, $this->args['sigFile']); | |
| 66 | 66 | declare(ticks = 1); | 
| 67 | 67 | pcntl_signal(SIGALRM, [$this, 'alarmHandler']); | 
| 68 | 68 | pcntl_alarm(1); | 
| @@ -74,7 +74,7 @@ discard block | ||
| 74 | 74 | } | 
| 75 | 75 | |
| 76 | 76 |  	public function perform() { | 
| 77 | - echo "[-] DeployJob starting" . PHP_EOL; | |
| 77 | + echo "[-] DeployJob starting".PHP_EOL; | |
| 78 | 78 | $log = new DeploynautLogFile($this->args['logfile']); | 
| 79 | 79 | |
| 80 | 80 | $deployment = DNDeployment::get()->byID($this->args['deploymentID']); | 
| @@ -127,12 +127,12 @@ discard block | ||
| 127 | 127 | ); | 
| 128 | 128 |  		} catch(Exception $e) { | 
| 129 | 129 | // DeploynautJob will automatically trigger onFailure. | 
| 130 | - echo "[-] DeployJob failed" . PHP_EOL; | |
| 130 | + echo "[-] DeployJob failed".PHP_EOL; | |
| 131 | 131 | throw $e; | 
| 132 | 132 | } | 
| 133 | 133 | |
| 134 | 134 | $this->updateStatus(DNDeployment::TR_COMPLETE); | 
| 135 | - echo "[-] DeployJob finished" . PHP_EOL; | |
| 135 | + echo "[-] DeployJob finished".PHP_EOL; | |
| 136 | 136 | } | 
| 137 | 137 | |
| 138 | 138 |  	public function onFailure(Exception $exception) { | 
| @@ -140,7 +140,7 @@ discard block | ||
| 140 | 140 | } | 
| 141 | 141 | |
| 142 | 142 |  	protected function performBackup($backupDataTransfer, DeploynautLogFile $log) { | 
| 143 | -		if (!$backupDataTransfer) { | |
| 143 | +		if(!$backupDataTransfer) { | |
| 144 | 144 | return false; | 
| 145 | 145 | } | 
| 146 | 146 | |