Add a security flag to Stories
This is more specific than "private" and can therefore be sensibly used for automating ACLs based on projects/teams affected by the story. Change-Id: Ib8ff53d11ba3977b15d735cef420ac44fd9aa288 Story: 2000568 Task: 29891
This commit is contained in:
parent
30337674c5
commit
b7e1b2e2ae
storyboard
api/v1
db
@ -245,6 +245,9 @@ class Story(base.APIBase):
|
||||
private = bool
|
||||
"""Whether or not this story is private."""
|
||||
|
||||
security = bool
|
||||
"""Whether or not this story is security-related."""
|
||||
|
||||
users = wtypes.ArrayType(User)
|
||||
"""The set of users with permission to see this story if it is private."""
|
||||
|
||||
|
36
storyboard/db/migration/alembic_migrations/versions/066_add_a_security_flag_to_stories.py
Normal file
36
storyboard/db/migration/alembic_migrations/versions/066_add_a_security_flag_to_stories.py
Normal file
@ -0,0 +1,36 @@
|
||||
# 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 a 'security' flag to Stories
|
||||
|
||||
Revision ID: 066
|
||||
Revises: 065
|
||||
Create Date: 2019-03-08 08:57:44.497977
|
||||
|
||||
"""
|
||||
|
||||
# revision identifiers, used by Alembic.
|
||||
revision = '066'
|
||||
down_revision = '065'
|
||||
|
||||
|
||||
from alembic import op
|
||||
import sqlalchemy as sa
|
||||
|
||||
|
||||
def upgrade(active_plugins=None, options=None):
|
||||
op.add_column('stories', sa.Column('security', sa.Boolean()))
|
||||
|
||||
|
||||
def downgrade(active_plugins=None, options=None):
|
||||
op.drop_column('stories', 'security')
|
@ -320,6 +320,7 @@ class Story(FullText, ModelBuilder, Base):
|
||||
description = Column(UnicodeText())
|
||||
is_bug = Column(Boolean, default=True)
|
||||
private = Column(Boolean, default=False)
|
||||
security = Column(Boolean, default=False)
|
||||
tasks = relationship('Task', backref='story',
|
||||
cascade="all, delete-orphan")
|
||||
events = relationship('TimeLineEvent', backref='story',
|
||||
|
Loading…
x
Reference in New Issue
Block a user