k2comp.py
1.45 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
import uuid
from datetime import datetime
from .k2cfg import k2
db = k2.db
def generate_id():
generated_id = uuid.uuid4().hex[:32]
return ''.join([generated_id[i:i + 4] for i in range(0, len(generated_id), 4)])
class Component(db.Model):
__bind_key__ = 'db2'
__tablename__ = 'component'
__table_args__ = {'extend_existing': True}
id = db.Column(db.String(36), primary_key=True, default=generate_id)
name = db.Column(db.String(100), nullable=False)
description = db.Column(db.String(200))
version = db.Column(db.String(20))
git_link = db.Column(db.String(200))
dependencies = db.Column(db.String)
date_installed = db.Column(db.DateTime, default=datetime.utcnow)
installed = db.Column(db.Boolean, default=False)
def __init__(self, name, description, version, git_link, dependencies, installed):
self.name = name
self.description = description
self.version = version
self.git_link = git_link
self.dependencies = dependencies
self.installed = installed
def __repr__(self):
return f"Component('{self.name}', '{self.version}')"
@classmethod
def get_repository_by_id(self,rep_id):
component = db.session.query(Component).filter(Component.id == rep_id).first()
return component
@classmethod
def get_repository_by_id(self,rep_id):
component = db.session.query(Component).filter(Component.id == rep_id).first()
return component