@@ -25,7 +25,7 @@ discard block |
||
25 | 25 | |
26 | 26 | $currentBuild = $environment->CurrentBuild(); |
27 | 27 | $currentSha = $currentBuild ? $currentBuild->SHA : '-'; |
28 | - if($currentSha !== $options['sha']) { |
|
28 | + if ($currentSha !== $options['sha']) { |
|
29 | 29 | $strategy->setChange('Code version', $currentSha, $options['sha']); |
30 | 30 | } |
31 | 31 | $strategy->setActionTitle('Confirm deployment'); |
@@ -66,7 +66,7 @@ discard block |
||
66 | 66 | |
67 | 67 | // Use a package generator if specified, otherwise run a direct deploy, which is the default behaviour |
68 | 68 | // if build_filename isn't specified |
69 | - if($this->packageGenerator) { |
|
69 | + if ($this->packageGenerator) { |
|
70 | 70 | $log->write(sprintf('Using package generator "%s"', get_class($this->packageGenerator))); |
71 | 71 | |
72 | 72 | try { |
@@ -76,7 +76,7 @@ discard block |
||
76 | 76 | throw $e; |
77 | 77 | } |
78 | 78 | |
79 | - if(empty($args['build_filename'])) { |
|
79 | + if (empty($args['build_filename'])) { |
|
80 | 80 | throw new RuntimeException('Failed to generate package.'); |
81 | 81 | } |
82 | 82 | } |
@@ -94,7 +94,7 @@ discard block |
||
94 | 94 | $log->write($buffer); |
95 | 95 | }); |
96 | 96 | |
97 | - if(!$command->isSuccessful()) { |
|
97 | + if (!$command->isSuccessful()) { |
|
98 | 98 | $self->extend('cleanupFailure', $environment, $sha, $log, $project); |
99 | 99 | $log->write('Warning: Cleanup failed, but fine to continue. Needs manual cleanup sometime.'); |
100 | 100 | } |
@@ -105,7 +105,7 @@ discard block |
||
105 | 105 | $this->enableMaintenance($environment, $log, $project); |
106 | 106 | |
107 | 107 | $rolledBack = null; |
108 | - if(!$command->isSuccessful() || !$this->smokeTest($environment, $log)) { |
|
108 | + if (!$command->isSuccessful() || !$this->smokeTest($environment, $log)) { |
|
109 | 109 | $cleanupFn(); |
110 | 110 | $this->extend('deployFailure', $environment, $sha, $log, $project); |
111 | 111 | |
@@ -171,7 +171,7 @@ discard block |
||
171 | 171 | $command->run(function($type, $buffer) use($log) { |
172 | 172 | $log->write($buffer); |
173 | 173 | }); |
174 | - if(!$command->isSuccessful()) { |
|
174 | + if (!$command->isSuccessful()) { |
|
175 | 175 | $this->extend('maintenanceEnableFailure', $environment, $log); |
176 | 176 | throw new RuntimeException($command->getErrorOutput()); |
177 | 177 | } |
@@ -187,7 +187,7 @@ discard block |
||
187 | 187 | $command->run(function($type, $buffer) use($log) { |
188 | 188 | $log->write($buffer); |
189 | 189 | }); |
190 | - if(!$command->isSuccessful()) { |
|
190 | + if (!$command->isSuccessful()) { |
|
191 | 191 | $this->extend('maintenanceDisableFailure', $environment, $log); |
192 | 192 | throw new RuntimeException($command->getErrorOutput()); |
193 | 193 | } |
@@ -209,25 +209,25 @@ discard block |
||
209 | 209 | * @inheritdoc |
210 | 210 | */ |
211 | 211 | public function dataTransfer(DNDataTransfer $dataTransfer, DeploynautLogFile $log) { |
212 | - if($dataTransfer->Direction == 'get') { |
|
212 | + if ($dataTransfer->Direction == 'get') { |
|
213 | 213 | $this->dataTransferBackup($dataTransfer, $log); |
214 | 214 | } else { |
215 | 215 | $environment = $dataTransfer->Environment(); |
216 | 216 | $project = $environment->Project(); |
217 | - $workingDir = TEMP_FOLDER . DIRECTORY_SEPARATOR . 'deploynaut-transfer-' . $dataTransfer->ID; |
|
217 | + $workingDir = TEMP_FOLDER.DIRECTORY_SEPARATOR.'deploynaut-transfer-'.$dataTransfer->ID; |
|
218 | 218 | $archive = $dataTransfer->DataArchive(); |
219 | 219 | |
220 | 220 | // extract the sspak contents, we'll need these so capistrano can restore that content |
221 | 221 | try { |
222 | 222 | $archive->extractArchive($workingDir); |
223 | - } catch(Exception $e) { |
|
223 | + } catch (Exception $e) { |
|
224 | 224 | $log->write($e->getMessage()); |
225 | 225 | throw new RuntimeException($e->getMessage()); |
226 | 226 | } |
227 | 227 | |
228 | 228 | // validate the contents match the requested transfer mode |
229 | 229 | $result = $archive->validateArchiveContents($dataTransfer->Mode); |
230 | - if(!$result->valid()) { |
|
230 | + if (!$result->valid()) { |
|
231 | 231 | // do some cleaning, get rid of the extracted archive lying around |
232 | 232 | $process = new AbortableProcess(sprintf('rm -rf %s', escapeshellarg($workingDir))); |
233 | 233 | $process->setTimeout(120); |
@@ -257,41 +257,41 @@ discard block |
||
257 | 257 | $name = $environment->getFullName(); |
258 | 258 | $env = $environment->Project()->getProcessEnv(); |
259 | 259 | |
260 | - if(!$args) { |
|
260 | + if (!$args) { |
|
261 | 261 | $args = array(); |
262 | 262 | } |
263 | - $args['history_path'] = realpath(DEPLOYNAUT_LOG_PATH . '/'); |
|
263 | + $args['history_path'] = realpath(DEPLOYNAUT_LOG_PATH.'/'); |
|
264 | 264 | $args['environment_id'] = $environment->ID; |
265 | 265 | |
266 | 266 | // Inject env string directly into the command. |
267 | 267 | // Capistrano doesn't like the $process->setEnv($env) we'd normally do below. |
268 | 268 | $envString = ''; |
269 | - if(!empty($env)) { |
|
269 | + if (!empty($env)) { |
|
270 | 270 | $envString .= 'env '; |
271 | - foreach($env as $key => $value) { |
|
271 | + foreach ($env as $key => $value) { |
|
272 | 272 | $envString .= "$key=\"$value\" "; |
273 | 273 | } |
274 | 274 | } |
275 | 275 | |
276 | 276 | $data = DNData::inst(); |
277 | 277 | // Generate a capfile from a template |
278 | - $capTemplate = file_get_contents(BASE_PATH . '/deploynaut/Capfile.template'); |
|
278 | + $capTemplate = file_get_contents(BASE_PATH.'/deploynaut/Capfile.template'); |
|
279 | 279 | $cap = str_replace( |
280 | 280 | array('<config root>', '<ssh key>', '<base path>'), |
281 | 281 | array($data->getEnvironmentDir(), DEPLOYNAUT_SSH_KEY, BASE_PATH), |
282 | 282 | $capTemplate |
283 | 283 | ); |
284 | 284 | |
285 | - if(defined('DEPLOYNAUT_CAPFILE')) { |
|
285 | + if (defined('DEPLOYNAUT_CAPFILE')) { |
|
286 | 286 | $capFile = DEPLOYNAUT_CAPFILE; |
287 | 287 | } else { |
288 | - $capFile = ASSETS_PATH . '/Capfile'; |
|
288 | + $capFile = ASSETS_PATH.'/Capfile'; |
|
289 | 289 | } |
290 | 290 | file_put_contents($capFile, $cap); |
291 | 291 | |
292 | - $command = "{$envString}cap -f " . escapeshellarg($capFile) . " -vv $name $action ROLES=$roles"; |
|
293 | - foreach($args as $argName => $argVal) { |
|
294 | - $command .= ' -s ' . escapeshellarg($argName) . '=' . escapeshellarg($argVal); |
|
292 | + $command = "{$envString}cap -f ".escapeshellarg($capFile)." -vv $name $action ROLES=$roles"; |
|
293 | + foreach ($args as $argName => $argVal) { |
|
294 | + $command .= ' -s '.escapeshellarg($argName).'='.escapeshellarg($argVal); |
|
295 | 295 | } |
296 | 296 | |
297 | 297 | $log->write(sprintf('Running command: %s', $command)); |
@@ -325,16 +325,16 @@ discard block |
||
325 | 325 | $filepathBase = $dataArchive->generateFilepath($dataTransfer); |
326 | 326 | mkdir($filepathBase, 0700, true); |
327 | 327 | |
328 | - $databasePath = $filepathBase . DIRECTORY_SEPARATOR . 'database.sql.gz'; |
|
328 | + $databasePath = $filepathBase.DIRECTORY_SEPARATOR.'database.sql.gz'; |
|
329 | 329 | |
330 | 330 | // Backup database |
331 | - if(in_array($dataTransfer->Mode, array('all', 'db'))) { |
|
331 | + if (in_array($dataTransfer->Mode, array('all', 'db'))) { |
|
332 | 332 | $log->write(sprintf('Backup of database from "%s" started', $name)); |
333 | 333 | $command = $this->getCommand('data:getdb', 'db', $environment, array('data_path' => $databasePath), $log); |
334 | 334 | $command->run(function($type, $buffer) use($log) { |
335 | 335 | $log->write($buffer); |
336 | 336 | }); |
337 | - if(!$command->isSuccessful()) { |
|
337 | + if (!$command->isSuccessful()) { |
|
338 | 338 | $this->extend('dataTransferFailure', $environment, $log); |
339 | 339 | throw new RuntimeException($command->getErrorOutput()); |
340 | 340 | } |
@@ -342,13 +342,13 @@ discard block |
||
342 | 342 | } |
343 | 343 | |
344 | 344 | // Backup assets |
345 | - if(in_array($dataTransfer->Mode, array('all', 'assets'))) { |
|
345 | + if (in_array($dataTransfer->Mode, array('all', 'assets'))) { |
|
346 | 346 | $log->write(sprintf('Backup of assets from "%s" started', $name)); |
347 | 347 | $command = $this->getCommand('data:getassets', 'web', $environment, array('data_path' => $filepathBase), $log); |
348 | 348 | $command->run(function($type, $buffer) use($log) { |
349 | 349 | $log->write($buffer); |
350 | 350 | }); |
351 | - if(!$command->isSuccessful()) { |
|
351 | + if (!$command->isSuccessful()) { |
|
352 | 352 | $this->extend('dataTransferFailure', $environment, $log); |
353 | 353 | throw new RuntimeException($command->getErrorOutput()); |
354 | 354 | } |
@@ -363,12 +363,12 @@ discard block |
||
363 | 363 | $log->write('Creating sspak...'); |
364 | 364 | |
365 | 365 | $sspakFilename = sprintf('%s.sspak', $dataArchive->generateFilename($dataTransfer)); |
366 | - $sspakFilepath = $filepathBase . DIRECTORY_SEPARATOR . $sspakFilename; |
|
366 | + $sspakFilepath = $filepathBase.DIRECTORY_SEPARATOR.$sspakFilename; |
|
367 | 367 | |
368 | 368 | try { |
369 | 369 | $dataArchive->attachFile($sspakFilepath, $dataTransfer); |
370 | 370 | $dataArchive->setArchiveFromFiles($filepathBase); |
371 | - } catch(Exception $e) { |
|
371 | + } catch (Exception $e) { |
|
372 | 372 | $log->write($e->getMessage()); |
373 | 373 | throw new RuntimeException($e->getMessage()); |
374 | 374 | } |
@@ -379,7 +379,7 @@ discard block |
||
379 | 379 | $process = new AbortableProcess(sprintf('rm -rf %s/assets && rm -f %s', escapeshellarg($filepathBase), escapeshellarg($databasePath))); |
380 | 380 | $process->setTimeout(120); |
381 | 381 | $process->run(); |
382 | - if(!$process->isSuccessful()) { |
|
382 | + if (!$process->isSuccessful()) { |
|
383 | 383 | $log->write('Could not delete temporary files'); |
384 | 384 | throw new RuntimeException($process->getErrorOutput()); |
385 | 385 | } |
@@ -398,7 +398,7 @@ discard block |
||
398 | 398 | $command->run(function($type, $buffer) use($log) { |
399 | 399 | $log->write($buffer); |
400 | 400 | }); |
401 | - if(!$command->isSuccessful()) { |
|
401 | + if (!$command->isSuccessful()) { |
|
402 | 402 | $log->write(sprintf('Rebuild of "%s" failed: %s', $name, $command->getErrorOutput())); |
403 | 403 | throw new RuntimeException($command->getErrorOutput()); |
404 | 404 | } |
@@ -428,14 +428,14 @@ discard block |
||
428 | 428 | }; |
429 | 429 | |
430 | 430 | // Restore database into target environment |
431 | - if(in_array($dataTransfer->Mode, array('all', 'db'))) { |
|
431 | + if (in_array($dataTransfer->Mode, array('all', 'db'))) { |
|
432 | 432 | $log->write(sprintf('Restore of database to "%s" started', $name)); |
433 | - $args = array('data_path' => $workingDir . DIRECTORY_SEPARATOR . 'database.sql'); |
|
433 | + $args = array('data_path' => $workingDir.DIRECTORY_SEPARATOR.'database.sql'); |
|
434 | 434 | $command = $this->getCommand('data:pushdb', 'db', $environment, $args, $log); |
435 | 435 | $command->run(function($type, $buffer) use($log) { |
436 | 436 | $log->write($buffer); |
437 | 437 | }); |
438 | - if(!$command->isSuccessful()) { |
|
438 | + if (!$command->isSuccessful()) { |
|
439 | 439 | $cleanupFn(); |
440 | 440 | $log->write(sprintf('Restore of database to "%s" failed: %s', $name, $command->getErrorOutput())); |
441 | 441 | $this->extend('dataTransferFailure', $environment, $log); |
@@ -445,14 +445,14 @@ discard block |
||
445 | 445 | } |
446 | 446 | |
447 | 447 | // Restore assets into target environment |
448 | - if(in_array($dataTransfer->Mode, array('all', 'assets'))) { |
|
448 | + if (in_array($dataTransfer->Mode, array('all', 'assets'))) { |
|
449 | 449 | $log->write(sprintf('Restore of assets to "%s" started', $name)); |
450 | - $args = array('data_path' => $workingDir . DIRECTORY_SEPARATOR . 'assets'); |
|
450 | + $args = array('data_path' => $workingDir.DIRECTORY_SEPARATOR.'assets'); |
|
451 | 451 | $command = $this->getCommand('data:pushassets', 'web', $environment, $args, $log); |
452 | 452 | $command->run(function($type, $buffer) use($log) { |
453 | 453 | $log->write($buffer); |
454 | 454 | }); |
455 | - if(!$command->isSuccessful()) { |
|
455 | + if (!$command->isSuccessful()) { |
|
456 | 456 | $cleanupFn(); |
457 | 457 | $log->write(sprintf('Restore of assets to "%s" failed: %s', $name, $command->getErrorOutput())); |
458 | 458 | $this->extend('dataTransferFailure', $environment, $log); |
@@ -477,7 +477,7 @@ discard block |
||
477 | 477 | $timeout = 600; |
478 | 478 | $tick = 60; |
479 | 479 | |
480 | - if(!$url) { |
|
480 | + if (!$url) { |
|
481 | 481 | $log->write('Skipping site accessible check: no URL found.'); |
482 | 482 | return true; |
483 | 483 | } |
@@ -508,7 +508,7 @@ discard block |
||
508 | 508 | // query the site every second. Note that if the URL doesn't respond, |
509 | 509 | // curl_exec will take 5 seconds to timeout (see CURLOPT_CONNECTTIMEOUT and CURLOPT_TIMEOUT above) |
510 | 510 | do { |
511 | - if(time() > $start + $timeout) { |
|
511 | + if (time() > $start + $timeout) { |
|
512 | 512 | $log->write(sprintf(' * Failed: check for %s timed out after %smin', $url, $timeout / 60)); |
513 | 513 | return false; |
514 | 514 | } |
@@ -517,13 +517,13 @@ discard block |
||
517 | 517 | |
518 | 518 | // check the HTTP response code for HTTP protocols |
519 | 519 | $status = curl_getinfo($ch, CURLINFO_HTTP_CODE); |
520 | - if($status && !in_array($status, [500, 501, 502, 503, 504])) { |
|
520 | + if ($status && !in_array($status, [500, 501, 502, 503, 504])) { |
|
521 | 521 | $success = true; |
522 | 522 | } |
523 | 523 | |
524 | 524 | // check for any curl errors, mostly for checking the response state of non-HTTP protocols, |
525 | 525 | // but applies to checks of any protocol |
526 | - if($response && !curl_errno($ch)) { |
|
526 | + if ($response && !curl_errno($ch)) { |
|
527 | 527 | $success = true; |
528 | 528 | } |
529 | 529 | |
@@ -551,7 +551,7 @@ discard block |
||
551 | 551 | } |
552 | 552 | |
553 | 553 | sleep(1); |
554 | - } while(!$success); |
|
554 | + } while (!$success); |
|
555 | 555 | |
556 | 556 | curl_close($ch); |
557 | 557 | $log->write(' * Success: site is accessible!'); |