You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+3-12Lines changed: 3 additions & 12 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -38,25 +38,16 @@ Moreover, Marsha provides:
38
38
39
39
### The `Django` backend
40
40
41
-
The `Django` backend is tasked with serving the LTI pages that are integrated into the LMS. It also manages all the objects with their relationships, user accounts and all authentication concerns. It exposes a JSON API to communicate with the part of the infrastructure that operates on `AWS lambdas` and the `React` frontend.
41
+
The `Django` backend is tasked with serving the LTI pages that are integrated into the LMS. It also manages all the objects with their relationships, user accounts and all authentication concerns. It exposes a JSON API to communicate with the `React` frontend.
42
42
43
43
It is defined using a [docker-compose file](../docker-compose.yml) for development, and can be deployed on any container environment (such as `Kubernetes`) for production.
44
44
45
45
### The storage & transcoding environment
46
46
47
-
Source files (video, documents, subtitles,...) are directly uploaded to an `S3` bucket by instructors. Depending the uploaded resource a lambda will be triggered to do different jobs:
48
-
-Launch `MediaConvert`to generate all necessary video files (various formats and fragments & manifests for adaptive-bitrate streaming) into a destination `S3` bucket. Those files are then served through the `CloudFront` CDN.
47
+
Source files (video, documents, subtitles,...) are directly uploaded to an `S3` bucket by instructors. Depending the uploaded resource, Celery tasks will be triggered to do different jobs:
48
+
-Transcode videos using Peertube runners to generate all necessary video files (various formats and fragments & manifests for adaptive-bitrate streaming) into a destination `S3` bucket. Those files are then served through the `Scaleway Edge service` CDN.
49
49
- Convert any kind of subtitles (also captions and transcripts) in [WebVTT](https://www.w3.org/TR/webvtt1/) format and encode them properly.
50
50
- Resize thumbnails in many formats.
51
-
- Copy documents from a source to a destination `S3` Bucket accessible through the `CloudFront` CDN.
52
-
53
-
Lambdas are used to manage and monitor the process and report back to the `Django` backend.
54
-
55
-
This storage & transcoding environment requires `AWS` as it heavily relies on `AWS MediaConvert` to do the heavy lifting when it comes to transcoding. All the services it relies on are configured through `Terraform` and can be deployed effortlessly through a `make` command.
56
-
57
-
⚠️ **Privacy concerns**
58
-
59
-
Please note that the only objects we handle in `AWS` are the actual video, documents or subtitles files, from the upload to the distribution through transcoding and storage. It is not required to deploy any database or application backend to `AWS` or send any user's personal information there.
Copy file name to clipboardExpand all lines: UPGRADE.md
+10Lines changed: 10 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -7,6 +7,16 @@ not skip minor/major releases while upgrading (fix releases can be skipped).
7
7
The format is inspired from [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
8
8
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
9
9
10
+
### 5.10.0 to 5.11.0
11
+
12
+
Cloudfront signed URLs are not used anymore in the project, make sure to remove the following environment variables:
13
+
- CLOUDFRONT_PRIVATE_KEY_PATH
14
+
- CLOUDFRONT_SIGNED_URLS_ACTIVE
15
+
- CLOUDFRONT_SIGNED_URLS_VALIDITY
16
+
- CLOUDFRONT_SIGNED_URL_CACHE_DURATION
17
+
- CLOUDFRONT_SIGNED_PUBLIC_KEY_ID
18
+
- CLOUDFRONT_DOMAIN = values.Value(None)
19
+
10
20
### 5.7.x to 5.8.0
11
21
12
22
Environment variables previously prefixed with `DJANGO_VIDEOS_STORAGE_` are now prefixed with `DJANGO_STORAGE_`. Make sure to update your configuration accordingly.
Whether Cloudfront URLs for MP4 files and timed text tracks should be cryptographically signed.
275
-
276
-
Note: Preview images are never signed as a matter of policy; adaptive streaming formats pose technical challenges when it comes to signed URLs, so we're not doing any signing there for now.
277
-
278
-
- Type: Boolean
279
-
- Required: No
280
-
- Default: Varies depending on the environment:
281
-
-`False` in development and test;
282
-
-`True` in all other environments.
283
-
- Choices: `True` or `False`
284
-
285
-
#### DJANGO_CLOUDFRONT_DOMAIN
286
-
287
-
The domain for the AWS Cloudfront distribution for the relevant AWS deployment. This is the domain
288
-
that will be used to distribute processed files to end users.
0 commit comments