diff --git a/.github/workflows/pylint-checks.yml b/.github/workflows/pylint-checks.yml index 0a2d145e28..8e86862b95 100644 --- a/.github/workflows/pylint-checks.yml +++ b/.github/workflows/pylint-checks.yml @@ -15,7 +15,7 @@ jobs: matrix: include: - module-name: lms-1 - path: "lms/djangoapps/badges/ lms/djangoapps/branding/ lms/djangoapps/bulk_email/ lms/djangoapps/bulk_enroll/ lms/djangoapps/bulk_user_retirement/ lms/djangoapps/ccx/ lms/djangoapps/certificates/ lms/djangoapps/commerce/ lms/djangoapps/course_api/ lms/djangoapps/course_blocks/ lms/djangoapps/course_home_api/ lms/djangoapps/course_wiki/ lms/djangoapps/coursewarehistoryextended/ lms/djangoapps/dashboard/ lms/djangoapps/debug/ lms/djangoapps/courseware/ lms/djangoapps/course_goals/ lms/djangoapps/rss_proxy/" + path: "lms/djangoapps/badges/ lms/djangoapps/branding/ lms/djangoapps/bulk_email/ lms/djangoapps/bulk_enroll/ lms/djangoapps/bulk_user_retirement/ lms/djangoapps/ccx/ lms/djangoapps/certificates/ lms/djangoapps/commerce/ lms/djangoapps/course_api/ lms/djangoapps/course_blocks/ lms/djangoapps/course_home_api/ lms/djangoapps/course_wiki/ lms/djangoapps/coursewarehistoryextended/ lms/djangoapps/debug/ lms/djangoapps/courseware/ lms/djangoapps/course_goals/ lms/djangoapps/rss_proxy/" - module-name: lms-2 path: "lms/djangoapps/gating/ lms/djangoapps/grades/ lms/djangoapps/instructor/ lms/djangoapps/instructor_analytics/ lms/djangoapps/discussion/ lms/djangoapps/edxnotes/ lms/djangoapps/email_marketing/ lms/djangoapps/experiments/ lms/djangoapps/instructor_task/ lms/djangoapps/learner_dashboard/ lms/djangoapps/lms_initialization/ lms/djangoapps/lms_xblock/ lms/djangoapps/lti_provider/ lms/djangoapps/mailing/ lms/djangoapps/mobile_api/ lms/djangoapps/monitoring/ lms/djangoapps/program_enrollments/ lms/djangoapps/rss_proxy lms/djangoapps/static_template_view/ lms/djangoapps/staticbook/ lms/djangoapps/support/ lms/djangoapps/survey/ lms/djangoapps/teams/ lms/djangoapps/tests/ lms/djangoapps/verify_student/ lms/envs/ lms/lib/ lms/tests.py" - module-name: openedx-1 diff --git a/.github/workflows/unit-tests.yml b/.github/workflows/unit-tests.yml index 1c533aaf56..4de9af0792 100644 --- a/.github/workflows/unit-tests.yml +++ b/.github/workflows/unit-tests.yml @@ -15,7 +15,7 @@ jobs: django-version: ["3.2"] test_module: [ "lms/djangoapps/badges/ lms/djangoapps/branding/ lms/djangoapps/bulk_email/ lms/djangoapps/bulk_enroll/ lms/djangoapps/bulk_user_retirement/ lms/djangoapps/ccx/ lms/djangoapps/certificates/ lms/djangoapps/commerce/", - "lms/djangoapps/course_api/ lms/djangoapps/course_blocks/ lms/djangoapps/course_goals/ lms/djangoapps/course_home_api/ lms/djangoapps/course_wiki/ lms/djangoapps/coursewarehistoryextended/ lms/djangoapps/dashboard/ lms/djangoapps/debug/", + "lms/djangoapps/course_api/ lms/djangoapps/course_blocks/ lms/djangoapps/course_goals/ lms/djangoapps/course_home_api/ lms/djangoapps/course_wiki/ lms/djangoapps/coursewarehistoryextended/ lms/djangoapps/debug/", "lms/djangoapps/courseware/", "lms/djangoapps/discussion/ lms/djangoapps/edxnotes/ lms/djangoapps/email_marketing/ lms/djangoapps/experiments/", "lms/djangoapps/gating/ lms/djangoapps/grades/ lms/djangoapps/instructor/ lms/djangoapps/instructor_analytics/", diff --git a/docs/decisions/0007-sys-path-modification-removal.rst b/docs/decisions/0007-sys-path-modification-removal.rst index 8a94a4a45d..1a220d71bc 100644 --- a/docs/decisions/0007-sys-path-modification-removal.rst +++ b/docs/decisions/0007-sys-path-modification-removal.rst @@ -121,8 +121,6 @@ What the old imports are, and their replacements: +-------------------------------+----------------------------------------------+ | ``course_wiki`` | ``lms.djangoapps.course_wiki`` | +-------------------------------+----------------------------------------------+ -| ``dashboard`` | ``lms.djangoapps.dashboard`` | -+-------------------------------+----------------------------------------------+ | ``debug`` | ``lms.djangoapps.debug`` | +-------------------------------+----------------------------------------------+ | ``discussion`` | ``lms.djangoapps.discussion`` | diff --git a/lms/djangoapps/dashboard/decisions/0001-sysadmin-dashboard.rst b/lms/djangoapps/dashboard/decisions/0001-sysadmin-dashboard.rst deleted file mode 100644 index fb1e1e444c..0000000000 --- a/lms/djangoapps/dashboard/decisions/0001-sysadmin-dashboard.rst +++ /dev/null @@ -1,44 +0,0 @@ -1. Sysadmin Dashboard ---------------------- - -Status ------- - -Accepted - -Context -------- -When operating an Open edX installation, it is convenient to allow admins and course staff to perform some tasks from -the web browser instead of requiring access to django managment commands. These tasks include - -- creating user accounts -- importing courses (from git) -- deleting courses -- gathering cross-course enrollment data - -The SysAdmin Dashboard feature has remained functionally unchanged since 2015, but it has never been documented. -This ADR serves to captures the decisions that went into it, so that we may being the process of moving it out of -edx-platofrm and into a pluggable django app. - -Decision --------- - -The users tab provides Web based user management (create and delete user accounts), a listing of courses loaded, -and user statistics. - -The courses tabs manages adding/updating courses from git, deleting courses, and provides course listing information, -including commit hash, date and author for course imported from git. - -The Staffing tab provides a view of staffing and enrollment in courses. - -The Gitlogs tab provides a view into the import log of courses from git repositories. It is convenient for allowing -course teams to see what may be wrong wit their xml. This is the only view that allows permits access by course -staff, so they can review their own course import logs. - -Consequences ------------- - -The Sysadmin dashboard is little used outside of MIT and difficult to maintain. Many of its features have been -replicated elsewhere in edx-platform. It coudld be refactored as a pluggable app, but some of it's features rely on -internal edX APIs. In a subsequent ADR, we will identify the APIs that would be necessary for extracting the Sysadmin -Dashboard. diff --git a/lms/djangoapps/dashboard/decisions/0002-deprecate-sysadmin-dashboard-adr.rst b/lms/djangoapps/dashboard/decisions/0002-deprecate-sysadmin-dashboard-adr.rst deleted file mode 100644 index bb6a33cb2c..0000000000 --- a/lms/djangoapps/dashboard/decisions/0002-deprecate-sysadmin-dashboard-adr.rst +++ /dev/null @@ -1,50 +0,0 @@ -2. Deprecating the Sysadmin Dashboard ---------------------- - -Status ------- - -Draft - -Context -------- - -Maintaining the sysadmin dashboard is challenging, and it is not widely used. The code is part of the lms -application, even though most of its use cases are relevant to course authoring. - -The sysadmin dashboard would be better suited as a pluggable django application, using appropriate APIs in the -cms application - -Decision --------- - -In order to deprecate the sysadmin dashboard and move it to a pluggable django application, the followings APIs -would need to be added and/or moved into the cms application - -1. Create a cms user account - - https://github.com/edx/edx-platform/blob/50dd1238408dc6785f022d8540961f96e0d6bb4f/lms/djangoapps/dashboard/sysadmin.py#L113-L151 - -2. Import a course from git - - https://github.com/edx/edx-platform/blob/master/lms/djangoapps/dashboard/git_import.py - -3. Delete a course - - https://github.com/edx/edx-platform/blob/b4556a4bec/lms/djangoapps/dashboard/sysadmin.py#L344-L369 - - -These APIs can be removed entirely, as they are adequately covered by existing functionality: - -1. Delete a cms user. - - This functionality should be removed entirely. CMS user accounts should be retired using the existing `edX User - Retirement Feature `_. - -2. Staffing and Enrollment - - https://github.com/edx/edx-platform/blob/b4556a4bec/lms/djangoapps/dashboard/sysadmin.py#L380-L413 - - This functionality may be redundant to features in the Insights application. - -