mirror of
https://github.com/inventree/InvenTree
synced 2024-08-30 18:33:04 +00:00
Run at app startup, not as a migration
This commit is contained in:
parent
c8c35e2f04
commit
b19a7cc4fb
@ -18,11 +18,32 @@ class InvenTreeConfig(AppConfig):
|
||||
def ready(self):
|
||||
|
||||
if canAppAccessDatabase():
|
||||
|
||||
self.remove_obsolete_tasks()
|
||||
|
||||
self.start_background_tasks()
|
||||
|
||||
if not isInTestMode():
|
||||
self.update_exchange_rates()
|
||||
|
||||
def remove_obsolete_tasks(self):
|
||||
"""
|
||||
Delete any obsolete scheduled tasks in the database
|
||||
"""
|
||||
|
||||
obsolete = [
|
||||
'InvenTree.tasks.delete_expired_sessions',
|
||||
'stock.tasks.delete_old_stock_items',
|
||||
]
|
||||
|
||||
try:
|
||||
from django_q.models import Schedule
|
||||
except (AppRegistryNotReady):
|
||||
return
|
||||
|
||||
# Remove any existing obsolete tasks
|
||||
Schedule.objects.filter(func__in=obsolete).delete()
|
||||
|
||||
def start_background_tasks(self):
|
||||
|
||||
try:
|
||||
|
@ -1,36 +0,0 @@
|
||||
# Generated by Django 3.2.5 on 2021-12-07 22:50
|
||||
|
||||
from django.db import migrations
|
||||
|
||||
|
||||
def delete_task(apps, schema_editor):
|
||||
"""
|
||||
Remove scheduled task to delete old user sessions.
|
||||
|
||||
Ref: https://github.com/inventree/InvenTree/issues/2429
|
||||
"""
|
||||
|
||||
Task = apps.get_model('django_q', 'schedule')
|
||||
|
||||
Task.objects.filter(func='InvenTree.tasks.delete_expired_sessions').delete()
|
||||
|
||||
|
||||
def ksat_eteled(apps, schema_editor):
|
||||
"""
|
||||
Dummy function provided for reverse migrations
|
||||
"""
|
||||
pass
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('common', '0012_notificationentry'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.RunPython(
|
||||
delete_task,
|
||||
reverse_code=ksat_eteled,
|
||||
)
|
||||
]
|
Loading…
Reference in New Issue
Block a user