From b5c55d10d35b4bbbc99ce6fba6660c9a8f33df3a Mon Sep 17 00:00:00 2001 From: kaiyou Date: Sun, 10 Sep 2017 20:30:03 +0200 Subject: [PATCH] Add the relay concept to the model --- admin/mailu/admin/models.py | 14 +++++++++++ admin/migrations/versions/c162ac88012a_.py | 29 ++++++++++++++++++++++ 2 files changed, 43 insertions(+) create mode 100644 admin/migrations/versions/c162ac88012a_.py diff --git a/admin/mailu/admin/models.py b/admin/mailu/admin/models.py index 80a81ce9..9fcfca1d 100644 --- a/admin/mailu/admin/models.py +++ b/admin/mailu/admin/models.py @@ -116,6 +116,20 @@ class Alternative(Base): return self.name +class Relay(Base): + """ Relayed mail domain. + The domain is either relayed publicly or through a specified SMTP host. + """ + + __tablename__ = "relay" + + name = db.Column(db.String(80), primary_key=True, nullable=False) + smtp = db.Column(db.String(80), nullable=True) + + def __str__(self): + return self.name + + class Email(object): """ Abstraction for an email address (localpart and domain). """ diff --git a/admin/migrations/versions/c162ac88012a_.py b/admin/migrations/versions/c162ac88012a_.py new file mode 100644 index 00000000..914ba662 --- /dev/null +++ b/admin/migrations/versions/c162ac88012a_.py @@ -0,0 +1,29 @@ +""" Add relayed domains + +Revision ID: c162ac88012a +Revises: c9a0b4e653cf +Create Date: 2017-09-10 20:21:10.011969 + +""" + +# revision identifiers, used by Alembic. +revision = 'c162ac88012a' +down_revision = 'c9a0b4e653cf' + +from alembic import op +import sqlalchemy as sa + + +def upgrade(): + op.create_table('relay', + sa.Column('created_at', sa.Date(), nullable=False), + sa.Column('updated_at', sa.Date(), nullable=True), + sa.Column('comment', sa.String(length=255), nullable=True), + sa.Column('name', sa.String(length=80), nullable=False), + sa.Column('smtp', sa.String(length=80), nullable=True), + sa.PrimaryKeyConstraint('name') + ) + + +def downgrade(): + op.drop_table('relay')