From d683c446b08d2705b8bb30a45f95a1b38763e442 Mon Sep 17 00:00:00 2001 From: Jan Safranek Date: Mon, 15 Jul 2013 15:25:35 +0200 Subject: Fill in PG_ProviderModule.Version property. We will use PG_ProviderModule.Version property for API version of the provider. This patch adds mandatory '-v' parameter to openlmi-mof-register tool to fill it. --- openlmi-register-pegasus | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/openlmi-register-pegasus b/openlmi-register-pegasus index d314d27..149af59 100755 --- a/openlmi-register-pegasus +++ b/openlmi-register-pegasus @@ -17,10 +17,12 @@ # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA # # Authors: Radek Novacek +# Jan Safranek # import sys import re +import argparse reg_parse = re.compile(r"\[([^\]]+)\]\s+" "provider: ([^\s]+)\s+" @@ -38,18 +40,18 @@ Types = { 'instanceQuery': '7' } -def define_module(location, group): +def define_module(location, group, version): return """instance of PG_ProviderModule { Name = "%(group)s"; Location = "%(location)s"; Vendor = "OpenLMI"; - Version = "0.0.1"; + Version = "%(version)s"; InterfaceType = "CMPI"; InterfaceVersion = "2.0.0"; ModuleGroupName = "%(group)s"; }; -""" % { 'location': location, 'group': group } +""" % { 'location': location, 'group': group, 'version': version } def getTypes(types): l = [] @@ -78,6 +80,11 @@ instance of PG_ProviderCapabilities }; """ % { 'location': location, 'provider': provider, 'class': cls, 'types': getTypes(types), 'group': group } +parser = argparse.ArgumentParser(description='Create MOF files with registration of providers for Pegasus CIMOM.') +parser.add_argument('-v', '--version', action='store', required=True, help="Version of the provider API.") +args = parser.parse_args() +version = args.version + modules_defined = {} for record in reg_parse.findall(sys.stdin.read()): cls, provider, location, types, namespace, _unused, group = record @@ -86,7 +93,7 @@ for record in reg_parse.findall(sys.stdin.read()): group = location if group not in modules_defined: - print define_module(location, group) + print define_module(location, group, version) modules_defined[group] = True print define_capability(location, provider, cls, types, group) -- cgit