Files
www/membership/members/migrations/0004_dex_login_identity.py
T
2026-10-29 11:51:44 -04:00

30 lines
1.1 KiB
Python
Executable File

from django.conf import settings
from django.db import migrations, models
def pin_existing_issuer(apps, schema_editor):
# Upgrade with the same issuer that authenticated the existing subjects.
Account = apps.get_model("members", "Account")
Account.objects.using(schema_editor.connection.alias).filter(
oidc_sub__isnull=False,
).update(oidc_issuer=settings.DEX_ISSUER)
class Migration(migrations.Migration):
dependencies = [("members", "0003_membership_levels")]
operations = [
migrations.AlterField(
model_name="account", name="ldap_dn",
field=models.CharField(blank=True, max_length=1024),
),
migrations.AlterField(
model_name="account", name="ldap_uuid",
field=models.CharField(blank=True, max_length=64, null=True, unique=True),
),
migrations.AddField(
model_name="account", name="oidc_issuer",
field=models.CharField(blank=True, default="", max_length=2048),
),
migrations.RunPython(pin_existing_issuer, migrations.RunPython.noop),
]