Source code for ferrosoft.apps.emiflow.management.commands.catalog2fixture

import json
import sys

from django.core.management import BaseCommand

from ferrosoft.apps.emiflow.catalog.conversion import convert_catalog_files
from ferrosoft.apps.ferrobase.management.tenantcommand import TenantAwareCommand


[docs] class Command(TenantAwareCommand, BaseCommand):
[docs] def add_arguments(self, parser): super().add_arguments(parser) parser.add_argument( "-S", "--schema", type=str, default="catalog.schema.json", help="Base name of file inside emiflow static files directory", ) parser.add_argument("catalog", nargs="+", type=str)
[docs] def handle_tenant(self, *args, **options): try: json.dump( convert_catalog_files(options["catalog"], options["schema"]), sys.stdout, ) except RuntimeError as e: self.stderr.write(str(e)) sys.exit(2)