From 8096c33c00d6e49b4d261f2016403675accafce8 Mon Sep 17 00:00:00 2001 From: Daniel Friesel Date: Sun, 7 Apr 2019 14:18:56 +0200 Subject: Add a note about updating travelynx --- README.md | 22 ++++++++++++++++++++++ lib/Travelynx/Command/database.pm | 10 +++++++++- 2 files changed, 31 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 3ac4179..96ec4b9 100644 --- a/README.md +++ b/README.md @@ -55,6 +55,28 @@ Please open an issue on or send a mail to derf+travelynx@finalrewind.org if there is anything missing or ambiguous in this setup manual. +Updating +--- + +It is recommended to run travelynx directly from the git repository. When +updating, the workflow depends on whether schema updates need to applied +or not. + +``` +git pull +chmod -R a+rX . # only needed if travelynx is running under a different user +if perl index.pl database has-current-schema; then + systemctl reload travelynx +else + systemctl stop travelynx + perl index.pl migrate + systemctl start travelynx +fi +``` + +Note that this is subject to change -- the application may perform schema +updates automatically in the future. + Usage --- diff --git a/lib/Travelynx/Command/database.pm b/lib/Travelynx/Command/database.pm index e501e47..7a714b1 100644 --- a/lib/Travelynx/Command/database.pm +++ b/lib/Travelynx/Command/database.pm @@ -106,6 +106,14 @@ sub run { $dbh->commit; } } + elsif ( $command eq 'has-current-schema' ) { + if ( get_schema_version($dbh) == $#migrations ) { + say "yes"; + } + else { + say "no"; + } + } else { $self->help; } @@ -120,7 +128,7 @@ __END__ =head1 SYNOPSIS - Usage: index.pl database + Usage: index.pl database Upgrades the database layout to the latest schema. -- cgit v1.2.3