diff --git a/cms/conftest.py b/cms/conftest.py index dc360e3df1..80d971070a 100644 --- a/cms/conftest.py +++ b/cms/conftest.py @@ -6,10 +6,7 @@ pytest from looking for the conftest.py module in the parent directory when only running cms tests. """ - -import importlib import logging -import os import pytest @@ -29,13 +26,6 @@ def pytest_configure(config): else: logging.info("pytest did not register json_report correctly") - if config.getoption('help'): - return - settings_module = os.environ.get('DJANGO_SETTINGS_MODULE') - startup_module = 'cms.startup' if settings_module.startswith('cms') else 'lms.startup' - startup = importlib.import_module(startup_module) - startup.run() - @pytest.fixture(autouse=True, scope='function') def _django_clear_site_cache(): diff --git a/cms/startup.py b/cms/startup.py deleted file mode 100644 index 5500dc6424..0000000000 --- a/cms/startup.py +++ /dev/null @@ -1,20 +0,0 @@ -""" -Module for code that should run during Studio startup (deprecated) -""" - - -import django -from django.conf import settings - -# Force settings to run so that the python path is modified -settings.INSTALLED_APPS # pylint: disable=pointless-statement - - -def run(): - """ - Executed during django startup - - NOTE: DO **NOT** add additional code to this method or this file! The Platform Team - is moving all startup code to more standard locations using Django best practices. - """ - django.setup() diff --git a/cms/wsgi.py b/cms/wsgi.py index 0ccd953d98..9c9af42998 100644 --- a/cms/wsgi.py +++ b/cms/wsgi.py @@ -18,9 +18,6 @@ defuse_xml_libs() import os # lint-amnesty, pylint: disable=wrong-import-order, wrong-import-position os.environ.setdefault("DJANGO_SETTINGS_MODULE", "cms.envs.aws") -import cms.startup as startup # lint-amnesty, pylint: disable=wrong-import-position -startup.run() - # This application object is used by the development server # as well as any WSGI server configured to use this file. from django.core.wsgi import get_wsgi_application # lint-amnesty, pylint: disable=wrong-import-order, wrong-import-position diff --git a/lms/startup.py b/lms/startup.py deleted file mode 100644 index ed1ad1caba..0000000000 --- a/lms/startup.py +++ /dev/null @@ -1,20 +0,0 @@ -""" -Module for code that should run during LMS startup (deprecated) -""" - - -import django -from django.conf import settings - -# Force settings to run so that the python path is modified -settings.INSTALLED_APPS # pylint: disable=pointless-statement - - -def run(): - """ - Executed during django startup - - NOTE: DO **NOT** add additional code to this method or this file! The Platform Team - is moving all startup code to more standard locations using Django best practices. - """ - django.setup() diff --git a/lms/wsgi.py b/lms/wsgi.py index 169b6929fb..0321c827cc 100644 --- a/lms/wsgi.py +++ b/lms/wsgi.py @@ -15,9 +15,6 @@ defuse_xml_libs() import os # lint-amnesty, pylint: disable=wrong-import-order, wrong-import-position os.environ.setdefault("DJANGO_SETTINGS_MODULE", "lms.envs.aws") -import lms.startup as startup # lint-amnesty, pylint: disable=wrong-import-position -startup.run() - # This application object is used by the development server # as well as any WSGI server configured to use this file. from django.core.wsgi import get_wsgi_application # lint-amnesty, pylint: disable=wrong-import-order, wrong-import-position diff --git a/lms/wsgi_apache_lms.py b/lms/wsgi_apache_lms.py index e40be055d4..d1c6013e2b 100644 --- a/lms/wsgi_apache_lms.py +++ b/lms/wsgi_apache_lms.py @@ -14,9 +14,6 @@ import os # lint-amnesty, pylint: disable=wrong-import-order, wrong-import-posi os.environ.setdefault("DJANGO_SETTINGS_MODULE", "lms.envs.aws") os.environ.setdefault("SERVICE_VARIANT", "lms") -import lms.startup as startup # lint-amnesty, pylint: disable=wrong-import-position -startup.run() - # This application object is used by the development server # as well as any WSGI server configured to use this file. from django.core.wsgi import get_wsgi_application # lint-amnesty, pylint: disable=wrong-import-order, wrong-import-position diff --git a/manage.py b/manage.py index 98bcc40717..07fa6de2f6 100755 --- a/manage.py +++ b/manage.py @@ -12,7 +12,6 @@ Any arguments not understood by this manage.py will be passed to django-admin.py """ # pylint: disable=wrong-import-order, wrong-import-position - from openedx.core.lib.logsettings import log_python_warnings log_python_warnings() @@ -20,7 +19,6 @@ log_python_warnings() from openedx.core.lib.safe_lxml import defuse_xml_libs # isort:skip defuse_xml_libs() -import importlib import os import sys from argparse import ArgumentParser @@ -51,7 +49,6 @@ def parse_args(): help_string=lms.format_help(), settings_base='lms/envs', default_settings='lms.envs.devstack_docker', - startup='lms.startup', ) cms = subparsers.add_parser( @@ -70,7 +67,6 @@ def parse_args(): settings_base='cms/envs', default_settings='cms.envs.devstack_docker', service_variant='cms', - startup='cms.startup', ) edx_args, django_args = parser.parse_known_args() @@ -99,8 +95,5 @@ if __name__ == "__main__": # This will trigger django-admin.py to print out its help django_args.append('--help') - startup = importlib.import_module(edx_args.startup) - startup.run() - from django.core.management import execute_from_command_line execute_from_command_line([sys.argv[0]] + django_args) diff --git a/openedx/core/djangoapps/monkey_patch/__init__.py b/openedx/core/djangoapps/monkey_patch/__init__.py index ed4b9fc261..1a28af9257 100644 --- a/openedx/core/djangoapps/monkey_patch/__init__.py +++ b/openedx/core/djangoapps/monkey_patch/__init__.py @@ -6,9 +6,8 @@ Here be dragons (and simians!) * USE WITH CAUTION * No, but seriously, you probably never really want to make changes here. This module contains methods to monkey-patch [0] the edx-platform. -Patches are to be applied as early as possible in the callstack -(currently lms/startup.py and cms/startup.py). Consequently, changes -made here will affect the entire platform. +Patches are to be applied as early as possible in the callstack). Consequently, +changes made here will affect the entire platform. That said, if you've decided you really need to monkey-patch the platform (and you've convinced enough people that this is best @@ -25,8 +24,7 @@ solution), kindly follow these guidelines: - is_patched - patch - unpatch - - Add the following code where needed (typically cms/startup.py and - lms/startup.py): + - Add the following code where needed: ``` from openedx.core.djangoapps.monkey_patch import your_module your_module.patch()