Add Job model.

This commit is contained in:
Stephan Porada
2019-08-05 16:45:38 +02:00
parent 8763e0f4db
commit 94dcaa55a3
3 changed files with 80 additions and 2 deletions

View File

@ -204,6 +204,32 @@ class AnonymousUser(AnonymousUserMixin):
return False
class Job():
"""
Class to define Jobs.
"""
__tablename__ = 'jobs'
id = db.Column(db.Integer, primary_key=True)
title = db.Column(db.String(32))
description = db.Column(db.String(64))
service = db.Column(db.String(64), index=True)
user_id = db.Column(db.Integer, db.ForeignKey('users.id'), index=True)
requested_cpus = db.Column(db.Integer, default=None)
requested_memory = db.Column(db.Integer, default=None)
service_args = db.Column(db.String(255)) # JSON string representation {'lang': new_ocr_job_form.language.data, 'version': new_ocr_job_form.version. }
status = db.Column(db.String(64))
cmd_args = db.Column(db.String(255)) # For extra cmd arguments
def __init__(self, **kwargs):
super(Job, self).__init__(**kwargs)
def __repr__(self):
"""
String representation of the Job. For human readability.
"""
return '<Job %r>' % self.title
login_manager.anonymous_user = AnonymousUser # Flask-Login is told to use the applications custom anonymous user by setting its class in the login_manager.anonymous_user attribute.