diff options
Diffstat (limited to 'meta-google/recipes-phosphor/ipmi/phosphor-ipmi-config.bbappend')
-rw-r--r-- | meta-google/recipes-phosphor/ipmi/phosphor-ipmi-config.bbappend | 29 |
1 files changed, 21 insertions, 8 deletions
diff --git a/meta-google/recipes-phosphor/ipmi/phosphor-ipmi-config.bbappend b/meta-google/recipes-phosphor/ipmi/phosphor-ipmi-config.bbappend index 58997eedc1..2f2d9e0881 100644 --- a/meta-google/recipes-phosphor/ipmi/phosphor-ipmi-config.bbappend +++ b/meta-google/recipes-phosphor/ipmi/phosphor-ipmi-config.bbappend @@ -1,6 +1,9 @@ FILESEXTRAPATHS:prepend:gbmc := "${THISDIR}/${PN}:" -SRC_URI:append:gbmc = " file://gbmc_bridge.json" +SRC_URI:append:gbmc = " \ + file://gbmc_bridge_config.json \ + file://gbmc_bridge_access.json \ +" DEPENDS:append:gbmc = " jq-native" @@ -10,16 +13,27 @@ ENTITY_MAPPING ?= "default" # Replace a channel in config.json to add gbmcbr reporting do_install:append:gbmc() { - chjson=${D}${datadir}/ipmi-providers/channel_config.json - overlapping="$(jq '."${GBMCBR_IPMI_CHANNEL}" | .is_valid and .name != "gbmcbr"' $chjson)" + config_json=${D}${datadir}/ipmi-providers/channel_config.json + overlapping="$(jq '."${GBMCBR_IPMI_CHANNEL}" | .is_valid and .name != "gbmcbr"' $config_json)" if [ "$overlapping" != "false" ]; then echo "gBMC channel config overlaps on ${GBMCBR_IPMI_CHANNEL}" >&2 - cat $chjson + cat $config_json exit 1 fi - jq --slurpfile brcfg ${WORKDIR}/gbmc_bridge.json \ - '. + {"${GBMCBR_IPMI_CHANNEL}": $brcfg[0]}' $chjson >${WORKDIR}/tmp - mv ${WORKDIR}/tmp $chjson + jq --slurpfile brcfg ${WORKDIR}/gbmc_bridge_config.json \ + '. + {"${GBMCBR_IPMI_CHANNEL}": $brcfg[0]}' $config_json >${WORKDIR}/tmp + mv ${WORKDIR}/tmp $config_json + + access_json=${D}${datadir}/ipmi-providers/channel_access.json + overlapping="$(jq '."${GBMCBR_IPMI_CHANNEL}" | .access_mode and .access_mode != "always_available"' $access_json)" + if [ "$overlapping" != "false" ]; then + echo "gBMC channel access overlaps on ${GBMCBR_IPMI_CHANNEL}" >&2 + cat $access_json + exit 1 + fi + jq --slurpfile brcfg ${WORKDIR}/gbmc_bridge_access.json \ + '. + {"${GBMCBR_IPMI_CHANNEL}": $brcfg[0]}' $access_json >${WORKDIR}/tmp + mv ${WORKDIR}/tmp $access_json # Set entity-map.json to empty json for gBMC by default. # Each system will override it if needed. @@ -27,4 +41,3 @@ do_install:append:gbmc() { echo "[]" > ${D}${datadir}/ipmi-providers/entity-map.json fi } - |