From e00f5b442b1d88d22bc1d368e95c6e9c99f35b27 Mon Sep 17 00:00:00 2001 From: Martin Peters Date: Wed, 1 Nov 2023 14:29:10 +0100 Subject: [PATCH] #645: parse command through shlex to allow for passing custom parameters into tenant_command --- tenant_schemas/management/commands/tenant_command.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/tenant_schemas/management/commands/tenant_command.py b/tenant_schemas/management/commands/tenant_command.py index 999f94d6..ff8471aa 100644 --- a/tenant_schemas/management/commands/tenant_command.py +++ b/tenant_schemas/management/commands/tenant_command.py @@ -1,3 +1,5 @@ +import shlex + from django.core.management import call_command from django.core.management.base import BaseCommand from django.db import connection @@ -13,4 +15,8 @@ def handle(self, command, schema_name, *args, **options): schema_name=schema_name, **options ) connection.set_tenant(tenant) - call_command(command, *args, **options) + + # allow passing a command as string including parameters + # eg. `./manage.py tenant_command -s tenant "test_command --foo 123"` + parsed_command = shlex.split(command) + call_command(*parsed_command, *args, **options)