mirror of
https://github.com/mail-in-a-box/mailinabox.git
synced 2024-11-26 02:57:04 +00:00
remove the hard-coded migration ID from setup.sh
This commit is contained in:
parent
41b3df6d78
commit
6f51b49671
@ -36,7 +36,16 @@ def migration_1(env):
|
|||||||
except:
|
except:
|
||||||
pass
|
pass
|
||||||
|
|
||||||
if __name__ == "__main__":
|
def get_current_migration():
|
||||||
|
ver = 0
|
||||||
|
while True:
|
||||||
|
next_ver = (ver + 1)
|
||||||
|
migration_func = globals().get("migration_%d" % next_ver)
|
||||||
|
if not migration_func:
|
||||||
|
return ver
|
||||||
|
ver = next_ver
|
||||||
|
|
||||||
|
def run_migrations():
|
||||||
if not os.access("/etc/mailinabox.conf", os.W_OK, effective_ids=True):
|
if not os.access("/etc/mailinabox.conf", os.W_OK, effective_ids=True):
|
||||||
print("This script must be run as root.", file=sys.stderr)
|
print("This script must be run as root.", file=sys.stderr)
|
||||||
sys.exit(1)
|
sys.exit(1)
|
||||||
@ -75,3 +84,11 @@ if __name__ == "__main__":
|
|||||||
|
|
||||||
# iterate and try next version...
|
# iterate and try next version...
|
||||||
|
|
||||||
|
if __name__ == "__main__":
|
||||||
|
if sys.argv[-1] == "--current":
|
||||||
|
# Return the number of the highest migration.
|
||||||
|
print(str(get_current_migration()))
|
||||||
|
elif sys.argv[-1] == "--migrate":
|
||||||
|
# Perform migrations.
|
||||||
|
run_migrations()
|
||||||
|
|
||||||
|
@ -30,7 +30,7 @@ fi
|
|||||||
if [ -f /etc/mailinabox.conf ]; then
|
if [ -f /etc/mailinabox.conf ]; then
|
||||||
# Run any system migrations before proceeding. Since this is a second run,
|
# Run any system migrations before proceeding. Since this is a second run,
|
||||||
# we assume we have Python already installed.
|
# we assume we have Python already installed.
|
||||||
setup/migrate.py
|
setup/migrate.py --migrate
|
||||||
|
|
||||||
# Okay now load the old .conf file to get existing configuration options.
|
# Okay now load the old .conf file to get existing configuration options.
|
||||||
cat /etc/mailinabox.conf | sed s/^/DEFAULT_/ > /tmp/mailinabox.prev.conf
|
cat /etc/mailinabox.conf | sed s/^/DEFAULT_/ > /tmp/mailinabox.prev.conf
|
||||||
@ -38,7 +38,7 @@ if [ -f /etc/mailinabox.conf ]; then
|
|||||||
MIGRATIONID=$DEFAULT_MIGRATIONID
|
MIGRATIONID=$DEFAULT_MIGRATIONID
|
||||||
else
|
else
|
||||||
# What migration are we at for new installs?
|
# What migration are we at for new installs?
|
||||||
MIGRATIONID=1
|
MIGRATIONID=$(setup/migrate.py --current)
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# The box needs a name.
|
# The box needs a name.
|
||||||
|
Loading…
Reference in New Issue
Block a user