Age | Commit message (Collapse) | Author | Files | Lines |
|
Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com>
Change-Id: I19f34986e05298a42f1739632a5786d03371e47c
|
|
Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com>
Change-Id: I6d44e1326b2cf697bf1f20e4e10ccd68e4681c66
|
|
Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com>
Change-Id: I47ef77dda6b348c854e875aa458acfa44e287c49
|
|
Adds ability to add, edit, and delete RemoteRoleMapping
objects from the GUI.
Role group table functionality includes sort, single row
edit and delete, and batch delete.
Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com>
Change-Id: Id9168c90b78a6f4090ab0ab3e37e74b8cd821d54
|
|
Hostname is available in NetworkSettingsStore using
redfish api.
Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com>
Change-Id: I26c26281ca8d9003d2daaed13d6bbd4db6ed700c
|
|
Use /redfish/v1/Systems/system Redfish endpoint to get
host status from PowerState property.
Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com>
Change-Id: Ied2e70d5e26eb820d41d6b63acdded237f7646a4
|
|
Adds ability to enable LDAP service and modify LDAP and
ActiveDirectory properties.
Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com>
Change-Id: I59d65bba7f6fe321af395227ce2f7188d9c006b7
|
|
Get roles on local user management privilege dropdown
from /redfish/v1/AccountService/Roles instead of hard-coded
values.
Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com>
Change-Id: I00409b17fc1a2a49b880883749c0241e0aae283e
|
|
Changed OverviewStore call from D-Bus to redfish to get
server model, serial number, and manufacturer info.
Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com>
Change-Id: Ia0a0a87f1199b2e64d2bb501a719063a01a8aea4
|
|
Change getBmcTime call from D-Bus to redfish endpoint
in GlobalStore module.
Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com>
Change-Id: I3c459d6bf40a778d5e03d112c12e45ad8554c141
|
|
Adds ability to generate, then download or copy a CSR from the GUI
- Import FormTagsPlugin to use for alternate names field
Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com>
Change-Id: I060e8d7917a79dafbfb67c758f5baa4a36ab86ae
|
|
Adds status icons in data table and alert banners for
expiring and expired certificates.
Warning will be visible within 30 days of certificate
expiration.
Critical/danger indicators will be visible when certificate
is expired.
Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com>
Change-Id: I6f8c27d4ba1563a79b46eec7b869366ecee42f75
|
|
Adds ability to view, add, replace, and delete SSL
certificates in GUI.
Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com>
Change-Id: I5cf9fa7bbd588dfb22f2431eed0b5976ff860703
|
|
Adds ability to manually unlock user account if account
service settings lockout duration set to 0.
Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com>
Change-Id: I75351c5e03bd5403e8dc7679d8d98b90adb90277
|
|
- Update api calls to use Redfish
- Add column sort to name and status columns
- Set default table sort to status column
- Added lodash package
Github story: https://github.com/openbmc/webui-vue/issues/4
Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com>
Change-Id: Ic6e76107475fbf5fb34deb01a4de4a4a9ccfeabf
|
|
- Update authError to be set to false in order to hide the error
message when the user logs in. This is needed if the user name
or password are incorrect multiple times. If it is not hidden
between login attempts, the user will only be notified on the
first attempt.
- Use the b-form-group component for consistency.
- Add id attributes to the required field error messages so that
the error can be added to the input field's aria-describedby attribute
Signed-off-by: Derick Montague <derick.montague@ibm.com>
Change-Id: I86902cc2c85b3bbf156c2920ec2031ee4dccd2ef
|
|
Added BootSettingsStore and component to handle changing boot
source, boot override option and TPM required option.
Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com>
Change-Id: I885dd6008aceb34b319953a2e9b6416d848baf16
|
|
Replaces power cap store and power consumption store with power control store
and uses redfish.
Signed-off-by: Dixsie Wolmers <dixsie@ibm.com>
Change-Id: I5cce223da17373bcae3e7c6736a4580e1bd8ae00
|
|
Add route, component and Control requests to enable
power operations (power on, soft and hard reboot, soft
and hard power off).
This rewrite includes updates to use Redfish endpoints.
Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com>
Change-Id: I54784b8cc1b6260e44e708c260ea4a531fc0a629
|
|
Updates firmware store to use redfish api for bmc and host firmware
version.
Signed-off-by: Dixsie Wolmers <dixsie@ibm.com>
Change-Id: Ib545d62b5211d141307364c0e45a3462f85e9d90
|
|
Uninstalls vue-date-fns and uses toLocaleDateString() method to
return formatted date and time.
Date language is set by i18n and time/timezone is formatted by
browser locale.
Uses vue filter to format date and time as:
- short month, day, year, time and timezone
- 'en' example: Feb 23, 2020, 3:40:25 PM CST
- 'es' example: 25 feb 2020 14:23:36 GMT-6
- hour12 value is determined by browser default
Signed-off-by: Dixsie Wolmers <dixsie@ibm.com>
Change-Id: I4fe8c51f5437cef263f1e0ea4184c0b552c85f4d
|
|
Restructure language file to use consistent pattern
across pages following loose guidelines.
- Create buckets for common global labels
- Create common component objects–appHeader, appNavigation,
appPageTitle
- Page specific labels should be nested in an object with a
key prefixed with 'page' followed by the page title
- Any 'major' child components should be nested inside page
specific objects
- Avoid any complex linked locale messages
- Alphabetize object keys, alphabetize nested properties at
end of object block
Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com>
Change-Id: Ie4222b3ce24dec7af31b55b5a77425ca2f492789
|
|
Adds ability to change account LockoutThreshold and
LockoutDuration properties from the GUI.
Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com>
Change-Id: Ieeb75aa83c07b3de840bccdfc28e2d6e87512e2e
|
|
- Make api call to get user account settings
- Update add/edit user form to include dynamic password
requirement values
- Fix edit username bug by adding input listener to field
that sets form control to $dirty state and adds
property to PATCH request
Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com>
Change-Id: I3535f4214ee12c95d5e502134bf3e36597d2421a
|
|
- Convert events list group to bootstrap table
- Add ethernet interfaces to overview using redfish
Signed-off-by: Dixsie Wolmers <dixsie@ibm.com>
Change-Id: I633f03ba4a65358861664a869b35adf5358c45e6
|
|
- Create TableToolbar component for table batch actions
- Added Toast warning type and toast title message translations
- Update vue-i18n package to latest v8.15.3 to use improved
pluarlization features
Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com>
Change-Id: I455beba4f56b8209b1201bbc5ff3f616e960d189
|
|
Created a ControlStore with the intention to consolidate actions
across multiple subnav pages under the 'Control' tab, instead of
creating a dedicated RebootBmc store with one action.
- Update PageSection component to make sectionTitle prop optional
- Changed PageTitle computed property to data since the value
doesn't change during the component lifecycle
- Change PageSection <section> element to <div> to avoid
accessibility issues
Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com>
Change-Id: I2877e2a7b9bfee245c48d52c70859978b74be7f3
|
|
- Power cap and power consumption state is translated
in the store
- Static overview text is translated in the template
Signed-off-by: Dixsie Wolmers <dixsie@ibm.com>
Change-Id: I9463072e38c82b4660743ba9785a606ef1c69eae
|
|
Added logging path and interface to websocket subscription
data filter, to dynamically indicate Health status in the
app header.
- Update OverviewEvents to use highPriorityEvents data
- Refactor EventLogStore
Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com>
Change-Id: I35ad30b005c70625a5f6a69488d45db0fa049374
|
|
Remove the authError state property from the logout mutation
since the the authError would not be in the true state after
a successful login.
Signed-off-by: Derick Montague <derick.montague@ibm.com>
Change-Id: Ibfe8b07c4e9e37dfab4435596c12e9a36556a714
|
|
Include boostrap toast component to communicate success
and error requests on the local user management page.
- Created BVToastMixin to share initialization options
- Used async/await pattern to make sure toasts are shown
after asynchronous calls are complete
- Followed current AngularJS pattern of manual dismiss for
error toast and automatic dismiss for success toast
Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com>
Change-Id: I5d5c037b5f41781972106fb5e9a2096cc72c39ab
|
|
Resubmitting after reverted–original commit here
https://gerrit.openbmc-project.xyz/c/openbmc/webui-vue/+/28790
- Add BVConfig plugin to modify boostrap component
defaults
- Add vuelidate
- Add package and basic validations to user form
- Add all user form validations
- Add checks for edit user
- Create VuelidateMixin for shared methods
- Update Login to use Vuelidate
Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com>
Signed-off-by: Derick Montague <derick.montague@ibm.com>
Change-Id: Ib50ee4d1fb5f14637c9460e77f0682869a86ac8a
|
|
- Sending incorrect credentials returns a 401 and we don't want the page
to redirect if we are trying to login. Wrapped the redirect in an if
block.
- Returning a promise used by the logout action, which is needed
when not redirecting the page. Didn't add to the if block since
other errors that use the router to redirect will need the Promise
returned also, e.g. 403.
Signed-off-by: Derick Montague <derick.montague@ibm.com>
Change-Id: I6db706ef7c71ed13baed95dc4264e6ae11d13ad3
|
|
This is a simple solution that is in parity with the current BMC
functionality. Once we have mapped permissions, we can create a more
elegant solution.
Signed-off-by: Derick Montague <derick.montague@ibm.com>
Change-Id: Id3ea36ba812462be04a450f84f98d0237d6c7c3d
|
|
Signed-off-by: Derick Montague <derick.montague@ibm.com>
Change-Id: I58609486956239d90a0dfec630f249dc3fa28ea2
|
|
- Update overview page to get data from store
Signed-off-by: Dixsie Wolmers <dixsie@ibm.com>
Signed-off-by: Derick Montague <derick.montague@ibm.com>
Change-Id: Id2fcad660efc0da5c7b878e872355bf5773c7ed7
|
|
- 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
|
|
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
|
|
- 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
|
|
- Add, edit, delete user basic functionality complete
- Rename components and creating separate modal components
- Update button styles to match design and included icons
- Update grid layout to use container with max width set
- Add aria labels to table action buttons
- Refactor LocalUserManagementStore
Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com>
Signed-off-by: Derick Montague <derick.montague@ibm.com>
Change-Id: Iab31ccabeb5a53ec03dc3ce3949fb20ded1ffbcf
|
|
- Add AuthenticationStore
- Add ability to login and logout
- Add route navigation guard
- Add login styles
- Add temporary authentication for api call
- Add Login directory
- Add index.js
In order to login a .env.development.local file that contains
BASE_URL="https://<ip address> or <FQDN>"
Signed-off-by: Derick Montague <derick.montague@ibm.com>
Change-Id: I88b93e287e66f4bae82a1ec2934cdef12d78264e
|
|
Create a GlobalStore to store global variables,
including data in app header.
Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com>
Signed-off-by: Derick Montague <derick.montague@ibm.com>
Change-Id: Id498dec3925feec9a7e31ede91328f89ae591a0b
|
|
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
|
|
- Add Bootstrap out of box table component
- Import layout plugin
- Add user role privilege table
- Add local user modals
- Add inline table actions
- Add local user store
- Add Axios requests
Initial setup to use Vuex store for local user
management page. For now using a timeout to
fake fetching async data. Data flow is working
between store and component.
Using Axios in very unrefined way, just to get some
API requests going. Simple user request working if
base, username, password variables defined.
Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com>
Signed-off-by: Derick Montague <derick.montague@ibm.com>
Change-Id: I3b0d757857268feff32c6bec1c3fd95c302a568f
|
|
- 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>
|