Skip to content

Commit b2d1484

Browse files
committed
feat: Enable per-MFE PARAGON_BRAND_PACKAGE for theme versioning
1 parent b1cc743 commit b2d1484

File tree

4 files changed

+39
-7
lines changed

4 files changed

+39
-7
lines changed

docker-compose.yml

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -707,6 +707,8 @@ services:
707707
service: microfrontend
708708
working_dir: '/edx/app/frontend-app-account'
709709
container_name: "edx.${COMPOSE_PROJECT_NAME:-devstack}.frontend-app-account"
710+
environment:
711+
PARAGON_BRAND_PACKAGE: '@edx/brand-edx.org'
710712
networks:
711713
default:
712714
aliases:
@@ -722,6 +724,8 @@ services:
722724
service: microfrontend
723725
working_dir: '/edx/app/frontend-app-profile'
724726
container_name: "edx.${COMPOSE_PROJECT_NAME:-devstack}.frontend-app-profile"
727+
environment:
728+
PARAGON_BRAND_PACKAGE: '@edx/brand-edx.org'
725729
networks:
726730
default:
727731
aliases:
@@ -737,6 +741,8 @@ services:
737741
service: microfrontend
738742
working_dir: '/edx/app/frontend-app-authn'
739743
container_name: "edx.${COMPOSE_PROJECT_NAME:-devstack}.frontend-app-authn"
744+
environment:
745+
PARAGON_BRAND_PACKAGE: '@edx/brand-edx.org'
740746
networks:
741747
default:
742748
aliases:
@@ -752,6 +758,8 @@ services:
752758
service: microfrontend
753759
working_dir: '/edx/app/frontend-app-course-authoring'
754760
container_name: "edx.${COMPOSE_PROJECT_NAME:-devstack}.frontend-app-course-authoring"
761+
environment:
762+
PARAGON_BRAND_PACKAGE: '@edx/brand-edx.org'
755763
networks:
756764
default:
757765
aliases:
@@ -767,6 +775,8 @@ services:
767775
service: microfrontend
768776
working_dir: '/edx/app/frontend-app-gradebook'
769777
container_name: "edx.${COMPOSE_PROJECT_NAME:-devstack}.frontend-app-gradebook"
778+
environment:
779+
PARAGON_BRAND_PACKAGE: '@edx/brand-edx.org'
770780
networks:
771781
default:
772782
aliases:
@@ -782,6 +792,8 @@ services:
782792
service: microfrontend
783793
working_dir: '/edx/app/frontend-app-ora-grading'
784794
container_name: "edx.${COMPOSE_PROJECT_NAME:-devstack}.frontend-app-ora-grading"
795+
environment:
796+
PARAGON_BRAND_PACKAGE: '@edx/brand-edx.org'
785797
networks:
786798
default:
787799
aliases:
@@ -797,6 +809,8 @@ services:
797809
service: microfrontend
798810
working_dir: '/edx/app/frontend-app-learner-dashboard'
799811
container_name: "edx.${COMPOSE_PROJECT_NAME:-devstack}.frontend-app-learner-dashboard"
812+
environment:
813+
PARAGON_BRAND_PACKAGE: '@edx/brand-edx.org'
800814
networks:
801815
default:
802816
aliases:
@@ -812,6 +826,8 @@ services:
812826
service: microfrontend
813827
working_dir: '/edx/app/frontend-app-learner-record'
814828
container_name: "edx.${COMPOSE_PROJECT_NAME:-devstack}.frontend-app-learner-record"
829+
environment:
830+
PARAGON_BRAND_PACKAGE: '@edx/brand-edx.org'
815831
networks:
816832
default:
817833
aliases:
@@ -827,6 +843,8 @@ services:
827843
service: microfrontend
828844
working_dir: '/edx/app/frontend-app-learning'
829845
container_name: "edx.${COMPOSE_PROJECT_NAME:-devstack}.frontend-app-learning"
846+
environment:
847+
PARAGON_BRAND_PACKAGE: '@edx/[email protected]'
830848
networks:
831849
default:
832850
aliases:
@@ -842,6 +860,8 @@ services:
842860
service: microfrontend
843861
working_dir: '/edx/app/frontend-app-library-authoring'
844862
container_name: "edx.${COMPOSE_PROJECT_NAME:-devstack}.frontend-app-library-authoring"
863+
environment:
864+
PARAGON_BRAND_PACKAGE: '@edx/brand-edx.org'
845865
networks:
846866
default:
847867
aliases:
@@ -858,6 +878,8 @@ services:
858878
service: microfrontend
859879
working_dir: '/edx/app/frontend-app-payment'
860880
container_name: "edx.${COMPOSE_PROJECT_NAME:-devstack}.frontend-app-payment"
881+
environment:
882+
PARAGON_BRAND_PACKAGE: '@edx/brand-edx.org'
861883
networks:
862884
default:
863885
aliases:
@@ -873,6 +895,8 @@ services:
873895
service: microfrontend
874896
working_dir: '/edx/app/frontend-app-program-console'
875897
container_name: "edx.${COMPOSE_PROJECT_NAME:-devstack}.frontend-app-program-console"
898+
environment:
899+
PARAGON_BRAND_PACKAGE: '@edx/brand-edx.org'
876900
networks:
877901
default:
878902
aliases:
@@ -889,6 +913,8 @@ services:
889913
service: microfrontend
890914
working_dir: '/edx/app/frontend-app-publisher'
891915
container_name: "edx.${COMPOSE_PROJECT_NAME:-devstack}.frontend-app-publisher"
916+
environment:
917+
PARAGON_BRAND_PACKAGE: '@edx/brand-edx.org'
892918
networks:
893919
default:
894920
aliases:

microfrontend.yml

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,18 @@ services:
1616
#
1717
# Fail fast if package install fails to avoid mysterious
1818
# errors later.
19-
command: bash -c 'npm ci || exit 1; if [ ! -z "$PARAGON_BRAND_PACKAGE" ]; then npx paragon install-theme "@$PARAGON_BRAND_PACKAGE" || exit 1; fi; while true; do npm start; sleep 2; done'
19+
command:
20+
- bash
21+
- -c
22+
- |
23+
npm ci || exit 1
24+
if [ -n "$(printenv PARAGON_BRAND_PACKAGE)" ]; then
25+
npx paragon install-theme "$(printenv PARAGON_BRAND_PACKAGE)" || exit 1
26+
fi
27+
while true; do
28+
npm start
29+
sleep 2
30+
done
2031
stdin_open: true
2132
tty: true
2233
image: node:18

options.mk

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -91,8 +91,3 @@ credentials+cms+discovery+ecommerce+insights+lms+registrar
9191
# Separated by plus signs. Listed in alphabetical order for clarity.
9292
THIRD_PARTY_SERVICES ?= \
9393
chrome+coursegraph+elasticsearch710+firefox+memcached+mongo+mysql57+mysql80+opensearch12+redis+namenode+datanode+resourcemanager+nodemanager+sparkmaster+sparkworker+vertica
94-
95-
# Set default theme for MFEs
96-
ifndef PARAGON_BRAND_PACKAGE
97-
PARAGON_BRAND_PACKAGE = edx/brand-edx.org
98-
endif

provision-set-edx-theme.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ sed -i '' "s|^# \"/edx/app/edxapp/edx-platform/themes/\"| \"/edx/app/edxa
2323
sed -i '' "/COMPREHENSIVE_THEME_DIRS = \[/a\\
2424
\"$THEME_DIR\",
2525
" "$DEVSTACK_FILE"
26-
sed -i '' "s|^# \]|]|" "$DEVSTACK_FILE" # Uncomment the closing bracket
26+
sed -i '' "s|^# \]|]|" "$DEVSTACK_FILE"
2727
sed -i '' "s|^# TEMPLATES\[1\]\[\"DIRS\"\] = _make_mako_template_dirs|TEMPLATES[1][\"DIRS\"] = _make_mako_template_dirs|" "$DEVSTACK_FILE"
2828
sed -i '' "s|^# derive_settings(__name__)|derive_settings(__name__)|" "$DEVSTACK_FILE"
2929

0 commit comments

Comments
 (0)