From 4c2188401669b4241147fb02528e8b5f51b447ac Mon Sep 17 00:00:00 2001 From: Dragory <2606411+Dragory@users.noreply.github.com> Date: Sat, 6 Apr 2024 09:53:28 +0000 Subject: [PATCH] fix: dashboard build errors about API_URL/.env --- dashboard/package.json | 2 +- dashboard/webpack.config.js | 12 ++++++---- package-lock.json | 47 ++++++++++--------------------------- 3 files changed, 22 insertions(+), 39 deletions(-) diff --git a/dashboard/package.json b/dashboard/package.json index 5b0c398b..0d3a328e 100644 --- a/dashboard/package.json +++ b/dashboard/package.json @@ -16,7 +16,7 @@ "cross-env": "^7.0.3", "css-loader": "^6.8.1", "cssnano": "^4.1.10", - "dotenv-webpack": "^8.0.1", + "dotenv": "^16.4.5", "file-loader": "^6.2.0", "html-loader": "^4.2.0", "html-webpack-plugin": "^5.5.3", diff --git a/dashboard/webpack.config.js b/dashboard/webpack.config.js index 6766cbaa..d3a09b75 100644 --- a/dashboard/webpack.config.js +++ b/dashboard/webpack.config.js @@ -1,9 +1,11 @@ const path = require("path"); const { VueLoaderPlugin } = require("vue-loader"); const HtmlWebpackPlugin = require("html-webpack-plugin"); -const DotenvPlugin = require("dotenv-webpack"); const { merge } = require("webpack-merge"); const webpack = require("webpack"); +const dotenv = require("dotenv"); + +dotenv.config({ path: path.resolve(process.cwd(), "../.env") }); const targetDir = path.normalize(path.join(__dirname, "dist")); @@ -12,6 +14,11 @@ if (!process.env.NODE_ENV) { process.exit(1); } +if (!process.env.API_URL) { + console.error("API_URL missing from environment variables"); + process.exit(1); +} + const babelOpts = { presets: ["@babel/preset-env"], }; @@ -150,9 +157,6 @@ let config = { js: ["./src/main.ts"], }, }), - new DotenvPlugin({ - path: path.resolve(process.cwd(), "../.env"), - }), new webpack.EnvironmentPlugin(["API_URL"]), ], resolve: { diff --git a/package-lock.json b/package-lock.json index 51f051dc..1558e553 100644 --- a/package-lock.json +++ b/package-lock.json @@ -176,7 +176,7 @@ "cross-env": "^7.0.3", "css-loader": "^6.8.1", "cssnano": "^4.1.10", - "dotenv-webpack": "^8.0.1", + "dotenv": "^16.4.5", "file-loader": "^6.2.0", "html-loader": "^4.2.0", "html-webpack-plugin": "^5.5.3", @@ -196,6 +196,18 @@ "webpack-merge": "^5.9.0" } }, + "dashboard/node_modules/dotenv": { + "version": "16.4.5", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.4.5.tgz", + "integrity": "sha512-ZmdL2rui+eB2YwhsWzjInR8LldtZHGDoQ1ugH85ppHKwpUHL7j7rN0Ti9NCnGiQbhaZ11FpR+7ao1dNsmduNUg==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://dotenvx.com" + } + }, "node_modules/@ampproject/remapping": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.1.tgz", @@ -9272,39 +9284,6 @@ "node": ">=4.6.0" } }, - "node_modules/dotenv-defaults": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/dotenv-defaults/-/dotenv-defaults-2.0.2.tgz", - "integrity": "sha512-iOIzovWfsUHU91L5i8bJce3NYK5JXeAwH50Jh6+ARUdLiiGlYWfGw6UkzsYqaXZH/hjE/eCd/PlfM/qqyK0AMg==", - "dev": true, - "dependencies": { - "dotenv": "^8.2.0" - } - }, - "node_modules/dotenv-defaults/node_modules/dotenv": { - "version": "8.6.0", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-8.6.0.tgz", - "integrity": "sha512-IrPdXQsk2BbzvCBGBOTmmSH5SodmqZNt4ERAZDmW4CT+tL8VtvinqywuANaFu4bOMWki16nqf0e4oC0QIaDr/g==", - "dev": true, - "engines": { - "node": ">=10" - } - }, - "node_modules/dotenv-webpack": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/dotenv-webpack/-/dotenv-webpack-8.0.1.tgz", - "integrity": "sha512-CdrgfhZOnx4uB18SgaoP9XHRN2v48BbjuXQsZY5ixs5A8579NxQkmMxRtI7aTwSiSQcM2ao12Fdu+L3ZS3bG4w==", - "dev": true, - "dependencies": { - "dotenv-defaults": "^2.0.2" - }, - "engines": { - "node": ">=10" - }, - "peerDependencies": { - "webpack": "^4 || ^5" - } - }, "node_modules/dotgitconfig": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/dotgitconfig/-/dotgitconfig-1.1.2.tgz",