added migration and try/catch to apps.py

This commit is contained in:
vabene1111 2024-02-26 16:13:19 +01:00
parent c15bd663cb
commit dc5de6f0a2
2 changed files with 45 additions and 5 deletions

View File

@ -16,11 +16,15 @@ class CookbookConfig(AppConfig):
import cookbook.signals # noqa import cookbook.signals # noqa
if not settings.DISABLE_EXTERNAL_CONNECTORS: if not settings.DISABLE_EXTERNAL_CONNECTORS:
from cookbook.connectors.connector_manager import ConnectorManager # Needs to be here to prevent loading race condition of oauth2 modules in models.py try:
handler = ConnectorManager() from cookbook.connectors.connector_manager import ConnectorManager # Needs to be here to prevent loading race condition of oauth2 modules in models.py
post_save.connect(handler, dispatch_uid="connector_manager") handler = ConnectorManager()
post_delete.connect(handler, dispatch_uid="connector_manager") post_save.connect(handler, dispatch_uid="connector_manager")
post_delete.connect(handler, dispatch_uid="connector_manager")
except Exception as e:
traceback.print_exc()
print('Failed to initialize connectors')
pass
# if not settings.DISABLE_TREE_FIX_STARTUP: # if not settings.DISABLE_TREE_FIX_STARTUP:
# # when starting up run fix_tree to: # # when starting up run fix_tree to:
# # a) make sure that nodes are sorted when switching between sort modes # # a) make sure that nodes are sorted when switching between sort modes

View File

@ -0,0 +1,36 @@
# Generated by Django 4.2.10 on 2024-02-26 14:41
import cookbook.models
from django.conf import settings
import django.core.validators
from django.db import migrations, models
import django.db.models.deletion
class Migration(migrations.Migration):
dependencies = [
migrations.swappable_dependency(settings.AUTH_USER_MODEL),
('cookbook', '0214_cooklog_comment_cooklog_updated_at_and_more'),
]
operations = [
migrations.CreateModel(
name='ConnectorConfig',
fields=[
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('name', models.CharField(max_length=128, validators=[django.core.validators.MinLengthValidator(1)])),
('type', models.CharField(choices=[('HomeAssistant', 'HomeAssistant')], default='HomeAssistant', max_length=128)),
('enabled', models.BooleanField(default=True, help_text='Is Connector Enabled')),
('on_shopping_list_entry_created_enabled', models.BooleanField(default=False)),
('on_shopping_list_entry_updated_enabled', models.BooleanField(default=False)),
('on_shopping_list_entry_deleted_enabled', models.BooleanField(default=False)),
('url', models.URLField(blank=True, null=True)),
('token', models.CharField(blank=True, max_length=512, null=True)),
('todo_entity', models.CharField(blank=True, max_length=128, null=True)),
('created_by', models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, to=settings.AUTH_USER_MODEL)),
('space', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cookbook.space')),
],
bases=(models.Model, cookbook.models.PermissionModelMixin),
),
]