Skip to content

Commit 8ce61d7

Browse files
committed
✨(edxapp) add support for LMS themes
This work adapts @sampaccoud's work on #105 to add customizable themes for the LMS. We've added an example for patient0/development with a public theme cooked by the Racoongang team.
1 parent fc56aa4 commit 8ce61d7

File tree

4 files changed

+26
-1
lines changed

4 files changed

+26
-1
lines changed

apps/edxapp/templates/lms/bc.yml.j2

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,9 +27,19 @@ spec:
2727
strategy:
2828
type: Docker
2929
source:
30+
{% if edxapp_theme_url is defined and edxapp_theme_url -%}
31+
git:
32+
uri: "{{ edxapp_theme_url }}"
33+
ref: "{{ edxapp_theme_tag | default("master") }}"
34+
{% endif -%}
3035
dockerfile: |-
3136
FROM {{ edxapp_image_name }}:{{ edxapp_image_tag }}
32-
# Add new statements here
37+
USER 0
38+
{% if edxapp_theme_url is defined and edxapp_theme_url -%}
39+
COPY . /edx/app/edxapp/edx-platform/themes/custom-theme
40+
RUN NO_PREREQ_INSTALL=1 paver update_assets --settings={{ edxapp_build_settings }} --skip-collect
41+
{% endif -%}
42+
USER 10000
3343
triggers:
3444
- type: "ConfigChange"
3545
output:

apps/edxapp/vars/all/main.yml

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,14 @@ edxapp_lms_host: "lms.{{ project_name}}.{{ domain_name }}"
88
edxapp_image_name: "fundocker/edxapp"
99
edxapp_image_tag: "hawthorn.1-1.0.0"
1010
edxapp_django_port: 8000
11+
# Customize edxapp's LMS theme: the url is supposed to point to the git
12+
# repository and the tag to either a tag or a branch, e.g.:
13+
#
14+
# edxapp_theme_url: "https://github.com/raccoongang/themes_for_themex.io)"
15+
# edxapp_theme_tag: "marvel-theme-ginkgo"
16+
edxapp_theme_url: null
17+
edxapp_theme_tag: null
18+
edxapp_build_settings: "fun.docker_build_production"
1119

1220
# -- memcached
1321
edxapp_memcached_image_name: memcached

group_vars/customer/patient0/development/configs/edxapp/lms/settings.yml.j2

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,3 +22,6 @@ HIGH_PRIORITY_QUEUE: "{{ edxapp_celery_lms_high_priority_queue }}"
2222
DEFAULT_PRIORITY_QUEUE: "{{ edxapp_celery_lms_default_priority_queue }}"
2323
LOW_PRIORITY_QUEUE: "{{ edxapp_celery_lms_low_priority_queue }}"
2424
HIGH_MEM_QUEUE: "{{ edxapp_celery_lms_high_mem_queue }}"
25+
26+
# Use a custom theme
27+
DEFAULT_SITE_THEME: "custom-theme"

group_vars/customer/patient0/development/main.yml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,3 +18,7 @@ apps:
1818
- group_vars/customer/patient0/development/configs/edxapp/lms/settings.yml.j2
1919
- name: redis
2020
- name: hello
21+
22+
# Install a custom theme for edxapp-lms
23+
edxapp_theme_url: "https://github.com/raccoongang/themes_for_themex.io"
24+
edxapp_theme_tag: "marvel-theme-ginkgo"

0 commit comments

Comments
 (0)