Viewing file: 115_feature_management_fields.py (1.33 KB) -rw-r--r-- Select action/file-type: (+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
import peewee as pw
from defence360agent.feature_management.constants import NA, FULL, AV_REPORT
def migrate(migrator, database, fake=False, **kwargs): permissions_model = migrator.orm["feature_management_permissions"] migrator.add_fields( permissions_model, proactive_new=pw.TextField( default=FULL, null=False, constraints=[ pw.Check("proactive_new in ('{}','{}')".format(NA, FULL)) ], ), av=pw.TextField( default=AV_REPORT, null=False, constraints=[ pw.Check("av in ('{}','{}','{}')".format(NA, AV_REPORT, FULL)) ], ), )
migrator.sql( "UPDATE feature_management_permissions SET av=? WHERE cleanup=1", (FULL,), ) migrator.sql( "UPDATE feature_management_permissions SET av=? WHERE cleanup=0", (AV_REPORT,), )
migrator.sql( "UPDATE feature_management_permissions SET proactive_new=? " "WHERE proactive=1", (FULL,), ) migrator.sql( "UPDATE feature_management_permissions SET proactive_new=? " "WHERE proactive=0", (NA,), )
migrator.remove_fields(permissions_model, "cleanup", "proactive")
def rollback(migrator, database, fake=False, **kwargs): pass
|