This repository contains the edX ecommerce service, which relies heavily on django-oscar. This repository is home to all front-end and back-end code used to manage edX's product catalog and handle orders for those products, and houses extensions of the Oscar core which are specific to edX's needs. Many of the models in this project override abstract models present in Oscar.
Most commands necessary to run and develope the ecommerce service can be found in the included Makefile.
To install requirements necessary for local development, run:
$ make requirements
requirements/production.txt
will install the packages needed to run the ecommerce service in a production setting.
To apply migrations, run:
$ make migrations
To stand up the development server, run:
$ make serve
By default, the Django Debug Toolbar is disabled. To enable it, set the environmental variable ENABLE_DJANGO_TOOLBAR.
To run the unit test suite followed by quality checks, run:
$ make validate
Acceptance tests require a valid LMS configuration and a user with a known username, email address, password, and access token. The following command will run the acceptance tests:
$ APP_SERVER_URL="<ECOMMERCE-URL>" LMS_URL="<LMS-URL>" LMS_USERNAME="<USERNAME>" LMS_EMAIL="<EMAIL>" LMS_PASSWORD="<PASSWORD>" ACCESS_TOKEN="<ACCESS-TOKEN>" make accept
Note: Access tokens can be generated/obtained from the LMS admin portal (http://127.0.0.1:8000/admin/oauth2/accesstoken/).
The code in this repository is licensed under the AGPL unless otherwise noted. Please see LICENSE.txt
for details.
Contributions are welcome. Please read How To Contribute for details. Even though it was written with edx-platform
in mind, these guidelines should be followed for Open edX code in general.
Please do not report security issues in public. Please email [email protected].
You can discuss this code on the edx-code Google Group or in the #edx-code
IRC channel on Freenode.