further update CLI schema updater layout to make it more readable

This commit is contained in:
Andrew Dolgov 2019-03-07 06:54:05 +03:00
parent 44858ca2dd
commit a1f8322871
2 changed files with 17 additions and 16 deletions

View File

@ -41,20 +41,20 @@ class DbUpdater {
$this->pdo->beginTransaction(); $this->pdo->beginTransaction();
foreach ($lines as $line) { foreach ($lines as $line) {
if ($html_output)
print "<pre>$line</pre>";
else
print " * $line\n";
if (strpos($line, "--") !== 0 && $line) { if (strpos($line, "--") !== 0 && $line) {
if ($html_output)
print "<pre>$line</pre>";
else
Debug::log("> $line");
try { try {
$this->pdo->query($line); // PDO returns errors as exceptions now $this->pdo->query($line); // PDO returns errors as exceptions now
} catch (PDOException $e) { } catch (PDOException $e) {
if ($html_output) { if ($html_output) {
print "<div class='text-error'>Error: " . implode(", ", $this->pdo->errorInfo()) . "</div>"; print "<div class='text-error'>Error: " . $e->getMessage() . "</div>";
} else { } else {
Debug::log("Error: " . implode(", ", $this->pdo->errorInfo())); Debug::log("Error: " . $e->getMessage());
} }
$this->pdo->rollBack(); $this->pdo->rollBack();

View File

@ -320,40 +320,41 @@
} }
if (isset($options["update-schema"])) { if (isset($options["update-schema"])) {
Debug::log("checking for updates (" . DB_TYPE . ")..."); Debug::log("Checking for updates (" . DB_TYPE . ")...");
$updater = new DbUpdater(Db::pdo(), DB_TYPE, SCHEMA_VERSION); $updater = new DbUpdater(Db::pdo(), DB_TYPE, SCHEMA_VERSION);
if ($updater->isUpdateRequired()) { if ($updater->isUpdateRequired()) {
Debug::log("schema update required, version " . $updater->getSchemaVersion() . " to " . SCHEMA_VERSION); Debug::log("Schema update required, version " . $updater->getSchemaVersion() . " to " . SCHEMA_VERSION);
if (DB_TYPE == "mysql") if (DB_TYPE == "mysql")
Debug::Log("READ THIS: Due to MySQL limitations, your database is not completely protected while updating.\n". Debug::Log("READ THIS: Due to MySQL limitations, your database is not completely protected while updating.\n".
"Errors may put it in an inconsistent state requiring manual rollback.\nBACKUP YOUR DATABASE BEFORE CONTINUING."); "Errors may put it in an inconsistent state requiring manual rollback.\nBACKUP YOUR DATABASE BEFORE CONTINUING.");
else
Debug::log("WARNING: please backup your database before continuing.");
Debug::log("WARNING: please backup your database before continuing.");
Debug::log("Type 'yes' to continue."); Debug::log("Type 'yes' to continue.");
if (read_stdin() != 'yes') if (read_stdin() != 'yes')
exit; exit;
print "Performing updates to version " . SCHEMA_VERSION . "...\n"; Debug::log("Performing updates to version " . SCHEMA_VERSION);
for ($i = $updater->getSchemaVersion() + 1; $i <= SCHEMA_VERSION; $i++) { for ($i = $updater->getSchemaVersion() + 1; $i <= SCHEMA_VERSION; $i++) {
Debug::log(" * Updating to version $i..."); Debug::log("* Updating to version $i...");
$result = $updater->performUpdateTo($i, false); $result = $updater->performUpdateTo($i, false);
if ($result) { if ($result) {
print " * Completed."; Debug::log("* Completed.");
} else { } else {
print "One of the updates failed. Either retry the process or perform updates manually."; Debug::log("One of the updates failed. Either retry the process or perform updates manually.");
return; return;
} }
} }
} else { } else {
Debug::log("update not required."); Debug::log("Update not required.");
} }
} }