alembic: Add bundle column in ps_endpoints table
authorFlorian Floimair <f.floimair@commend.com>
Wed, 25 Oct 2017 06:10:29 +0000 (08:10 +0200)
committerGeorge Joseph <gjoseph@digium.com>
Mon, 30 Oct 2017 13:36:59 +0000 (08:36 -0500)
The ps_endpoints table was missing the bundle column
introduced with the bundle feature in
commit 065c3005ad92.

ASTERISK-27374 #close

Change-Id: Ic900f4f2c20f64b99ea898d50f5c0a7117472d46

contrib/ast-db-manage/config/versions/de83fac997e2_add_bundle_to_ps_endpoints.py [new file with mode: 0644]

diff --git a/contrib/ast-db-manage/config/versions/de83fac997e2_add_bundle_to_ps_endpoints.py b/contrib/ast-db-manage/config/versions/de83fac997e2_add_bundle_to_ps_endpoints.py
new file mode 100644 (file)
index 0000000..57b5688
--- /dev/null
@@ -0,0 +1,34 @@
+"""add bundle to ps_endpoints
+
+Revision ID: de83fac997e2
+Revises: 20abce6d1e3c
+Create Date: 2017-10-24 17:10:57.242020
+
+"""
+
+# revision identifiers, used by Alembic.
+revision = 'de83fac997e2'
+down_revision = '20abce6d1e3c'
+
+from alembic import op
+import sqlalchemy as sa
+from sqlalchemy.dialects.postgresql import ENUM
+
+YESNO_NAME = 'yesno_values'
+YESNO_VALUES = ['yes', 'no']
+
+def upgrade():
+     ############################# Enums ##############################
+
+    # yesno_values have already been created, so use postgres enum object
+    # type to get around "already created" issue - works okay with mysql
+    yesno_values = ENUM(*YESNO_VALUES, name=YESNO_NAME, create_type=False)
+
+    op.add_column('ps_endpoints', sa.Column('bundle', yesno_values))
+
+def downgrade():
+    context = op.get_context()
+
+    if context.bind.dialect.name == 'mssql':
+        op.drop_constraint('ck_ps_endpoints_bundle_yesno_values', 'ps_endpoints')
+    op.drop_column('ps_endpoints', 'bundle')