08039ab7 | 26-Jun-2024 |
Sean Zhang <xiazhang@nvidia.com> |
fix reboot BMC error message
Remove getLastBmcRebootTime after post BMC reboot action since BMC connection will be lost after reboot. The last BMC reboot time will be got after reboot BMC page loadi
fix reboot BMC error message
Remove getLastBmcRebootTime after post BMC reboot action since BMC connection will be lost after reboot. The last BMC reboot time will be got after reboot BMC page loading, and after BMC reboot, user need reload the WEB UI, so there is also no need to send Redfish request to get the last BMC reboot time just after the post the BMC reboot action.
Change-Id: Ic5d0cbca23a61610cc387a4046b85e9c20c255ea Signed-off-by: Sean Zhang <xiazhang@nvidia.com>
show more ...
|
db47b7e1 | 12-Jun-2024 |
Sean Zhang <xiazhang@nvidia.com> |
Add support for IPv6 network setting
Add IPv6 setting in network setting page. - Add IPv6 domain name, DNS servers, NTP servers enable/disable - Add DHCPv6 enable/disable - Add IPv6 default gateway
Add support for IPv6 network setting
Add IPv6 setting in network setting page. - Add IPv6 domain name, DNS servers, NTP servers enable/disable - Add DHCPv6 enable/disable - Add IPv6 default gateway - Add IPv6 addresses - Add IPv6 static addresses - Add IPv6 static addresses adding and deleting
Tested: - IPv6 domain name, DNS servers, NTP servers enable/disable function - DHCPv6 enable/disable function - Verified the IPv6 default gateway - IPv6 addresses adding and deleting - Verified the IPv6 addresses in IPv6 table
Change-Id: I9eebf6ef5f7de748f79779d8168b8dcfcdda2495 Signed-off-by: Sean Zhang <xiazhang@nvidia.com>
show more ...
|
8841b7d4 | 15-Jun-2024 |
Sean Zhang <xiazhang@nvidia.com> |
Replace fixed paths with response from API
Currently, the Redfish request used fixed URIs, modify the code to use the BMC and System paths got from response of API calls. For CertificateStore, since
Replace fixed paths with response from API
Currently, the Redfish request used fixed URIs, modify the code to use the BMC and System paths got from response of API calls. For CertificateStore, since it was using the URL for constant variable assignment, changed the constant CERTIFICATE_TYPES to method call.
Change-Id: I330b7272083e3e6993aae5705aae170b8e9a4659 Signed-off-by: Sean Zhang <xiazhang@nvidia.com>
show more ...
|
ccb71f0b | 18-Jun-2024 |
Jagpal Singh Gill <paligill@gmail.com> |
remove setApplyTimeImmediate and its usage
BMCWeb is dropping the support for patch for ApplyOptions, hence remove the setApplyTimeImmediate and its corresponding usage from webui. The related patch
remove setApplyTimeImmediate and its usage
BMCWeb is dropping the support for patch for ApplyOptions, hence remove the setApplyTimeImmediate and its corresponding usage from webui. The related patch from bmcweb is as under - https://gerrit.openbmc.org/c/openbmc/bmcweb/+/72150
Change-Id: I4ef64485103db843e1280bc5b8bd8be63813c368 Signed-off-by: Jagpal Singh Gill <paligill@gmail.com>
show more ...
|
620e6466 | 12-Jun-2024 |
Gunnar Mills <gmills@us.ibm.com> |
Regenerate package-lock.json
rm package-lock.json. Then regenerate package-lock.json using the yocto version of npm, nodejs_20.11.1. [1]
devtool modify -n webui-vue <local webui-vue repo> Then did
Regenerate package-lock.json
rm package-lock.json. Then regenerate package-lock.json using the yocto version of npm, nodejs_20.11.1. [1]
devtool modify -n webui-vue <local webui-vue repo> Then did a build.
This adds the integrity / resolved. It is based on a connectrpc issue[2].
Prefer this solution over 71971[3] due to this using standard NPM.
[1]: https://github.com/openbmc/openbmc/blob/master/meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs_20.11.1.bb
[2]: https://github.com/connectrpc/connect-es/issues/719#issuecomment-1635874082
[3]: https://gerrit.openbmc.org/c/openbmc/webui-vue/+/71971
Tested: A quick sanity test on the GUI works.
Change-Id: I13c098a7d07b2b8fdf3d82c2eaad3f35167757ae Signed-off-by: Gunnar Mills <gmills@us.ibm.com>
show more ...
|
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 ...
|
d7cd12c2 | 28-May-2024 |
Nikhil Ashoka <a.nikhil@ibm.com> |
Fixed filter error in dumps page
- We were calling a method that is not present in @filtered. Fixed this by using the method that is added for this purpose and not used.
Signed-off-by: Nikhil A
Fixed filter error in dumps page
- We were calling a method that is not present in @filtered. Fixed this by using the method that is added for this purpose and not used.
Signed-off-by: Nikhil Ashoka <a.nikhil@ibm.com> Change-Id: I26b4b7d9be00c79c17dba382c0df6a0f02e1cd89
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 ...
|
64a2ee94 | 06-Jun-2024 |
Gunnar Mills <gmills@us.ibm.com> |
CONTRIBUTING.md: Remove link to projects
At https://github.com/openbmc/webui-vue/projects/1 GitHub warns me: "Projects (classic) will be sunset on August 23, 2024".
I don't see a benefit here GitHu
CONTRIBUTING.md: Remove link to projects
At https://github.com/openbmc/webui-vue/projects/1 GitHub warns me: "Projects (classic) will be sunset on August 23, 2024".
I don't see a benefit here GitHub issues can already be filtered.
Change-Id: I3debd3ff7e52bcd408ae0917f52a35539a74a9ef Signed-off-by: Gunnar Mills <gmills@us.ibm.com>
show more ...
|
c45cfe5c | 05-Jun-2024 |
Gunnar Mills <gmills@us.ibm.com> |
Fix CONTRIBUTING.md to pass CI
A new version of prettier is flagging this. Fix the link.
Change-Id: Ibb376bed7472b697c59bcaee75e958a969a72e61 Signed-off-by: Gunnar Mills <gmills@us.ibm.com> |
2b02103f | 22-May-2024 |
aravinths1 <aravinths@ami.com> |
Disabled the privilege dropdown for root user
By allowing root user privilege changes to Operator or Read Only, after login with root user seeing privilege access issues in some pages and not possi
Disabled the privilege dropdown for root user
By allowing root user privilege changes to Operator or Read Only, after login with root user seeing privilege access issues in some pages and not possible to change administrator again.
Allowed root user to change password alone and disabled the privilege changes
Change-Id: I2be93060fb30e1f08dc2ea20a30fb998dc83ee0f Signed-off-by: aravinths1 <aravinths@ami.com>
show more ...
|
b325541c | 22-May-2024 |
aravinths1 <aravinths@ami.com> |
Fixed Scroll top issue between page navigation
After scrolling down a page and navigating from that page to other pages, the page still shows the bottom of the page and does not display the top of t
Fixed Scroll top issue between page navigation
After scrolling down a page and navigating from that page to other pages, the page still shows the bottom of the page and does not display the top of the page.
Scroll behavior added in the router, So when navigating from one page to another page the top of the page will always display.
Change-Id: I883e8a9f6ae3f98846996883cac0961b4c24c62b Signed-off-by: aravinths1 <aravinths@ami.com>
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 ...
|
f11a1901 | 09-May-2024 |
Nikhil Ashoka <a.nikhil@ibm.com> |
Added toast notification for identify LEDs
- Added success toast notification messages for identify LEDs present at Inventory and LEDs page and Overview.
- Import of Toast was not present in Over
Added toast notification for identify LEDs
- Added success toast notification messages for identify LEDs present at Inventory and LEDs page and Overview.
- Import of Toast was not present in Overview's Inventory card and DIMM slot table, fixed it.
Signed-off-by: Nikhil Ashoka <a.nikhil@ibm.com> Change-Id: If9ad84e66f6f15616cb8af51b1e84d8d06b1afd0
show more ...
|
07368136 | 09-May-2024 |
Nikhil Ashoka <a.nikhil@ibm.com> |
Fixed radio buttons arrangement issue
- The contents in the Power restore policies were not listed in a new line for large or extra large screens, Fixed this by using stacked prop.
Signed-off-b
Fixed radio buttons arrangement issue
- The contents in the Power restore policies were not listed in a new line for large or extra large screens, Fixed this by using stacked prop.
Signed-off-by: Nikhil Ashoka <a.nikhil@ibm.com> Change-Id: I30ec1206a929137fc6635d602944cd80d2c2805f
show more ...
|
dfba4e54 | 23-Apr-2024 |
Vedangi Mittal <vedangimittal@vedangis-mbp.in.ibm.com> |
Removed Challenge password option from Generate CSR panel
- Unable to generate Certificate Signing Request (CSR) when filling optional field-Challenge password values on Certificate page. - Hence,
Removed Challenge password option from Generate CSR panel
- Unable to generate Certificate Signing Request (CSR) when filling optional field-Challenge password values on Certificate page. - Hence, removed the Challenge password option from the Generate CSR panel.
Change-Id: I862f024de84f34738be5e5cd22701b63c2309152 Signed-off-by: Vedangi Mittal <vedangimittal3004@gmail.com>
show more ...
|
2b33526c | 11-Apr-2024 |
Paul Fertser <fercerpav@gmail.com> |
Allow to log in when using remote authentication
For accounts authenticated remotely (e.g. with LDAP or RADIUS) the API endpoint (handled by bmcweb) can not provide any information about RoleId curr
Allow to log in when using remote authentication
For accounts authenticated remotely (e.g. with LDAP or RADIUS) the API endpoint (handled by bmcweb) can not provide any information about RoleId currently, reporting 404 instead. This confuses the frontend and it doesn't allow to navigate at all.
Fix this by lifting all frontend-side restrictions by assuming 'Administrator' role in this case. Since the backend verifies validity of each and every request anyway this doesn't affect security anyhow.
Tested: logging in, out and incorrectly using local BMC and remote LDAP users, reloading the page with an active session. In all cases frontend behaved as expected, storing assumed RoleId after getting 404 not found reply and using it for unrestricted routing decisions.
Change-Id: If17d06bf0b8a372acd1980f6777227e25d9c78d8 Signed-off-by: Paul Fertser <fercerpav@gmail.com>
show more ...
|
01492c3d | 20-Apr-2024 |
Ed Tanous <ed@tanous.net> |
Implement response caching
Bmcweb supports the If-None-Match and etag headers on responses. While for static files, we can do a direct set, for responses, there's no way to cache values.
Add cachi
Implement response caching
Bmcweb supports the If-None-Match and etag headers on responses. While for static files, we can do a direct set, for responses, there's no way to cache values.
Add caching support by adding what seems to be a well supported axios package. Note the intent is that the cache expires immediately, such that the bmc will always be polled for results, and return 304 when not modified. Additionally, we currently cache these values in the session context, such that they can be reused on refresh.
Tested: webui loads properly. Upon navigating to a logs page, and back, the network console shows the bmc returning nearly all redfish responses with 304, not modified.
Change-Id: I2e8067a88a0352226db9f987d1508ab5bf266b92 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 ...
|
bceaffac | 10-Apr-2024 |
Paul Fertser <fercerpav@gmail.com> |
Deduplicate and simplify RoleId handling
To improve UX for users of accounts with restricted permissions the frontend determines the current RoleId. Knowing that it can hide menus and inhibit transi
Deduplicate and simplify RoleId handling
To improve UX for users of accounts with restricted permissions the frontend determines the current RoleId. Knowing that it can hide menus and inhibit transitions that are not allowed by the backend in any case.
This patch unifies the handling by moving processing of the API reply containing RoleId in the single place, right where `authentication/getUserInfo` store gets it. This makes the program flow easier to understand and change if needed without worrying of where another copy of the code might be and how it would need to be amended.
No functional change.
Tested: logging in and out, navigating the pages, getting an error message when wrong credentials are used, reloading the page with an established session. All while observing Network and Console tabs in Web Developer tools, no unexpected API requests are made and no unexpected errors reported. Confirmed in debugger that the retrieved role gets stored and used for routing restrictions.
Change-Id: Ia8782f44cb6bf813954d30b8bf3a620a626ad455 Signed-off-by: Paul Fertser <fercerpav@gmail.com>
show more ...
|
51abe87f | 20-Apr-2024 |
Ed Tanous <ed@tanous.net> |
Inline the header svg
Ideally we wouldn't have to pull down this file on every load, and we could just inline it. This commit implements inlining. Note, that this requires a minor modification to
Inline the header svg
Ideally we wouldn't have to pull down this file on every load, and we could just inline it. This commit implements inlining. Note, that this requires a minor modification to the unit test, as the inline header remains when unit tests are run. It's not clear at this time how to make inlining plugin operate on unit tests, but it doesn't seem terribly important.
Tested: Loading the webui no longer shows a download of logo-header
Change-Id: Iaa5be5b5a84e0ad6e1f430113f929032835c9f1c Signed-off-by: Ed Tanous <ed@tanous.net>
show more ...
|
515f4656 | 05-Apr-2024 |
Ed Tanous <ed@tanous.net> |
Remove /subscribe websocket handler
Having this code is causing crashes for implementations that don't have dbus-rest enabled in bmcweb, which is deprecated. This commit is intended to start a disc
Remove /subscribe websocket handler
Having this code is causing crashes for implementations that don't have dbus-rest enabled in bmcweb, which is deprecated. This commit is intended to start a discussion around this issue, and propose simply removing it.
33a8c5369e0253a93dba2e70647bda1c7697b73b (checked in July 2020) points this crash out, and adds a way to disable the feature. While we could just make VUE_APP_SUBSCRIBE_SOCKET_DISABLED the default, this seems ill advised, given the dbus-rest options deprecated status.
Change-Id: I6244f5e2ce895199d5d47cfca9eef36584e8f524 Signed-off-by: Ed Tanous <ed@tanous.net>
show more ...
|
d1ef18e6 | 06-Apr-2024 |
Paul Fertser <fercerpav@gmail.com> |
Focus default action in modal windows
Users of common WIMP GUIs (as opposed to interfaces primarily meant for touch input) expect dialog boxes to have keyboard focus set on the button for default ac
Focus default action in modal windows
Users of common WIMP GUIs (as opposed to interfaces primarily meant for touch input) expect dialog boxes to have keyboard focus set on the button for default action so that it can be executed by a single key press. Usually that is chosen to proceed with the operation but in cases where that leads to data loss the UI designers often pre-select Cancel as a precaution.
This patch adds suitable property to all invocations of msgBoxConfirm() method of `this.$bvModal` BootstrapVue object. For regular actions the confirmation button is selected and can be activated by Enter or Space bar. For actions deemed dangerous Cancel is focused instead so it takes two key presses (first being Tab to shift the focus) to prooceed.
This also improves accessibility following the Web Content Accessibility Guidelines (WCAG) published by W3C.
Tested: manually verified that modals are consistently shown with the specified button focused, Enter and Space bar key presses produce the same effect as left pointer button click: when Cancel is focused it just closes the window, when OK is focused it sends the corresponding request to the Redfish endpoint.
Change-Id: I66bfd02e48e08dc18994b11bbdd5d6b3ea27047f Signed-off-by: Paul Fertser <fercerpav@gmail.com>
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 ...
|