2022-05-18 15:49:36 +01:00
|
|
|
from flask import current_app
|
|
|
|
|
2022-05-04 15:36:36 +01:00
|
|
|
from app.extensions import db
|
|
|
|
from app.models import AbstractConfiguration, AbstractResource
|
|
|
|
|
|
|
|
|
|
|
|
class Onion(AbstractConfiguration):
|
|
|
|
group_id = db.Column(db.Integer(), db.ForeignKey("group.id"), nullable=False)
|
|
|
|
domain_name = db.Column(db.String(255), nullable=False)
|
|
|
|
onion_name = db.Column(db.String(56), nullable=False, unique=True)
|
|
|
|
|
|
|
|
group = db.relationship("Group", back_populates="onions")
|
|
|
|
|
|
|
|
|
|
|
|
class Eotk(AbstractResource):
|
|
|
|
group_id = db.Column(db.Integer(), db.ForeignKey("group.id"), nullable=False)
|
|
|
|
instance_id = db.Column(db.String(100), nullable=True)
|
2022-05-13 15:40:59 +01:00
|
|
|
provider = db.Column(db.String(20), nullable=False)
|
2022-05-04 15:36:36 +01:00
|
|
|
region = db.Column(db.String(20), nullable=False)
|
|
|
|
|
|
|
|
group = db.relationship("Group", back_populates="eotks")
|
2022-05-18 15:49:36 +01:00
|
|
|
|
|
|
|
@property
|
|
|
|
def brn(self) -> str:
|
|
|
|
return f"brn:{current_app.config['GLOBAL_NAMESPACE']}:{self.group_id}:eotk:{self.provider}:instance/{self.region}"
|