From 46a8744687597176c91c39237dcab39a3643ea61 Mon Sep 17 00:00:00 2001 From: Dixsie Wolmers Date: Wed, 26 Feb 2020 15:26:30 -0600 Subject: Move Firmware version call to use Redfish Updates firmware store to use redfish api for bmc and host firmware version. Signed-off-by: Dixsie Wolmers Change-Id: Ib545d62b5211d141307364c0e45a3462f85e9d90 --- src/store/modules/Configuration/FirmwareStore.js | 61 +++++++++--------------- src/views/Overview/Overview.vue | 11 +++-- 2 files changed, 29 insertions(+), 43 deletions(-) (limited to 'src') diff --git a/src/store/modules/Configuration/FirmwareStore.js b/src/store/modules/Configuration/FirmwareStore.js index 5185a138..b76748f3 100644 --- a/src/store/modules/Configuration/FirmwareStore.js +++ b/src/store/modules/Configuration/FirmwareStore.js @@ -3,52 +3,37 @@ import api from '../../api'; const FirmwareStore = { namespaced: true, state: { - firmwareInfo: null, - bmcActiveVersion: '--', - hostActiveVersion: '--' + bmcFirmwareVersion: '--', + hostFirmwareVersion: '--' }, getters: { - firmwareInfo: state => state.firmwareInfo, - bmcActiveVersion: state => state.bmcActiveVersion, - hostActiveVersion: state => state.hostActiveVersion + bmcFirmwareVersion: state => state.bmcFirmwareVersion, + hostFirmwareVersion: state => state.hostFirmwareVersion }, mutations: { - setFirmwareInfo: (state, firmwareInfo) => - (state.firmwareInfo = firmwareInfo), - setBmcActiveVersion: (state, bmcActiveVersion) => - (state.bmcActiveVersion = bmcActiveVersion), - setHostActiveVersion: (state, hostActiveVersion) => - (state.hostActiveVersion = hostActiveVersion) + setBmcFirmwareVersion: (state, bmcFirmwareVersion) => + (state.bmcFirmwareVersion = bmcFirmwareVersion), + setHostFirmwareVersion: (state, hostFirmwareVersion) => + (state.hostFirmwareVersion = hostFirmwareVersion) }, actions: { - getFirmwareInfo({ commit }) { + getBmcFirmware({ commit }) { api - .get('/xyz/openbmc_project/software/enumerate') + .get('/redfish/v1/Managers/bmc') .then(response => { - const firmwareInfo = response.data.data; - const functionalImages = - firmwareInfo['/xyz/openbmc_project/software/functional'].endpoints; - for (let key in firmwareInfo) { - /** - * If "Functional" activation status is - * functional, else it is "activation" - * github.com/openbmc/phosphor-dbus-interfaces/blob/master/xyz/openbmc_project/Software/Activation.interface.yaml - */ - if (firmwareInfo[key].hasOwnProperty('Version')) { - let activationStatus = ''; - const imageType = firmwareInfo[key].Purpose.split('.').pop(); - if (functionalImages.includes(key)) { - activationStatus = 'Functional'; - } - // Get BMC and Host active Versions - if (activationStatus == 'Functional' && imageType == 'BMC') { - commit('setBmcActiveVersion', firmwareInfo[key].Version); - } - if (activationStatus == 'Functional' && imageType == 'Host') { - commit('setHostActiveVersion', firmwareInfo[key].Version); - } - } - } + const bmcFirmwareVersion = response.data.FirmwareVersion; + commit('setBmcFirmwareVersion', bmcFirmwareVersion); + }) + .catch(error => { + console.log(error); + }); + }, + getHostFirmware({ commit }) { + api + .get('/redfish/v1/Systems/system') + .then(response => { + const hostFirmwareVersion = response.data.BiosVersion; + commit('setHostFirmwareVersion', hostFirmwareVersion); }) .catch(error => { console.log(error); diff --git a/src/views/Overview/Overview.vue b/src/views/Overview/Overview.vue index 5d2ede53..76a062c0 100644 --- a/src/views/Overview/Overview.vue +++ b/src/views/Overview/Overview.vue @@ -11,7 +11,7 @@
{{ $t('pageOverview.firmwareVersion') }}
-
{{ bmcActiveVersion }}
+
{{ bmcFirmwareVersion }}
@@ -50,7 +50,7 @@
{{ $t('pageOverview.firmwareVersion') }}
-
{{ hostActiveVersion }}
+
{{ hostFirmwareVersion }}
@@ -103,8 +103,8 @@ export default { serverManufacturer: state => state.overview.serverManufacturer, serverSerialNumber: state => state.overview.serverSerialNumber, hostName: state => state.global.hostName, - hostActiveVersion: state => state.firmware.hostActiveVersion, - bmcActiveVersion: state => state.firmware.bmcActiveVersion, + hostFirmwareVersion: state => state.firmware.hostFirmwareVersion, + bmcFirmwareVersion: state => state.firmware.bmcFirmwareVersion, powerConsumption: state => state.powerConsumption.powerConsumption, powerCapValue: state => state.powerCap.powerCapValue }), @@ -115,7 +115,8 @@ export default { getOverviewInfo() { this.$store.dispatch('overview/getServerInfo'); this.$store.dispatch('global/getHostName'); - this.$store.dispatch('firmware/getFirmwareInfo'); + this.$store.dispatch('firmware/getBmcFirmware'); + this.$store.dispatch('firmware/getHostFirmware'); this.$store.dispatch('powerConsumption/getPowerData'); this.$store.dispatch('powerCap/getPowerCapData'); } -- cgit v1.2.3