34 lines
1.0 KiB
Python
34 lines
1.0 KiB
Python
# Generated by Django 2.2.6 on 2019-10-11 08:25
|
|
|
|
from django.apps.registry import Apps
|
|
from django.db import migrations
|
|
|
|
|
|
def create_default_ad_property_mappings(apps: Apps, schema_editor):
|
|
LDAPPropertyMapping = apps.get_model("passbook_sources_ldap", "LDAPPropertyMapping")
|
|
mapping = {
|
|
"name": "name",
|
|
"givenName": "first_name",
|
|
"sn": "last_name",
|
|
"sAMAccountName": "username",
|
|
"mail": "email",
|
|
}
|
|
db_alias = schema_editor.connection.alias
|
|
for ldap_property, object_field in mapping.items():
|
|
LDAPPropertyMapping.objects.using(db_alias).get_or_create(
|
|
ldap_property=ldap_property,
|
|
object_field=object_field,
|
|
defaults={
|
|
"name": f"Autogenerated LDAP Mapping: {ldap_property} -> {object_field}"
|
|
},
|
|
)
|
|
|
|
|
|
class Migration(migrations.Migration):
|
|
|
|
dependencies = [
|
|
("passbook_sources_ldap", "0002_auto_20191011_0825"),
|
|
]
|
|
|
|
operations = [migrations.RunPython(create_default_ad_property_mappings)]
|