Skip to content

Commit 1ccd887

Browse files
committed
Make two webpack plugin modifications
First, remove the preload plugin installed by default. Given that the login page requires the complete javascript package to be loaded before the page can be rendered, and doing the rendering inside of bmcweb before javascript is loaded[1] doesn't seem to be desired by the community, preloading it does us essentially no good. The DOM itself is tiny. This fixes a split second flash that's seen on refresh, where the DOM is loaded, but the javascript has not, so there's no content to render. Second, modify the html loader plugin to produce the hash of the file at output, thus allowing the index file to be cached, and allowing the etag machinery[2] to work. [1] https://gerrit.openbmc.org/c/openbmc/bmcweb/+/35456 [2] https://gerrit.openbmc.org/c/openbmc/bmcweb/+/70644 Tested: After this patch, nearly all resources on refresh return 304, not modified from bmcweb. This significantly reduces the requirements for TLS encryption on the BMC. Change-Id: I7189c6024cacba099705ff6d27e4567bf88f3df4 Signed-off-by: Ed Tanous <[email protected]>
1 parent f11a190 commit 1ccd887

File tree

1 file changed

+5
-0
lines changed

1 file changed

+5
-0
lines changed

vue.config.js

+5
Original file line numberDiff line numberDiff line change
@@ -69,6 +69,11 @@ module.exports = {
6969
.options({
7070
name: '[name].[contenthash:8].[ext]',
7171
});
72+
config.plugins.delete('preload');
73+
config.plugin('html').tap((options) => {
74+
options[0].filename = 'index.[hash:8].html';
75+
return options;
76+
});
7277
},
7378
configureWebpack: (config) => {
7479
config.plugins.push(

0 commit comments

Comments
 (0)