-
Notifications
You must be signed in to change notification settings - Fork 2
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Set edx.org theme as default for edx-platform and MFEs #67
Changes from 2 commits
b1cc743
b2d1484
d0948d4
e2e7a62
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -707,6 +707,8 @@ services: | |
service: microfrontend | ||
working_dir: '/edx/app/frontend-app-account' | ||
container_name: "edx.${COMPOSE_PROJECT_NAME:-devstack}.frontend-app-account" | ||
environment: | ||
PARAGON_BRAND_PACKAGE: '@edx/brand-edx.org' | ||
networks: | ||
default: | ||
aliases: | ||
|
@@ -722,6 +724,8 @@ services: | |
service: microfrontend | ||
working_dir: '/edx/app/frontend-app-profile' | ||
container_name: "edx.${COMPOSE_PROJECT_NAME:-devstack}.frontend-app-profile" | ||
environment: | ||
PARAGON_BRAND_PACKAGE: '@edx/brand-edx.org' | ||
networks: | ||
default: | ||
aliases: | ||
|
@@ -737,6 +741,8 @@ services: | |
service: microfrontend | ||
working_dir: '/edx/app/frontend-app-authn' | ||
container_name: "edx.${COMPOSE_PROJECT_NAME:-devstack}.frontend-app-authn" | ||
environment: | ||
PARAGON_BRAND_PACKAGE: '@edx/brand-edx.org' | ||
networks: | ||
default: | ||
aliases: | ||
|
@@ -752,6 +758,8 @@ services: | |
service: microfrontend | ||
working_dir: '/edx/app/frontend-app-course-authoring' | ||
container_name: "edx.${COMPOSE_PROJECT_NAME:-devstack}.frontend-app-course-authoring" | ||
environment: | ||
PARAGON_BRAND_PACKAGE: '@edx/brand-edx.org' | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. It appears this MFE does not install That said, it currently installs |
||
networks: | ||
default: | ||
aliases: | ||
|
@@ -767,6 +775,8 @@ services: | |
service: microfrontend | ||
working_dir: '/edx/app/frontend-app-gradebook' | ||
container_name: "edx.${COMPOSE_PROJECT_NAME:-devstack}.frontend-app-gradebook" | ||
environment: | ||
PARAGON_BRAND_PACKAGE: '@edx/brand-edx.org' | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Note: it doesn't appear frontend-app-gradebook uses Would we want to update the devstack MFE to use ![]() |
||
networks: | ||
default: | ||
aliases: | ||
|
@@ -782,6 +792,8 @@ services: | |
service: microfrontend | ||
working_dir: '/edx/app/frontend-app-ora-grading' | ||
container_name: "edx.${COMPOSE_PROJECT_NAME:-devstack}.frontend-app-ora-grading" | ||
environment: | ||
PARAGON_BRAND_PACKAGE: '@edx/brand-edx.org' | ||
networks: | ||
default: | ||
aliases: | ||
|
@@ -797,6 +809,8 @@ services: | |
service: microfrontend | ||
working_dir: '/edx/app/frontend-app-learner-dashboard' | ||
container_name: "edx.${COMPOSE_PROJECT_NAME:-devstack}.frontend-app-learner-dashboard" | ||
environment: | ||
PARAGON_BRAND_PACKAGE: '@edx/brand-edx.org' | ||
networks: | ||
default: | ||
aliases: | ||
|
@@ -812,6 +826,8 @@ services: | |
service: microfrontend | ||
working_dir: '/edx/app/frontend-app-learner-record' | ||
container_name: "edx.${COMPOSE_PROJECT_NAME:-devstack}.frontend-app-learner-record" | ||
environment: | ||
PARAGON_BRAND_PACKAGE: '@edx/brand-edx.org' | ||
networks: | ||
default: | ||
aliases: | ||
|
@@ -827,6 +843,8 @@ services: | |
service: microfrontend | ||
working_dir: '/edx/app/frontend-app-learning' | ||
container_name: "edx.${COMPOSE_PROJECT_NAME:-devstack}.frontend-app-learning" | ||
environment: | ||
PARAGON_BRAND_PACKAGE: '@edx/brand-edx.org@2.1.3' | ||
networks: | ||
default: | ||
aliases: | ||
|
@@ -842,6 +860,8 @@ services: | |
service: microfrontend | ||
working_dir: '/edx/app/frontend-app-library-authoring' | ||
container_name: "edx.${COMPOSE_PROJECT_NAME:-devstack}.frontend-app-library-authoring" | ||
environment: | ||
PARAGON_BRAND_PACKAGE: '@edx/brand-edx.org' | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Here's another instance where |
||
networks: | ||
default: | ||
aliases: | ||
|
@@ -858,6 +878,8 @@ services: | |
service: microfrontend | ||
working_dir: '/edx/app/frontend-app-payment' | ||
container_name: "edx.${COMPOSE_PROJECT_NAME:-devstack}.frontend-app-payment" | ||
environment: | ||
PARAGON_BRAND_PACKAGE: '@edx/brand-edx.org' | ||
networks: | ||
default: | ||
aliases: | ||
|
@@ -873,6 +895,8 @@ services: | |
service: microfrontend | ||
working_dir: '/edx/app/frontend-app-program-console' | ||
container_name: "edx.${COMPOSE_PROJECT_NAME:-devstack}.frontend-app-program-console" | ||
environment: | ||
PARAGON_BRAND_PACKAGE: '@edx/brand-edx.org' | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. nit: There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. The update file contains the value @edx/brand-edx.org@1.x, which I updated from this source. |
||
networks: | ||
default: | ||
aliases: | ||
|
@@ -889,6 +913,8 @@ services: | |
service: microfrontend | ||
working_dir: '/edx/app/frontend-app-publisher' | ||
container_name: "edx.${COMPOSE_PROJECT_NAME:-devstack}.frontend-app-publisher" | ||
environment: | ||
PARAGON_BRAND_PACKAGE: '@edx/brand-edx.org' | ||
networks: | ||
default: | ||
aliases: | ||
|
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -16,7 +16,18 @@ services: | |
# | ||
# Fail fast if package install fails to avoid mysterious | ||
# errors later. | ||
command: bash -c 'npm ci || exit 1; while true; do npm start; sleep 2; done' | ||
command: | ||
- bash | ||
- -c | ||
- | | ||
npm ci || exit 1 | ||
if [ -n "$(printenv PARAGON_BRAND_PACKAGE)" ]; then | ||
npx paragon install-theme "$(printenv PARAGON_BRAND_PACKAGE)" || exit 1 | ||
Comment on lines
+24
to
+25
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Looks great; seems to work well locally. |
||
fi | ||
while true; do | ||
npm start | ||
sleep 2 | ||
done | ||
stdin_open: true | ||
tty: true | ||
image: node:18 | ||
|
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,47 @@ | ||
#!/usr/bin/env bash | ||
|
||
# This script sets up the edX theme in LMS and CMS. | ||
|
||
REPO_URL="https://github.com/edx/edx-themes" | ||
THEME_DIR="/edx/src/edx-themes/edx-platform" | ||
DEVSTACK_FILE="../edx-platform/lms/envs/devstack.py" | ||
|
||
# Clone the edx-themes repository into the src directory | ||
cd ../src | ||
if [ ! -d "edx-themes" ]; then | ||
git clone "$REPO_URL" | ||
else | ||
echo "Directory 'edx-themes' already exists. Skipping clone." | ||
fi | ||
cd ../devstack | ||
|
||
# Uncomment relevant lines in the devstack.py file | ||
sed -i '' "s|^# from .common import _make_mako_template_dirs|from .common import _make_mako_template_dirs|" "$DEVSTACK_FILE" | ||
sed -i '' "s|^# ENABLE_COMPREHENSIVE_THEMING = True|ENABLE_COMPREHENSIVE_THEMING = True|" "$DEVSTACK_FILE" | ||
sed -i '' "s|^# COMPREHENSIVE_THEME_DIRS = \[|COMPREHENSIVE_THEME_DIRS = \[|" "$DEVSTACK_FILE" | ||
sed -i '' "s|^# \"/edx/app/edxapp/edx-platform/themes/\"| \"/edx/app/edxapp/edx-platform/themes/\",|" "$DEVSTACK_FILE" | ||
sed -i '' "/COMPREHENSIVE_THEME_DIRS = \[/a\\ | ||
\"$THEME_DIR\", | ||
" "$DEVSTACK_FILE" | ||
sed -i '' "s|^# \]|]|" "$DEVSTACK_FILE" | ||
sed -i '' "s|^# TEMPLATES\[1\]\[\"DIRS\"\] = _make_mako_template_dirs|TEMPLATES[1][\"DIRS\"] = _make_mako_template_dirs|" "$DEVSTACK_FILE" | ||
sed -i '' "s|^# derive_settings(__name__)|derive_settings(__name__)|" "$DEVSTACK_FILE" | ||
|
||
|
||
# Add the theme directory to COMPREHENSIVE_THEME_DIRS if not already present | ||
if ! grep -qF "$THEME_DIR" "$DEVSTACK_FILE"; then | ||
sed -i '' "/COMPREHENSIVE_THEME_DIRS = \[/a\\ | ||
\"$THEME_DIR\", | ||
" "$DEVSTACK_FILE" | ||
fi | ||
|
||
# Set the theme site-wide | ||
SERVICE_NAME="mysql80" | ||
DATABASE="edxapp" | ||
THEME_NAME="edx.org-next" | ||
SITE_ID=1 | ||
|
||
docker compose exec -T "$SERVICE_NAME" mysql -e " | ||
USE $DATABASE; | ||
INSERT INTO theming_sitetheme (theme_dir_name, site_id) VALUES ('$THEME_NAME', $SITE_ID); | ||
" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
As is, this will pull from
latest
, which could introducing breaking changes unintentionally if a new major version is released.https://github.com/edx/edx-internal/blob/b3bd6adf8407b986349272f33b37922c620d8857/frontends/frontend-app-profile/prod_config.yml#L26