From d4567df41cfd272f3601ba028c40646424a05204 Mon Sep 17 00:00:00 2001 From: Jiangyuan Date: Thu, 19 Apr 2018 06:56:22 +0000 Subject: [PATCH] Upgrade db version to add cpu column for function This is used for customizing memory_size/cpu in qinling server. Change-Id: Id27a7ff60ee340f435a6c6a512107adc89520e7b Story: 2001586 Task: 6535 --- .../versions/003_add_cpu_column.py | 44 +++++++++++++++++++ qinling/db/sqlalchemy/models.py | 3 +- 2 files changed, 46 insertions(+), 1 deletion(-) create mode 100644 qinling/db/sqlalchemy/migration/alembic_migrations/versions/003_add_cpu_column.py diff --git a/qinling/db/sqlalchemy/migration/alembic_migrations/versions/003_add_cpu_column.py b/qinling/db/sqlalchemy/migration/alembic_migrations/versions/003_add_cpu_column.py new file mode 100644 index 00000000..b7953768 --- /dev/null +++ b/qinling/db/sqlalchemy/migration/alembic_migrations/versions/003_add_cpu_column.py @@ -0,0 +1,44 @@ +# Copyright 2018 OpenStack Foundation. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""add cpu column for functions + +Revision ID: 003 +Revises: 002 +Create Date: 2018-04-19 06:03:46.687706 + +""" + +# revision identifiers, used by Alembic. +revision = '003' +down_revision = '002' + +from alembic import op +import sqlalchemy as sa + + +def upgrade(): + # ### commands auto generated by Alembic - please adjust! ### + op.add_column( + 'functions', + sa.Column('cpu', sa.Integer(), nullable=False) + ) + + op.alter_column( + 'functions', + 'memory_size', + existing_type=sa.Integer(), + nullable=False + ) + # ### end Alembic commands ### diff --git a/qinling/db/sqlalchemy/models.py b/qinling/db/sqlalchemy/models.py index cf1944f8..a0cb7f19 100644 --- a/qinling/db/sqlalchemy/models.py +++ b/qinling/db/sqlalchemy/models.py @@ -42,7 +42,8 @@ class Function(model_base.QinlingSecureModelBase): runtime = relationship( 'Runtime', back_populates="functions", innerjoin=True, lazy='select' ) - memory_size = sa.Column(sa.Integer) + cpu = sa.Column(sa.Integer, default=0) + memory_size = sa.Column(sa.Integer, default=0) timeout = sa.Column(sa.Integer) code = sa.Column(st.JsonLongDictType(), nullable=False) entry = sa.Column(sa.String(80), nullable=True)