Skip to content

Commit

Permalink
docs: PR feedback
Browse files Browse the repository at this point in the history
  • Loading branch information
bmtcril committed Sep 30, 2024
1 parent 2e59f1d commit 5507844
Show file tree
Hide file tree
Showing 3 changed files with 51 additions and 4 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -108,4 +108,4 @@ This would also leak Aspects implementation details into all of the plugins, red
flexibility for other use cases.


.. _ADR 8 Project structure: 0008_project_structure.rst
.. _ADR 8 Project structure: 0008_project_structure.html
Original file line number Diff line number Diff line change
Expand Up @@ -103,7 +103,7 @@ Rejected Alternatives

Supercedes `ADR 6 Areas of responsibility`_.

.. _ADR 6 Areas of responsibility: 0006_areas_of_responsibility.rst
.. _ADR 6 Areas of responsibility: 0006_areas_of_responsibility.html
.. _event-routing-backends: https://github.com/openedx/event-routing-backends
.. _openedx-aspects: https://github.com/openedx/openedx-aspects
.. _openedx-event-sink-clickhouse: https://github.com/openedx/openedx-event-sink-clickhouse
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,53 @@ Both `openedx-event-sink-clickhouse` and `platform_plugin_superset` are licensed

The `event-routing-backends`_ repository will remain separate as it is useful outside of Aspects.

**Proposed project structure**

The thought is to reorganize the file structure of the repository to match that created by our Django app cookiecutter. The combined projects would coexist in the same space, utilizing the usual Open edX Django setup of a single apps.py, templates folder, configuration files, etc. as they will be installed together.

**Configuration**

Event sinks and embedded dashboards can be configured individually, allowing each set of features to be enabled or disabled simply by not configuring them. For instance, event sink configuration would like this::

settings.ASPECTS_EVENT_SINK_MODEL_CONFIG = {
"auth_user": {
"module": "django.contrib.auth.models",
"model": "User",
},
"user_profile": {
"module": "common.djangoapps.student.models",
"model": "UserProfile",
},
"course_overviews": {
"module": "openedx.core.djangoapps.content.course_overviews.models",
"model": "CourseOverview",
},
"external_id": {
"module": "openedx.core.djangoapps.external_user_ids.models",
"model": "ExternalId",
},
}

So omitting that setting or leaving it empty would disable all event sinks. Specific configuration for dashboard embeds is a work in progress, but would work similarly::

settings.ASPECTS_SUPERSET_EMBEDS = {
// Key is the tab name in the "Reports" section of the Instructor Dashboard
"Course Dashboard": {
// This is the link to Superset to embed, including any filters
"embed_link": "...",
// This would be an LMS permissions filter or function needed to view the embed
"permissions": ...,
},
"Learner Groups": {
"embed_link": "...",
"permissions": ...?,
},
...
}

Again, omitting the setting or leaving it empty would prevent the entire "Reports" tab from showing up.


Consequences
************

Expand All @@ -53,8 +100,8 @@ Rejected Alternatives
Supersedes `ADR 6 Areas of responsibility`_.
Supersedes `ADR 8 Project Structure`_.

.. _ADR 6 Areas of responsibility: 0006_areas_of_responsibility.rst
.. _ADR 8 Project Structure: 0008_project_structure.rst
.. _ADR 6 Areas of responsibility: 0006_areas_of_responsibility.html
.. _ADR 8 Project Structure: 0008_project_structure.html
.. _event-routing-backends: https://github.com/openedx/event-routing-backends
.. _openedx-aspects: https://github.com/openedx/openedx-aspects
.. _openedx-event-sink-clickhouse: https://github.com/openedx/openedx-event-sink-clickhouse
Expand Down

0 comments on commit 5507844

Please sign in to comment.