From 7a854f524aec32a48770535bf473751fd3d89e88 Mon Sep 17 00:00:00 2001
From: David Beniamine <david.beniamine@tetras-libre.fr>
Date: Tue, 27 Sep 2022 14:18:23 +0200
Subject: [PATCH] Serve static path www by npm dev server

---
 .env.template     |  2 +-
 devserver.yml     |  6 ++++--
 webpack.config.js | 15 +++++++++++----
 3 files changed, 16 insertions(+), 7 deletions(-)

diff --git a/.env.template b/.env.template
index 684fbda..120aad3 100644
--- a/.env.template
+++ b/.env.template
@@ -1,4 +1,4 @@
-# docker-compose components. Append ':devserver.yml' to also run the dev server (default is prod only)
+# docker-compose components replace by devserver.yml to run the dev server (default is prod) or append ':devserver.yml' to run both
 COMPOSE_FILE=docker-compose.yml
 # prod server host port
 PORT=8080
diff --git a/devserver.yml b/devserver.yml
index 8d6b8bf..96ba8e7 100644
--- a/devserver.yml
+++ b/devserver.yml
@@ -7,7 +7,9 @@ services:
     restart: $DEV_RESTART
     ports:
       - $DEV_PORT:9000
-    volumes:
-      - ./:/opt
     environment:
+      - CORS_ALLOWED_HOSTS
       - WEBPACK_MODE=development
+      - HTTP_FOLDER
+    volumes:
+      - ./:/opt
diff --git a/webpack.config.js b/webpack.config.js
index 4fc1dec..f966fe8 100644
--- a/webpack.config.js
+++ b/webpack.config.js
@@ -12,10 +12,17 @@ module.exports = {
     devServer: {
       hot: true,
       watchFiles: ['src/**/*'],
-      static: {
-        directory: path.join(__dirname, 'public'),
-        watch: true
-      },
+      static: [
+        {
+            directory: path.join(__dirname, 'public'),
+            watch: true
+        },
+        {
+            directory: path.join(__dirname, process.env.HTTP_FOLDER ? process.env.HTTP_FOLDER : 'www'),
+            watch: false,
+            publicPath: '/data'
+        },
+      ],
       port: 9000
     },
     plugins: [
-- 
GitLab