From 79760daf9be5881c4143160d1f3dbabcb5931784 Mon Sep 17 00:00:00 2001 From: Revant Nandgaonkar Date: Wed, 16 Mar 2022 16:09:16 +0530 Subject: [PATCH] fix: link frappe node_modules to make Website Theme work (#702) * fix: link frappe node_modules to make Website Theme work * Add website theme test * Fix failing test Co-authored-by: Lev Vereshchagin --- images/worker/Dockerfile | 5 ++++- tests/_check_website_theme.py | 17 +++++++++++++++++ tests/main.py | 15 +++++++++++++++ 3 files changed, 36 insertions(+), 1 deletion(-) create mode 100644 tests/_check_website_theme.py diff --git a/images/worker/Dockerfile b/images/worker/Dockerfile index e46d1ef0..ca79c09a 100644 --- a/images/worker/Dockerfile +++ b/images/worker/Dockerfile @@ -48,7 +48,10 @@ RUN --mount=type=cache,target=/home/frappe/.cache/pip \ git clone --depth 1 -b ${FRAPPE_VERSION} https://github.com/frappe/frappe apps/frappe \ && env/bin/pip install -e apps/frappe \ && env/bin/pip install -U gevent \ - && rm -r apps/frappe/.git + && rm -r apps/frappe/.git \ + # Link Frappe's node_modules/ to make Website Theme work + && mkdir -p /home/frappe/frappe-bench/sites/assets/frappe/node_modules \ + && ln -s /home/frappe/frappe-bench/sites/assets/frappe/node_modules /home/frappe/frappe-bench/apps/frappe/node_modules diff --git a/tests/_check_website_theme.py b/tests/_check_website_theme.py new file mode 100644 index 00000000..bc7ca8f4 --- /dev/null +++ b/tests/_check_website_theme.py @@ -0,0 +1,17 @@ +import frappe + + +def check_website_theme(): + doc = frappe.new_doc("Website Theme") + doc.theme = "test theme" + doc.insert() + + +def main() -> int: + frappe.connect(site="tests") + check_website_theme() + return 0 + + +if __name__ == "__main__": + raise SystemExit(main()) diff --git a/tests/main.py b/tests/main.py index 1910fb4d..06046bb5 100644 --- a/tests/main.py +++ b/tests/main.py @@ -339,6 +339,16 @@ def stop_s3_container(): run("docker", "rm", "minio", "-f") +@log("Check Website Theme creation") +def check_website_theme_creation(): + docker_compose("cp", "tests/_check_website_theme.py", "backend:/tmp") + docker_compose_exec( + "backend", + "/home/frappe/frappe-bench/env/bin/python", + "/tmp/_check_website_theme.py", + ) + + @log("Recreate with HTTPS override") def recreate_with_https_override(): docker_compose("-f", "overrides/compose.https.yaml", "up", "-d") @@ -456,6 +466,10 @@ def check_s3(): stop_s3_container() +def check_website_theme(): + check_website_theme_creation() + + def check_https(): print_compose_configuration() recreate_with_https_override() @@ -485,6 +499,7 @@ def main() -> int: start() create_frappe_site_and_check_availability() check_s3() + check_website_theme() check_https() check_erpnext() check_postgres()