From 0c4c6859e55ae550b2bbfea64fbe6120accd2c54 Mon Sep 17 00:00:00 2001
From: Dominik George <dominik.george@teckids.org>
Date: Thu, 28 Nov 2019 23:12:30 +0100
Subject: [PATCH] Move Yubikey service creation to ready() code.

---
 biscuit/core/apps.py                        |  9 ++++++++-
 biscuit/core/migrations/0004_otp_yubikey.py | 19 -------------------
 2 files changed, 8 insertions(+), 20 deletions(-)
 delete mode 100644 biscuit/core/migrations/0004_otp_yubikey.py

diff --git a/biscuit/core/apps.py b/biscuit/core/apps.py
index b40f987a4..2d4ad83fa 100644
--- a/biscuit/core/apps.py
+++ b/biscuit/core/apps.py
@@ -1,7 +1,7 @@
 from glob import glob
 import os
 
-from django.apps import AppConfig
+from django.apps import AppConfig, apps
 from django.conf import settings
 
 
@@ -17,5 +17,12 @@ class CoreConfig(AppConfig):
                 # Ignore because old is better than nothing
                 pass  # noqa
 
+    def setup_data(self) -> None:
+        if 'otp_yubikey' in settings.INSTALLED_APPS:
+            apps.get_model('otp_yubikey', 'ValidationService').objects.update_or_create(
+                name='default', defaults={'use_ssl': True, 'param_sl': '', 'param_timeout': ''}
+            )
+
     def ready(self) -> None:
         self.clean_scss()
+        self.setup_data()
diff --git a/biscuit/core/migrations/0004_otp_yubikey.py b/biscuit/core/migrations/0004_otp_yubikey.py
deleted file mode 100644
index 616cea9fb..000000000
--- a/biscuit/core/migrations/0004_otp_yubikey.py
+++ /dev/null
@@ -1,19 +0,0 @@
-from django.db import migrations
-
-from otp_yubikey.models import ValidationService
-
-def create_validation_service(apps, schema_editor):
-    ValidationService.objects.create(
-        name='default', use_ssl=True, param_sl='', param_timeout=''
-    )
-
-
-class Migration(migrations.Migration):
-
-    dependencies = [
-        ('core', '0003_school_logo'),
-    ]
-
-    operations = [
-        migrations.RunPython(create_validation_service),
-    ]
-- 
GitLab