A better application structure

This commit is contained in:
Patrick Jentsch
2023-05-15 12:00:13 +02:00
parent 1c47d2a346
commit 60a59383c7
16 changed files with 215 additions and 228 deletions

View File

@ -3,6 +3,7 @@ from flask_login import login_required
bp = Blueprint('corpora', __name__)
bp.cli.short_help = 'Corpus commands.'
@bp.before_request
@ -15,6 +16,4 @@ def before_request():
pass
from . import cqi_over_socketio, routes, json_routes
from . import files
from . import followers
from . import cli, cqi_over_socketio, files, followers, routes, json_routes

21
app/corpora/cli.py Normal file
View File

@ -0,0 +1,21 @@
from app.models import Corpus, CorpusStatus
import os
import shutil
from . import bp
@bp.cli.command('reset')
def reset():
''' Reset built corpora. '''
status = [
CorpusStatus.QUEUED,
CorpusStatus.BUILDING,
CorpusStatus.BUILT,
CorpusStatus.STARTING_ANALYSIS_SESSION,
CorpusStatus.RUNNING_ANALYSIS_SESSION,
CorpusStatus.CANCELING_ANALYSIS_SESSION
]
for corpus in [x for x in Corpus.query.all() if x.status in status]:
shutil.rmtree(os.path.join(corpus.path, 'cwb'), ignore_errors=True)
corpus.status = CorpusStatus.SUBMITTED
corpus.num_analysis_sessions = 0