<html><body>
<p>+1 test was successful.<br>
<br>
Sharad Mishra<br>
Open Virtualization<br>
Linux Technology Center<br>
IBM<br>
<br>
<tt>libvirt-cim-bounces@redhat.com wrote on 03/15/2011 05:33:20 PM:<br>
<br>
> Chip Vincent <cvincent@linux.vnet.ibm.com> </tt><br>
<tt>> Sent by: libvirt-cim-bounces@redhat.com<br>
> </tt><br>
<tt>> 03/15/2011 05:33 PM</tt><br>
<tt>> <br>
> Please respond to<br>
> List for discussion and development of libvirt CIM <libvirt-cim@redhat.com></tt><br>
<tt>> <br>
> To</tt><br>
<tt>> <br>
> libvirt-cim@redhat.com</tt><br>
<tt>> <br>
> cc</tt><br>
<tt>> <br>
> Subject</tt><br>
<tt>> <br>
> [Libvirt-cim] [PATCH] Add support for Pegasus OOP grouping</tt><br>
<tt>> <br>
> # HG changeset patch<br>
> # User Chip Vincent <cvincent@us.ibm.com><br>
> # Date 1300235494 14400<br>
> # Node ID 6cdfba0135e08b8b5878075dff77b5e03107c614<br>
> # Parent eea958fbf1d965bc1053850f59df4005e64093ac<br>
> Add support for Pegasus OOP grouping<br>
> <br>
> Update Pegasus ProviderModule registration to include support for <br>
> ModuleGroupProperty. This will allow all libvirt-cim provider to <br>
> load into a single process when the CIMOM is configured to run <br>
> providers outside the CIMOM process.<br>
> <br>
> Signed-off-by: Chip Vincent <cvincent@us.ibm.com><br>
> <br>
> diff --git a/provider-register.sh b/provider-register.sh<br>
> --- a/provider-register.sh<br>
> +++ b/provider-register.sh<br>
> @@ -32,6 +32,43 @@<br>
> return 1<br>
> }<br>
> <br>
> +pegasus_version()<br>
> +{<br>
> + CIMSERVER=`pegasus_path cimserver`<br>
> + if test $? != 0<br>
> + then<br>
> + echo "Error: cimserver not found" >&2<br>
> + return 1<br>
> + fi<br>
> +<br>
> + VERSION=`$CIMSERVER --version`<br>
> + if test $? != 0<br>
> + then<br>
> + echo "Error: could not determine cimserver version" >&2<br>
> + return 1<br>
> + fi<br>
> +<br>
> + echo $VERSION<br>
> + return 0<br>
> +}<br>
> +<br>
> +compare_version()<br>
> +{<br>
> + source=`echo "$1" | awk -F. '{printf("%02d%02d%02d\n", $1,$2,$3); }'`<br>
> + target=`echo "$2" | awk -F. '{printf("%02d%02d%02d\n", $1,$2,$3); }'`<br>
> +<br>
> + if test $source \< $target<br>
> + then<br>
> + chatter $source " < " $target<br>
> + echo "true"<br>
> + return 0<br>
> + else<br>
> + chatter $source " >= " $target<br>
> + echo "false"<br>
> + return 1<br>
> + fi<br>
> +}<br>
> +<br>
> pegasus_transform()<br>
> {<br>
> OUTFILE=$1<br>
> @@ -49,10 +86,15 @@<br>
> <br>
> # produce ProviderModules<br>
> echo > $OUTFILE<br>
> - chatter "Processing provider modules:" $PROVIDERMODULES<br>
> - for pm in $PROVIDERMODULES<br>
> - do<br>
> - cat >> $OUTFILE <<EOFPM<br>
> + version=`pegasus_version`<br>
> + chatter "cimserver version is " $version<br>
> + if compare_version "$version" "2.11.0"<br>
> + then<br>
> + chatter "Processing provider modules (w/o ModuleGroupName):" \<br>
> + $PROVIDERMODULES<br>
> + for pm in $PROVIDERMODULES<br>
> + do<br>
> + cat >> $OUTFILE <<EOFPM<br>
> instance of PG_ProviderModule<br>
> {<br>
> Name = "$pm";<br>
> @@ -65,7 +107,29 @@<br>
> <br>
> EOFPM<br>
> done<br>
> +<br>
> + else<br>
> + chatter "Processing provider modules (w/ ModuleGroupName):" \ <br>
> + $PROVIDERMODULES<br>
> + for pm in $PROVIDERMODULES<br>
> + do<br>
> + cat >> $OUTFILE <<EOFPM<br>
> +instance of PG_ProviderModule<br>
> +{<br>
> + Name = "$pm";<br>
> + Location = "$pm";<br>
> + Vendor = "SBLIM";<br>
> + Version = "2.0.0";<br>
> + InterfaceType = "CMPI";<br>
> + InterfaceVersion = "2.0.0";<br>
> + ModuleGroupName = "libvirt-cim";<br>
> +};<br>
> +<br>
> +EOFPM<br>
> + done<br>
> <br>
> + fi<br>
> +<br>
> # produce Providers<br>
> set -- $PROVIDERS<br>
> while test x$1 != x<br>
> @@ -170,6 +234,7 @@<br>
> myregs=<br>
> mofmode=1<br>
> namespace=$1<br>
> + version=`pegasus_version`<br>
> shift<br>
> <br>
> while test x$1 != x<br>
> @@ -206,7 +271,7 @@<br>
> <br>
> if pegasus_transform $_REGFILENAME $namespace $myregs<br>
> then<br>
> - chatter Registering providers with $state cimserver<br>
> + chatter Registering providers with $state cimserver '('$version')'<br>
> $CIMMOF -uc -I $mofpath -n $namespace $mymofs &&<br>
> $CIMMOF -uc -n root/PG_Interop $_REGFILENAME<br>
> else<br>
> <br>
> _______________________________________________<br>
> Libvirt-cim mailing list<br>
> Libvirt-cim@redhat.com<br>
> <a href="https://www.redhat.com/mailman/listinfo/libvirt-cim">https://www.redhat.com/mailman/listinfo/libvirt-cim</a><br>
</tt></body></html>