models.py 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. from public import db
  2. from libs.model import ModelMixin
  3. class Environment(db.Model, ModelMixin):
  4. __tablename__ = 'configuration_environments'
  5. id = db.Column(db.Integer, primary_key=True)
  6. name = db.Column(db.String(50))
  7. identify = db.Column(db.String(50), unique=True)
  8. desc = db.Column(db.String(255))
  9. priority = db.Column(db.Integer, default=100)
  10. def __repr__(self):
  11. return '<Environment %r>' % self.name
  12. class Service(db.Model, ModelMixin):
  13. __tablename__ = 'configuration_services'
  14. id = db.Column(db.Integer, primary_key=True)
  15. name = db.Column(db.String(50))
  16. identify = db.Column(db.String(50), unique=True)
  17. desc = db.Column(db.String(255))
  18. group = db.Column(db.String(50))
  19. class ConfigValue(db.Model, ModelMixin):
  20. __tablename__ = 'configuration_values'
  21. id = db.Column(db.Integer, primary_key=True)
  22. env_id = db.Column(db.Integer, db.ForeignKey('configuration_environments.id'))
  23. key_id = db.Column(db.Integer, db.ForeignKey('configuration_keys.id', ondelete='CASCADE'))
  24. value = db.Column(db.String(255))
  25. class ConfigKey(db.Model, ModelMixin):
  26. __tablename__ = 'configuration_keys'
  27. id = db.Column(db.Integer, primary_key=True)
  28. owner_type = db.Column(db.String(50))
  29. owner_id = db.Column(db.Integer, index=True)
  30. type = db.Column(db.String(50))
  31. name = db.Column(db.String(50))
  32. desc = db.Column(db.String(255))
  33. def __repr__(self):
  34. return '<ConfigKey %r>' % self.name
  35. class AppConfigRel(db.Model, ModelMixin):
  36. __tablename__ = 'configuration_app_rel'
  37. id = db.Column(db.Integer, primary_key=True)
  38. s_id = db.Column(db.Integer, db.ForeignKey('deploy_apps.id'))
  39. d_id = db.Column(db.Integer)
  40. d_type = db.Column(db.String(50))