diff options
| author | rr- | 2017-01-07 11:59:43 +0100 |
|---|---|---|
| committer | rr- | 2017-01-08 10:25:29 +0100 |
| commit | 036fa9ee3908f480b9e0f8aa3018bf7c8768e88f (patch) | |
| tree | c83823023ae078affbd0a17857ccb10f9948b106 /server/szurubooru/facade.py | |
| parent | f00cc5f3fa3a16a1f7055c772c3008d030f41fef (diff) | |
server/uploads: add file upload api
Diffstat (limited to 'server/szurubooru/facade.py')
| -rw-r--r-- | server/szurubooru/facade.py | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/server/szurubooru/facade.py b/server/szurubooru/facade.py index 5211ca8..e29aae1 100644 --- a/server/szurubooru/facade.py +++ b/server/szurubooru/facade.py @@ -1,11 +1,13 @@ ''' Exports create_app. ''' import os +import time import logging +import threading import coloredlogs import sqlalchemy.orm.exc from szurubooru import config, errors, rest -from szurubooru.func import posts +from szurubooru.func import posts, file_uploads # pylint: disable=unused-import from szurubooru import api, middleware @@ -79,6 +81,15 @@ def validate_config(): raise errors.ConfigError('Database is not configured') +def purge_old_uploads(): + while True: + try: + file_uploads.purge_old_uploads() + except Exception as ex: + logging.exception(ex) + time.sleep(60 * 5) + + def create_app(): ''' Create a WSGI compatible App object. ''' validate_config() @@ -88,6 +99,9 @@ def create_app(): if config.config['show_sql']: logging.getLogger('sqlalchemy.engine').setLevel(logging.INFO) + purge_thread = threading.Thread(target=purge_old_uploads) + purge_thread.daemon = True + purge_thread.start() posts.populate_reverse_search() rest.errors.handle(errors.AuthError, _on_auth_error) |