forked from ScoDoc/ScoDoc
tests avec gunicorn
This commit is contained in:
parent
545274c562
commit
3dc94775a1
14
README.md
14
README.md
@ -21,14 +21,12 @@ on s'efforce à ce que rien ne soit visible des utilisateurs Web.
|
|||||||
**Work in Progress (WIP)**: développement en cours, certaines pages fonctionnent, d'autres pas:
|
**Work in Progress (WIP)**: développement en cours, certaines pages fonctionnent, d'autres pas:
|
||||||
merci de signaler les erreurs.
|
merci de signaler les erreurs.
|
||||||
|
|
||||||
### État actuel (30 juillet 21)
|
### État actuel (15 août 21)
|
||||||
|
|
||||||
- serveur de développement fonctionnel (pas testé en mode "production" sous gunicorn+nginx).
|
- serveur de développement fonctionnel (tests en mode "production"
|
||||||
|
sous gunicorn+nginx en cours).
|
||||||
- logs à revoir (tropverbeux), dans `/opt/scodoc-data/log`
|
|
||||||
|
|
||||||
- pas d'import/export excel.
|
|
||||||
|
|
||||||
|
- logs à revoir (trop verbeux), dans `/opt/scodoc-data/log`
|
||||||
|
|
||||||
**En cours:**
|
**En cours:**
|
||||||
|
|
||||||
@ -193,6 +191,10 @@ Dans un terminal, lancer le serveur:
|
|||||||
export FLASK_ENV=development
|
export FLASK_ENV=development
|
||||||
flask run --host=0.0.0.0
|
flask run --host=0.0.0.0
|
||||||
|
|
||||||
|
Test avec gunicorn:
|
||||||
|
|
||||||
|
gunicorn -b 0.0.0.0:8000 -w 4 scodoc:app
|
||||||
|
|
||||||
## Organisation des fichiers
|
## Organisation des fichiers
|
||||||
|
|
||||||
L'installation comporte les fichiers de l'application, sous `/opt/scodoc/`, et les fichiers locaux (archives, photos, configurations, logs) sous `/opt/scodoc-data`. Par ailleurs, il y a évidemment les bases de données postgresql et la configuration du système.
|
L'installation comporte les fichiers de l'application, sous `/opt/scodoc/`, et les fichiers locaux (archives, photos, configurations, logs) sous `/opt/scodoc-data`. Par ailleurs, il y a évidemment les bases de données postgresql et la configuration du système.
|
||||||
|
@ -81,10 +81,11 @@ class ScoDocCache:
|
|||||||
@classmethod
|
@classmethod
|
||||||
def get(cls, oid):
|
def get(cls, oid):
|
||||||
"""Returns cached object, or None"""
|
"""Returns cached object, or None"""
|
||||||
|
key = cls._get_key(oid)
|
||||||
try:
|
try:
|
||||||
return CACHE.get(cls._get_key(oid))
|
return CACHE.get(key)
|
||||||
except:
|
except:
|
||||||
log("XXX CACHE Warning: error in get")
|
log(f"XXX CACHE Warning: error in get(key={key})")
|
||||||
log(traceback.format_exc())
|
log(traceback.format_exc())
|
||||||
return None
|
return None
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
openpyxl
|
|
||||||
alembic==1.6.5
|
alembic==1.6.5
|
||||||
|
astroid==2.6.5
|
||||||
attrs==21.2.0
|
attrs==21.2.0
|
||||||
Babel==2.9.1
|
Babel==2.9.1
|
||||||
blinker==1.4
|
blinker==1.4
|
||||||
@ -8,11 +8,13 @@ cffi==1.14.6
|
|||||||
chardet==4.0.0
|
chardet==4.0.0
|
||||||
charset-normalizer==2.0.3
|
charset-normalizer==2.0.3
|
||||||
click==8.0.1
|
click==8.0.1
|
||||||
|
coverage==5.5
|
||||||
cracklib==2.9.3
|
cracklib==2.9.3
|
||||||
cryptography==3.4.7
|
cryptography==3.4.7
|
||||||
dnspython==2.1.0
|
dnspython==2.1.0
|
||||||
dominate==2.6.0
|
dominate==2.6.0
|
||||||
email-validator==1.1.3
|
email-validator==1.1.3
|
||||||
|
et-xmlfile==1.1.0
|
||||||
Flask==2.0.1
|
Flask==2.0.1
|
||||||
Flask-Babel==2.0.0
|
Flask-Babel==2.0.0
|
||||||
Flask-Bootstrap==3.3.7.1
|
Flask-Bootstrap==3.3.7.1
|
||||||
@ -24,26 +26,34 @@ Flask-Moment==1.0.2
|
|||||||
Flask-SQLAlchemy==2.5.1
|
Flask-SQLAlchemy==2.5.1
|
||||||
Flask-WTF==0.15.1
|
Flask-WTF==0.15.1
|
||||||
greenlet==1.1.0
|
greenlet==1.1.0
|
||||||
|
gunicorn==20.1.0
|
||||||
icalendar==4.0.7
|
icalendar==4.0.7
|
||||||
idna==3.2
|
idna==3.2
|
||||||
importlib-metadata==4.6.1
|
importlib-metadata==4.6.1
|
||||||
iniconfig==1.1.1
|
iniconfig==1.1.1
|
||||||
|
isort==5.9.3
|
||||||
itsdangerous==2.0.1
|
itsdangerous==2.0.1
|
||||||
Jinja2==3.0.1
|
Jinja2==3.0.1
|
||||||
jwt==1.2.0
|
jwt==1.2.0
|
||||||
|
lazy-object-proxy==1.6.0
|
||||||
Mako==1.1.4
|
Mako==1.1.4
|
||||||
MarkupSafe==2.0.1
|
MarkupSafe==2.0.1
|
||||||
|
mccabe==0.6.1
|
||||||
|
openpyxl==3.0.7
|
||||||
packaging==21.0
|
packaging==21.0
|
||||||
Pillow==8.3.1
|
Pillow==8.3.1
|
||||||
pkg-resources==0.0.0
|
pkg_resources==0.0.0
|
||||||
pluggy==0.13.1
|
pluggy==0.13.1
|
||||||
psycopg2==2.9.1
|
psycopg2==2.9.1
|
||||||
py==1.10.0
|
py==1.10.0
|
||||||
pycparser==2.20
|
pycparser==2.20
|
||||||
pydot==1.4.2
|
pydot==1.4.2
|
||||||
|
pylint==2.9.6
|
||||||
pyOpenSSL==20.0.1
|
pyOpenSSL==20.0.1
|
||||||
pyparsing==2.4.7
|
pyparsing==2.4.7
|
||||||
|
PyRSS2Gen==1.1
|
||||||
pytest==6.2.4
|
pytest==6.2.4
|
||||||
|
pytest-cov==2.12.1
|
||||||
python-dateutil==2.8.2
|
python-dateutil==2.8.2
|
||||||
python-dotenv==0.18.0
|
python-dotenv==0.18.0
|
||||||
python-editor==1.0.4
|
python-editor==1.0.4
|
||||||
@ -55,9 +65,11 @@ rq==1.9.0
|
|||||||
six==1.16.0
|
six==1.16.0
|
||||||
SQLAlchemy==1.4.22
|
SQLAlchemy==1.4.22
|
||||||
toml==0.10.2
|
toml==0.10.2
|
||||||
|
typed-ast==1.4.3
|
||||||
typing-extensions==3.10.0.0
|
typing-extensions==3.10.0.0
|
||||||
urllib3==1.26.6
|
urllib3==1.26.6
|
||||||
visitor==0.1.3
|
visitor==0.1.3
|
||||||
Werkzeug==2.0.1
|
Werkzeug==2.0.1
|
||||||
|
wrapt==1.12.1
|
||||||
WTForms==2.3.3
|
WTForms==2.3.3
|
||||||
zipp==3.5.0
|
zipp==3.5.0
|
||||||
|
@ -117,6 +117,8 @@ def import_scodoc7_dept(dept_id: str, dept_db_uri=None):
|
|||||||
logging.info(f"All table imported: clearing app caches...")
|
logging.info(f"All table imported: clearing app caches...")
|
||||||
clear_scodoc_cache()
|
clear_scodoc_cache()
|
||||||
logging.info(f"Done.")
|
logging.info(f"Done.")
|
||||||
|
logging.warning(f"Un redémarrage du serveur postgresql est conseillé")
|
||||||
|
logging.warning(f"systemctl restart postgresql"
|
||||||
|
|
||||||
|
|
||||||
def get_class_for_table(table):
|
def get_class_for_table(table):
|
||||||
|
Loading…
Reference in New Issue
Block a user