History log of /openbmc/webui-vue/vue.config.js (Results 1 – 25 of 25)
Revision Date Author Comments
# 8c4bb44c 05-Jun-2024 Paul Fertser <fercerpav@gmail.com>

Revert "Add keep-alive option in webpack devServer"

This reverts commit bf37b317496c80dc9a87f49356efdab8a3b50caa.

The current version of the stack doesn't prevent logging in and all
operations with

Revert "Add keep-alive option in webpack devServer"

This reverts commit bf37b317496c80dc9a87f49356efdab8a3b50caa.

The current version of the stack doesn't prevent logging in and all
operations without overriding "Connection:" header.

This overriding is making it impossible to test any WebSocket-based
functionality (IP KVM, SOL, Virtual Media).

Tested: logging in, navigating the interface, using IP KVM and SOL
console.

Fixes: https://github.com/openbmc/webui-vue/issues/94
Change-Id: I6174c75e35784ff370f6adf7841c98ae78a26ceb
Signed-off-by: Paul Fertser <fercerpav@gmail.com>

show more ...


# b1daec60 06-Jun-2024 Ed Tanous <ed@tanous.net>

Disable index hashing in development mode

When in Dev server mode, we the webpack dev server isn't capable of
understanding wildcards, and that index.html, and index.<hash>.html are
the same thing.

Disable index hashing in development mode

When in Dev server mode, we the webpack dev server isn't capable of
understanding wildcards, and that index.html, and index.<hash>.html are
the same thing.

Disable the index file hashing when in dev mode.

Tested:
Launched dev server without bmc present. Observed UI could be loaded
correctly.

Change-Id: Ie2d3bfe4af0117681cec8c92f93d7e278b2071f2
Signed-off-by: Ed Tanous <ed@tanous.net>

show more ...


# 1ccd8873 21-Apr-2024 Ed Tanous <ed@tanous.net>

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 r

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 <ed@tanous.net>

show more ...


# 511650a9 20-Apr-2024 Ed Tanous <ed@tanous.net>

Allow the favicon to be cached

The favicon is currently loaded directly by url. This commit changes it
to be loaded by file-loader. Note, the default vue webpack file loader
doesn't support ico fil

Allow the favicon to be cached

The favicon is currently loaded directly by url. This commit changes it
to be loaded by file-loader. Note, the default vue webpack file loader
doesn't support ico file types (because it seems to expect to use a png
here), so add that to the file loader config.

This allows bmcweb [1] to provide caching headers for the favicon, and
avoid downloading a new favicon on every refresh.

Tested: Webui-vue loads, favicon in the network panel loads properly.

[1] https://gerrit.openbmc.org/c/openbmc/bmcweb/+/70644

Change-Id: I27e5b459ff8822294ac9273220111e9944e8d1e5
Signed-off-by: Ed Tanous <ed@tanous.net>

show more ...


# 740cbd52 20-Apr-2024 Ed Tanous <ed@tanous.net>

Limit to one chunk

Considering that currently, there's no way to load the login page
without both the main json, and the 1 vendor chunk, chunking itself gets
us no extra performance, and makes it ha

Limit to one chunk

Considering that currently, there's no way to load the login page
without both the main json, and the 1 vendor chunk, chunking itself gets
us no extra performance, and makes it harder on the bmc, because we now
have to respond to two requests instead of one. These requests in
practice happen serially, so on high RTT connections, it can be a
negative on performance.

Simplify by changing the webpack settings to produce one chunk.

Tested: Webui loads properly. No errors on console when clicking
around.

Change-Id: Ida5bb748429137eb2414be1990168affe1d001af
Signed-off-by: Ed Tanous <ed@tanous.net>

show more ...


# f8207740 08-Apr-2024 Ed Tanous <ed@tanous.net>

Inline SVG

Having the SVG files loaded as a separate package significantly
increases the load time of the UI, as it forces the images to be
downloaded AFTER the page has loaded.

This commit adds th

Inline SVG

Having the SVG files loaded as a separate package significantly
increases the load time of the UI, as it forces the images to be
downloaded AFTER the page has loaded.

This commit adds the vue-svg-inline-loader, and appropriate config such
that the styles can be inlined, and a second trip to the BMC is not
required to load the login screen. This improves the "time to glass" of
the webui quite a bit.

Tested: Webui loads. Network tab shows svg files are not loaded. Webui
login page looks correct.
First load of the webui renders 500ms faster (1.9s vs 1.4s)

Change-Id: Iebcd9ab5df6edad0a1a5c53c028eccd2fda8f63c
Signed-off-by: Ed Tanous <ed@tanous.net>

show more ...


# 8132399c 27-Feb-2024 Ed Tanous <ed@tanous.net>

Reformat files with new linter

All changes should be whitespace, and were done using npm run-script
lint.

Change-Id: I943c6b435c5c872841af5affc1e89910468b5ca6
Signed-off-by: Ed Tanous <ed@tanous.ne

Reformat files with new linter

All changes should be whitespace, and were done using npm run-script
lint.

Change-Id: I943c6b435c5c872841af5affc1e89910468b5ca6
Signed-off-by: Ed Tanous <ed@tanous.net>

show more ...


# 99706ff2 14-Jan-2022 Gunnar Mills <gmills@us.ibm.com>

Hack webpack to not use MD4

No longer have support for MD4, the default hashFunction.
Mess with webpack to use sha256.

This solution is from:
https://github.com/webpack/webpack/issues/13572#issueco

Hack webpack to not use MD4

No longer have support for MD4, the default hashFunction.
Mess with webpack to use sha256.

This solution is from:
https://github.com/webpack/webpack/issues/13572#issuecomment-923736472

And was added to phosphor-webui here:
https://github.com/openbmc/phosphor-webui/commit/85884002164aacfeac8ca40e6fd169b0a2de43f0

Ideally --openssl-legacy-provider would work as
https://github.com/webpack/webpack/issues/14532 describes but Node 16
supports linking with SSL 3.0 but doesn't support
openssl-legacy-provider. See
https://github.com/nodejs/node/issues/40948.

This should enable the new Yocto bump to pass.

Tested: Build Witherspoon Tacoma with
https://gerrit.openbmc-project.xyz/c/openbmc/openbmc/+/48473 and the 3
and this change. The webui looked good.

Change-Id: I66f2cc45af85096f9abe935d269838c6a680bc9b
Signed-off-by: Gunnar Mills <gmills@us.ibm.com>

show more ...


# bf37b317 12-Oct-2021 Dixsie Wolmers <dixsie@ibm.com>

Add keep-alive option in webpack devServer

When running the UI locally we were running into the issue of
getting logged off after logging in because of this change:
https://gerrit.openbmc-project.xy

Add keep-alive option in webpack devServer

When running the UI locally we were running into the issue of
getting logged off after logging in because of this change:
https://gerrit.openbmc-project.xyz/c/openbmc/bmcweb/+/45175

Adding the keep-alive option in the webpack config prevents this.

Signed-off-by: Dixsie Wolmers <dixsie@ibm.com>
Change-Id: Ic82b4aa1a272d8ea900c240fbe5f527ebe2e608d

show more ...


# 602e98aa 21-Oct-2020 Derick Montague <derick.montague@ibm.com>

Update linting packages to use latest

- 99% of changes were small syntax changes that were changed by the
lint command. There were a couple of small manual changes to meet the
property order pattern

Update linting packages to use latest

- 99% of changes were small syntax changes that were changed by the
lint command. There were a couple of small manual changes to meet the
property order patterns established as part of the vue:recommended
guidelines.

There are rules that were set from errors to warnings and new stories
are being opened to address those issues.

Testing:
- Successfully ran npm run serve
- Successfully ran npm run lint
- Verified functionality works as expected, e.g. success and failure use cases
- Resolved any JavaScript errors thrown to the console

Signed-off-by: Derick Montague <derick.montague@ibm.com>
Change-Id: Ie082f31c73ccbe8a60afa8f88a9ef6dbf33d9fd2

show more ...


# 579cbdf4 14-Jul-2020 Derick Montague <derick.montague@ibm.com>

Resolve Content-Security-Policy error

In Firefox there was an no unsafe eval error which was caused when
users had the vue dev tools extenstion installed and enabled. The other
issue was the loading

Resolve Content-Security-Policy error

In Firefox there was an no unsafe eval error which was caused when
users had the vue dev tools extenstion installed and enabled. The other
issue was the loading of a resrouce at inline (style-src) which was
caused by the SVG icons coming from the Carbon icons vue library.

- Updated the Carbon icons to the latest version to resolve
the CSP issue.
- Remove chainwebpack option only used for prefecth as this is not
needed. Originally this was an issue when using code splitting.
Changing how we import views for routes and creating a single bundle
removes the need for this option.
- Update how fill color is applied to StatusIcon component. The Carbon
icons update results in adding the fill property to the svg container
does not cascade resulting in all icons rendering as their default
fill color.

GitHub Issue: https://github.com/openbmc/webui-vue/issues/32

Signed-off-by: Derick Montague <derick.montague@ibm.com>
Change-Id: I4846f80c993c129d5e88fceda13d53fab51d7c8a

show more ...


# 816d947e 03-Sep-2020 Yoshie Muranaka <yoshiemuranaka@gmail.com>

Create separate file for Vue Router routes

Separating routes into its own JS file to allow for easier env
customizations.
Update store resolve path to make sure right env stores modules
are imported

Create separate file for Vue Router routes

Separating routes into its own JS file to allow for easier env
customizations.
Update store resolve path to make sure right env stores modules
are imported in every file.

Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com>
Change-Id: I5c646c81fab54085198b2e179be80c954258f51c

show more ...


# 0214fedb 03-Sep-2020 Yoshie Muranaka <yoshiemuranaka@gmail.com>

Update config to enable custom app navigation

- Update documentation to include navigation customizations
- Created an IBM specific application navigation file to demonstrate
how to remove KVM nav

Update config to enable custom app navigation

- Update documentation to include navigation customizations
- Created an IBM specific application navigation file to demonstrate
how to remove KVM navigation item

Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com>
Change-Id: I2ea61e9f3a43e6821f274ed90e0eed18afabccb7

show more ...


# 044b1bb8 12-Aug-2020 Yoshie Muranaka <yoshiemuranaka@gmail.com>

Add env variable check to improve build customizations

Added flags for styles, router, and store. If these flags are set
to true, then webpack will attempt to resolve the environment
specific files.

Add env variable check to improve build customizations

Added flags for styles, router, and store. If these flags are set
to true, then webpack will attempt to resolve the environment
specific files. If these flags are not explicitly set to true, the
default files are used.

This will give us more flexibility and remove the need to create
empty env files (eg env/router/ibm.js).

Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com>
Change-Id: I552ad402621a3bbad3e871076a894ecadf9e82c7

show more ...


# d388a28b 08-Jul-2020 Yoshie Muranaka <yoshiemuranaka@gmail.com>

Add ability to customize theme styles

Showcases how different themes/styles can be supported using
.env variables. If an environemnt name is specified during
the build process, an overrides file wil

Add ability to customize theme styles

Showcases how different themes/styles can be supported using
.env variables. If an environemnt name is specified during
the build process, an overrides file will be pulled in to
allow modifications to color and font definitions.

This commit includes possible style modifications with the openpower
env name as an example. To see the openpower changes, add the variable
definition VUE_APP_NAME="openpower" to your .env.development.local file
or build using 'npm run build -- --mode openpower'

- Moves helper imports into vue config to allow for
specific import order
- Removed helper imports in SFCs

Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com>
Change-Id: Iaf7a59c24fda06a7b74e23f2f042fb3300cb2056

show more ...


# 40865726 13-Apr-2020 Derick Montague <derick.montague@ibm.com>

Update Sass architecture to require helper imports

- Restructuring file strucure to support single file components use of
Sass variables when imported into vuepress.
- Creating a scalable file struc

Update Sass architecture to require helper imports

- Restructuring file strucure to support single file components use of
Sass variables when imported into vuepress.
- Creating a scalable file structure using Sass best practices

Tested by building and testing both the vue web ui and the
the documentation application.

Signed-off-by: Derick Montague <derick.montague@ibm.com>
Change-Id: Iddcefbf305c8dac978ee24e903df33b609e395e3

show more ...


# 9e36f522 05-Feb-2020 Yoshie Muranaka <yoshiemuranaka@gmail.com>

Add webpack config for env specific builds

Add documentation and example files to make environment specific
build modifications.

- Store any env specific router and store modules in
separate env

Add webpack config for env specific builds

Add documentation and example files to make environment specific
build modifications.

- Store any env specific router and store modules in
separate env directory

Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com>
Change-Id: I06ff3cb0928707354266dd25b399710847e7fa18

show more ...


# cbcd2136 30-Jan-2020 Dixsie Wolmers <dixsie@ibm.com>

Set up initial language translation

- Add i18n internationalization plugin
- Create json files for group 0 English and Spanish
- Uses $t method to set up initial translations on login page
- Meta ti

Set up initial language translation

- Add i18n internationalization plugin
- Create json files for group 0 English and Spanish
- Uses $t method to set up initial translations on login page
- Meta title is translated using i18n in App.vue and PageTitle.Vue

Signed-off-by: Dixsie Wolmers <dixsie@ibm.com>
Change-Id: Ifce9f5e54d96f8b2a13239ad6178892f99fc4537

show more ...


# 7d5c3a7a 30-Jan-2020 Yoshie Muranaka <yoshiemuranaka@gmail.com>

Update config to keep 'secure' attribute

Since switching to secure https protocol for development
https://gerrit.openbmc-project.xyz/c/openbmc/webui-vue/+/28729/7
no need to remove 'secure' attribut

Update config to keep 'secure' attribute

Since switching to secure https protocol for development
https://gerrit.openbmc-project.xyz/c/openbmc/webui-vue/+/28729/7
no need to remove 'secure' attribute from response header.

Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com>
Change-Id: Ic7bddb4572ec8ccd3029c493ca57627dd24b8ae4

show more ...


# dc04feb5 04-Dec-2019 Yoshie Muranaka <yoshiemuranaka@gmail.com>

Add host status plugin

- Create WebSocket and get host state changes from server
- Changed webpack devServer to https to allow for
secure WebSocket creation (wss)
- Updates to AppHeader to visuall

Add host status plugin

- Create WebSocket and get host state changes from server
- Changed webpack devServer to https to allow for
secure WebSocket creation (wss)
- Updates to AppHeader to visually indicate changes
in host state
- Cleaned up api.js file
- Check if user is logged in when creating WebSocket
- Adds check if user is already authenticated so WebSocket
is created when browser refreshed.
- Add appliation header styles
- Add sass loader config changes to allow sass variables to
be used in single file components

URL must use https protocol when running locally or the page
will not load.

Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com>
Signed-off-by: Derick Montague <derick.montague@ibm.com>
Change-Id: I35e89bdc09e1aa35a6215ef952409a8ed16dd9e1

show more ...


# fded0d11 11-Dec-2019 Derick Montague <derick.montague@ibm.com>

Add singlequote override and fix files

Based on phosphor-webui and JavaScript common practices we are setting
ESLint to required single quote for JS files and double quote for
SCSS files. This commi

Add singlequote override and fix files

Based on phosphor-webui and JavaScript common practices we are setting
ESLint to required single quote for JS files and double quote for
SCSS files. This commit adds the ESLint override to the prettier rules
and runs the npm lint script that fixes the files that violate the
rule.

Signed-off-by: Derick Montague <derick.montague@ibm.com>
Change-Id: I50cba77b2d0797595ce94258029608efa8665005

show more ...


# f3ab8bc8 10-Dec-2019 Derick Montague <derick.montague@ibm.com>

Add compression and remove incompatible plugins

- Add gzip file compression
- Prefetch and preload plugins that add web loading primitives that are
not compatible with our server settings
- Move por

Add compression and remove incompatible plugins

- Add gzip file compression
- Prefetch and preload plugins that add web loading primitives that are
not compatible with our server settings
- Move port to run dev from script flag to vue config file
- Remove sourcemap files from production build

Signed-off-by: Derick Montague <derick.montague@ibm.com>
Change-Id: I8df6ef7a73ad687dc2c7f5db810a221668a1dd01

show more ...


# 6ce1a07c 06-Dec-2019 Yoshie Muranaka <yoshiemuranaka@gmail.com>

Add cookie based login authentication

- Changed POST request data structure to match
backend requirements for set-cookie in response
header
- Added withCredentials property to default
axios co

Add cookie based login authentication

- Changed POST request data structure to match
backend requirements for set-cookie in response
header
- Added withCredentials property to default
axios config
- Modifying proxied response to remove 'Secure' flag
so browser can create Cookie while running locally
- Add logout api request
- Add js-cookie package to manage browser cookies
- Update the babel preset config to include useBuiltIns,
which resolves MIME type errors when overlaying
- Disable vue-router history mode to use routher hash mode
to resolves 404 errors when refreshing certain pages. This
is expected behavior with history mode enabled. Server
configuration changes are required to support HTML5
history mode: https://router.vuejs.org/guide/essentials/history-mode.html#example-server-configurations

Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com>
Signed-off-by: Derick Montague <derick.montague@ibm.com>
Change-Id: I5d43f36ef546962474b6cc8fff89564f29048fde

show more ...


# 74c24f15 03-Dec-2019 Yoshie Muranaka <yoshiemuranaka@gmail.com>

Add proxy dev server for local development

Adding proxy server to vue config to handle API requests
for local development. You need to create a .env.development.local file with
BASE_URL, VUE_APP_USE

Add proxy dev server for local development

Adding proxy server to vue config to handle API requests
for local development. You need to create a .env.development.local file with
BASE_URL, VUE_APP_USERNAME, VUE_APP_PASSWORD defined.

Temporarily adding authentication to defaults until
login flow is functional.

Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com>
Signed-off-by: Derick Montague <derick.montague@ibm.com>
Change-Id: Ib1a1a992508fb9567af66ecb5775638e6ae6ee8d

show more ...


# a2988f40 17-Jan-2020 Derick Montague <derick.montague@ibm.com>

Create basic application using vue

- Create vue app
- Add AppHeader and AppNavigation
- Set up routes for server overview and local user management
- Add themes and set to gray-10 theme
- Add a

Create basic application using vue

- Create vue app
- Add AppHeader and AppNavigation
- Set up routes for server overview and local user management
- Add themes and set to gray-10 theme
- Add active class for current navigation
- Add a prototype method named $http to vue prototype
- The UI uses console logs in production to communicate to users
- Add boostrap vue component library

Change-Id: Ib6618e6357ca01bdac6de4ed031a15c8552226f3
Signed-off-by: Derick Montague <derick.montague@ibm.com>

show more ...