"""Each downloaded lesson uses a fresh in-memory database and temporary media.""" import atexit import os from io import StringIO from tempfile import TemporaryDirectory def start(): os.environ["DJANGO_SETTINGS_MODULE"] = "workshop_site.settings" os.environ["LAB_DB"] = ":memory:" os.environ["LAB_DEBUG"] = "1" media = TemporaryDirectory(prefix="bhylu-django-media-") os.environ["LAB_MEDIA_ROOT"] = media.name atexit.register(media.cleanup) import django django.setup() from django.core.management import call_command call_command("migrate", verbosity=0, interactive=False) call_command("seed_lab", verbosity=0, stdout=StringIO())