| a5dbf55f | 13-Jan-2025 |
Huy Le Anh <hule@amperecomputing.com> |
Boot settings: remove oneTimeBootEnabled check
The commit [1] added oneTimeBootEnabled as condition to display he Boot settings menu. It is not reasonable as the option is disabled by default [2] an
Boot settings: remove oneTimeBootEnabled check
The commit [1] added oneTimeBootEnabled as condition to display he Boot settings menu. It is not reasonable as the option is disabled by default [2] and users can configure for a selected boot option to be applied once or permanent. This commit removes the check so that the menu is displayed when the boot source option is supported.
Tested: 1. Log in to BMC Web and go to the server-power-operations page 2. The boot settings options are shown.
[1]: https://github.com/openbmc/webui-vue/commit/918526f20c16a05c261a56814657942a707323dd
[2]: https://github.com/openbmc/openbmc/blob/f8b0a12a3781e1f771630cad1244016b1ed6f8cd/meta-phosphor/recipes-phosphor/settings/phosphor-settings-manager/boot_type.override.yml#L19
Change-Id: I1efd2ae0c201744076e3fb00229c81847e940687 Signed-off-by: Huy Le Anh <hule@amperecomputing.com>
show more ...
|
| 85b2d315 | 12-Nov-2024 |
Shane Lin <hslin@nvidia.com> |
Rename host firmware to bios firmware
Problem: - Host firmware naming was inconsistent with actual functionality
Changes: - Rename hostFirmware to biosFirmware in store - Update component names and
Rename host firmware to bios firmware
Problem: - Host firmware naming was inconsistent with actual functionality
Changes: - Rename hostFirmware to biosFirmware in store - Update component names and references - Modify i18n translation keys
Tested: - Verified store mutations/actions - Confirmed component rendering - Checked i18n translations - npx eslint without error related to 'host'
Change-Id: Ib97e4682f649d4a52f65e69df50422d84f23e916 Signed-off-by: Shane Lin <hslin@nvidia.com>
show more ...
|
| 6e53b14b | 21-Jan-2025 |
Paul Fertser <fercerpav@gmail.com> |
Fix Vue3 i18n compatibility for Dumps pages
This follows 883a0d597962dfd30d6c48319b8b33e2d0f98606 approach when the Dumps code was somehow missed during the refactoring.
The change fixes operation
Fix Vue3 i18n compatibility for Dumps pages
This follows 883a0d597962dfd30d6c48319b8b33e2d0f98606 approach when the Dumps code was somehow missed during the refactoring.
The change fixes operation for the page showing list of dumps, before it was blank due to an exception.
Change-Id: I49daa4fdaea1e8d98e4964acff9cb0bda5d8d573 Signed-off-by: Paul Fertser <fercerpav@gmail.com>
show more ...
|
| 223fe5b5 | 17-Jan-2025 |
Tan Siewert <tan@siewert.io> |
inventory: move serial console to system
SerialConsole was deprecated in Manager v1_10_0 and has been removed in bmcweb [1].
Because the SerialConsole values were not available anymore, the Manager
inventory: move serial console to system
SerialConsole was deprecated in Manager v1_10_0 and has been removed in bmcweb [1].
Because the SerialConsole values were not available anymore, the Managers were not displayed because "setBmcInfo" couldn't find the "SerialConsole" properties. THe following error will be logged:
``` TypeError: Cannot read properties of undefined (reading 'ConnectTypesSupported') at Wa.setBmcInfo (app.25e72670.js:58:745295) at app.25e72670.js:50:2774 at app.25e72670.js:50:10113 at Array.forEach (<anonymous>) at app.25e72670.js:50:10092 at Wa._withCommit (app.25e72670.js:50:11953) at Wa.commit (app.25e72670.js:50:10066) at Wa.commit (app.25e72670.js:50:9518) at o.commit (app.25e72670.js:50:2216) at app.25e72670.js:58:745747 ```
[1]: https://github.com/openbmc/bmcweb/commit/fa800c8a141aa4b209269e0fb50cae34aa24f75d
Tested: BMC manager being listed in the inventory and serial console variables being displayed for the system.
Change-Id: I1a24178717805ca50eef2c89042c0bd9ede1d5bc Signed-off-by: Tan Siewert <tan@siewert.io>
show more ...
|
| a6becfe1 | 13-Jan-2025 |
Glukhov Mikhail <mikl@greenfil.ru> |
Remove deprecated % signs from `vue-i18n` formatting
Starting with version 10 of the `vue-i18n` package, using % signs in format strings is considered deprecated. This change removes all occurrences
Remove deprecated % signs from `vue-i18n` formatting
Starting with version 10 of the `vue-i18n` package, using % signs in format strings is considered deprecated. This change removes all occurrences of % signs from the source code
Change-Id: I0b3057cfc74576bc8b03196437b9879652d26132 Signed-off-by: Glukhov Mikhail <mikl@greenfil.ru>
show more ...
|
| 753c410d | 13-Jan-2025 |
Glukhov Mikhail <mikl@greenfil.ru> |
Fix: Resolve Content Security Policy issue in vue-i18n
The web page stopped loading due to a Content Security Policy violation error caused by the use of the "new Function" construct in vue-i18n ver
Fix: Resolve Content Security Policy issue in vue-i18n
The web page stopped loading due to a Content Security Policy violation error caused by the use of the "new Function" construct in vue-i18n version 9.13.1. Upgrading to vue-i18n version 10.0.5 resolves this issue
Change-Id: I57fa72a4ee8edc282a122e42358a77e254c7943f Signed-off-by: Glukhov Mikhail <mikl@greenfil.ru>
show more ...
|
| b2ca5a5a | 04-Dec-2024 |
Huy Le Anh <hule@amperecomputing.com> |
Fix date format regex check
The regex formula for formatting dates is no longer correct after upgrading to Vue3. This commit corrects it by adding a `$` sign to the end of the date pattern to avoid
Fix date format regex check
The regex formula for formatting dates is no longer correct after upgrading to Vue3. This commit corrects it by adding a `$` sign to the end of the date pattern to avoid wrongly validate date in wrong format.
Tested: 1. Log in to BMC Web and go to the date-time setting 2. Click "Manual" to fill Date field with the following format: 2025-06-112 3. Can't save and show "Invalid format"
Change-Id: Ia1ff1e9cc9885772e6145732dab177949be60969 Signed-off-by: Huy Le Anh <hule@amperecomputing.com>
show more ...
|
| 0c1dcc96 | 19-Nov-2024 |
Huy Le Anh <hule@amperecomputing.com> |
Use the createWebHashHistory method to avoid 404 errors
When using createWebHistory method in Vue 3, we may encounter a 404 error when reloading a page or accessing a specific URL directly due to a
Use the createWebHashHistory method to avoid 404 errors
When using createWebHistory method in Vue 3, we may encounter a 404 error when reloading a page or accessing a specific URL directly due to a server configuration that does not properly support HTML5 history, references at [1] and [2]. Switching to createWebHashHistory method avoids a 404 error when reloading a page, as it doesn't require a server configuration to handle navigation. By using the # sign in the URL, the browser processes everything after the # sign without sending it to the server, which helps maintain the application state smoothly when reloading the page.
Tested: 1. Go to the Obmc web page. 2. Switch between different pages. 3. Reload the website by pressing the reload button on the web browser. 4. The Obmc web page reloads normally, without any errors 5. Go to the KVM page and press "Open In New Tab"; the new KVM screen window displays normally, without 404 error. 6. Go to the SOL page and press "Open In New Tab"; the new SOL screen window displays normally, without 404 error.
[1]: https://router.vuejs.org/guide/essentials/history-mode.html [2]: https://stackoverflow.com/questions/66514813/error-404-on-page-reload-with-vue3-routing
Change-Id: I6f4dbd2b27888c852b627d74471671352ee43a39 Signed-off-by: Huy Le Anh <hule@amperecomputing.com>
show more ...
|
| ee728e69 | 26-Dec-2024 |
suryav9724 <suryav@ami.com> |
Timeout duration error in account policy setting
On user management page fix the error while save the account policy settings with the automatic after timeout.
while changing the timeout duration t
Timeout duration error in account policy setting
On user management page fix the error while save the account policy settings with the automatic after timeout.
while changing the timeout duration the value is in string but the payload should be integer.
Add the parseInt in the timeout duration value while save the account policy settings with the automatic after timeout.
Change-Id: I69ab13af3fd34e4128d3f01b71b0ffd092fe9a06 Signed-off-by: suryav9724 <suryav@ami.com>
show more ...
|
| 20ce44a5 | 02-Dec-2024 |
Shubhi Garg <shgarg@nvidia.com> |
refresh notifications upon "refresh" button click
Problem: Clicking on Refresh button present on UI top panel does not refresh active notifications or toast messages. Only success notifications gets
refresh notifications upon "refresh" button click
Problem: Clicking on Refresh button present on UI top panel does not refresh active notifications or toast messages. Only success notifications gets hidden automatically after 10s, error, info notifications remains active on UI even after refresh webui.
Solution: Clear all types of active toast messages upon refresh click.
Changes: In refresh method, using querySelectorAll on document object and for each toast currently active, call bvToast.hide to clear.
Change-Id: I47ba416a6b8e8e9872b4b4867abf96bbbef7c0f1 Signed-off-by: Shubhi Garg <shgarg@nvidia.com>
show more ...
|
| c1567299 | 07-Sep-2024 |
jason westover <jwestover@nvidia.com> |
Update to api function for MessageID
Update to api function for MessageIDs - PaswordChangeRequired
This patch is just a small tweak while still assuming the current X.Y.Z version format. When searc
Update to api function for MessageID
Update to api function for MessageIDs - PaswordChangeRequired
This patch is just a small tweak while still assuming the current X.Y.Z version format. When searching for a standard Registry string from @Message.ExtendedInfo -which is an array of Message objects-, we should stick to the default namespace. For example, if someone added OpenBMC.0.5.0.PaswordChangeRequired it could be erroneous to assume that it has the same meaning, since semantically it is a different message. For our use, trying to do something useful with version portion seems problematic, so I am fine with ignoring them as already done with code being updated here.
The search function has been made generic to allow reuse, and some IntelliSense sugar was added.
Tested, as Paul documented: Tested: logging in, navigating, logging out with non-expired password. Logging in, navigating, then running `passwd -e <accountname>` via ssh leads to functional password change page on the next request and then navigating proceeds normally, and logging out too. If password is expired before logging in the user gets redirected to the password change page automatically after logging in.
Change-Id: I306ace2024efea13f25e24528a048d0955b2f95b Signed-off-by: j-westover <jwestover@nvidia.com>
show more ...
|
| b4498672 | 16-Nov-2024 |
HuyLe <hule@amperecomputing.com> |
Fix the KVM terminal screen not displaying
During the upgrade to Vue 3 [1], the initialization of the selector, including the definitions of height, display type, background, overflow, etc., was ign
Fix the KVM terminal screen not displaying
During the upgrade to Vue 3 [1], the initialization of the selector, including the definitions of height, display type, background, overflow, etc., was ignored, resulting in the KVM screen not displaying the terminal interface. This commit helps to import these properties for the KVM from the _kvm.scss file to fix bug [2].
Tested: 1. Go to the OBMC web page. 2. Go to the KVM page and check that it works normally 3. By minifying and zooming in on the web browser, the KVM screen adjusts automatically. 4. Switch between different pages. 5. Return to the KVM page and check that it works normally.
[1]. https://github.com/openbmc/webui-vue/blob/master/src/App.vue#L38 [2]. Bug: https://github.com/openbmc/webui-vue/issues/128
Change-Id: I1842c914e27dd5c68fe20f49999712b68c1e93a5 Signed-off-by: Huy Le Anh <hule@amperecomputing.com>
show more ...
|
| ce7db82c | 05-Jul-2024 |
Paul Fertser <fercerpav@gmail.com> |
Retrieve role information the Redfish standard way
Currently webui-vue has a hardcoded list of pages and sidebar menu items restricted to a specific Redfish role (from a predefined default set). To
Retrieve role information the Redfish standard way
Currently webui-vue has a hardcoded list of pages and sidebar menu items restricted to a specific Redfish role (from a predefined default set). To disallow navigating to restricted pages and to hide disallowed menu items the application needs to know the roles assigned to the session.
bmcweb only implements a single role identity per session so the Roles array returned within a Session object always has just one element.
This patch changes the mechanism used to retrieve the current role from buggy direct query to AccountService (which can only return information about BMC local users) to extracting it from standard Redfish Session object.
In case the role is not available (e.g. when backend implementation predates #Session.v1_7_0.Session) the application assumes Administrator role which is meant as a best effort to continue working given the circumstances. This doesn't pose a security risk because all validation is always performed by the backend itself, so the worst that can happen is end user getting error messages trying to access something without enough privileges.
Tested: logging in and out of accounts with different roles without reloading the page, observing the list of queries made, the role variable assignments and presence of the menu items depending on account, navigating to different pages. Also tested reloading the page and confirmed the correct role was retrieved without going through login again. Also tested deleting and mangling localStorage variable sessionURI prior to doing page reload, in those cases redirect to login page was observed.
Change-Id: I8b6c84060a987489cc1d35c46c1b00618a88b607 Signed-off-by: Paul Fertser <fercerpav@gmail.com>
show more ...
|
| 918526f2 | 19-Sep-2024 |
Shubhi Garg <shgarg@nvidia.com> |
Fix power operations as per DMTF redfish spec
[Problem Description]:
1) Power Operations page uses "Orderly" and "Immediate" strings for "Graceful reboot/shutdown" and "Force reboot/shutdown". Thes
Fix power operations as per DMTF redfish spec
[Problem Description]:
1) Power Operations page uses "Orderly" and "Immediate" strings for "Graceful reboot/shutdown" and "Force reboot/shutdown". These names do not align according to redfish spec and causes user confusion.
2) For boot settings, if "BootSourceOverrideEnabled" flag is false, WebUI allows to modify boot options.
[Changes]:
1) Changed reboot/shutdown naming convention as per DMTF redfish spec to view correct names on WebUI.
2) Added info-tooltip to give detailed information on Reboot/Shutdown options. Information is referenced from: https://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/ResetType
3) Added "oneTimeBootEnabled" condition check to render BootSettings if condition is true. "oneTimeBootEnabled" checks BootSourceOverrideEnabled flag, if true then BootSettings will be able to modify boot options.
[Testing]: 1) Load WebUI with the changes and go to Power operations page. 2) Check reboot shutdown names have changes to Graceful reboot/shutdown" and "Force reboot/shutdown". 3) Check if BootSettings template renders as expected.
Change-Id: I5a86e05ee03167ebb93ffd381af3a47c277990fd Signed-off-by: Shubhi Garg <shgarg@nvidia.com>
show more ...
|
| 825059ac | 04-Oct-2024 |
Surya Venkatesan <suryav@ami.com> |
i18n fix after vue3 merge to master
Fix i18n issue in the Power restore policy, Inventory LEDs, and User management page.
After merge the vue3 code to master the i18n Power restore policy, Inventor
i18n fix after vue3 merge to master
Fix i18n issue in the Power restore policy, Inventory LEDs, and User management page.
After merge the vue3 code to master the i18n Power restore policy, Inventory LEDs, and User management page got conflicts and old code retrieved in master. So unable to render the Power restore policy, Inventory LEDs and unable to disable the user in user management page
change the i18n.t method to i18n.global.t for the vue3 support.
Change-Id: I46f3f56632308ceaee321dd896e16e922d964b60 Signed-off-by: Surya Venkatesan <suryav@ami.com>
show more ...
|
| 1b89e594 | 25-Sep-2024 |
Surya Venkatesan <suryav@ami.com> |
Date and time page helper issue
Invalid feedback element if condition change, Helper import change in date time page and table date filter global component.
Change-Id: I1f01943229b78d4dff36f3905fe3
Date and time page helper issue
Invalid feedback element if condition change, Helper import change in date time page and table date filter global component.
Change-Id: I1f01943229b78d4dff36f3905fe3781ba696d528 Signed-off-by: Surya Venkatesan <suryav@ami.com>
show more ...
|
| 69be824a | 23-Sep-2024 |
Surya Venkatesan <suryav@ami.com> |
Invalid feedback if condition change
For required, invalid format, minlength, maxlength, date, pattern validation if condition change in the few components
Change-Id: Id8eebc140301e48dde833a604ca92
Invalid feedback if condition change
For required, invalid format, minlength, maxlength, date, pattern validation if condition change in the few components
Change-Id: Id8eebc140301e48dde833a604ca92426ebf77c9c Signed-off-by: Surya Venkatesan <suryav@ami.com>
show more ...
|
| 1a814b9f | 23-Sep-2024 |
Surya Venkatesan <suryav@ami.com> |
LDAP and server power operation page fix
In LDAP loading declare outside the form, form validation condition change, server power operation page validation added and i18n method changed in the event
LDAP and server power operation page fix
In LDAP loading declare outside the form, form validation condition change, server power operation page validation added and i18n method changed in the event log store.
Change-Id: I903b4dec7da1a5a2cc8441c65693c57201405d70 Signed-off-by: Surya Venkatesan <suryav@ami.com>
show more ...
|
| f1ccca3f | 23-Sep-2024 |
Surya Venkatesan <suryav@ami.com> |
Factory reset modal popup and validation issue
In vue3 i18n is not return the object value from the locale, so unable to do the for loop in Setting list. Remove the for loop and implement the separa
Factory reset modal popup and validation issue
In vue3 i18n is not return the object value from the locale, so unable to do the for loop in Setting list. Remove the for loop and implement the separate list for reset bios and reset to default. And implement the useVuelidate in the factory reset page.
Change-Id: I10833742475b90f7c5349a5b995ff04e93c306de Signed-off-by: Surya Venkatesan <suryav@ami.com>
show more ...
|
| 4b89b043 | 19-Sep-2024 |
Surya Venkatesan <suryav@ami.com> |
Locale gets undefined in the login page
While use i18n.locale it is undefined so those pages use the storedLanguage that page gets failed to load.
Change-Id: I11b45f42d06bb355f561d5c1e93f7516775b1c
Locale gets undefined in the login page
While use i18n.locale it is undefined so those pages use the storedLanguage that page gets failed to load.
Change-Id: I11b45f42d06bb355f561d5c1e93f7516775b1c81 Signed-off-by: Surya Venkatesan <suryav@ami.com>
show more ...
|
| 4626aec4 | 19-Sep-2024 |
Surya Venkatesan <suryav@ami.com> |
Network page validation and i18n issue fix
In network page invalid if condition changed, added validations and i18n function changed based on the vue 3 support.
Change-Id: If5b9c00f6da722984f1c568c
Network page validation and i18n issue fix
In network page invalid if condition changed, added validations and i18n function changed based on the vue 3 support.
Change-Id: If5b9c00f6da722984f1c568cfbcb6b34537c3df1 Signed-off-by: Surya Venkatesan <suryav@ami.com>
show more ...
|
| 00355b65 | 12-Sep-2024 |
Surya Venkatesan <suryav@ami.com> |
Firmware page vuelidate and form file error fix
While add a file in the form file vuelidate error occurs and global component form file not return a file, by emit the $event in form file fix the iss
Firmware page vuelidate and form file error fix
While add a file in the form file vuelidate error occurs and global component form file not return a file, by emit the $event in form file fix the issue.
Change-Id: Icbeddc7a3faa262f12e85268206ae70950f37905 Signed-off-by: Surya Venkatesan <suryav@ami.com>
show more ...
|
| 6923c46d | 05-Jul-2024 |
Paul Fertser <fercerpav@gmail.com> |
Handle expired passwords Redfish standard way
A password can expire at any moment during session lifetime and bmcweb starts returning 403 Forbidden errors to the requests made after that. The respon
Handle expired passwords Redfish standard way
A password can expire at any moment during session lifetime and bmcweb starts returning 403 Forbidden errors to the requests made after that. The response contains clear indication of the condition in the standard `@Message.ExtendedInfo` attribute which is an array of Message objects.
Previously the code was trying to detect this condition by querying AccountService after logging in but this approach doesn't work when password expires mid-session. Also it was limited to BMC-managed accounts and used hardcoded account URIs in violation of Redfish spec.
This patch adds to the interceptor of 403 error so that the user is automatically redirected to the password change page as soon as the condition is detected.
The same message is also present in the session creation POST response 201 if the password expired before the log in attempt, in this case the session is created as usual but the user is automatically redirected to password change page before any further requests are made.
Tested: logging in, navigating, logging out with non-expired password. Logging in, navigating, then running `passwd -e <accountname>` via ssh leads to functional password change page on the next request and then navigating proceeds normally, and logging out too. If password is expired before logging in the user gets redirected to the password change page automatically after logging in.
Fixes: https://github.com/openbmc/webui-vue/issues/118 Change-Id: I03f5ee2526a4bb1d35d3bbea1142fea077d6bfed Signed-off-by: Paul Fertser <fercerpav@gmail.com> Signed-off-by: Surya Venkatesan <suryav@ami.com>
show more ...
|
| 90300e9f | 01-Aug-2024 |
Surya Venkatesan <suryav@ami.com> |
Add user validation in user management page
helpers and sameAs validations are not working in vue3 so the helpers and sameAS are imported from vuelidate/lib/validators. Invalid validation field like
Add user validation in user management page
helpers and sameAs validations are not working in vue3 so the helpers and sameAS are imported from vuelidate/lib/validators. Invalid validation field like required are not show so the if condition for invalid feedback alert field changed. Add user and delete user are working in the user management page.
Change-Id: I0133e02357048ffbc6206382b2a0a5c162e2384d Signed-off-by: Surya Venkatesan <suryav@ami.com>
show more ...
|
| 47bf8551 | 11-Jun-2024 |
Nikhil Ashoka <a.nikhil@ibm.com> |
Removed TFTP code update option
- Removed TFTP server firmware update ability in the UI.
Signed-off-by: Nikhil Ashoka <a.nikhil@ibm.com> Signed-off-by: Surya Venkatesan <suryav@ami.com> Change-Id:
Removed TFTP code update option
- Removed TFTP server firmware update ability in the UI.
Signed-off-by: Nikhil Ashoka <a.nikhil@ibm.com> Signed-off-by: Surya Venkatesan <suryav@ami.com> Change-Id: Icbeddc7a3faa262f12e85268206ae70850f37905
show more ...
|