#!/bin/bash DBUS_PROPERTIES_INTF_NAME="org.freedesktop.DBus.Properties" set_host_state() { BUS_NAME="xyz.openbmc_project.State.Host$1" OBJ_PATH="/xyz/openbmc_project/state/host$1" INTF_NAME="xyz.openbmc_project.State.Host" PROPERTY_NAME="CurrentHostState" PROPERTY_VAL="xyz.openbmc_project.State.Host.HostState.$2" busctl call "$BUS_NAME" "$OBJ_PATH" "$DBUS_PROPERTIES_INTF_NAME" Set ssv "$INTF_NAME" "$PROPERTY_NAME" s "$PROPERTY_VAL" } set_chassis_state() { BUS_NAME="xyz.openbmc_project.State.Chassis$1" OBJ_PATH="/xyz/openbmc_project/state/chassis$1" INTF_NAME="xyz.openbmc_project.State.Chassis" PROPERTY_NAME="CurrentPowerState" PROPERTY_VAL="xyz.openbmc_project.State.Chassis.PowerState.$2" busctl call "$BUS_NAME" "$OBJ_PATH" "$DBUS_PROPERTIES_INTF_NAME" Set ssv "$INTF_NAME" "$PROPERTY_NAME" s "$PROPERTY_VAL" } INSTENCE_ID="$1" HOST_PWR_STATUS=$(/usr/sbin/power-ctrl sled"$1" status) CHASSIS_STATE_VAL="Off" HOST_STATE_VAL="Off" if [ "$HOST_PWR_STATUS" != "AC Off" ]; then CHASSIS_STATE_VAL="On" if [ "$HOST_PWR_STATUS" != "Off" ]; then HOST_STATE_VAL="Running" fi fi set_chassis_state "$INSTENCE_ID" "$CHASSIS_STATE_VAL" set_host_state "$INSTENCE_ID" "$HOST_STATE_VAL"