authentik.tenants.management.commands.set_flag
1from argparse import ArgumentParser 2from typing import Any 3 4from authentik.tenants.management import TenantCommand 5from authentik.tenants.utils import get_current_tenant 6 7 8class Command(TenantCommand): 9 10 def add_arguments(self, parser: ArgumentParser): 11 parser.add_argument("flag_key", type=str) 12 parser.add_argument("flag_value", type=str) 13 14 def handle(self, *, flag_key: str, flag_value: Any, **options): 15 tenant = get_current_tenant() 16 val = flag_value.lower() == "true" 17 tenant.flags[flag_key] = val 18 tenant.save() 19 self.stdout.write(f"Set flag '{flag_key}' to {val}.")
9class Command(TenantCommand): 10 11 def add_arguments(self, parser: ArgumentParser): 12 parser.add_argument("flag_key", type=str) 13 parser.add_argument("flag_value", type=str) 14 15 def handle(self, *, flag_key: str, flag_value: Any, **options): 16 tenant = get_current_tenant() 17 val = flag_value.lower() == "true" 18 tenant.flags[flag_key] = val 19 tenant.save() 20 self.stdout.write(f"Set flag '{flag_key}' to {val}.")
Generic command class useful for running any existing command on a particular tenant.
def
add_arguments(self, parser: argparse.ArgumentParser):
11 def add_arguments(self, parser: ArgumentParser): 12 parser.add_argument("flag_key", type=str) 13 parser.add_argument("flag_value", type=str)
Entry point for subclassed commands to add custom arguments.
def
handle(self, *, flag_key: str, flag_value: Any, **options):
15 def handle(self, *, flag_key: str, flag_value: Any, **options): 16 tenant = get_current_tenant() 17 val = flag_value.lower() == "true" 18 tenant.flags[flag_key] = val 19 tenant.save() 20 self.stdout.write(f"Set flag '{flag_key}' to {val}.")
The actual logic of the command. Subclasses must implement this method.