datatracker/ietf/mailinglists/migrations/0004_nonwgmailinglist_domain.py
2024-06-06 13:11:54 -05:00

60 lines
1.4 KiB
Python

# Generated by Django 4.2.13 on 2024-06-05 17:51
from django.db import migrations, models
from django.db.models.functions import Lower
IAB_NAMES = ["iab", "iab-stream"]
RFCED_NAMES = [
"auth48archive",
"rfc-dist",
"rfc-editor-rfi",
"rfc-interest",
"rpat",
"rsab",
]
IRTF_NAMES = [
"anrp-select",
"anrw-sc",
"anrw-tpc",
"crypto-panel",
"dtn-interest",
"irsg",
"irtf-announce",
"smart",
"teaching",
"travel-grants-commitee",
]
def forward(apps, schema_editor):
NonWgMailingList = apps.get_model("mailinglists", "NonWgMailingList")
NonWgMailingList.objects.annotate(lowername=Lower("name")).filter(
lowername__in=IAB_NAMES
).update(domain="iab.org")
NonWgMailingList.objects.annotate(lowername=Lower("name")).filter(
lowername__in=IRTF_NAMES
).update(domain="irtf.org")
NonWgMailingList.objects.annotate(lowername=Lower("name")).filter(
lowername__in=RFCED_NAMES
).update(domain="rfc-editor.org")
def reverse(apps, schema_editor):
pass
class Migration(migrations.Migration):
dependencies = [
("mailinglists", "0003_remove_subscribed_lists_delete_list_and_more"),
]
operations = [
migrations.AddField(
model_name="nonwgmailinglist",
name="domain",
field=models.CharField(default="ietf.org", max_length=32),
),
migrations.RunPython(forward, reverse),
]