Skip to content

The edX Enterprise Data repo is the home to tools and products related to providing access to Enterprise related data.

License

Notifications You must be signed in to change notification settings

openedx/edx-enterprise-data

Folders and files

NameName
Last commit message
Last commit date
Oct 25, 2024
Oct 30, 2024
Oct 24, 2022
Jul 30, 2024
Oct 28, 2024
Mar 7, 2018
Oct 12, 2023
Jun 14, 2023
Oct 30, 2024
Oct 4, 2017
Nov 2, 2022
Sep 25, 2023
Mar 2, 2023
Sep 20, 2021
Sep 20, 2021
Mar 7, 2018
Aug 21, 2020
Sep 30, 2024
Sep 30, 2024
Oct 25, 2024
Mar 7, 2024

Repository files navigation

edx-enterprise-data

The edX Enterprise Data repo is the home to tools and products related to providing access to Enterprise related data.

This repository is currently split into 2 folders: enterprise_reporting and enterprise_data

enterprise_data app

This django app exposes a REST api endpoint to access enterprise learner activity. The enterprise-data app is published to pypi as a library and installed into the edx-analytics-data-api project and uses OAuth JWT authentication from edx-drf-extensions.

Prerequisites for develpment

Setup for local development (Deprecated, prefer running in devstack)

This app is meant to be installed as an app in edx-analytics-data-api.

  1. Create a directory in your filesystem that has the edx-analytics-data-api repo in it. Create a folder src, and clone this repo into the src directory.
  2. Complete the setup in the README of edx-analytics-data-api
  3. Navigate to edx-analytics-data-api and activate your virtualenv.
  4. In the edx-analytics-data-api folder, run make requirements
  5. Run pip install -e ./src/edx-enterprise-data
  6. Run ./manage.py runserver

Running migrations locally

The default database configured by devstack is analytics-api. If you wish to run migrations on other databases, run ./manage.py migrate --database analytics_v1 or ./manage.py migrate --database analytics in the edx-analytics-data-api container.

Frontend

Much of the data from this app is consumed by frontend-app-admin-portal. Follow the instructions in that README to set it up.

Management commands for creating development data are below.

Management Commands for Devs

For the convenience of creating some test data in a local setup, there are some management commands that exist. To create a test enterprise, go into the [lms shell]LMS and run ./manage.py lms seed_enterprise_devstack_data You can then use the test enterprise's UUID for the following commands.

These commands can be run from this repo or from edx-analytics-data-api. The simplest way to start is to create dummy learner progress data for your test enterprise:

To create 10 users, each with 5 enrollments, using faked data. Running multiple times will create more users and enrollments.

./manage.py create_dummy_data_lpr_v1 <YOUR ENTERPRISE_UUID>

Now visit http://localhost:1991/pied-piper/admin/learners to see this dummy data in the learner progress report.

Additional commands

To create an EnterpriseUser with a EnterpriseCustomer UUID of your choice, you can run the following:

$ ./manage.py create_enterprise_user <YOUR_UUID_HERE>

The management command uses a faker factory to fill the attributes of the object created in your DB, and will print out a command on the command line you can run if you want to add EnterpriseEnrollments for the user.

To create an EnterpriseEnrollment for an EnterpriseUser with a certain enterprise_user_id (that also shares the same EnterpriseCustomer UUID as an EnterpriseUser in your DB), you can run the following:

$ ./manage.py create_enterprise_enrollment <YOUR_UUID_HERE> <YOUR_ENTERPRISE_USER_ID_HERE>

enterprise_reporting scripts

This folder contains a set of scripts used to push enterprise data reports. It supports multiple delivery methods (email, sftp) and is triggered through jenkins scheduled jobs.

enterprise_data_roles app

This app contains user roles and role assignments to manage user permissions on resources.

About

The edX Enterprise Data repo is the home to tools and products related to providing access to Enterprise related data.

Resources

License

Code of conduct

Security policy

Stars

Watchers

Forks

Packages

No packages published

Languages