Define a shared Postgres server
| 518 | |
| 519 | |
| 520 | class SharedServer(db.Model, UserScopedMixin): |
| 521 | """Define a shared Postgres server""" |
| 522 | |
| 523 | __tablename__ = 'sharedserver' |
| 524 | __table_args__ = ( |
| 525 | db.UniqueConstraint('osid', 'user_id', |
| 526 | name='uq_sharedserver_osid_user'), |
| 527 | ) |
| 528 | id = db.Column(db.Integer, primary_key=True) |
| 529 | osid = db.Column( |
| 530 | db.Integer, |
| 531 | db.ForeignKey(SERVER_ID), |
| 532 | nullable=False |
| 533 | ) |
| 534 | user_id = db.Column( |
| 535 | db.Integer, |
| 536 | db.ForeignKey(USER_ID) |
| 537 | ) |
| 538 | server_owner = db.Column( |
| 539 | db.String(128), |
| 540 | db.ForeignKey('user.username') |
| 541 | ) |
| 542 | servergroup_id = db.Column( |
| 543 | db.Integer, |
| 544 | db.ForeignKey('servergroup.id'), |
| 545 | nullable=False |
| 546 | ) |
| 547 | servergroup = db.relationship( |
| 548 | 'ServerGroup', |
| 549 | back_populates='sharedservers', |
| 550 | lazy='joined' |
| 551 | ) |
| 552 | name = db.Column(db.String(128), nullable=False) |
| 553 | host = db.Column(db.String(128), nullable=True) |
| 554 | port = db.Column( |
| 555 | db.Integer(), |
| 556 | nullable=True) |
| 557 | maintenance_db = db.Column(db.String(64), nullable=True) |
| 558 | username = db.Column(db.String(64), nullable=False) |
| 559 | password = db.Column(PgAdminDbBinaryString()) |
| 560 | save_password = db.Column( |
| 561 | db.Integer(), |
| 562 | db.CheckConstraint('save_password >= 0 AND save_password <= 1'), |
| 563 | nullable=False |
| 564 | ) |
| 565 | role = db.Column(db.String(64), nullable=True) |
| 566 | comment = db.Column(db.String(1024), nullable=True) |
| 567 | discovery_id = db.Column(db.String(128), nullable=True) |
| 568 | bgcolor = db.Column(db.String(10), nullable=True) |
| 569 | fgcolor = db.Column(db.String(10), nullable=True) |
| 570 | service = db.Column(db.Text(), nullable=True) |
| 571 | use_ssh_tunnel = db.Column( |
| 572 | db.Integer(), |
| 573 | db.CheckConstraint('use_ssh_tunnel >= 0 AND use_ssh_tunnel <= 1'), |
| 574 | nullable=False |
| 575 | ) |
| 576 | tunnel_host = db.Column(db.String(128), nullable=True) |
| 577 | tunnel_port = db.Column( |
no test coverage detected