52 lines
1.7 KiB
Python
52 lines
1.7 KiB
Python
# Generated by Django 3.1.1 on 2020-09-25 23:32
|
|
|
|
from django.apps.registry import Apps
|
|
from django.db import migrations, models
|
|
from django.db.backends.base.schema import BaseDatabaseSchemaEditor
|
|
|
|
|
|
# First stage for default-source-enrollment flow (prompt stage)
|
|
# needs to have its policy re-evaluated
|
|
def update_default_source_enrollment_flow_binding(
|
|
apps: Apps, schema_editor: BaseDatabaseSchemaEditor
|
|
):
|
|
Flow = apps.get_model("passbook_flows", "Flow")
|
|
FlowStageBinding = apps.get_model("passbook_flows", "FlowStageBinding")
|
|
db_alias = schema_editor.connection.alias
|
|
|
|
flows = Flow.objects.using(db_alias).filter(slug="default-source-enrollment")
|
|
if not flows.exists():
|
|
return
|
|
flow = flows.first()
|
|
|
|
binding = FlowStageBinding.objects.get(target=flow, order=0)
|
|
binding.re_evaluate_policies = True
|
|
binding.save()
|
|
|
|
|
|
class Migration(migrations.Migration):
|
|
|
|
dependencies = [
|
|
("passbook_flows", "0013_auto_20200924_1605"),
|
|
]
|
|
|
|
operations = [
|
|
migrations.AlterModelOptions(
|
|
name="flowstagebinding",
|
|
options={
|
|
"ordering": ["target", "order"],
|
|
"verbose_name": "Flow Stage Binding",
|
|
"verbose_name_plural": "Flow Stage Bindings",
|
|
},
|
|
),
|
|
migrations.AlterField(
|
|
model_name="flowstagebinding",
|
|
name="re_evaluate_policies",
|
|
field=models.BooleanField(
|
|
default=False,
|
|
help_text="When this option is enabled, the planner will re-evaluate policies bound to this binding.",
|
|
),
|
|
),
|
|
migrations.RunPython(update_default_source_enrollment_flow_binding),
|
|
]
|