For extra peace of mind, get the file lock before updating storage paths
This commit is contained in:
parent
8889018ad4
commit
dc94c2df48
@ -1,18 +1,18 @@
|
|||||||
# Generated by Django 5.1.1 on 2024-10-03 14:47
|
# Generated by Django 5.1.1 on 2024-10-03 14:47
|
||||||
|
|
||||||
|
from django.conf import settings
|
||||||
from django.db import migrations
|
from django.db import migrations
|
||||||
from django.db import models
|
from django.db import models
|
||||||
from django.db import transaction
|
from django.db import transaction
|
||||||
|
from filelock import FileLock
|
||||||
|
|
||||||
|
from documents.templating.utils import convert_format_str_to_template_format
|
||||||
|
|
||||||
|
|
||||||
def convert_from_format_to_template(apps, schema_editor):
|
def convert_from_format_to_template(apps, schema_editor):
|
||||||
# TODO: Is there a signal to disable? I don't want documents getting moved while this is running
|
|
||||||
|
|
||||||
StoragePath = apps.get_model("documents", "StoragePath")
|
StoragePath = apps.get_model("documents", "StoragePath")
|
||||||
|
|
||||||
from documents.templating.utils import convert_format_str_to_template_format
|
with transaction.atomic(), FileLock(settings.MEDIA_LOCK):
|
||||||
|
|
||||||
with transaction.atomic():
|
|
||||||
for storage_path in StoragePath.objects.all():
|
for storage_path in StoragePath.objects.all():
|
||||||
storage_path.path = convert_format_str_to_template_format(storage_path.path)
|
storage_path.path = convert_format_str_to_template_format(storage_path.path)
|
||||||
storage_path.save()
|
storage_path.save()
|
||||||
|
Loading…
x
Reference in New Issue
Block a user