diff options
author | June McEnroe <june@causal.agency> | 2020-05-21 12:19:27 -0400 |
---|---|---|
committer | June McEnroe <june@causal.agency> | 2020-05-21 12:19:27 -0400 |
commit | 62e20dea651bc2db8b8d491d449d0b0241ad42c4 (patch) | |
tree | 5d43eb9efd380e41b6141447864a45b0bc9b5371 | |
parent | Don't install rc scripts on other platforms (diff) | |
download | litterbox-62e20dea651bc2db8b8d491d449d0b0241ad42c4.tar.gz litterbox-62e20dea651bc2db8b8d491d449d0b0241ad42c4.zip |
Automatically perform database migrations in litterbox
To simplify upgrades, restarting litterbox should be sufficient. The database can still be explicitly migrated with -m.
-rw-r--r-- | database.h | 2 | ||||
-rw-r--r-- | litterbox.c | 9 |
2 files changed, 3 insertions, 8 deletions
diff --git a/database.h b/database.h index c852e11..878a5f6 100644 --- a/database.h +++ b/database.h @@ -123,7 +123,7 @@ static inline void dbFind(char *path, int flags) { dataDirs += len; if (*dataDirs) dataDirs++; } - errx(EX_NOINPUT, "database not found"); + errx(EX_NOINPUT, "database not found; initialize it with litterbox -i"); } static struct Persist { diff --git a/litterbox.c b/litterbox.c index 632549a..808b565 100644 --- a/litterbox.c +++ b/litterbox.c @@ -793,17 +793,12 @@ int main(int argc, char *argv[]) { dbInit(); return EX_OK; } - if (migrate) { - dbMigrate(); - return EX_OK; - } if (backup) { dbBackup(backup); return EX_OK; } - if (dbVersion() != DatabaseVersion) { - errx(EX_CONFIG, "database out of date; migrate with -m"); - } + dbMigrate(); + if (migrate) return EX_OK; createJoins(); if (!host) errx(EX_USAGE, "host required"); |