From vfeenstr at redhat.com Fri Jul 1 07:53:25 2016 Content-Type: multipart/mixed; boundary="===============4870289792932252949==" MIME-Version: 1.0 From: Vinzenz Feenstra To: users at ovirt.org Subject: Re: [ovirt-users] Communicating with ovirt agent Date: Fri, 01 Jul 2016 13:53:22 +0200 Message-ID: <12474245-BCEC-4332-A427-491E51C110E6@redhat.com> In-Reply-To: 1467367544.22189.13.camel@ring.lt --===============4870289792932252949== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable --Apple-Mail=3D_3BE0665E-6368-4F14-B7B6-B74A6939D809 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=3Dutf-8 > On Jul 1, 2016, at 12:05 PM, Tadas wrote: >=3D20 >=3D20 > is there any documentation o oVirt guest agent commands? > To be more precise: i need to pass commands to oVirt guest agent from > hypervisor. > Reading info works fine: >=3D20 > socat /var/lib/libvirt/qemu/channel/target/domain-20- > win7_32bit/com.redhat.serial.0 - >=3D20 > {"applications": ["Python 2.7.12rc1", "SPICE Guest Tools", "Total > Commander (Remove or Repair)", "Python 2.7 pywin32-216", "Microsoft > .NET Framework 4.6.1", "Git version 2.9.0", "WinRAR 5.40 beta 2 (32- > bit)", "Notepad++"], "__name__": "applications"} > {"__name__": "host-name", "name": "WIN7_32BIT"} > {"__name__": "os-version", "version": "Win 7=3DE2=3D80=3D9D} Every command has to be send as a whole JSON object and sent as line =3D terminated by a \n character The commands available are currently not documented however. {=3DE2=3D80=3D9C__name__=3DE2=3D80=3D9D: =3DE2=3D80=3D9Cname=3DE2=3D80=3D9D= , =3DE2=3D80=3DA6 args} - name: shutdown parameters: - timeout: optional integer (seconds) - reboot: optional boolean - message: string - name: refresh parameters: - apiVersion: optiona integer=3D20 this defines what information can be exchanged - name: hibernate: parameters: - state: disk or mem (default is disk if not specified) if you need more you can look here: =3D https://github.com/oVirt/ovirt-guest-agent/blob/master/ovirt-guest-agent/O= =3D VirtAgentLogic.py#L306 =3D at the parseCommand function or just ask here :-) >=3D20 >=3D20 > I'm unable to find how to send command (lets say "shutdown") to =3D agent?. > echo "shutdown" | socat =3D /var/lib/libvirt/qemu/channel/target/domain-20- > win7_32bit/com.redhat.kvm-vdi.0 - > Does not seem to work > Thank you for your help. > _______________________________________________ > Users mailing list > Users(a)ovirt.org > http://lists.ovirt.org/mailman/listinfo/users --Apple-Mail=3D_3BE0665E-6368-4F14-B7B6-B74A6939D809 Content-Transfer-Encoding: quoted-printable Content-Type: text/html; charset=3Dutf-8
On Jul 1, 2016, at 12:05 PM, Tadas <tadas(a)ring.lt> =3D wrote:


is there any documentation o oVirt guest agen= t =3D commands?
To be more precise: i need to pass commands to = =3D oVirt guest agent from
hypervisor.
Reading = =3D info works fine:

socat =3D /var/lib/libvirt/qemu/channel/target/domain-20-
win7_32bit/com.redhat.serial.0 -

{"applications": ["Python 2.7.12rc1", "SPICE Guest Tools", =3D "Total
Commander (Remove or Repair)", "Python 2.7 =3D pywin32-216", "Microsoft
.NET Framework 4.6.1", "Git =3D version 2.9.0", "WinRAR 5.40 beta 2 (32-
bit)", =3D "Notepad++"], "__name__": "applications"}
{"__name__": =3D "host-name", "name": "WIN7_32BIT"}
{"__name__": =3D "os-version", "version": "Win 7=3DE2=3D80=3D9D}

Ever= y =3D command has to be send as a whole JSON object and sent as line =3D terminated by a \n character

The =3D commands available are currently not documented however.

{=3DE2=3D80=3D9C__name__=3DE2=3D80=3D9D: =3DE2=3D80= =3D9Cname=3DE2=3D80=3D9D,=3D =3DE2=3D80=3DA6 args}

- name: =3D shutdown
  parameters:
- =3D timeout: optional integer (seconds)
=3D - reboot: optional boolean
- =3D message: string

- =3D name: refresh
  parameters:
- =3D apiVersion: optiona integer 
        =3D     this defines what information can be =3D exchanged

- =3D name: hibernate:
  parameters:
- state: =3D disk or mem (default is disk if not specified)

if you need more you can look here:  https://github.com/oVirt/ovirt-guest-agent/blob/master/ovirt-g= u=3D est-agent/OVirtAgentLogic.py#L306 at the parseCommand =3D function
or just ask here :-)



I'm unable to find how to send command (lets = =3D say "shutdown") to agent?.
echo "shutdown" | socat =3D /var/lib/libvirt/qemu/channel/target/domain-20-
win7_32bit/com.redhat.kvm-vdi.0  -
D= oes=3D not seem to work
Thank you for your help.
_______________________________________________
Users mailing list
Users(a)ovirt.org
http://lists.ovirt.org/mailman/listinfo/users

= =3D --Apple-Mail=3D_3BE0665E-6368-4F14-B7B6-B74A6939D809-- --===============4870289792932252949== Content-Type: multipart/alternative MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="attachment.bin" Ci0tQXBwbGUtTWFpbD1fM0JFMDY2NUUtNjM2OC00RjE0LUI3QjYtQjc0QTY5MzlEODA5CkNvbnRl bnQtVHJhbnNmZXItRW5jb2Rpbmc6IHF1b3RlZC1wcmludGFibGUKQ29udGVudC1UeXBlOiB0ZXh0 L3BsYWluOwoJY2hhcnNldD11dGYtOAoKCj4gT24gSnVsIDEsIDIwMTYsIGF0IDEyOjA1IFBNLCBU YWRhcyA8dGFkYXNAcmluZy5sdD4gd3JvdGU6Cj49MjAKPj0yMAo+IGlzIHRoZXJlIGFueSBkb2N1 bWVudGF0aW9uIG8gb1ZpcnQgZ3Vlc3QgYWdlbnQgY29tbWFuZHM/Cj4gVG8gYmUgbW9yZSBwcmVj aXNlOiBpIG5lZWQgdG8gcGFzcyBjb21tYW5kcyB0byBvVmlydCBndWVzdCBhZ2VudCBmcm9tCj4g aHlwZXJ2aXNvci4KPiBSZWFkaW5nIGluZm8gd29ya3MgZmluZToKPj0yMAo+IHNvY2F0IC92YXIv bGliL2xpYnZpcnQvcWVtdS9jaGFubmVsL3RhcmdldC9kb21haW4tMjAtCj4gd2luN18zMmJpdC9j b20ucmVkaGF0LnNlcmlhbC4wIC0KPj0yMAo+IHsiYXBwbGljYXRpb25zIjogWyJQeXRob24gMi43 LjEycmMxIiwgIlNQSUNFIEd1ZXN0IFRvb2xzIiwgIlRvdGFsCj4gQ29tbWFuZGVyIChSZW1vdmUg b3IgUmVwYWlyKSIsICJQeXRob24gMi43IHB5d2luMzItMjE2IiwgIk1pY3Jvc29mdAo+IC5ORVQg RnJhbWV3b3JrIDQuNi4xIiwgIkdpdCB2ZXJzaW9uIDIuOS4wIiwgIldpblJBUiA1LjQwIGJldGEg MiAoMzItCj4gYml0KSIsICJOb3RlcGFkKysiXSwgIl9fbmFtZV9fIjogImFwcGxpY2F0aW9ucyJ9 Cj4geyJfX25hbWVfXyI6ICJob3N0LW5hbWUiLCAibmFtZSI6ICJXSU43XzMyQklUIn0KPiB7Il9f bmFtZV9fIjogIm9zLXZlcnNpb24iLCAidmVyc2lvbiI6ICJXaW4gNz1FMj04MD05RH0KCkV2ZXJ5 IGNvbW1hbmQgaGFzIHRvIGJlIHNlbmQgYXMgYSB3aG9sZSBKU09OIG9iamVjdCBhbmQgc2VudCBh cyBsaW5lID0KdGVybWluYXRlZCBieSBhIFxuIGNoYXJhY3RlcgoKVGhlIGNvbW1hbmRzIGF2YWls YWJsZSBhcmUgY3VycmVudGx5IG5vdCBkb2N1bWVudGVkIGhvd2V2ZXIuCgp7PUUyPTgwPTlDX19u YW1lX189RTI9ODA9OUQ6ID1FMj04MD05Q25hbWU9RTI9ODA9OUQsID1FMj04MD1BNiBhcmdzfQoK LSBuYW1lOiBzaHV0ZG93bgogIHBhcmFtZXRlcnM6CgktIHRpbWVvdXQ6IG9wdGlvbmFsIGludGVn ZXIgKHNlY29uZHMpCgktIHJlYm9vdDogb3B0aW9uYWwgYm9vbGVhbgoJLSBtZXNzYWdlOiBzdHJp bmcKCi0gbmFtZTogcmVmcmVzaAogIHBhcmFtZXRlcnM6CgktIGFwaVZlcnNpb246IG9wdGlvbmEg aW50ZWdlcj0yMAogICAgICAgICAgICB0aGlzIGRlZmluZXMgd2hhdCBpbmZvcm1hdGlvbiBjYW4g YmUgZXhjaGFuZ2VkCgotIG5hbWU6IGhpYmVybmF0ZToKICBwYXJhbWV0ZXJzOgoJLSBzdGF0ZTog ZGlzayBvciBtZW0gKGRlZmF1bHQgaXMgZGlzayBpZiBub3Qgc3BlY2lmaWVkKQoKaWYgeW91IG5l ZWQgbW9yZSB5b3UgY2FuIGxvb2sgaGVyZTogID0KaHR0cHM6Ly9naXRodWIuY29tL29WaXJ0L292 aXJ0LWd1ZXN0LWFnZW50L2Jsb2IvbWFzdGVyL292aXJ0LWd1ZXN0LWFnZW50L089ClZpcnRBZ2Vu dExvZ2ljLnB5I0wzMDYgPQo8aHR0cHM6Ly9naXRodWIuY29tL29WaXJ0L292aXJ0LWd1ZXN0LWFn ZW50L2Jsb2IvbWFzdGVyL292aXJ0LWd1ZXN0LWFnZW50Lz0KT1ZpcnRBZ2VudExvZ2ljLnB5I0wz MDY+IGF0IHRoZSBwYXJzZUNvbW1hbmQgZnVuY3Rpb24Kb3IganVzdCBhc2sgaGVyZSA6LSkKCj49 MjAKPj0yMAo+IEknbSB1bmFibGUgdG8gZmluZCBob3cgdG8gc2VuZCBjb21tYW5kIChsZXRzIHNh eSAic2h1dGRvd24iKSB0byA9CmFnZW50Py4KPiBlY2hvICJzaHV0ZG93biIgfCBzb2NhdCA9Ci92 YXIvbGliL2xpYnZpcnQvcWVtdS9jaGFubmVsL3RhcmdldC9kb21haW4tMjAtCj4gd2luN18zMmJp dC9jb20ucmVkaGF0Lmt2bS12ZGkuMCAgLQo+IERvZXMgbm90IHNlZW0gdG8gd29yawo+IFRoYW5r IHlvdSBmb3IgeW91ciBoZWxwLgo+IF9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fCj4gVXNlcnMgbWFpbGluZyBsaXN0Cj4gVXNlcnNAb3ZpcnQub3JnCj4gaHR0 cDovL2xpc3RzLm92aXJ0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL3VzZXJzCgoKLS1BcHBsZS1NYWls PV8zQkUwNjY1RS02MzY4LTRGMTQtQjdCNi1CNzRBNjkzOUQ4MDkKQ29udGVudC1UcmFuc2Zlci1F bmNvZGluZzogcXVvdGVkLXByaW50YWJsZQpDb250ZW50LVR5cGU6IHRleHQvaHRtbDsKCWNoYXJz ZXQ9dXRmLTgKCjxodG1sPjxoZWFkPjxtZXRhIGh0dHAtZXF1aXY9M0QiQ29udGVudC1UeXBlIiBj b250ZW50PTNEInRleHQvaHRtbCA9CmNoYXJzZXQ9M0R1dGYtOCI+PC9oZWFkPjxib2R5IHN0eWxl PTNEIndvcmQtd3JhcDogYnJlYWstd29yZDsgPQotd2Via2l0LW5ic3AtbW9kZTogc3BhY2U7IC13 ZWJraXQtbGluZS1icmVhazogYWZ0ZXItd2hpdGUtc3BhY2U7IiA9CmNsYXNzPTNEIiI+PGJyIGNs YXNzPTNEIiI+PGRpdj48YmxvY2txdW90ZSB0eXBlPTNEImNpdGUiIGNsYXNzPTNEIiI+PGRpdiA9 CmNsYXNzPTNEIiI+T24gSnVsIDEsIDIwMTYsIGF0IDEyOjA1IFBNLCBUYWRhcyAmbHQ7PGEgPQpo cmVmPTNEIm1haWx0bzp0YWRhc0ByaW5nLmx0IiBjbGFzcz0zRCIiPnRhZGFzQHJpbmcubHQ8L2E+ Jmd0OyA9Cndyb3RlOjwvZGl2PjxiciBjbGFzcz0zRCJBcHBsZS1pbnRlcmNoYW5nZS1uZXdsaW5l Ij48ZGl2IGNsYXNzPTNEIiI+PGRpdiA9CmNsYXNzPTNEIiI+PGJyIGNsYXNzPTNEIiI+aXMgdGhl cmUgYW55IGRvY3VtZW50YXRpb24gbyBvVmlydCBndWVzdCBhZ2VudCA9CmNvbW1hbmRzPzxiciBj bGFzcz0zRCIiPlRvIGJlIG1vcmUgcHJlY2lzZTogaSBuZWVkIHRvIHBhc3MgY29tbWFuZHMgdG8g PQpvVmlydCBndWVzdCBhZ2VudCBmcm9tPGJyIGNsYXNzPTNEIiI+aHlwZXJ2aXNvci48YnIgY2xh c3M9M0QiIj5SZWFkaW5nID0KaW5mbyB3b3JrcyBmaW5lOjxiciBjbGFzcz0zRCIiPjxiciBjbGFz cz0zRCIiPnNvY2F0ID0KL3Zhci9saWIvbGlidmlydC9xZW11L2NoYW5uZWwvdGFyZ2V0L2RvbWFp bi0yMC08YnIgPQpjbGFzcz0zRCIiPndpbjdfMzJiaXQvY29tLnJlZGhhdC5zZXJpYWwuMCAtPGJy IGNsYXNzPTNEIiI+PGJyID0KY2xhc3M9M0QiIj57ImFwcGxpY2F0aW9ucyI6IFsiUHl0aG9uIDIu Ny4xMnJjMSIsICJTUElDRSBHdWVzdCBUb29scyIsID0KIlRvdGFsPGJyIGNsYXNzPTNEIiI+Q29t bWFuZGVyIChSZW1vdmUgb3IgUmVwYWlyKSIsICJQeXRob24gMi43ID0KcHl3aW4zMi0yMTYiLCAi TWljcm9zb2Z0PGJyIGNsYXNzPTNEIiI+Lk5FVCBGcmFtZXdvcmsgNC42LjEiLCAiR2l0ID0KdmVy c2lvbiAyLjkuMCIsICJXaW5SQVIgNS40MCBiZXRhIDIgKDMyLTxiciBjbGFzcz0zRCIiPmJpdCki LCA9CiJOb3RlcGFkKysiXSwgIl9fbmFtZV9fIjogImFwcGxpY2F0aW9ucyJ9PGJyIGNsYXNzPTNE IiI+eyJfX25hbWVfXyI6ID0KImhvc3QtbmFtZSIsICJuYW1lIjogIldJTjdfMzJCSVQifTxiciBj bGFzcz0zRCIiPnsiX19uYW1lX18iOiA9CiJvcy12ZXJzaW9uIiwgInZlcnNpb24iOiAiV2luIDc9 RTI9ODA9OUR9PGJyID0KY2xhc3M9M0QiIj48L2Rpdj48L2Rpdj48L2Jsb2NrcXVvdGU+PGRpdj48 YnIgY2xhc3M9M0QiIj48L2Rpdj48ZGl2PkV2ZXJ5ID0KY29tbWFuZCBoYXMgdG8gYmUgc2VuZCBh cyBhIHdob2xlIEpTT04gb2JqZWN0IGFuZCBzZW50IGFzIGxpbmUgPQp0ZXJtaW5hdGVkIGJ5IGEg XG4gY2hhcmFjdGVyPC9kaXY+PGRpdj48YnIgY2xhc3M9M0QiIj48L2Rpdj48ZGl2PlRoZSA9CmNv bW1hbmRzIGF2YWlsYWJsZSBhcmUgY3VycmVudGx5IG5vdCBkb2N1bWVudGVkIGhvd2V2ZXIuPC9k aXY+PGRpdj48YnIgPQpjbGFzcz0zRCIiPjwvZGl2PjxkaXY+ez1FMj04MD05Q19fbmFtZV9fPUUy PTgwPTlEOiA9RTI9ODA9OUNuYW1lPUUyPTgwPTlELD0KID1FMj04MD1BNiBhcmdzfTwvZGl2Pjxk aXY+PGJyIGNsYXNzPTNEIiI+PC9kaXY+PGRpdj4tIG5hbWU6ID0Kc2h1dGRvd248L2Rpdj48ZGl2 PiZuYnNwOyBwYXJhbWV0ZXJzOjwvZGl2PjxkaXY+PHNwYW4gPQpjbGFzcz0zRCJBcHBsZS10YWIt c3BhbiIgc3R5bGU9M0Qid2hpdGUtc3BhY2U6cHJlIj4JPC9zcGFuPi0gPQp0aW1lb3V0OiBvcHRp b25hbCBpbnRlZ2VyIChzZWNvbmRzKTwvZGl2PjxkaXY+PHNwYW4gPQpjbGFzcz0zRCJBcHBsZS10 YWItc3BhbiIgc3R5bGU9M0Qid2hpdGUtc3BhY2U6cHJlIj4JPQo8L3NwYW4+LSZuYnNwO3JlYm9v dDogb3B0aW9uYWwgYm9vbGVhbjwvZGl2PjxkaXY+PHNwYW4gPQpjbGFzcz0zRCJBcHBsZS10YWIt c3BhbiIgc3R5bGU9M0Qid2hpdGUtc3BhY2U6cHJlIj4JPC9zcGFuPi0gPQptZXNzYWdlOiBzdHJp bmc8L2Rpdj48ZGl2PjxiciBjbGFzcz0zRCIiPjwvZGl2PjxkaXY+LSA9Cm5hbWU6Jm5ic3A7cmVm cmVzaDwvZGl2PjxkaXY+Jm5ic3A7IHBhcmFtZXRlcnM6PC9kaXY+PGRpdj48c3BhbiA9CmNsYXNz PTNEIkFwcGxlLXRhYi1zcGFuIiBzdHlsZT0zRCJ3aGl0ZS1zcGFjZTpwcmUiPgk8L3NwYW4+LSA9 CmFwaVZlcnNpb246IG9wdGlvbmEgaW50ZWdlciZuYnNwOzwvZGl2PjxkaXY+Jm5ic3A7ICZuYnNw OyAmbmJzcDsgJm5ic3A7ID0KJm5ic3A7ICZuYnNwOyB0aGlzIGRlZmluZXMgd2hhdCBpbmZvcm1h dGlvbiBjYW4gYmUgPQpleGNoYW5nZWQ8L2Rpdj48ZGl2PjxiciBjbGFzcz0zRCIiPjwvZGl2Pjxk aXY+LSA9Cm5hbWU6Jm5ic3A7aGliZXJuYXRlOjwvZGl2PjxkaXY+Jm5ic3A7IHBhcmFtZXRlcnM6 PC9kaXY+PGRpdj48c3BhbiA9CmNsYXNzPTNEIkFwcGxlLXRhYi1zcGFuIiBzdHlsZT0zRCJ3aGl0 ZS1zcGFjZTpwcmUiPgk8L3NwYW4+LSBzdGF0ZTogPQpkaXNrIG9yIG1lbSAoZGVmYXVsdCBpcyBk aXNrIGlmIG5vdCBzcGVjaWZpZWQpPC9kaXY+PGRpdj48YnIgPQpjbGFzcz0zRCIiPjwvZGl2Pjxk aXY+aWYgeW91IG5lZWQgbW9yZSB5b3UgY2FuIGxvb2sgaGVyZTogJm5ic3A7PGEgPQpocmVmPTNE Imh0dHBzOi8vZ2l0aHViLmNvbS9vVmlydC9vdmlydC1ndWVzdC1hZ2VudC9ibG9iL21hc3Rlci9v dmlydC1ndWVzdD0KLWFnZW50L09WaXJ0QWdlbnRMb2dpYy5weSNMMzA2IiA9CmNsYXNzPTNEIiI+ aHR0cHM6Ly9naXRodWIuY29tL29WaXJ0L292aXJ0LWd1ZXN0LWFnZW50L2Jsb2IvbWFzdGVyL292 aXJ0LWd1PQplc3QtYWdlbnQvT1ZpcnRBZ2VudExvZ2ljLnB5I0wzMDY8L2E+Jm5ic3A7YXQgdGhl IHBhcnNlQ29tbWFuZCA9CmZ1bmN0aW9uPC9kaXY+PGRpdj5vciBqdXN0IGFzayBoZXJlIDotKTwv ZGl2PjxiciBjbGFzcz0zRCIiPjxibG9ja3F1b3RlID0KdHlwZT0zRCJjaXRlIiBjbGFzcz0zRCIi PjxkaXYgY2xhc3M9M0QiIj48ZGl2IGNsYXNzPTNEIiI+PGJyID0KY2xhc3M9M0QiIj48YnIgY2xh c3M9M0QiIj5JJ20gdW5hYmxlIHRvIGZpbmQgaG93IHRvIHNlbmQgY29tbWFuZCAobGV0cyA9CnNh eSAic2h1dGRvd24iKSB0byBhZ2VudD8uPGJyIGNsYXNzPTNEIiI+ZWNobyAic2h1dGRvd24iIHwg c29jYXQgPQovdmFyL2xpYi9saWJ2aXJ0L3FlbXUvY2hhbm5lbC90YXJnZXQvZG9tYWluLTIwLTxi ciA9CmNsYXNzPTNEIiI+d2luN18zMmJpdC9jb20ucmVkaGF0Lmt2bS12ZGkuMCZuYnNwOyZuYnNw Oy08YnIgY2xhc3M9M0QiIj5Eb2VzPQogbm90IHNlZW0gdG8gd29yazxiciBjbGFzcz0zRCIiPlRo YW5rIHlvdSBmb3IgeW91ciBoZWxwLjxiciA9CmNsYXNzPTNEIiI+X19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX188YnIgPQpjbGFzcz0zRCIiPlVzZXJzIG1haWxp bmcgbGlzdDxiciBjbGFzcz0zRCIiPjxhID0KaHJlZj0zRCJtYWlsdG86VXNlcnNAb3ZpcnQub3Jn IiBjbGFzcz0zRCIiPlVzZXJzQG92aXJ0Lm9yZzwvYT48YnIgPQpjbGFzcz0zRCIiPmh0dHA6Ly9s aXN0cy5vdmlydC5vcmcvbWFpbG1hbi9saXN0aW5mby91c2VyczxiciA9CmNsYXNzPTNEIiI+PC9k aXY+PC9kaXY+PC9ibG9ja3F1b3RlPjwvZGl2PjxiciBjbGFzcz0zRCIiPjwvYm9keT48L2h0bWw+ PQoKLS1BcHBsZS1NYWlsPV8zQkUwNjY1RS02MzY4LTRGMTQtQjdCNi1CNzRBNjkzOUQ4MDktLQo= --===============4870289792932252949==--