|I have had a look at the current vm.sh script and have found out :|
a) use_virsh = 1 per default
b) that if your resource have a path attribute, vm.sh automatically revert to use_virsh=0, even if you hard code use_virsh=1 !
c) there is no option to indicate the xml file that virsh use to create the vm. It always tries "virsh create name" where name is the vm name.
The point a) is a little bit silly because if you have a RHEL 5.3 cluster that is using xm configuration files, your vm will no longer launch after upgrade because it tries to do a "virsh create name" instead of "xm create name". It would have been probably cleaner to have "use_virsh = 0" per default to keep compatibility.
The point b) will add compatibility to people that use the path attribute in order to store vm conf files in a place shared by all members of the cluster (gfs2 or nfs directory for example). It would have been clearer to document this feature because it is a little bit magical to see a resource with use_virsh=1 use in fact xm and not virsh !!!
The point c) is very silly, because it restricts the configuration to be loaded from /etc/xen even for kvm ! Also this directory is not shared on the various members of the cluster and the configuration file must have the same name as the vm name (we prefer to call it name.xml).
Also their is no problem to use a "virsh create /path/to/file.xml" under RHEL 5.4 and I have found out that the cluster 3.0 stable branch have a new vm.sh file using an xmlpath attribute to solve this problem. Why this version was not back ported to RHEL 5.4 ? Is there any plan to do it ?