Open edX Backend: configuration
The backend is configured through Django settings on the LMS. In a normal Open edX deployment these are supplied by the Panorama Tutor plugin; this page documents what each setting does so you understand what the plugin sets and can troubleshoot.
Settings reference
Setting |
Purpose |
|---|---|
|
One of |
|
AWS access key used to call QuickSight ( |
|
Secret for the access key above. |
|
AWS account ID that owns the QuickSight dashboards ( |
|
AWS region of the QuickSight deployment. |
|
QuickSight user ARN used when a user has no explicit ARN in their access configuration. |
|
When true, users without an explicit configuration get the student dashboards (see Open edX Backend: Panorama modes). |
|
The LMS base domain. Used to build the QuickSight |
|
Must be |
Note
The AWS credentials configured here are used both to generate QuickSight embed URLs
(in CUSTOM mode) and to SigV4-sign the calls to Aulasneo’s Panorama API (in FREE
and SAAS modes).
Environment constraints
The backend deliberately refuses to run in situations where dashboards cannot work:
HTTPS required. If
HTTPSis not'on', the dashboard endpoint returns HTTP 421 and the other dashboard calls raise an error. Serve the LMS over HTTPS.No local/dev hosts in DEMO mode. In
DEMOmode the backend rejects the hostslocalhost,local.overhang.io, andlocal.edly.iowith an error explaining that Panorama will not work in testing or development environments. Use a real HTTPS domain.
URL mount point
The app’s URLs are mounted under /panorama/api/ on the LMS. The MFE calls, for example,
https://<lms>/panorama/api/get-embed-url. See Open edX Backend: API reference for the full list.
Installing for development
To work on the backend against a local Open edX, add a small Tutor plugin that mounts your
checkout into the openedx image:
from tutor import hooks as tutor_hooks
tutor_hooks.Filters.MOUNTED_DIRECTORIES.add_item(
("openedx", "panorama-openedx-backend")
)
Then use tutor mounts to mount your local copy of the repository. For real deployments,
use the Panorama Tutor plugin instead, which adds the backend to the image’s dependency list.