A django app plugin to add a new API to Open edX to export courses to S3 buckets
Project description
Course Export S3 Plugin
A django app plugin to add a new API to Open edX to export courses to S3 buckets.
Installation
You can install this plugin into any Open edX instance by using the following method:
Install from PyPI
pip install openedx-course-export
Configuration
1) edx-platform configuration
For testing, you might need to add the following configuration values to the config file in Open edX. For any release after Juniper, that config file is /edx/etc/studio.yml.
AWS_ACCESS_KEY_ID: <your aws access id>
AWS_SECRET_ACCESS_KEY: <your api access key>
COURSE_IMPORT_EXPORT_BUCKET: <bucket name to export the courses to>
How To Use
The API supports a POST API call that accepts the list of course Ids and returns the uploaded paths of the courses on S3
To call the API, Send a POST request to <STUDIO_BASE>/api/courses/v0/export/ with the a payload with a list of course IDs that might look like:
{
"courses": ["course-v1:edX+DemoX+Demo_Course"]
}
The successful response would look like:
With 200
{
"successful_uploads": {
"course-v1:edX+DemoX+Demo_Course": "https://bucket_name.s3.amazonaws.com/course-v1:edX+DemoX+Demo_Course.tar.gz",
"course-v1:edX+Test+Test_Course": "https://bucket_name.s3.amazonaws.com/course-v1:edX+Test+Test_Course.tar.gz"
},
"failed_uploads": {}
}
With 400
{
"successful_uploads": {
"course-v1:edX+DemoX+Demo_Course": "https://bucket_name.s3.amazonaws.com/course-v1:edX+DemoX+Demo_Course.tar.gz",
},
"failed_uploads": {
"course-v1:edX+Test+Test_Course": "Error message"
}
}
The response will contain either the s3 bucket url for successful uploads and/or an error message for failed uploads.
Change Log
Unreleased
[0.1.0] - 2023-02-24
Added
First release on PyPI.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for openedx_course_export-0.1.4.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 298ca54e5e8dfb5b20385045f5da121294974d0c805e1f770984bdcf4c2dec82 |
|
MD5 | b6dcab6156a0d9955de64b7f6d104a76 |
|
BLAKE2b-256 | 56b2da0c15fbba603e6a99ad55e7ae39e43a1cfdfd9e17db0175176b0785a740 |
Hashes for openedx_course_export-0.1.4-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | face0ecb1b88ee4c2c2de19ffd7bb340277c4e04b96e205d714d755d985fc65b |
|
MD5 | a89a0086f5c78054f337d7649337dd9f |
|
BLAKE2b-256 | cebf6388209ac6940dbb61f244c3860bc2ff43fbfc2054c6b40fb08816159c6a |