@@ -106,10 +106,10 @@ |
||
106 | 106 | $executable->useSSLCert($this->certFile); |
107 | 107 | } else { |
108 | 108 | $executable->usePassword($this->password) |
109 | - ->encodeBase64(true); |
|
109 | + ->encodeBase64(true); |
|
110 | 110 | } |
111 | 111 | $executable->useAlgorithm($this->algorithm) |
112 | - ->deleteUncrypted(!$this->keepUncrypted); |
|
112 | + ->deleteUncrypted(!$this->keepUncrypted); |
|
113 | 113 | |
114 | 114 | return $executable; |
115 | 115 | } |
@@ -114,12 +114,12 @@ |
||
114 | 114 | { |
115 | 115 | $executable = new Executable\Mcrypt((string) $this->pathToMcrypt); |
116 | 116 | $executable->useAlgorithm($this->algorithm) |
117 | - ->useKey($this->key) |
|
118 | - ->useKeyFile($this->keyFile) |
|
119 | - ->useConfig($this->config) |
|
120 | - ->useHash($this->hash) |
|
121 | - ->saveAt($target->getPathname()) |
|
122 | - ->deleteUncrypted(!$this->keepUncrypted); |
|
117 | + ->useKey($this->key) |
|
118 | + ->useKeyFile($this->keyFile) |
|
119 | + ->useConfig($this->config) |
|
120 | + ->useHash($this->hash) |
|
121 | + ->saveAt($target->getPathname()) |
|
122 | + ->deleteUncrypted(!$this->keepUncrypted); |
|
123 | 123 | return $executable; |
124 | 124 | } |
125 | 125 | } |
@@ -48,39 +48,39 @@ |
||
48 | 48 | { |
49 | 49 | self::setSnippets([ |
50 | 50 | 'sBody' => 'style="font-family: Arial, Helvetica, sans-serif; ' . |
51 | - 'background-color:#343b43; ' . |
|
52 | - 'font-size: 15px; margin:0; ' . |
|
53 | - 'padding:0;"', |
|
51 | + 'background-color:#343b43; ' . |
|
52 | + 'font-size: 15px; margin:0; ' . |
|
53 | + 'padding:0;"', |
|
54 | 54 | 'sTableHeader' => 'style="width:100%; ' . |
55 | - 'font-family: Arial, Helvetica, sans-serif; ' . |
|
56 | - 'margin:0; color:#e6e6e6;" ' . |
|
57 | - 'align="center" cellpadding="5" cellspacing="0"', |
|
55 | + 'font-family: Arial, Helvetica, sans-serif; ' . |
|
56 | + 'margin:0; color:#e6e6e6;" ' . |
|
57 | + 'align="center" cellpadding="5" cellspacing="0"', |
|
58 | 58 | 'sTableError' => 'style="width:100%; ' . |
59 | - 'background-color:#e6e6e6; ' . |
|
60 | - 'margin:0 auto 15px; ' . |
|
61 | - 'border:1px solid #011516;" ' . |
|
62 | - 'align="center" cellpadding="5" cellspacing="0"', |
|
59 | + 'background-color:#e6e6e6; ' . |
|
60 | + 'margin:0 auto 15px; ' . |
|
61 | + 'border:1px solid #011516;" ' . |
|
62 | + 'align="center" cellpadding="5" cellspacing="0"', |
|
63 | 63 | 'sTableErrorCol' => 'style="border-top: 1px solid #f6f6f6; ' . |
64 | - 'border-bottom: 1px solid #c9c9c9;"', |
|
64 | + 'border-bottom: 1px solid #c9c9c9;"', |
|
65 | 65 | 'sTableContent' => 'style="width:420px; ' . |
66 | - 'font-family: Arial, Helvetica, sans-serif; ' . |
|
67 | - 'margin:0 auto;" ' . |
|
68 | - 'align="center" cellpadding="0" cellspacing="0"', |
|
66 | + 'font-family: Arial, Helvetica, sans-serif; ' . |
|
67 | + 'margin:0 auto;" ' . |
|
68 | + 'align="center" cellpadding="0" cellspacing="0"', |
|
69 | 69 | 'sTableContentCol' => 'style="padding:0 10px;"', |
70 | 70 | 'sTableStatus' => 'style="background-color:#%s; ' . |
71 | - 'width:100%%; ' . |
|
72 | - 'margin:0 auto 15px; ' . |
|
73 | - 'border:1px solid #011516;" ' . |
|
74 | - 'align="center" cellpadding="10" cellspacing="0"', |
|
71 | + 'width:100%%; ' . |
|
72 | + 'margin:0 auto 15px; ' . |
|
73 | + 'border:1px solid #011516;" ' . |
|
74 | + 'align="center" cellpadding="10" cellspacing="0"', |
|
75 | 75 | 'sTableStatusHead' => 'style="margin:0;"', |
76 | 76 | 'sTableStatusText' => 'style="font-size:16px;"', |
77 | 77 | 'sTableBackup' => 'style="width:100%; font-family: Arial, Helvetica, sans-serif; ' . |
78 | - 'background-color:#e6e6e6; ' . |
|
79 | - 'margin:0 0 15px; ' . |
|
80 | - 'border:1px solid #011516;" ' . |
|
81 | - 'align="center" cellpadding="5" cellspacing="0" width="100%"', |
|
78 | + 'background-color:#e6e6e6; ' . |
|
79 | + 'margin:0 0 15px; ' . |
|
80 | + 'border:1px solid #011516;" ' . |
|
81 | + 'align="center" cellpadding="5" cellspacing="0" width="100%"', |
|
82 | 82 | 'sTableBackupStatusColumn' => 'style="background-color:#%s; ' . |
83 | - 'border-bottom:1px solid #747474;"', |
|
83 | + 'border-bottom:1px solid #747474;"', |
|
84 | 84 | 'sTableBackupStatusText' => 'style="float:right;"', |
85 | 85 | 'sRowHead' => 'style="border-top: 1px solid #f6f6f6; border-bottom: 1px solid #c9c9c9;"', |
86 | 86 | 'sRowCheck' => 'style="border-top: 1px solid #f6f6f6; border-bottom: 1px solid #c9c9c9;"', |
@@ -32,7 +32,7 @@ |
||
32 | 32 | "google/apiclient", |
33 | 33 | "php-opencloud/openstack" |
34 | 34 | ])) { |
35 | - continue; |
|
35 | + continue; |
|
36 | 36 | } |
37 | 37 | echo $package->name . ': ' . $package->version; |
38 | 38 | if (!preg_match('/^[v= ]*(([0-9]+)(\\.([0-9]+)(\\.([0-9]+)(-([0-9]+))?(-?([a-zA-Z-+][a-zA-Z0-9\\.\\-:]*)?)?)?)?)$/', $package->version)) { |
@@ -254,23 +254,23 @@ |
||
254 | 254 | { |
255 | 255 | $executable = new Executable\Mysqldump($this->pathToMysqldump); |
256 | 256 | $executable->credentials($this->user, $this->password) |
257 | - ->useHost($this->host) |
|
258 | - ->usePort($this->port) |
|
259 | - ->useQuickMode($this->quick) |
|
260 | - ->lockTables($this->lockTables) |
|
261 | - ->dumpBlobsHexadecimal($this->hexBlob) |
|
262 | - ->addGTIDStatement($this->gtidPurged) |
|
263 | - ->useCompression($this->compress) |
|
264 | - ->useExtendedInsert($this->extendedInsert) |
|
265 | - ->dumpTables($this->tables) |
|
266 | - ->singleTransaction($this->singleTransaction) |
|
267 | - ->dumpDatabases($this->databases) |
|
268 | - ->ignoreTables($this->ignoreTables) |
|
269 | - ->produceFilePerTable($this->filePerTable) |
|
270 | - ->dumpNoData($this->noData) |
|
271 | - ->dumpRoutines($this->routines) |
|
272 | - ->dumpStructureOnly($this->structureOnly) |
|
273 | - ->dumpTo($this->getDumpTarget($target)); |
|
257 | + ->useHost($this->host) |
|
258 | + ->usePort($this->port) |
|
259 | + ->useQuickMode($this->quick) |
|
260 | + ->lockTables($this->lockTables) |
|
261 | + ->dumpBlobsHexadecimal($this->hexBlob) |
|
262 | + ->addGTIDStatement($this->gtidPurged) |
|
263 | + ->useCompression($this->compress) |
|
264 | + ->useExtendedInsert($this->extendedInsert) |
|
265 | + ->dumpTables($this->tables) |
|
266 | + ->singleTransaction($this->singleTransaction) |
|
267 | + ->dumpDatabases($this->databases) |
|
268 | + ->ignoreTables($this->ignoreTables) |
|
269 | + ->produceFilePerTable($this->filePerTable) |
|
270 | + ->dumpNoData($this->noData) |
|
271 | + ->dumpRoutines($this->routines) |
|
272 | + ->dumpStructureOnly($this->structureOnly) |
|
273 | + ->dumpTo($this->getDumpTarget($target)); |
|
274 | 274 | // if compression is active and commands can be piped |
275 | 275 | if ($this->isHandlingCompression($target)) { |
276 | 276 | $executable->compressOutput($target->getCompression()); |
@@ -194,14 +194,14 @@ |
||
194 | 194 | |
195 | 195 | $executable = new Executable\Tar($this->pathToTar); |
196 | 196 | $executable->archiveDirectory($this->path) |
197 | - ->useCompression($this->compression) |
|
198 | - ->useCompressProgram($this->compressProgram) |
|
199 | - ->forceLocal($this->forceLocal) |
|
200 | - ->ignoreFailedRead($this->ignoreFailedRead) |
|
201 | - ->removeSourceDirectory($this->removeSourceDir) |
|
202 | - ->throttle($this->throttle) |
|
203 | - ->archiveTo($this->pathToArchive) |
|
204 | - ->dereference($this->dereference); |
|
197 | + ->useCompression($this->compression) |
|
198 | + ->useCompressProgram($this->compressProgram) |
|
199 | + ->forceLocal($this->forceLocal) |
|
200 | + ->ignoreFailedRead($this->ignoreFailedRead) |
|
201 | + ->removeSourceDirectory($this->removeSourceDir) |
|
202 | + ->throttle($this->throttle) |
|
203 | + ->archiveTo($this->pathToArchive) |
|
204 | + ->dereference($this->dereference); |
|
205 | 205 | // add paths to exclude |
206 | 206 | foreach ($this->excludes as $path) { |
207 | 207 | $executable->addExclude($path); |
@@ -191,12 +191,12 @@ discard block |
||
191 | 191 | $info = $this->getInfoHtml($result); |
192 | 192 | $footer = $this->getFooterHtml(); |
193 | 193 | $body = '<html><body ' . TPL::getSnippet('sBody') . '>' |
194 | - . $header |
|
195 | - . $status |
|
196 | - . $errors |
|
197 | - . $info |
|
198 | - . $footer |
|
199 | - . '</body></html>'; |
|
194 | + . $header |
|
195 | + . $status |
|
196 | + . $errors |
|
197 | + . $info |
|
198 | + . $footer |
|
199 | + . '</body></html>'; |
|
200 | 200 | $state = $result->allOk() ? 'OK' : ($result->backupOkButSkipsOrFails() ? 'WARNING' : 'ERROR'); |
201 | 201 | |
202 | 202 | $this->mailer->Subject = $this->subject . ' [' . $state . ']'; |
@@ -359,7 +359,7 @@ discard block |
||
359 | 359 | protected function getHeaderHtml() |
360 | 360 | { |
361 | 361 | return '<table ' . TPL::getSnippet('sTableContent') . '><tr><td ' . TPL::getSnippet('sTableContentCol') . '>' . |
362 | - '<table ' . TPL::getSnippet('sTableHeader') . '><tr><td>PHPBU - backup report</td></tr></table>'; |
|
362 | + '<table ' . TPL::getSnippet('sTableHeader') . '><tr><td>PHPBU - backup report</td></tr></table>'; |
|
363 | 363 | } |
364 | 364 | |
365 | 365 | /** |
@@ -398,11 +398,11 @@ discard block |
||
398 | 398 | Str::appendPluralS('cleanup', $this->numCleanups) |
399 | 399 | ); |
400 | 400 | $html = '<table ' . sprintf(TPL::getSnippet('sTableStatus'), $color) . '>' . |
401 | - '<tr><td>' . |
|
402 | - '<span ' . TPL::getSnippet('sTableStatusText') . '>' . date('Y-m-d H:i') . '</span>' . |
|
403 | - '<h1 ' . TPL::getSnippet('sTableStatusHead') . '>' . $status . '</h1>' . |
|
404 | - '<span ' . TPL::getSnippet('sTableStatusText') . '>' . $info . '</span>' . |
|
405 | - '</td></tr>' . |
|
401 | + '<tr><td>' . |
|
402 | + '<span ' . TPL::getSnippet('sTableStatusText') . '>' . date('Y-m-d H:i') . '</span>' . |
|
403 | + '<h1 ' . TPL::getSnippet('sTableStatusHead') . '>' . $status . '</h1>' . |
|
404 | + '<span ' . TPL::getSnippet('sTableStatusText') . '>' . $info . '</span>' . |
|
405 | + '</td></tr>' . |
|
406 | 406 | '</table>'; |
407 | 407 | |
408 | 408 | return $html; |
@@ -465,65 +465,65 @@ discard block |
||
465 | 465 | $status = 'FAILURE'; |
466 | 466 | } |
467 | 467 | $html .= '<tr>' . |
468 | - '<td ' . sprintf(TPL::getSnippet('sTableBackupStatusColumn'), $color) . ' colspan="4">' . |
|
469 | - sprintf('backup <em>%s</em>', $backup->getName()) . |
|
470 | - ' <span ' . TPL::getSnippet('sTableBackupStatusText') . '>' . $status . '</span>' . |
|
471 | - '</td>' . |
|
472 | - '</tr>' . |
|
473 | - '<tr>' . |
|
474 | - '<td ' . TPL::getSnippet('sRowHead') . '> </td>' . |
|
475 | - '<td ' . TPL::getSnippet('sRowHead') . ' align="right">executed</td>' . |
|
476 | - '<td ' . TPL::getSnippet('sRowHead') . ' align="right">skipped</td>' . |
|
477 | - '<td ' . TPL::getSnippet('sRowHead') . ' align="right">failed</td>' . |
|
478 | - '</tr>'; |
|
468 | + '<td ' . sprintf(TPL::getSnippet('sTableBackupStatusColumn'), $color) . ' colspan="4">' . |
|
469 | + sprintf('backup <em>%s</em>', $backup->getName()) . |
|
470 | + ' <span ' . TPL::getSnippet('sTableBackupStatusText') . '>' . $status . '</span>' . |
|
471 | + '</td>' . |
|
472 | + '</tr>' . |
|
473 | + '<tr>' . |
|
474 | + '<td ' . TPL::getSnippet('sRowHead') . '> </td>' . |
|
475 | + '<td ' . TPL::getSnippet('sRowHead') . ' align="right">executed</td>' . |
|
476 | + '<td ' . TPL::getSnippet('sRowHead') . ' align="right">skipped</td>' . |
|
477 | + '<td ' . TPL::getSnippet('sRowHead') . ' align="right">failed</td>' . |
|
478 | + '</tr>'; |
|
479 | 479 | |
480 | 480 | $html .= '<tr>' . |
481 | - '<td ' . TPL::getSnippet('sRowCheck') . '>checks</td>' . |
|
482 | - '<td ' . TPL::getSnippet('sRowCheck') . ' align="right">' . |
|
481 | + '<td ' . TPL::getSnippet('sRowCheck') . '>checks</td>' . |
|
482 | + '<td ' . TPL::getSnippet('sRowCheck') . ' align="right">' . |
|
483 | 483 | $backup->checkCount() . ' |
484 | 484 | </td>' . |
485 | - '<td ' . TPL::getSnippet('sRowCheck') . ' align="right"> |
|
485 | + '<td ' . TPL::getSnippet('sRowCheck') . ' align="right"> |
|
486 | 486 | |
487 | 487 | </td>' . |
488 | - '<td ' . TPL::getSnippet('sRowCheck') . ' align="right">' . |
|
488 | + '<td ' . TPL::getSnippet('sRowCheck') . ' align="right">' . |
|
489 | 489 | $backup->checkCountFailed() . |
490 | - '</td>' . |
|
491 | - '</tr>' . |
|
492 | - '<tr>' . |
|
493 | - '<td ' . TPL::getSnippet('sRowCrypt') . '>crypts</td>' . |
|
494 | - '<td ' . TPL::getSnippet('sRowCrypt') . ' align="right">' . |
|
490 | + '</td>' . |
|
491 | + '</tr>' . |
|
492 | + '<tr>' . |
|
493 | + '<td ' . TPL::getSnippet('sRowCrypt') . '>crypts</td>' . |
|
494 | + '<td ' . TPL::getSnippet('sRowCrypt') . ' align="right">' . |
|
495 | 495 | $backup->cryptCount() . |
496 | - '</td>' . |
|
497 | - '<td ' . TPL::getSnippet('sRowCrypt') . ' align="right">' . |
|
496 | + '</td>' . |
|
497 | + '<td ' . TPL::getSnippet('sRowCrypt') . ' align="right">' . |
|
498 | 498 | $backup->cryptCountSkipped() . |
499 | - '</td>' . |
|
500 | - '<td ' . TPL::getSnippet('sRowCrypt') . ' align="right">' . |
|
499 | + '</td>' . |
|
500 | + '<td ' . TPL::getSnippet('sRowCrypt') . ' align="right">' . |
|
501 | 501 | $backup->cryptCountFailed() . |
502 | - '</td>' . |
|
503 | - '</tr>' . |
|
504 | - '<tr>' . |
|
505 | - '<td ' . TPL::getSnippet('sRowSync') . '>syncs</td>' . |
|
506 | - '<td ' . TPL::getSnippet('sRowSync') . ' align="right">' . |
|
502 | + '</td>' . |
|
503 | + '</tr>' . |
|
504 | + '<tr>' . |
|
505 | + '<td ' . TPL::getSnippet('sRowSync') . '>syncs</td>' . |
|
506 | + '<td ' . TPL::getSnippet('sRowSync') . ' align="right">' . |
|
507 | 507 | $backup->syncCount() . '</td>' . |
508 | - '<td ' . TPL::getSnippet('sRowSync') . ' align="right">' . |
|
508 | + '<td ' . TPL::getSnippet('sRowSync') . ' align="right">' . |
|
509 | 509 | $backup->syncCountSkipped() . |
510 | - '</td>' . |
|
511 | - '<td ' . TPL::getSnippet('sRowSync') . ' align="right">' . |
|
510 | + '</td>' . |
|
511 | + '<td ' . TPL::getSnippet('sRowSync') . ' align="right">' . |
|
512 | 512 | $backup->syncCountFailed() . |
513 | - '</td>' . |
|
514 | - '</tr>' . |
|
515 | - '<tr>' . |
|
516 | - '<td ' . TPL::getSnippet('sRowCleanup') . '>cleanups</td>' . |
|
517 | - '<td ' . TPL::getSnippet('sRowCleanup') . ' align="right">' . |
|
513 | + '</td>' . |
|
514 | + '</tr>' . |
|
515 | + '<tr>' . |
|
516 | + '<td ' . TPL::getSnippet('sRowCleanup') . '>cleanups</td>' . |
|
517 | + '<td ' . TPL::getSnippet('sRowCleanup') . ' align="right">' . |
|
518 | 518 | $backup->cleanupCount() . |
519 | - '</td>' . |
|
520 | - '<td ' . TPL::getSnippet('sRowCleanup') . ' align="right">' . |
|
519 | + '</td>' . |
|
520 | + '<td ' . TPL::getSnippet('sRowCleanup') . ' align="right">' . |
|
521 | 521 | $backup->cleanupCountSkipped() . |
522 | - '</td>' . |
|
523 | - '<td ' . TPL::getSnippet('sRowCleanup') . ' align="right">' . |
|
522 | + '</td>' . |
|
523 | + '<td ' . TPL::getSnippet('sRowCleanup') . ' align="right">' . |
|
524 | 524 | $backup->cleanupCountFailed() . |
525 | - '</td>' . |
|
526 | - '</tr>'; |
|
525 | + '</td>' . |
|
526 | + '</tr>'; |
|
527 | 527 | |
528 | 528 | } |
529 | 529 | $html .= '</table>'; |
@@ -540,6 +540,6 @@ discard block |
||
540 | 540 | protected function getFooterHtml() |
541 | 541 | { |
542 | 542 | return '<p ' . TPL::getSnippet('sStats') . '>' . Statistics::resourceUsage() . '</p>' . |
543 | - '</td></tr></table>'; |
|
543 | + '</td></tr></table>'; |
|
544 | 544 | } |
545 | 545 | } |
@@ -194,7 +194,7 @@ |
||
194 | 194 | |
195 | 195 | if ($configLoader->hasValidationErrors()) { |
196 | 196 | echo " Warning - The configuration file did not pass validation!" . \PHP_EOL . |
197 | - " The following problems have been detected:" . \PHP_EOL; |
|
197 | + " The following problems have been detected:" . \PHP_EOL; |
|
198 | 198 | |
199 | 199 | foreach ($configLoader->getValidationErrors() as $line => $errors) { |
200 | 200 | echo \sprintf("\n Line %d:\n", $line); |