From 5a8b6bb3d022a532562ad5fa6d629cfc48c51b46 Mon Sep 17 00:00:00 2001 From: Michael Manfre Date: Sun, 13 Nov 2022 15:57:27 -0500 Subject: Improving contributing docs/process --- manage.py | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) (limited to 'manage.py') diff --git a/manage.py b/manage.py index 3985c18..9641f30 100755 --- a/manage.py +++ b/manage.py @@ -3,10 +3,26 @@ import os import sys +# List of settings files that should guard against running certain commands +GUARDED_ENVIRONMENTS = [ + "production", +] + +GUARDED_COMMANDS =[ + "test", +] + def main(): """Run administrative tasks.""" os.environ.setdefault("DJANGO_SETTINGS_MODULE", "takahe.settings.production") + + # Guard against running tests in arbitrary environments + env_name = os.environ["DJANGO_SETTINGS_MODULE"].rsplit(".", 1)[-1] + if env_name in GUARDED_ENVIRONMENTS: + for cmd in sys.argv: + if cmd in GUARDED_COMMANDS: + raise Exception(f"Cannot run {cmd} in {env_name}") try: from django.core.management import execute_from_command_line except ImportError as exc: -- cgit v1.2.3