19 lines
813 B
Python
19 lines
813 B
Python
from django.core.management.base import BaseCommand
|
|
|
|
from apps.demos.services import cleanup_expired_demo_environments
|
|
|
|
|
|
class Command(BaseCommand):
|
|
help = "Clean up expired isolated demo environments."
|
|
|
|
def add_arguments(self, parser):
|
|
parser.add_argument("--expired", action="store_true", help="Clean expired demo environments.")
|
|
parser.add_argument("--batch-size", type=int, default=None, help="Maximum number of environments to clean.")
|
|
|
|
def handle(self, *args, **options):
|
|
if not options["expired"]:
|
|
self.stderr.write("Only --expired cleanup is supported.")
|
|
return
|
|
cleaned = cleanup_expired_demo_environments(batch_size=options["batch_size"])
|
|
self.stdout.write(self.style.SUCCESS(f"Cleaned {cleaned} expired demo environment(s)."))
|