diff --git a/ironic_inspector/db.py b/ironic_inspector/db.py index ff4a56830..0af56b01a 100644 --- a/ironic_inspector/db.py +++ b/ironic_inspector/db.py @@ -28,7 +28,12 @@ from sqlalchemy.ext.declarative import declarative_base from sqlalchemy import orm -Base = declarative_base(cls=models.ModelBase) +class ModelBase(models.ModelBase): + __table_args__ = {'mysql_engine': "InnoDB", + 'mysql_charset': "utf8"} + + +Base = declarative_base(cls=ModelBase) CONF = cfg.CONF _FACADE = None diff --git a/ironic_inspector/migrations/versions/578f84f38d_inital_db_schema.py b/ironic_inspector/migrations/versions/578f84f38d_inital_db_schema.py index caf132d79..b0fa92ebb 100644 --- a/ironic_inspector/migrations/versions/578f84f38d_inital_db_schema.py +++ b/ironic_inspector/migrations/versions/578f84f38d_inital_db_schema.py @@ -38,14 +38,18 @@ def upgrade(): sa.Column('uuid', sa.String(36), primary_key=True), sa.Column('started_at', sa.Float, nullable=True), sa.Column('finished_at', sa.Float, nullable=True), - sa.Column('error', sa.Text, nullable=True) + sa.Column('error', sa.Text, nullable=True), + mysql_ENGINE='InnoDB', + mysql_DEFAULT_CHARSET='UTF8' ) op.create_table( 'attributes', sa.Column('name', sa.String(255), primary_key=True), sa.Column('value', sa.String(255), primary_key=True), - sa.Column('uuid', sa.String(36), sa.ForeignKey('nodes.uuid')) + sa.Column('uuid', sa.String(36), sa.ForeignKey('nodes.uuid')), + mysql_ENGINE='InnoDB', + mysql_DEFAULT_CHARSET='UTF8' ) op.create_table( @@ -53,7 +57,9 @@ def upgrade(): sa.Column('uuid', sa.String(36), sa.ForeignKey('nodes.uuid'), primary_key=True), sa.Column('name', sa.String(255), primary_key=True), - sa.Column('value', sa.Text) + sa.Column('value', sa.Text), + mysql_ENGINE='InnoDB', + mysql_DEFAULT_CHARSET='UTF8' ) diff --git a/ironic_inspector/migrations/versions/d588418040d_add_rules.py b/ironic_inspector/migrations/versions/d588418040d_add_rules.py index 4b93cdd71..00ede8a5a 100644 --- a/ironic_inspector/migrations/versions/d588418040d_add_rules.py +++ b/ironic_inspector/migrations/versions/d588418040d_add_rules.py @@ -37,6 +37,8 @@ def upgrade(): sa.Column('created_at', sa.DateTime, nullable=False), sa.Column('description', sa.Text), sa.Column('disabled', sa.Boolean, default=False), + mysql_ENGINE='InnoDB', + mysql_DEFAULT_CHARSET='UTF8' ) op.create_table( @@ -46,7 +48,9 @@ def upgrade(): sa.Column('op', sa.String(255), nullable=False), sa.Column('multiple', sa.String(255), nullable=False), sa.Column('field', sa.Text), - sa.Column('params', types.JsonEncodedDict) + sa.Column('params', types.JsonEncodedDict), + mysql_ENGINE='InnoDB', + mysql_DEFAULT_CHARSET='UTF8' ) op.create_table( @@ -54,7 +58,9 @@ def upgrade(): sa.Column('id', sa.Integer, primary_key=True), sa.Column('rule', sa.String(36), sa.ForeignKey('rules.uuid')), sa.Column('action', sa.String(255), nullable=False), - sa.Column('params', types.JsonEncodedDict) + sa.Column('params', types.JsonEncodedDict), + mysql_ENGINE='InnoDB', + mysql_DEFAULT_CHARSET='UTF8' )