summaryrefslogtreecommitdiffstats
path: root/pyinventorymgr
diff options
context:
space:
mode:
authorBrad Bishop <bradleyb@fuzziesquirrel.com>2016-09-21 08:07:47 -0400
committerPatrick Williams <patrick@stwcx.xyz>2016-09-23 20:18:45 +0000
commit3d13c285e1f9291cb13e21880507118b5d05f7a2 (patch)
treeb7f11b0ec7abcd9896a5b0feb3175a94f31c6a3a /pyinventorymgr
parentcad44d68f5b976dcc6b381fa343dec60900d49d6 (diff)
downloadtalos-skeleton-3d13c285e1f9291cb13e21880507118b5d05f7a2.tar.gz
talos-skeleton-3d13c285e1f9291cb13e21880507118b5d05f7a2.zip
palmetto: remove frus
These are now provided in a json file. Change-Id: Ib0491399df797a728c7a71118f7d54a07eb3a466 Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
Diffstat (limited to 'pyinventorymgr')
-rw-r--r--pyinventorymgr/inventory_items.py18
-rw-r--r--pyinventorymgr/sync_inventory_items.py19
2 files changed, 25 insertions, 12 deletions
diff --git a/pyinventorymgr/inventory_items.py b/pyinventorymgr/inventory_items.py
index c815b37..82a1305 100644
--- a/pyinventorymgr/inventory_items.py
+++ b/pyinventorymgr/inventory_items.py
@@ -3,26 +3,17 @@
import os
import sys
import gobject
-import json
import dbus
import dbus.service
import dbus.mainloop.glib
import obmc.dbuslib.propertycacher as PropertyCacher
from obmc.dbuslib.bindings import get_dbus, DbusProperties, DbusObjectManager
-try:
- import obmc_system_config as System
- have_system = True
-except ImportError:
- have_system = False
INTF_NAME = 'org.openbmc.InventoryItem'
DBUS_NAME = 'org.openbmc.Inventory'
-if have_system:
- FRUS = System.FRU_INSTANCES
-else:
- FRUS = {}
+FRUS = {}
class Inventory(DbusProperties, DbusObjectManager):
@@ -92,6 +83,7 @@ if __name__ == '__main__':
'inventory', 'inventory.json')
if os.path.exists(INVENTORY_FILE):
+ import json
with open(INVENTORY_FILE, 'r') as f:
try:
inv = json.load(f)
@@ -99,6 +91,12 @@ if __name__ == '__main__':
print "Invalid JSON detected in " + INVENTORY_FILE
else:
FRUS = inv
+ else:
+ try:
+ import obmc_system_config as System
+ FRUS = System.FRU_INSTANCES
+ except ImportError:
+ pass
for f in FRUS.keys():
obj_path = f.replace("<inventory_root>", System.INVENTORY_ROOT)
diff --git a/pyinventorymgr/sync_inventory_items.py b/pyinventorymgr/sync_inventory_items.py
index e11c2e6..6db69cc 100644
--- a/pyinventorymgr/sync_inventory_items.py
+++ b/pyinventorymgr/sync_inventory_items.py
@@ -20,7 +20,7 @@ import sys
import dbus
import argparse
import subprocess
-import obmc_system_config as System
+
INV_DBUS_NAME = 'org.openbmc.Inventory'
INV_INTF_NAME = 'org.openbmc.InventoryItem'
@@ -30,7 +30,7 @@ CHS_DBUS_NAME = 'org.openbmc.control.Chassis'
CHS_OBJ_NAME = '/org/openbmc/control/chassis0'
PROP_INTF_NAME = 'org.freedesktop.DBus.Properties'
-FRUS = System.FRU_INSTANCES
+FRUS = {}
# IEEE 802 MAC address mask for locally administered.
# This means the admin has set the MAC and is no longer
@@ -111,6 +111,21 @@ if __name__ == '__main__':
prop_name = opt.p
sync_type = opt.s
+ inventory = os.path.join(
+ sys.prefix, 'share', 'inventory', 'inventory.json')
+ if os.path.exists(inventory):
+ import json
+ with open(inventory, 'r') as f:
+ try:
+ inv = json.load(f)
+ except ValueError:
+ print "Invalid JSON detected in " + inventory
+ else:
+ FRUS = inv
+ else:
+ import obmc_system_config as System
+ FRUS = System.FRU_INSTANCES
+
bus = dbus.SystemBus()
inv_obj_path = get_inv_obj_path(fru_type, fru_name)
inv_obj = bus.get_object(INV_DBUS_NAME, inv_obj_path)
OpenPOWER on IntegriCloud