Added --version option to evennia.py program call.
This commit is contained in:
parent
2d81a90b4b
commit
471e1bbf9b
2 changed files with 63 additions and 14 deletions
|
|
@ -31,7 +31,7 @@ if not os.path.exists('settings.py'):
|
||||||
SIG = signal.SIGINT
|
SIG = signal.SIGINT
|
||||||
|
|
||||||
|
|
||||||
CMDLINEHELP = \
|
CMDLINE_HELP = \
|
||||||
"""
|
"""
|
||||||
Main Evennia launcher. When starting in interactive (-i) mode, only
|
Main Evennia launcher. When starting in interactive (-i) mode, only
|
||||||
the Server will do so since this is the most commonly useful setup. To
|
the Server will do so since this is the most commonly useful setup. To
|
||||||
|
|
@ -41,9 +41,32 @@ program.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
|
|
||||||
HELPENTRY = \
|
VERSION_INFO = \
|
||||||
"""
|
"""
|
||||||
(version %s)
|
Evennia {version}
|
||||||
|
{about}
|
||||||
|
OS: {os}
|
||||||
|
Python: {python}
|
||||||
|
Twisted: {twisted}
|
||||||
|
Django: {django}
|
||||||
|
{south}
|
||||||
|
"""
|
||||||
|
|
||||||
|
ABOUT_INFO= \
|
||||||
|
"""
|
||||||
|
MUD/MUX/MU* development system
|
||||||
|
|
||||||
|
Licence: BSD 3-Clause Licence
|
||||||
|
Web: http://www.evennia.com
|
||||||
|
Irc: #evennia on FreeNode
|
||||||
|
Forum: http://www.evennia.com/discussions
|
||||||
|
Maintainer (2010-): Griatch (griatch AT gmail DOT com)
|
||||||
|
Maintainer (2006-10): Greg Taylor
|
||||||
|
"""
|
||||||
|
|
||||||
|
HELP_ENTRY = \
|
||||||
|
"""
|
||||||
|
(version %s)
|
||||||
|
|
||||||
All functionality of the launcher can also be accessed directly from
|
All functionality of the launcher can also be accessed directly from
|
||||||
the command line. Use "python evennia.py -h" for command line
|
the command line. Use "python evennia.py -h" for command line
|
||||||
|
|
@ -73,9 +96,7 @@ log into the game to stop or restart the server instead.
|
||||||
|
|
||||||
MENU = \
|
MENU = \
|
||||||
"""
|
"""
|
||||||
+---------------------------------------------------------------------------+
|
+----Evennia Launcher-------------------------------------------------------+
|
||||||
| |
|
|
||||||
| Welcome to the Evennia launcher! |
|
|
||||||
| |
|
| |
|
||||||
+--- Starting --------------------------------------------------------------+
|
+--- Starting --------------------------------------------------------------+
|
||||||
| |
|
| |
|
||||||
|
|
@ -96,8 +117,7 @@ MENU = \
|
||||||
| 9) Stopping only Portal. |
|
| 9) Stopping only Portal. |
|
||||||
| |
|
| |
|
||||||
+---------------------------------------------------------------------------+
|
+---------------------------------------------------------------------------+
|
||||||
| h) Help |
|
| h) Help i) About info q) Abort |
|
||||||
| q) Abort |
|
|
||||||
+---------------------------------------------------------------------------+
|
+---------------------------------------------------------------------------+
|
||||||
"""
|
"""
|
||||||
|
|
||||||
|
|
@ -256,6 +276,25 @@ def kill(pidfile, signal=SIG, succmsg="", errmsg="", restart_file=SERVER_RESTART
|
||||||
return
|
return
|
||||||
print "Evennia:", errmsg
|
print "Evennia:", errmsg
|
||||||
|
|
||||||
|
def show_version_info(about=False):
|
||||||
|
"""
|
||||||
|
Display version info
|
||||||
|
"""
|
||||||
|
import os, sys
|
||||||
|
import twisted
|
||||||
|
import django
|
||||||
|
try:
|
||||||
|
import south
|
||||||
|
sversion = "South %s" % south.__version__
|
||||||
|
except ImportError:
|
||||||
|
sversion = "South <not installed>"
|
||||||
|
|
||||||
|
return VERSION_INFO.format(version=EVENNIA_VERSION,
|
||||||
|
about=ABOUT_INFO if about else "",
|
||||||
|
os=os.name, python=sys.version.split()[0],
|
||||||
|
twisted=twisted.version.short(),
|
||||||
|
django=django.get_version(),
|
||||||
|
south=sversion)
|
||||||
|
|
||||||
def run_menu():
|
def run_menu():
|
||||||
"""
|
"""
|
||||||
|
|
@ -274,7 +313,11 @@ def run_menu():
|
||||||
if inp.lower() == 'q':
|
if inp.lower() == 'q':
|
||||||
sys.exit()
|
sys.exit()
|
||||||
elif inp.lower() == 'h':
|
elif inp.lower() == 'h':
|
||||||
print HELPENTRY % EVENNIA_VERSION
|
print HELP_ENTRY % EVENNIA_VERSION
|
||||||
|
raw_input("press <return> to continue ...")
|
||||||
|
continue
|
||||||
|
elif inp.lower() in ('v', 'i', 'a'):
|
||||||
|
print show_version_info(about=True)
|
||||||
raw_input("press <return> to continue ...")
|
raw_input("press <return> to continue ...")
|
||||||
continue
|
continue
|
||||||
|
|
||||||
|
|
@ -414,9 +457,9 @@ def error_check_python_modules():
|
||||||
if settings.WEBSERVER_ENABLED and not isinstance(settings.WEBSERVER_PORTS[0], tuple):
|
if settings.WEBSERVER_ENABLED and not isinstance(settings.WEBSERVER_PORTS[0], tuple):
|
||||||
raise DeprecationWarning("settings.WEBSERVER_PORTS must be on the form [(proxyport, serverport), ...]")
|
raise DeprecationWarning("settings.WEBSERVER_PORTS must be on the form [(proxyport, serverport), ...]")
|
||||||
if hasattr(settings, "BASE_COMM_TYPECLASS"):
|
if hasattr(settings, "BASE_COMM_TYPECLASS"):
|
||||||
raise DeprecationWarning(depstring % ("BASE_COMM_TYPECLASS", "BASE_CHANNEL_TYPECLASS"))
|
raise DeprecationWarning(deprstring % ("BASE_COMM_TYPECLASS", "BASE_CHANNEL_TYPECLASS"))
|
||||||
if hasattr(settings, "COMM_TYPECLASS_PATHS"):
|
if hasattr(settings, "COMM_TYPECLASS_PATHS"):
|
||||||
raise DeprecationWarning(depstring % ("COMM_TYPECLASS_PATHS", "CHANNEL_TYPECLASS_PATHS"))
|
raise DeprecationWarning(deprstring % ("COMM_TYPECLASS_PATHS", "CHANNEL_TYPECLASS_PATHS"))
|
||||||
|
|
||||||
from src.commands import cmdsethandler
|
from src.commands import cmdsethandler
|
||||||
if not cmdsethandler.import_cmdset(settings.CMDSET_UNLOGGEDIN, None): print "Warning: CMDSET_UNLOGGED failed to load!"
|
if not cmdsethandler.import_cmdset(settings.CMDSET_UNLOGGEDIN, None): print "Warning: CMDSET_UNLOGGED failed to load!"
|
||||||
|
|
@ -437,14 +480,20 @@ def main():
|
||||||
"""
|
"""
|
||||||
|
|
||||||
parser = OptionParser(usage="%prog [-i] start|stop|reload|menu [server|portal]",
|
parser = OptionParser(usage="%prog [-i] start|stop|reload|menu [server|portal]",
|
||||||
description=CMDLINEHELP)
|
description=CMDLINE_HELP)
|
||||||
parser.add_option('-i', '--interactive', action='store_true',
|
parser.add_option('-i', '--interactive', action='store_true',
|
||||||
dest='interactive', default=False,
|
dest='interactive', default=False,
|
||||||
help="Start given processes in interactive mode.")
|
help="Start given processes in interactive mode.")
|
||||||
|
parser.add_option('-v', '--version', action='store_true',
|
||||||
|
dest='show_version', default=False,
|
||||||
|
help="Show version info.")
|
||||||
|
|
||||||
options, args = parser.parse_args()
|
options, args = parser.parse_args()
|
||||||
|
|
||||||
if not args:
|
if not args:
|
||||||
|
if options.show_version:
|
||||||
|
print show_version_info()
|
||||||
|
return
|
||||||
mode = "menu"
|
mode = "menu"
|
||||||
service = 'all'
|
service = 'all'
|
||||||
if args:
|
if args:
|
||||||
|
|
|
||||||
|
|
@ -588,14 +588,14 @@ class CmdAbout(MuxCommand):
|
||||||
|
|
||||||
{wOS{n %s
|
{wOS{n %s
|
||||||
{wPython{n %s
|
{wPython{n %s
|
||||||
{wDjango{n %s
|
|
||||||
{wTwisted{n %s
|
{wTwisted{n %s
|
||||||
|
{wDjango{n %s
|
||||||
%s
|
%s
|
||||||
""" % (utils.get_evennia_version(),
|
""" % (utils.get_evennia_version(),
|
||||||
os.name,
|
os.name,
|
||||||
sys.version.split()[0],
|
sys.version.split()[0],
|
||||||
django.get_version(),
|
|
||||||
twisted.version.short(),
|
twisted.version.short(),
|
||||||
|
django.get_version(),
|
||||||
sversion)
|
sversion)
|
||||||
self.caller.msg(string)
|
self.caller.msg(string)
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue