Files
enviPy-bayer/epdb/management/commands/import_legacy_package.py
jebus afeb56622c [Chore] Linted Files (#150)
Co-authored-by: Tim Lorsbach <tim@lorsba.ch>
Reviewed-on: enviPath/enviPy#150
2025-10-09 07:25:13 +13:00

30 lines
804 B
Python

import json
from django.core.management.base import BaseCommand
from django.db import transaction
from epdb.logic import PackageManager
from epdb.models import User
class Command(BaseCommand):
def add_arguments(self, parser):
parser.add_argument(
"--data",
type=str,
help="Path of the Package to import.",
required=True,
)
parser.add_argument(
"--owner",
type=str,
help="Username of the desired Owner.",
required=True,
)
@transaction.atomic
def handle(self, *args, **options):
owner = User.objects.get(username=options["owner"])
package_data = json.load(open(options["data"]))
PackageManager.import_legacy_package(package_data, owner)