summaryrefslogtreecommitdiffstats
path: root/openlmi-mof-register
diff options
context:
space:
mode:
Diffstat (limited to 'openlmi-mof-register')
-rwxr-xr-xopenlmi-mof-register16
1 files changed, 4 insertions, 12 deletions
diff --git a/openlmi-mof-register b/openlmi-mof-register
index 6a0c154..0e31eb7 100755
--- a/openlmi-mof-register
+++ b/openlmi-mof-register
@@ -30,6 +30,7 @@ import re
import sqlite3
from tempfile import NamedTemporaryFile
from shutil import copyfile
+from lmi.base.mofparse import MOFParser
global PEGASUS_REPOSITORY
global DEFAULT_NAMESPACE
@@ -309,17 +310,8 @@ def db_get_registrations(cursor, mofs, reg):
def parse_includes(mofs, namespace):
# Get list of all files included from mofs, including the original mofs
- # Misuse mofcomp --dry-run
- out = subprocess.check_output(["/usr/bin/mofcomp", "-v", "-d", "-n", namespace]
- + mofs)
-
- final_mofs = []
- include = re.compile("^Compiling file (.*)")
- for line in out.split("\n"):
- match = include.match(line)
- if match:
- final_mofs.append(match.group(1))
- return final_mofs
+ parser = MOFParser()
+ return parser.parse_includes(mofs)
def db_register(mofs, reg, version, namespace, cimom):
db = db_init()
@@ -501,7 +493,7 @@ def main():
cmd = args[0]
if cmd == "register" or cmd == "unregister":
if (just_mofs and (len(args) < 2)) or ((not just_mofs) and (len(args) < 3)):
- sys.stderr.write("Not enough parameters.\n" )
+ sys.stderr.write("Not enough parameters.\n")
usage()
sys.exit(1)
if (not just_mofs) and (version is None):