Hi, /usr/share/vdsm/hooking.py is present on my host.
I placed my test_hook.py in /usr/libexec/vdsm/hooks/before_vm_start As I want to have it invoked for every started VM , I don’t need custom property ; Am I right ? Remains the point “make it accessible to vdsm:kvm” what do you mean ? BTW , are vdsm hooks log infos located in /var/log/vdsm/vdsm.log ? Thx for help. J.P. De : Dan Yasny [mailto:[email protected]] Envoyé : mardi 12 janvier 2016 16:48 À : Jean-Pierre Ribeauville Cc : [email protected] Objet : Re: [ovirt-users] vdsm hook issues OK, so the hooking module is included in the vdsm package itself. Please make sure you have /usr/share/vdsm/hooking.py on the host. The manual run fails, because it is not running in the vdsm context, and so the modules imported are the python site-packages and not the submodules under vdsm. To make a hook work, you need to place it on the host, make it accessible to vdsm:kvm, and maybe define a custom property, if you don't want the hook to just run on every started VM. On Tue, Jan 12, 2016 at 10:35 AM, Jean-Pierre Ribeauville <[email protected]<mailto:[email protected]>> wrote: Hi, 1° It’s a full RHEL7 OS. 2° vdsm-python-zombiereaper-4.16.27-0.el7.centos.noarch vdsm-python-4.16.27-0.el7.centos.noarch vdsm-yajsonrpc-4.16.27-0.el7.centos.noarch vdsm-xmlrpc-4.16.27-0.el7.centos.noarch vdsm-cli-4.16.27-0.el7.centos.noarch vdsm-jsonrpc-java-1.0.15-1.el7.noarch vdsm-jsonrpc-4.16.27-0.el7.centos.noarch vdsm-4.16.27-0.el7.centos.x86_64 3° #!/usr/bin/python 1) 2) import os 3) import sys 4) import grp 5) import pwd 6) import traceback 7) 8) import hooking 9) 10) def createChannelElement(domxml): 11) ''' 12) <channel type='unix'> 13) <source mode='bind' path='//var/lib/libvirt/qemu/VM_RHEL7-1_omnivision_1.agent'/> 14) <target type='virtio' name='omnivision_1.agent'/> 15) </channel> 16) ''' 17) 18) channel = domxml.createElement('channel') 19) disk.setAttribute('type', 'unix') 20) 21) source = domxml.createElement('source') 22) source.setAttribute('mode', 'bind') 23) 24) # find domain name 25) domainame = domxml.getElementsByTagName('name') 26) 27) source.setAttribute('path', '//var/lib/libvirt/qemu/' + domainame + '_omnivision_1.agent') 28) disk.appendChild(source) 29) 30) target = domxml.createElement('target') 31) target.setAttribute('type', 'virtio') 32) target.setAttribute('name', 'omnivision_1.agent') 33) disk.appendChild(target) 34) 35) return channel 36) 37) try: 38) domxml = hooking.read_domxml() 39) devices = domxml.getElementsByTagName('devices')[0] 40) channeldev = createChannelElement(domxml) 41) sys.stderr.write('createChannel: adding xml: %s\n' % channeldev.toxml()) 42) devices.appendChild(channeldev) 43) 44) hooking.write_domxml(domxml) 45) except: 46) sys.stderr.write('createChannel: [unexpected error]: %s\n' % 47) traceback.format_exc()) 48) sys.exit(2) Thx for help. Regards, J.P. De : Dan Yasny [mailto:[email protected]<mailto:[email protected]>] Envoyé : mardi 12 janvier 2016 16:23 À : Jean-Pierre Ribeauville Cc : [email protected]<mailto:[email protected]> Objet : Re: [ovirt-users] vdsm hook issues 1. Are you using a full OS or a node? 2. rpm -qa |grep vdsm 3. if possible, post the hook code Thanks On Tue, Jan 12, 2016 at 10:17 AM, Jean-Pierre Ribeauville <[email protected]<mailto:[email protected]>> wrote: Hi, 1) is it enough to add a hook.py in /usr/libexec/vdsm/hooks/before_vm_start directory , and then shut down and reboot a guest to see this hook.py invoked ? 2) when running manually my hook.py, I got following error : ImportError: No module named hooking Do I have to install anything to solve this issue ? Thanks for help. Regards, J.P. Ribeauville P: +33.(0).1.47.17.20.49<tel:%2B33.%280%29.1.47.17.20.49> . Puteaux 3 Etage 5 Bureau 4 [email protected]<mailto:[email protected]> http://www.axway.com<http://www.axway.com/> P Pensez à l’environnement avant d’imprimer. _______________________________________________ Users mailing list [email protected]<mailto:[email protected]> http://lists.ovirt.org/mailman/listinfo/users
_______________________________________________ Users mailing list [email protected] http://lists.ovirt.org/mailman/listinfo/users

