webpyapp: support du mode développement
This commit is contained in:
parent
e2ea2ead3c
commit
c541958828
|
@ -8,7 +8,7 @@ from os import path
|
||||||
|
|
||||||
from ulib.base.base import isstr, isbool, isnum, isflt, seqof, make_prop
|
from ulib.base.base import isstr, isbool, isnum, isflt, seqof, make_prop
|
||||||
from ulib.base.uio import _u, Utf8IO
|
from ulib.base.uio import _u, Utf8IO
|
||||||
from ulib.base.output import set_verbosity, enote, edebug
|
from ulib.base.output import set_verbosity, einfo, enote, edebug
|
||||||
from ulib.base.args import get_args
|
from ulib.base.args import get_args
|
||||||
from ulib.base.dates import rfc2822
|
from ulib.base.dates import rfc2822
|
||||||
from ulib.base.functions import apply_args
|
from ulib.base.functions import apply_args
|
||||||
|
@ -324,7 +324,13 @@ class ShConfig(dict):
|
||||||
self[name] = value
|
self[name] = value
|
||||||
|
|
||||||
class Application(object):
|
class Application(object):
|
||||||
|
# si ce fichier existe dans basedir, alors forcer le mode développement: la
|
||||||
|
# variable HOST est ignorée et DEBUG vaut par défaut True
|
||||||
|
DEVEL_SF = '.devel'
|
||||||
|
# nom du fichier de configuration à charger automatiquement à partir de
|
||||||
|
# basedir. pour désactiver cette fonctionnalité, utiliser la valeur None
|
||||||
CONFIG = 'server.conf'
|
CONFIG = 'server.conf'
|
||||||
|
# configuration par défaut
|
||||||
HOST = '0.0.0.0'
|
HOST = '0.0.0.0'
|
||||||
PORT = 12345
|
PORT = 12345
|
||||||
DEBUG = False
|
DEBUG = False
|
||||||
|
@ -362,12 +368,17 @@ class Application(object):
|
||||||
templatedir = path.join(self.basedir, 'templates')
|
templatedir = path.join(self.basedir, 'templates')
|
||||||
self.templatedir = templatedir
|
self.templatedir = templatedir
|
||||||
|
|
||||||
config = path.join(self.basedir, self.CONFIG)
|
devel = path.exists(path.join(self.basedir, self.DEVEL_SF))
|
||||||
if path.exists(config):
|
if devel: einfo("Mode developpement activé")
|
||||||
c = ShConfig(config, HOST=None, PORT=None, DEBUG=None)
|
|
||||||
if host is None: host = c['HOST']
|
if self.CONFIG is not None:
|
||||||
if port is None: port = integerF.parse((c['PORT']))
|
config = path.join(self.basedir, self.CONFIG)
|
||||||
if debug is None: debug = booleanF.parse(c['DEBUG'])
|
if path.exists(config):
|
||||||
|
c = ShConfig(config, HOST=None, PORT=None, DEBUG=None)
|
||||||
|
if host is None and not devel: host = c['HOST']
|
||||||
|
if port is None: port = integerF.parse((c['PORT']))
|
||||||
|
if debug is None: debug = booleanF.parse(c['DEBUG'])
|
||||||
|
if debug is None and devel: debug = True
|
||||||
|
|
||||||
if host is not None: self.HOST = host
|
if host is not None: self.HOST = host
|
||||||
if port is not None: self.PORT = port
|
if port is not None: self.PORT = port
|
||||||
|
|
|
@ -57,7 +57,9 @@ fi
|
||||||
etitle "Copie des fichiers"
|
etitle "Copie des fichiers"
|
||||||
destdir="$destdir/$name"
|
destdir="$destdir/$name"
|
||||||
mkdir -p "$destdir" || die
|
mkdir -p "$destdir" || die
|
||||||
rsync -a --exclude /server.conf --exclude /install-or-update.sh "$scriptdir/" "$destdir"
|
rsync -a \
|
||||||
|
--exclude /server.conf --exclude /install-or-update.sh --exclude /.devel \
|
||||||
|
"$scriptdir/" "$destdir"
|
||||||
eend
|
eend
|
||||||
|
|
||||||
etitle "Vérification de la configuration"
|
etitle "Vérification de la configuration"
|
||||||
|
|
Loading…
Reference in New Issue