From aditya.mamidwar at gmail.com Sat Mar 15 08:30:40 2014 Content-Type: multipart/mixed; boundary="===============5663874115637835364==" MIME-Version: 1.0 From: Aditya Mamidwar To: users at ovirt.org Subject: Re: [Users] adding scripts Date: Sat, 15 Mar 2014 18:00:21 +0530 Message-ID: <532447ee.a70e440a.3ce3.ffffd5f5@mx.google.com> --===============5663874115637835364== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable --_D8651FB6-46F9-4DF8-98DD-D992EE03B3E3_ Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=3D"utf-8" Hey thanks on the previous issue. Also is there a way i can access WebAdmin.Html to add custom buttons and ma= =3D ke few tweaks for personal use? I just cant find that file after using git. Aditya Mamidwar -----Original Message----- From: "Einav Cohen" Sent: =3DE2=3D80=3D8E14-=3DE2=3D80=3D8E03-=3DE2=3D80=3D8E2014 01:21 To: "aditya mamidwar" ; "Vojtech Szocs" Cc: "users(a)ovirt.org" ; "engine-devel(a)ovirt.org" Subject: Re: [Users] adding scripts if you are trying to hook into UI-specific events, it sounds=3D20 like you will need to write an oVirt UI Plugin [1] in order to=3D20 do that. However, I believe that the oVirt UI Plugins=3D20 infrastructure doesn't support hooking to events such as "tab=3D20 x was selected" and/or "button b was clicked".=3D20 It does allow you to add new (custom) tabs/sub-tabs/buttons of=3D20 your own, and there is a chance that it allows you to hook=3D20 into events such as 'row x was selected in the grid'.=3D20 @Vojtech will know better. Vojtech? if you are trying to hook into engine events (e.g. you want to=3D20 run a script every time a VM is started in oVirt, no matter if=3D20 the user started it by clicking the 'run' button in the oVirt- engine webadmin, or invoked a REST API request, or an SDK=3D20 command), then it will require some sort of an "engine-plugin"=3D20 infrastructure that we don't have at the moment AFAIK.=3D20 there is a chance that for some of the events you will be able=3D20 to utilize the VDSM hooks (at the Host level) [2]. ---- Thanks, Einav [1] http://www.ovirt.org/Features/UIPlugins [2] http://www.ovirt.org/VDSM-Hooks ----- Original Message ----- > From: "aditya mamidwar" > To: users(a)ovirt.org, engine-devel(a)ovirt.org > Sent: Thursday, March 13, 2014 11:23:35 AM > Subject: [Users] adding scripts >=3D20 >=3D20 > I want to commit changes to the engine by adding some bash scripts. > the scripts should be invoked once a button or tab is selected in the > webadmin portal by the user. >=3D20 > can someone guide on achieving this. >=3D20 > -- > -Aditya Mamidwar >=3D20 > _______________________________________________ > Users mailing list > Users(a)ovirt.org > http://lists.ovirt.org/mailman/listinfo/users >=3D20 --_D8651FB6-46F9-4DF8-98DD-D992EE03B3E3_ Content-Transfer-Encoding: quoted-printable Content-Type: text/html; charset=3D"utf-8"
Hey thank= s =3D on the previous issue.
Also is there a way i can access WebAdmin.Html to= =3D add custom buttons and make few tweaks for personal use?
I just cant fi= =3D nd that file after using git.

Aditya Mamidwar

From: Einav Cohen=
=3D Sent: =3DE2=3D80=3D8E14-=3DE2=3D80=3D8E03-=3DE2=3D80=3D8E2014 01:21
aditya mamidwar; Vojtech Szocs
Cc: users(a)ovirt.org; engine-devel(a)ovirt.org
Subject: Re: [= Us=3D ers] adding scripts

if you are trying to hook into UI-s= =3D pecific events, it sounds
like you will need to write an oVirt UI Plugi= =3D n [1] in order to
do that. However, I believe that the oVirt UI Plugins= =3D
infrastructure doesn't support hooking to events such as "tab
x wa= =3D s selected" and/or "button b was clicked".
It does allow you to add new= =3D (custom) tabs/sub-tabs/buttons of
your own, and there is a chance that= =3D it allows you to hook
into events such as 'row x was selected in the g= =3D rid'.

@Vojtech will know better. Vojtech?

if you are trying = =3D to hook into engine events (e.g. you want to
run a script every time a = =3D VM is started in oVirt, no matter if
the user started it by clicking th= =3D e 'run' button in the oVirt-
engine webadmin, or invoked a REST API requ= =3D est, or an SDK
command), then it will require some sort of an "engine-p= =3D lugin"
infrastructure that we don't have at the moment AFAIK.
there= =3D is a chance that for some of the events you will be able
to utilize th= =3D e VDSM hooks (at the Host level) [2].

----
Thanks,
Einav
[1] http://www.ovirt.org/Features/UIPlugins

[2] http://www.ovirt.o= =3D rg/VDSM-Hooks


----- Original Message -----
> From: "aditya= =3D mamidwar" <aditya.mamidwar(a)gmail.com>
> To: users(a)ovirt.or= g, e=3D ngine-devel(a)ovirt.org
> Sent: Thursday, March 13, 2014 11:23:35 AM<= BR=3D >> Subject: [Users] adding scripts
>
>
> I want to c= =3D ommit changes to the engine by adding some bash scripts.
> the script= =3D s should be invoked once a button or tab is selected in the
> webadmi= =3D n portal by the user.
>
> can someone guide on achieving this.= =3D
>
> --
> -Aditya Mamidwar
>
> ____________= =3D ___________________________________
> Users mailing list
> User= =3D s(a)ovirt.org
> http://lists.ovirt.org/mailman/listinfo/users
>= <=3D BR>=3D --_D8651FB6-46F9-4DF8-98DD-D992EE03B3E3_-- --===============5663874115637835364== Content-Type: multipart/alternative MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="attachment.bin" LS1fRDg2NTFGQjYtNDZGOS00REY4LTk4REQtRDk5MkVFMDNCM0UzXwpDb250ZW50LVRyYW5zZmVy LUVuY29kaW5nOiBxdW90ZWQtcHJpbnRhYmxlCkNvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjsgY2hh cnNldD0idXRmLTgiCgpIZXkgdGhhbmtzIG9uIHRoZSBwcmV2aW91cyBpc3N1ZS4KQWxzbyBpcyB0 aGVyZSBhIHdheSBpIGNhbiBhY2Nlc3MgV2ViQWRtaW4uSHRtbCB0byBhZGQgY3VzdG9tIGJ1dHRv bnMgYW5kIG1hPQprZSBmZXcgdHdlYWtzIGZvciBwZXJzb25hbCB1c2U/CkkganVzdCBjYW50IGZp bmQgdGhhdCBmaWxlIGFmdGVyIHVzaW5nIGdpdC4KCkFkaXR5YSBNYW1pZHdhcgoKLS0tLS1Pcmln aW5hbCBNZXNzYWdlLS0tLS0KRnJvbTogIkVpbmF2IENvaGVuIiA8ZWNvaGVuQHJlZGhhdC5jb20+ ClNlbnQ6ID1FMj04MD04RTE0LT1FMj04MD04RTAzLT1FMj04MD04RTIwMTQgMDE6MjEKVG86ICJh ZGl0eWEgbWFtaWR3YXIiIDxhZGl0eWEubWFtaWR3YXJAZ21haWwuY29tPjsgIlZvanRlY2ggU3pv Y3MiIDx2c3pvY3NAPQpyZWRoYXQuY29tPgpDYzogInVzZXJzQG92aXJ0Lm9yZyIgPHVzZXJzQG92 aXJ0Lm9yZz47ICJlbmdpbmUtZGV2ZWxAb3ZpcnQub3JnIiA8ZW5naW5lLWQ9CmV2ZWxAb3ZpcnQu b3JnPgpTdWJqZWN0OiBSZTogW1VzZXJzXSBhZGRpbmcgc2NyaXB0cwoKaWYgeW91IGFyZSB0cnlp bmcgdG8gaG9vayBpbnRvIFVJLXNwZWNpZmljIGV2ZW50cywgaXQgc291bmRzPTIwCmxpa2UgeW91 IHdpbGwgbmVlZCB0byB3cml0ZSBhbiBvVmlydCBVSSBQbHVnaW4gWzFdIGluIG9yZGVyIHRvPTIw CmRvIHRoYXQuIEhvd2V2ZXIsIEkgYmVsaWV2ZSB0aGF0IHRoZSBvVmlydCBVSSBQbHVnaW5zPTIw CmluZnJhc3RydWN0dXJlIGRvZXNuJ3Qgc3VwcG9ydCBob29raW5nIHRvIGV2ZW50cyBzdWNoIGFz ICJ0YWI9MjAKeCB3YXMgc2VsZWN0ZWQiIGFuZC9vciAiYnV0dG9uIGIgd2FzIGNsaWNrZWQiLj0y MApJdCBkb2VzIGFsbG93IHlvdSB0byBhZGQgbmV3IChjdXN0b20pIHRhYnMvc3ViLXRhYnMvYnV0 dG9ucyBvZj0yMAp5b3VyIG93biwgYW5kIHRoZXJlIGlzIGEgY2hhbmNlIHRoYXQgaXQgYWxsb3dz IHlvdSB0byBob29rPTIwCmludG8gZXZlbnRzIHN1Y2ggYXMgJ3JvdyB4IHdhcyBzZWxlY3RlZCBp biB0aGUgZ3JpZCcuPTIwCgpAVm9qdGVjaCB3aWxsIGtub3cgYmV0dGVyLiBWb2p0ZWNoPwoKaWYg eW91IGFyZSB0cnlpbmcgdG8gaG9vayBpbnRvIGVuZ2luZSBldmVudHMgKGUuZy4geW91IHdhbnQg dG89MjAKcnVuIGEgc2NyaXB0IGV2ZXJ5IHRpbWUgYSBWTSBpcyBzdGFydGVkIGluIG9WaXJ0LCBu byBtYXR0ZXIgaWY9MjAKdGhlIHVzZXIgc3RhcnRlZCBpdCBieSBjbGlja2luZyB0aGUgJ3J1bicg YnV0dG9uIGluIHRoZSBvVmlydC0KZW5naW5lIHdlYmFkbWluLCBvciBpbnZva2VkIGEgUkVTVCBB UEkgcmVxdWVzdCwgb3IgYW4gU0RLPTIwCmNvbW1hbmQpLCB0aGVuIGl0IHdpbGwgcmVxdWlyZSBz b21lIHNvcnQgb2YgYW4gImVuZ2luZS1wbHVnaW4iPTIwCmluZnJhc3RydWN0dXJlIHRoYXQgd2Ug ZG9uJ3QgaGF2ZSBhdCB0aGUgbW9tZW50IEFGQUlLLj0yMAp0aGVyZSBpcyBhIGNoYW5jZSB0aGF0 IGZvciBzb21lIG9mIHRoZSBldmVudHMgeW91IHdpbGwgYmUgYWJsZT0yMAp0byB1dGlsaXplIHRo ZSBWRFNNIGhvb2tzIChhdCB0aGUgSG9zdCBsZXZlbCkgWzJdLgoKLS0tLQpUaGFua3MsCkVpbmF2 CgpbMV0gaHR0cDovL3d3dy5vdmlydC5vcmcvRmVhdHVyZXMvVUlQbHVnaW5zCgpbMl0gaHR0cDov L3d3dy5vdmlydC5vcmcvVkRTTS1Ib29rcwoKCi0tLS0tIE9yaWdpbmFsIE1lc3NhZ2UgLS0tLS0K PiBGcm9tOiAiYWRpdHlhIG1hbWlkd2FyIiA8YWRpdHlhLm1hbWlkd2FyQGdtYWlsLmNvbT4KPiBU bzogdXNlcnNAb3ZpcnQub3JnLCBlbmdpbmUtZGV2ZWxAb3ZpcnQub3JnCj4gU2VudDogVGh1cnNk YXksIE1hcmNoIDEzLCAyMDE0IDExOjIzOjM1IEFNCj4gU3ViamVjdDogW1VzZXJzXSBhZGRpbmcg c2NyaXB0cwo+PTIwCj49MjAKPiBJIHdhbnQgdG8gY29tbWl0IGNoYW5nZXMgdG8gdGhlIGVuZ2lu ZSBieSBhZGRpbmcgc29tZSBiYXNoIHNjcmlwdHMuCj4gdGhlIHNjcmlwdHMgc2hvdWxkIGJlIGlu dm9rZWQgb25jZSBhIGJ1dHRvbiBvciB0YWIgaXMgc2VsZWN0ZWQgaW4gdGhlCj4gd2ViYWRtaW4g cG9ydGFsIGJ5IHRoZSB1c2VyLgo+PTIwCj4gY2FuIHNvbWVvbmUgZ3VpZGUgb24gYWNoaWV2aW5n IHRoaXMuCj49MjAKPiAtLQo+IC1BZGl0eWEgTWFtaWR3YXIKPj0yMAo+IF9fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCj4gVXNlcnMgbWFpbGluZyBsaXN0Cj4g VXNlcnNAb3ZpcnQub3JnCj4gaHR0cDovL2xpc3RzLm92aXJ0Lm9yZy9tYWlsbWFuL2xpc3RpbmZv L3VzZXJzCj49MjAKCi0tX0Q4NjUxRkI2LTQ2RjktNERGOC05OERELUQ5OTJFRTAzQjNFM18KQ29u dGVudC1UcmFuc2Zlci1FbmNvZGluZzogcXVvdGVkLXByaW50YWJsZQpDb250ZW50LVR5cGU6IHRl eHQvaHRtbDsgY2hhcnNldD0idXRmLTgiCgo8SFRNTD48SEVBRD4KPE1FVEEgY29udGVudD0zRCJ0 ZXh0L2h0bWw7IGNoYXJzZXQ9M0R1dGYtOCIgaHR0cC1lcXVpdj0zRENvbnRlbnQtVHlwZT48L0hF PQpBRD4KPEJPRFk+CjxESVY+CjxESVYgc3R5bGU9M0QiRk9OVC1TSVpFOiAxMXB0OyBGT05ULUZB TUlMWTogQ2FsaWJyaSxzYW5zLXNlcmlmIj5IZXkgdGhhbmtzID0Kb24gdGhlIHByZXZpb3VzIGlz c3VlLjxCUj5BbHNvIGlzIHRoZXJlIGEgd2F5IGkgY2FuIGFjY2VzcyBXZWJBZG1pbi5IdG1sIHRv PQogYWRkIGN1c3RvbSBidXR0b25zIGFuZCBtYWtlIGZldyB0d2Vha3MgZm9yIHBlcnNvbmFsIHVz ZT88QlI+SSBqdXN0IGNhbnQgZmk9Cm5kIHRoYXQgZmlsZSBhZnRlciB1c2luZyBnaXQuPEJSPjxC Uj5BZGl0eWEgTWFtaWR3YXI8L0RJVj48L0RJVj4KPERJViBkaXI9M0RsdHI+CjxIUj4KPFNQQU4g c3R5bGU9M0QiRk9OVC1TSVpFOiAxMXB0OyBGT05ULUZBTUlMWTogQ2FsaWJyaSxzYW5zLXNlcmlm OyBGT05ULVdFSUdIPQpUOiBib2xkIj5Gcm9tOiA8L1NQQU4+PFNQQU4gc3R5bGU9M0QiRk9OVC1T SVpFOiAxMXB0OyBGT05ULUZBTUlMWTogQ2FsaWJyaSw9CnNhbnMtc2VyaWYiPjxBIGhyZWY9M0Qi bWFpbHRvOmVjb2hlbkByZWRoYXQuY29tIj5FaW5hdiBDb2hlbjwvQT48L1NQQU4+PEJSPj0KPFNQ QU4gc3R5bGU9M0QiRk9OVC1TSVpFOiAxMXB0OyBGT05ULUZBTUlMWTogQ2FsaWJyaSxzYW5zLXNl cmlmOyBGT05ULVdFSUdIPQpUOiBib2xkIj5TZW50OiA8L1NQQU4+PFNQQU4gc3R5bGU9M0QiRk9O VC1TSVpFOiAxMXB0OyBGT05ULUZBTUlMWTogQ2FsaWJyaSw9CnNhbnMtc2VyaWYiPj1FMj04MD04 RTE0LT1FMj04MD04RTAzLT1FMj04MD04RTIwMTQgMDE6MjE8L1NQQU4+PEJSPjxTUEFOIHN0eT0K bGU9M0QiRk9OVC1TSVpFOiAxMXB0OyBGT05ULUZBTUlMWTogQ2FsaWJyaSxzYW5zLXNlcmlmOyBG T05ULVdFSUdIVDogYm9sZCI+PQpUbzogPC9TUEFOPjxTUEFOIHN0eWxlPTNEIkZPTlQtU0laRTog MTFwdDsgRk9OVC1GQU1JTFk6IENhbGlicmksc2Fucy1zZXJpZiI9Cj48QSBocmVmPTNEIm1haWx0 bzphZGl0eWEubWFtaWR3YXJAZ21haWwuY29tIj5hZGl0eWEgbWFtaWR3YXI8L0E+OyA8QSBocmVm PQo9M0QibWFpbHRvOnZzem9jc0ByZWRoYXQuY29tIj5Wb2p0ZWNoIFN6b2NzPC9BPjwvU1BBTj48 QlI+PFNQQU4gc3R5bGU9M0QiRk89Ck5ULVNJWkU6IDExcHQ7IEZPTlQtRkFNSUxZOiBDYWxpYnJp LHNhbnMtc2VyaWY7IEZPTlQtV0VJR0hUOiBib2xkIj5DYzogPC9TUD0KQU4+PFNQQU4gc3R5bGU9 M0QiRk9OVC1TSVpFOiAxMXB0OyBGT05ULUZBTUlMWTogQ2FsaWJyaSxzYW5zLXNlcmlmIj48QSBo cmVmPQo9M0QibWFpbHRvOnVzZXJzQG92aXJ0Lm9yZyI+dXNlcnNAb3ZpcnQub3JnPC9BPjsgPEEg aHJlZj0zRCJtYWlsdG86ZW5naW5lLWQ9CmV2ZWxAb3ZpcnQub3JnIj5lbmdpbmUtZGV2ZWxAb3Zp cnQub3JnPC9BPjwvU1BBTj48QlI+PFNQQU4gc3R5bGU9M0QiRk9OVC1TST0KWkU6IDExcHQ7IEZP TlQtRkFNSUxZOiBDYWxpYnJpLHNhbnMtc2VyaWY7IEZPTlQtV0VJR0hUOiBib2xkIj5TdWJqZWN0 OiA8L1NQPQpBTj48U1BBTiBzdHlsZT0zRCJGT05ULVNJWkU6IDExcHQ7IEZPTlQtRkFNSUxZOiBD YWxpYnJpLHNhbnMtc2VyaWYiPlJlOiBbVXM9CmVyc10gYWRkaW5nIHNjcmlwdHM8L1NQQU4+PEJS PjxCUj48L0RJVj5pZiB5b3UgYXJlIHRyeWluZyB0byBob29rIGludG8gVUktcz0KcGVjaWZpYyBl dmVudHMsIGl0IHNvdW5kcyA8QlI+bGlrZSB5b3Ugd2lsbCBuZWVkIHRvIHdyaXRlIGFuIG9WaXJ0 IFVJIFBsdWdpPQpuIFsxXSBpbiBvcmRlciB0byA8QlI+ZG8gdGhhdC4gSG93ZXZlciwgSSBiZWxp ZXZlIHRoYXQgdGhlIG9WaXJ0IFVJIFBsdWdpbnM9CiA8QlI+aW5mcmFzdHJ1Y3R1cmUgZG9lc24n dCBzdXBwb3J0IGhvb2tpbmcgdG8gZXZlbnRzIHN1Y2ggYXMgInRhYiA8QlI+eCB3YT0KcyBzZWxl Y3RlZCIgYW5kL29yICJidXR0b24gYiB3YXMgY2xpY2tlZCIuIDxCUj5JdCBkb2VzIGFsbG93IHlv dSB0byBhZGQgbmV3PQogKGN1c3RvbSkgdGFicy9zdWItdGFicy9idXR0b25zIG9mIDxCUj55b3Vy IG93biwgYW5kIHRoZXJlIGlzIGEgY2hhbmNlIHRoYXQ9CiBpdCBhbGxvd3MgeW91IHRvIGhvb2sg PEJSPmludG8gZXZlbnRzIHN1Y2ggYXMgJ3JvdyB4IHdhcyBzZWxlY3RlZCBpbiB0aGUgZz0Kcmlk Jy4gPEJSPjxCUj5AVm9qdGVjaCB3aWxsIGtub3cgYmV0dGVyLiBWb2p0ZWNoPzxCUj48QlI+aWYg eW91IGFyZSB0cnlpbmcgPQp0byBob29rIGludG8gZW5naW5lIGV2ZW50cyAoZS5nLiB5b3Ugd2Fu dCB0byA8QlI+cnVuIGEgc2NyaXB0IGV2ZXJ5IHRpbWUgYSA9ClZNIGlzIHN0YXJ0ZWQgaW4gb1Zp cnQsIG5vIG1hdHRlciBpZiA8QlI+dGhlIHVzZXIgc3RhcnRlZCBpdCBieSBjbGlja2luZyB0aD0K ZSAncnVuJyBidXR0b24gaW4gdGhlIG9WaXJ0LTxCUj5lbmdpbmUgd2ViYWRtaW4sIG9yIGludm9r ZWQgYSBSRVNUIEFQSSByZXF1PQplc3QsIG9yIGFuIFNESyA8QlI+Y29tbWFuZCksIHRoZW4gaXQg d2lsbCByZXF1aXJlIHNvbWUgc29ydCBvZiBhbiAiZW5naW5lLXA9Cmx1Z2luIiA8QlI+aW5mcmFz dHJ1Y3R1cmUgdGhhdCB3ZSBkb24ndCBoYXZlIGF0IHRoZSBtb21lbnQgQUZBSUsuIDxCUj50aGVy ZT0KIGlzIGEgY2hhbmNlIHRoYXQgZm9yIHNvbWUgb2YgdGhlIGV2ZW50cyB5b3Ugd2lsbCBiZSBh YmxlIDxCUj50byB1dGlsaXplIHRoPQplIFZEU00gaG9va3MgKGF0IHRoZSBIb3N0IGxldmVsKSBb Ml0uPEJSPjxCUj4tLS0tPEJSPlRoYW5rcyw8QlI+RWluYXY8QlI+PEI9ClI+WzFdIGh0dHA6Ly93 d3cub3ZpcnQub3JnL0ZlYXR1cmVzL1VJUGx1Z2luczxCUj48QlI+WzJdIGh0dHA6Ly93d3cub3Zp cnQubz0KcmcvVkRTTS1Ib29rczxCUj48QlI+PEJSPi0tLS0tIE9yaWdpbmFsIE1lc3NhZ2UgLS0t LS08QlI+Jmd0OyBGcm9tOiAiYWRpdHlhPQogbWFtaWR3YXIiICZsdDthZGl0eWEubWFtaWR3YXJA Z21haWwuY29tJmd0OzxCUj4mZ3Q7IFRvOiB1c2Vyc0BvdmlydC5vcmcsIGU9Cm5naW5lLWRldmVs QG92aXJ0Lm9yZzxCUj4mZ3Q7IFNlbnQ6IFRodXJzZGF5LCBNYXJjaCAxMywgMjAxNCAxMToyMzoz NSBBTTxCUj0KPiZndDsgU3ViamVjdDogW1VzZXJzXSBhZGRpbmcgc2NyaXB0czxCUj4mZ3Q7IDxC Uj4mZ3Q7IDxCUj4mZ3Q7IEkgd2FudCB0byBjPQpvbW1pdCBjaGFuZ2VzIHRvIHRoZSBlbmdpbmUg YnkgYWRkaW5nIHNvbWUgYmFzaCBzY3JpcHRzLjxCUj4mZ3Q7IHRoZSBzY3JpcHQ9CnMgc2hvdWxk IGJlIGludm9rZWQgb25jZSBhIGJ1dHRvbiBvciB0YWIgaXMgc2VsZWN0ZWQgaW4gdGhlPEJSPiZn dDsgd2ViYWRtaT0KbiBwb3J0YWwgYnkgdGhlIHVzZXIuPEJSPiZndDsgPEJSPiZndDsgY2FuIHNv bWVvbmUgZ3VpZGUgb24gYWNoaWV2aW5nIHRoaXMuPQo8QlI+Jmd0OyA8QlI+Jmd0OyAtLTxCUj4m Z3Q7IC1BZGl0eWEgTWFtaWR3YXI8QlI+Jmd0OyA8QlI+Jmd0OyBfX19fX19fX19fX189Cl9fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fPEJSPiZndDsgVXNlcnMgbWFpbGluZyBsaXN0 PEJSPiZndDsgVXNlcj0Kc0BvdmlydC5vcmc8QlI+Jmd0OyBodHRwOi8vbGlzdHMub3ZpcnQub3Jn L21haWxtYW4vbGlzdGluZm8vdXNlcnM8QlI+Jmd0OyA8PQpCUj48L0JPRFk+PC9IVE1MPj0KCi0t X0Q4NjUxRkI2LTQ2RjktNERGOC05OERELUQ5OTJFRTAzQjNFM18tLQoK --===============5663874115637835364==-- From gshereme at redhat.com Sat Mar 15 10:16:01 2014 Content-Type: multipart/mixed; boundary="===============6188261548665338783==" MIME-Version: 1.0 From: Greg Sheremeta To: users at ovirt.org Subject: Re: [Users] adding scripts Date: Sat, 15 Mar 2014 10:15:59 -0400 Message-ID: <965347974.29441.1394892959318.JavaMail.zimbra@redhat.com> In-Reply-To: 532447ee.a70e440a.3ce3.ffffd5f5@mx.google.com --===============6188261548665338783== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable ------=3D_Part_29440_1042558721.1394892959317 Content-Type: text/plain; charset=3Dutf-8 Content-Transfer-Encoding: quoted-printable There's not one html file like that, since we use GWT [1]. However, if you = =3D search for *.ui.xml files, you'll find all the GWT UIBinder files. That's t= =3D he place to start for simple UI tweaks. The application is partitioned into= =3D small components, so you'll have to do some digging. For example, each dia= =3D log has its own ui.xml file -- so if you want to tweak a specific dialog, y= =3D ou'll need to find the right file. Feel free to post questions about those = =3D to engine-devel and we can help you out.=3D20 Greg=3D20 [1] http://www.gwtproject.org/=3D20 ----- Original Message ----- > From: "Aditya Mamidwar" > To: "Einav Cohen" , "Vojtech Szocs" > Cc: engine-devel(a)ovirt.org, users(a)ovirt.org > Sent: Saturday, March 15, 2014 8:30:21 AM > Subject: Re: [Users] adding scripts > Hey thanks on the previous issue. > Also is there a way i can access WebAdmin.Html to add custom buttons and = =3D make > few tweaks for personal use? > I just cant find that file after using git. > Aditya Mamidwar > From: Einav Cohen > Sent: =3DE2=3D80=3D8E14-=3DE2=3D80=3D8E03-=3DE2=3D80=3D8E2014 01:21 > To: aditya mamidwar ; Vojtech Szocs > Cc: users(a)ovirt.org ; engine-devel(a)ovirt.org > Subject: Re: [Users] adding scripts > if you are trying to hook into UI-specific events, it sounds > like you will need to write an oVirt UI Plugin [1] in order to > do that. However, I believe that the oVirt UI Plugins > infrastructure doesn't support hooking to events such as "tab > x was selected" and/or "button b was clicked". > It does allow you to add new (custom) tabs/sub-tabs/buttons of > your own, and there is a chance that it allows you to hook > into events such as 'row x was selected in the grid'. > @Vojtech will know better. Vojtech? > if you are trying to hook into engine events (e.g. you want to > run a script every time a VM is started in oVirt, no matter if > the user started it by clicking the 'run' button in the oVirt- > engine webadmin, or invoked a REST API request, or an SDK > command), then it will require some sort of an "engine-plugin" > infrastructure that we don't have at the moment AFAIK. > there is a chance that for some of the events you will be able > to utilize the VDSM hooks (at the Host level) [2]. > ---- > Thanks, > Einav > [1] http://www.ovirt.org/Features/UIPlugins > [2] http://www.ovirt.org/VDSM-Hooks > ----- Original Message ----- > > From: "aditya mamidwar" > > To: users(a)ovirt.org, engine-devel(a)ovirt.org > > Sent: Thursday, March 13, 2014 11:23:35 AM > > Subject: [Users] adding scripts > > > > > > I want to commit changes to the engine by adding some bash scripts. > > the scripts should be invoked once a button or tab is selected in the > > webadmin portal by the user. > > > > can someone guide on achieving this. > > > > -- > > -Aditya Mamidwar > > > > _______________________________________________ > > Users mailing list > > Users(a)ovirt.org > > http://lists.ovirt.org/mailman/listinfo/users > > > _______________________________________________ > Users mailing list > Users(a)ovirt.org > http://lists.ovirt.org/mailman/listinfo/users ------=3D_Part_29440_1042558721.1394892959317 Content-Type: text/html; charset=3Dutf-8 Content-Transfer-Encoding: quoted-printable
There's not one html file like t= =3D hat, since we use GWT [1]. However, if you search for *.ui.xml files, you'l= =3D l find all the GWT UIBinder files. That's the place to start for simple UI = =3D tweaks. The application is partitioned into small components, so you'll hav= =3D e to do some digging. For example, each dialog has its own ui.xml file -- s= =3D o if you want to tweak a specific dialog, you'll need to find the right fil= =3D e. Feel free to post questions about those to engine-devel and we can help = =3D you out.

Greg

[1] http://www.gwtproject.org/


=3D
From: "Ad= =3D itya Mamidwar" <aditya.mamidwar(a)gmail.com>
To: "Einav Coh= en=3D " <ecohen(a)redhat.com>, "Vojtech Szocs" <vszocs(a)redhat.com><= br><=3D b>Cc: engine-devel(a)ovirt.org, users(a)ovirt.org
Sent: Satur= day,=3D March 15, 2014 8:30:21 AM
Subject: Re: [Users] adding scripts

Hey thanks on the previous issue.
Also is there a way i can access W= =3D ebAdmin.Html to add custom buttons and make few tweaks for personal use?I just cant find that file after using git.

Aditya Mamid= =3D war

From: Einav Cohen
Sent: =3DE2=3D80=3D8E14-=3DE2=3D8= 0=3D8E03-=3DE2=3D =3D80=3D8E2014 01:21
To: aditya mamidwar; Vojtech Szocs
Cc: users(a)ovirt.org; engine-devel(a)ovirt.org
Subject: Re: [Users] adding scripts

if you are tr= =3D ying to hook into UI-specific events, it sounds
like you will need to w= =3D rite an oVirt UI Plugin [1] in order to
do that. However, I believe tha= =3D t the oVirt UI Plugins
infrastructure doesn't support hooking to events= =3D such as "tab
x was selected" and/or "button b was clicked".
It doe= =3D s allow you to add new (custom) tabs/sub-tabs/buttons of
your own, and = =3D there is a chance that it allows you to hook
into events such as 'row x= =3D was selected in the grid'.

@Vojtech will know better. V= =3D ojtech?

if you are trying to hook into engine events (e.g= =3D . you want to
run a script every time a VM is started in oVirt, no matt= =3D er if
the user started it by clicking the 'run' button in the oVirt-engine webadmin, or invoked a REST API request, or an SDK
command), th= =3D en it will require some sort of an "engine-plugin"
infrastructure that = =3D we don't have at the moment AFAIK.
there is a chance that for some of t= =3D he events you will be able
to utilize the VDSM hooks (at the Host level= =3D ) [2].

----
Thanks,
Einav

[1] htt= =3D p://www.ovirt.org/Features/UIPlugins

[2] http://www.ovirt= =3D .org/VDSM-Hooks


----- Original Message -----
> = =3D From: "aditya mamidwar" <aditya.mamidwar(a)gmail.com>
> To: use= rs=3D @ovirt.org, engine-devel(a)ovirt.org
> Sent: Thursday, March 13, 2014= 1=3D 1:23:35 AM
> Subject: [Users] adding scripts
>
>
>= =3D ; I want to commit changes to the engine by adding some bash scripts.
&g= =3D t; the scripts should be invoked once a button or tab is selected in the> webadmin portal by the user.
>
> can someone guide on ac= =3D hieving this.
>
> --
> -Aditya Mamidwar
>
>= =3D _______________________________________________
> Users mailing list= =3D
> Users(a)ovirt.org
> http://lists.ovirt.org/mailman/listinfo/= us=3D ers
>

_______________________________________________
User= =3D s mailing list
Users(a)ovirt.org
http://lists.ovirt.org/mailman/listi= nf=3D o/users

------=3D_Part_29440_1042558721.1394892959317-- --===============6188261548665338783== Content-Type: multipart/alternative MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="attachment.bin" LS0tLS0tPV9QYXJ0XzI5NDQwXzEwNDI1NTg3MjEuMTM5NDg5Mjk1OTMxNwpDb250ZW50LVR5cGU6 IHRleHQvcGxhaW47IGNoYXJzZXQ9dXRmLTgKQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogcXVv dGVkLXByaW50YWJsZQoKVGhlcmUncyBub3Qgb25lIGh0bWwgZmlsZSBsaWtlIHRoYXQsIHNpbmNl IHdlIHVzZSBHV1QgWzFdLiBIb3dldmVyLCBpZiB5b3UgPQpzZWFyY2ggZm9yICoudWkueG1sIGZp bGVzLCB5b3UnbGwgZmluZCBhbGwgdGhlIEdXVCBVSUJpbmRlciBmaWxlcy4gVGhhdCdzIHQ9Cmhl IHBsYWNlIHRvIHN0YXJ0IGZvciBzaW1wbGUgVUkgdHdlYWtzLiBUaGUgYXBwbGljYXRpb24gaXMg cGFydGl0aW9uZWQgaW50bz0KIHNtYWxsIGNvbXBvbmVudHMsIHNvIHlvdSdsbCBoYXZlIHRvIGRv IHNvbWUgZGlnZ2luZy4gRm9yIGV4YW1wbGUsIGVhY2ggZGlhPQpsb2cgaGFzIGl0cyBvd24gdWku eG1sIGZpbGUgLS0gc28gaWYgeW91IHdhbnQgdG8gdHdlYWsgYSBzcGVjaWZpYyBkaWFsb2csIHk9 Cm91J2xsIG5lZWQgdG8gZmluZCB0aGUgcmlnaHQgZmlsZS4gRmVlbCBmcmVlIHRvIHBvc3QgcXVl c3Rpb25zIGFib3V0IHRob3NlID0KdG8gZW5naW5lLWRldmVsIGFuZCB3ZSBjYW4gaGVscCB5b3Ug b3V0Lj0yMAoKR3JlZz0yMAoKWzFdIGh0dHA6Ly93d3cuZ3d0cHJvamVjdC5vcmcvPTIwCgotLS0t LSBPcmlnaW5hbCBNZXNzYWdlIC0tLS0tCgo+IEZyb206ICJBZGl0eWEgTWFtaWR3YXIiIDxhZGl0 eWEubWFtaWR3YXJAZ21haWwuY29tPgo+IFRvOiAiRWluYXYgQ29oZW4iIDxlY29oZW5AcmVkaGF0 LmNvbT4sICJWb2p0ZWNoIFN6b2NzIiA8dnN6b2NzQHJlZGhhdC5jb209Cj4KPiBDYzogZW5naW5l LWRldmVsQG92aXJ0Lm9yZywgdXNlcnNAb3ZpcnQub3JnCj4gU2VudDogU2F0dXJkYXksIE1hcmNo IDE1LCAyMDE0IDg6MzA6MjEgQU0KPiBTdWJqZWN0OiBSZTogW1VzZXJzXSBhZGRpbmcgc2NyaXB0 cwoKPiBIZXkgdGhhbmtzIG9uIHRoZSBwcmV2aW91cyBpc3N1ZS4KPiBBbHNvIGlzIHRoZXJlIGEg d2F5IGkgY2FuIGFjY2VzcyBXZWJBZG1pbi5IdG1sIHRvIGFkZCBjdXN0b20gYnV0dG9ucyBhbmQg PQptYWtlCj4gZmV3IHR3ZWFrcyBmb3IgcGVyc29uYWwgdXNlPwo+IEkganVzdCBjYW50IGZpbmQg dGhhdCBmaWxlIGFmdGVyIHVzaW5nIGdpdC4KCj4gQWRpdHlhIE1hbWlkd2FyCgo+IEZyb206IEVp bmF2IENvaGVuCj4gU2VudDogPUUyPTgwPThFMTQtPUUyPTgwPThFMDMtPUUyPTgwPThFMjAxNCAw MToyMQo+IFRvOiBhZGl0eWEgbWFtaWR3YXIgOyBWb2p0ZWNoIFN6b2NzCj4gQ2M6IHVzZXJzQG92 aXJ0Lm9yZyA7IGVuZ2luZS1kZXZlbEBvdmlydC5vcmcKPiBTdWJqZWN0OiBSZTogW1VzZXJzXSBh ZGRpbmcgc2NyaXB0cwoKPiBpZiB5b3UgYXJlIHRyeWluZyB0byBob29rIGludG8gVUktc3BlY2lm aWMgZXZlbnRzLCBpdCBzb3VuZHMKPiBsaWtlIHlvdSB3aWxsIG5lZWQgdG8gd3JpdGUgYW4gb1Zp cnQgVUkgUGx1Z2luIFsxXSBpbiBvcmRlciB0bwo+IGRvIHRoYXQuIEhvd2V2ZXIsIEkgYmVsaWV2 ZSB0aGF0IHRoZSBvVmlydCBVSSBQbHVnaW5zCj4gaW5mcmFzdHJ1Y3R1cmUgZG9lc24ndCBzdXBw b3J0IGhvb2tpbmcgdG8gZXZlbnRzIHN1Y2ggYXMgInRhYgo+IHggd2FzIHNlbGVjdGVkIiBhbmQv b3IgImJ1dHRvbiBiIHdhcyBjbGlja2VkIi4KPiBJdCBkb2VzIGFsbG93IHlvdSB0byBhZGQgbmV3 IChjdXN0b20pIHRhYnMvc3ViLXRhYnMvYnV0dG9ucyBvZgo+IHlvdXIgb3duLCBhbmQgdGhlcmUg aXMgYSBjaGFuY2UgdGhhdCBpdCBhbGxvd3MgeW91IHRvIGhvb2sKPiBpbnRvIGV2ZW50cyBzdWNo IGFzICdyb3cgeCB3YXMgc2VsZWN0ZWQgaW4gdGhlIGdyaWQnLgoKPiBAVm9qdGVjaCB3aWxsIGtu b3cgYmV0dGVyLiBWb2p0ZWNoPwoKPiBpZiB5b3UgYXJlIHRyeWluZyB0byBob29rIGludG8gZW5n aW5lIGV2ZW50cyAoZS5nLiB5b3Ugd2FudCB0bwo+IHJ1biBhIHNjcmlwdCBldmVyeSB0aW1lIGEg Vk0gaXMgc3RhcnRlZCBpbiBvVmlydCwgbm8gbWF0dGVyIGlmCj4gdGhlIHVzZXIgc3RhcnRlZCBp dCBieSBjbGlja2luZyB0aGUgJ3J1bicgYnV0dG9uIGluIHRoZSBvVmlydC0KPiBlbmdpbmUgd2Vi YWRtaW4sIG9yIGludm9rZWQgYSBSRVNUIEFQSSByZXF1ZXN0LCBvciBhbiBTREsKPiBjb21tYW5k KSwgdGhlbiBpdCB3aWxsIHJlcXVpcmUgc29tZSBzb3J0IG9mIGFuICJlbmdpbmUtcGx1Z2luIgo+ IGluZnJhc3RydWN0dXJlIHRoYXQgd2UgZG9uJ3QgaGF2ZSBhdCB0aGUgbW9tZW50IEFGQUlLLgo+ IHRoZXJlIGlzIGEgY2hhbmNlIHRoYXQgZm9yIHNvbWUgb2YgdGhlIGV2ZW50cyB5b3Ugd2lsbCBi ZSBhYmxlCj4gdG8gdXRpbGl6ZSB0aGUgVkRTTSBob29rcyAoYXQgdGhlIEhvc3QgbGV2ZWwpIFsy XS4KCj4gLS0tLQo+IFRoYW5rcywKPiBFaW5hdgoKPiBbMV0gaHR0cDovL3d3dy5vdmlydC5vcmcv RmVhdHVyZXMvVUlQbHVnaW5zCgo+IFsyXSBodHRwOi8vd3d3Lm92aXJ0Lm9yZy9WRFNNLUhvb2tz Cgo+IC0tLS0tIE9yaWdpbmFsIE1lc3NhZ2UgLS0tLS0KPiA+IEZyb206ICJhZGl0eWEgbWFtaWR3 YXIiIDxhZGl0eWEubWFtaWR3YXJAZ21haWwuY29tPgo+ID4gVG86IHVzZXJzQG92aXJ0Lm9yZywg ZW5naW5lLWRldmVsQG92aXJ0Lm9yZwo+ID4gU2VudDogVGh1cnNkYXksIE1hcmNoIDEzLCAyMDE0 IDExOjIzOjM1IEFNCj4gPiBTdWJqZWN0OiBbVXNlcnNdIGFkZGluZyBzY3JpcHRzCj4gPgo+ID4K PiA+IEkgd2FudCB0byBjb21taXQgY2hhbmdlcyB0byB0aGUgZW5naW5lIGJ5IGFkZGluZyBzb21l IGJhc2ggc2NyaXB0cy4KPiA+IHRoZSBzY3JpcHRzIHNob3VsZCBiZSBpbnZva2VkIG9uY2UgYSBi dXR0b24gb3IgdGFiIGlzIHNlbGVjdGVkIGluIHRoZQo+ID4gd2ViYWRtaW4gcG9ydGFsIGJ5IHRo ZSB1c2VyLgo+ID4KPiA+IGNhbiBzb21lb25lIGd1aWRlIG9uIGFjaGlldmluZyB0aGlzLgo+ID4K PiA+IC0tCj4gPiAtQWRpdHlhIE1hbWlkd2FyCj4gPgo+ID4gX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX18KPiA+IFVzZXJzIG1haWxpbmcgbGlzdAo+ID4gVXNl cnNAb3ZpcnQub3JnCj4gPiBodHRwOi8vbGlzdHMub3ZpcnQub3JnL21haWxtYW4vbGlzdGluZm8v dXNlcnMKPiA+Cgo+IF9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fCj4gVXNlcnMgbWFpbGluZyBsaXN0Cj4gVXNlcnNAb3ZpcnQub3JnCj4gaHR0cDovL2xpc3Rz Lm92aXJ0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL3VzZXJzCgotLS0tLS09X1BhcnRfMjk0NDBfMTA0 MjU1ODcyMS4xMzk0ODkyOTU5MzE3CkNvbnRlbnQtVHlwZTogdGV4dC9odG1sOyBjaGFyc2V0PXV0 Zi04CkNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IHF1b3RlZC1wcmludGFibGUKCjxodG1sPjxi b2R5PjxkaXYgc3R5bGU9M0QiZm9udC1mYW1pbHk6IHRpbWVzIG5ldyByb21hbiwgbmV3IHlvcmss IHRpbWVzLCBzZT0KcmlmOyBmb250LXNpemU6IDEycHQ7IGNvbG9yOiAjMDAwMDAwIj48ZGl2PlRo ZXJlJ3Mgbm90IG9uZSBodG1sIGZpbGUgbGlrZSB0PQpoYXQsIHNpbmNlIHdlIHVzZSBHV1QgWzFd LiBIb3dldmVyLCBpZiB5b3Ugc2VhcmNoIGZvciAqLnVpLnhtbCBmaWxlcywgeW91J2w9CmwgZmlu ZCBhbGwgdGhlIEdXVCBVSUJpbmRlciBmaWxlcy4gVGhhdCdzIHRoZSBwbGFjZSB0byBzdGFydCBm b3Igc2ltcGxlIFVJID0KdHdlYWtzLiBUaGUgYXBwbGljYXRpb24gaXMgcGFydGl0aW9uZWQgaW50 byBzbWFsbCBjb21wb25lbnRzLCBzbyB5b3UnbGwgaGF2PQplIHRvIGRvIHNvbWUgZGlnZ2luZy4g Rm9yIGV4YW1wbGUsIGVhY2ggZGlhbG9nIGhhcyBpdHMgb3duIHVpLnhtbCBmaWxlIC0tIHM9Cm8g aWYgeW91IHdhbnQgdG8gdHdlYWsgYSBzcGVjaWZpYyBkaWFsb2csIHlvdSdsbCBuZWVkIHRvIGZp bmQgdGhlIHJpZ2h0IGZpbD0KZS4gRmVlbCBmcmVlIHRvIHBvc3QgcXVlc3Rpb25zIGFib3V0IHRo b3NlIHRvIGVuZ2luZS1kZXZlbCBhbmQgd2UgY2FuIGhlbHAgPQp5b3Ugb3V0LjwvZGl2PjxkaXY+ PGJyPjwvZGl2PjxkaXY+R3JlZzwvZGl2PjxkaXY+PGJyPjwvZGl2PjxkaXY+WzFdJm5ic3A7PGE9 CiBocmVmPTNEImh0dHA6Ly93d3cuZ3d0cHJvamVjdC5vcmcvIiBkYXRhLW1jZS1ocmVmPTNEImh0 dHA6Ly93d3cuZ3d0cHJvamVjdD0KLm9yZy8iPmh0dHA6Ly93d3cuZ3d0cHJvamVjdC5vcmcvPC9h PjwvZGl2PjxkaXY+PGJyPjwvZGl2PjxociBpZD0zRCJ6d2NociI+PQo8YmxvY2txdW90ZSBzdHls ZT0zRCJib3JkZXItbGVmdDoycHggc29saWQgIzEwMTBGRjttYXJnaW4tbGVmdDo1cHg7cGFkZGlu Zy09CmxlZnQ6NXB4O2NvbG9yOiMwMDA7Zm9udC13ZWlnaHQ6bm9ybWFsO2ZvbnQtc3R5bGU6bm9y bWFsO3RleHQtZGVjb3JhdGlvbjpubz0KbmU7Zm9udC1mYW1pbHk6SGVsdmV0aWNhLEFyaWFsLHNh bnMtc2VyaWY7Zm9udC1zaXplOjEycHQ7IiBkYXRhLW1jZS1zdHlsZT0KPTNEImJvcmRlci1sZWZ0 OiAycHggc29saWQgIzEwMTBGRjsgbWFyZ2luLWxlZnQ6IDVweDsgcGFkZGluZy1sZWZ0OiA1cHg7 IGNvPQpsb3I6ICMwMDA7IGZvbnQtd2VpZ2h0OiBub3JtYWw7IGZvbnQtc3R5bGU6IG5vcm1hbDsg dGV4dC1kZWNvcmF0aW9uOiBub25lOyA9CmZvbnQtZmFtaWx5OiBIZWx2ZXRpY2EsQXJpYWwsc2Fu cy1zZXJpZjsgZm9udC1zaXplOiAxMnB0OyI+PGI+RnJvbTogPC9iPiJBZD0KaXR5YSBNYW1pZHdh ciIgJmx0O2FkaXR5YS5tYW1pZHdhckBnbWFpbC5jb20mZ3Q7PGJyPjxiPlRvOiA8L2I+IkVpbmF2 IENvaGVuPQoiICZsdDtlY29oZW5AcmVkaGF0LmNvbSZndDssICJWb2p0ZWNoIFN6b2NzIiAmbHQ7 dnN6b2NzQHJlZGhhdC5jb20mZ3Q7PGJyPjw9CmI+Q2M6IDwvYj5lbmdpbmUtZGV2ZWxAb3ZpcnQu b3JnLCB1c2Vyc0BvdmlydC5vcmc8YnI+PGI+U2VudDogPC9iPlNhdHVyZGF5LD0KIE1hcmNoIDE1 LCAyMDE0IDg6MzA6MjEgQU08YnI+PGI+U3ViamVjdDogPC9iPlJlOiBbVXNlcnNdIGFkZGluZyBz Y3JpcHRzPGJyPQo+PGRpdj48YnI+PC9kaXY+PGRpdj48ZGl2IHN0eWxlPTNEIkZPTlQtU0laRTog MTFwdDsgRk9OVC1GQU1JTFk6IENhbGlicmksc2E9Cm5zLXNlcmlmIiBkYXRhLW1jZS1zdHlsZT0z RCJmb250LXNpemU6IDExcHQ7IGZvbnQtZmFtaWx5OiBDYWxpYnJpLHNhbnMtc2VyaT0KZjsiPkhl eSB0aGFua3Mgb24gdGhlIHByZXZpb3VzIGlzc3VlLjxicj5BbHNvIGlzIHRoZXJlIGEgd2F5IGkg Y2FuIGFjY2VzcyBXPQplYkFkbWluLkh0bWwgdG8gYWRkIGN1c3RvbSBidXR0b25zIGFuZCBtYWtl IGZldyB0d2Vha3MgZm9yIHBlcnNvbmFsIHVzZT88YnI9Cj5JIGp1c3QgY2FudCBmaW5kIHRoYXQg ZmlsZSBhZnRlciB1c2luZyBnaXQuPGJyPjxkaXY+PGJyPjwvZGl2PkFkaXR5YSBNYW1pZD0Kd2Fy PC9kaXY+PC9kaXY+PGRpdiBkaXI9M0QibHRyIj48aHI+PHNwYW4gc3R5bGU9M0QiRk9OVC1TSVpF OiAxMXB0OyBGT05ULUZBPQpNSUxZOiBDYWxpYnJpLHNhbnMtc2VyaWY7IEZPTlQtV0VJR0hUOiBi b2xkIiBkYXRhLW1jZS1zdHlsZT0zRCJmb250LXNpemU6IDE9CjFwdDsgZm9udC1mYW1pbHk6IENh bGlicmksc2Fucy1zZXJpZjsgZm9udC13ZWlnaHQ6IGJvbGQ7Ij5Gcm9tOiA8L3NwYW4+PHNwYT0K biBzdHlsZT0zRCJGT05ULVNJWkU6IDExcHQ7IEZPTlQtRkFNSUxZOiBDYWxpYnJpLHNhbnMtc2Vy aWYiIGRhdGEtbWNlLXN0eWxlPQo9M0QiZm9udC1zaXplOiAxMXB0OyBmb250LWZhbWlseTogQ2Fs aWJyaSxzYW5zLXNlcmlmOyI+PGEgaHJlZj0zRCJtYWlsdG86ZWM9Cm9oZW5AcmVkaGF0LmNvbSIg dGFyZ2V0PTNEIl9ibGFuayIgZGF0YS1tY2UtaHJlZj0zRCJtYWlsdG86ZWNvaGVuQHJlZGhhdC5j bz0KbSI+RWluYXYgQ29oZW48L2E+PC9zcGFuPjxicj48c3BhbiBzdHlsZT0zRCJGT05ULVNJWkU6 IDExcHQ7IEZPTlQtRkFNSUxZOiBDPQphbGlicmksc2Fucy1zZXJpZjsgRk9OVC1XRUlHSFQ6IGJv bGQiIGRhdGEtbWNlLXN0eWxlPTNEImZvbnQtc2l6ZTogMTFwdDsgZm89Cm50LWZhbWlseTogQ2Fs aWJyaSxzYW5zLXNlcmlmOyBmb250LXdlaWdodDogYm9sZDsiPlNlbnQ6IDwvc3Bhbj48c3BhbiBz dHlsZT0KPTNEIkZPTlQtU0laRTogMTFwdDsgRk9OVC1GQU1JTFk6IENhbGlicmksc2Fucy1zZXJp ZiIgZGF0YS1tY2Utc3R5bGU9M0QiZm9uPQp0LXNpemU6IDExcHQ7IGZvbnQtZmFtaWx5OiBDYWxp YnJpLHNhbnMtc2VyaWY7Ij49RTI9ODA9OEUxNC09RTI9ODA9OEUwMy09RTI9Cj04MD04RTIwMTQg MDE6MjE8L3NwYW4+PGJyPjxzcGFuIHN0eWxlPTNEIkZPTlQtU0laRTogMTFwdDsgRk9OVC1GQU1J TFk6IENhbD0KaWJyaSxzYW5zLXNlcmlmOyBGT05ULVdFSUdIVDogYm9sZCIgZGF0YS1tY2Utc3R5 bGU9M0QiZm9udC1zaXplOiAxMXB0OyBmb250PQotZmFtaWx5OiBDYWxpYnJpLHNhbnMtc2VyaWY7 IGZvbnQtd2VpZ2h0OiBib2xkOyI+VG86IDwvc3Bhbj48c3BhbiBzdHlsZT0zRCI9CkZPTlQtU0la RTogMTFwdDsgRk9OVC1GQU1JTFk6IENhbGlicmksc2Fucy1zZXJpZiIgZGF0YS1tY2Utc3R5bGU9 M0QiZm9udC1zaT0KemU6IDExcHQ7IGZvbnQtZmFtaWx5OiBDYWxpYnJpLHNhbnMtc2VyaWY7Ij48 YSBocmVmPTNEIm1haWx0bzphZGl0eWEubWFtaWR3PQphckBnbWFpbC5jb20iIHRhcmdldD0zRCJf YmxhbmsiIGRhdGEtbWNlLWhyZWY9M0QibWFpbHRvOmFkaXR5YS5tYW1pZHdhckBnbWE9CmlsLmNv bSI+YWRpdHlhIG1hbWlkd2FyPC9hPjsgPGEgaHJlZj0zRCJtYWlsdG86dnN6b2NzQHJlZGhhdC5j b20iIHRhcmdldD0zRD0KIl9ibGFuayIgZGF0YS1tY2UtaHJlZj0zRCJtYWlsdG86dnN6b2NzQHJl ZGhhdC5jb20iPlZvanRlY2ggU3pvY3M8L2E+PC9zcGFuPQo+PGJyPjxzcGFuIHN0eWxlPTNEIkZP TlQtU0laRTogMTFwdDsgRk9OVC1GQU1JTFk6IENhbGlicmksc2Fucy1zZXJpZjsgRk9OVC09CldF SUdIVDogYm9sZCIgZGF0YS1tY2Utc3R5bGU9M0QiZm9udC1zaXplOiAxMXB0OyBmb250LWZhbWls eTogQ2FsaWJyaSxzYW5zLT0Kc2VyaWY7IGZvbnQtd2VpZ2h0OiBib2xkOyI+Q2M6IDwvc3Bhbj48 c3BhbiBzdHlsZT0zRCJGT05ULVNJWkU6IDExcHQ7IEZPTlQtPQpGQU1JTFk6IENhbGlicmksc2Fu cy1zZXJpZiIgZGF0YS1tY2Utc3R5bGU9M0QiZm9udC1zaXplOiAxMXB0OyBmb250LWZhbWlseTo9 CiBDYWxpYnJpLHNhbnMtc2VyaWY7Ij48YSBocmVmPTNEIm1haWx0bzp1c2Vyc0BvdmlydC5vcmci IHRhcmdldD0zRCJfYmxhbmsiID0KZGF0YS1tY2UtaHJlZj0zRCJtYWlsdG86dXNlcnNAb3ZpcnQu b3JnIj51c2Vyc0BvdmlydC5vcmc8L2E+OyA8YSBocmVmPTNEIm1hPQppbHRvOmVuZ2luZS1kZXZl bEBvdmlydC5vcmciIHRhcmdldD0zRCJfYmxhbmsiIGRhdGEtbWNlLWhyZWY9M0QibWFpbHRvOmVu Z2k9Cm5lLWRldmVsQG92aXJ0Lm9yZyI+ZW5naW5lLWRldmVsQG92aXJ0Lm9yZzwvYT48L3NwYW4+ PGJyPjxzcGFuIHN0eWxlPTNEIkZPTj0KVC1TSVpFOiAxMXB0OyBGT05ULUZBTUlMWTogQ2FsaWJy aSxzYW5zLXNlcmlmOyBGT05ULVdFSUdIVDogYm9sZCIgZGF0YS1tY2UtPQpzdHlsZT0zRCJmb250 LXNpemU6IDExcHQ7IGZvbnQtZmFtaWx5OiBDYWxpYnJpLHNhbnMtc2VyaWY7IGZvbnQtd2VpZ2h0 OiBib2w9CmQ7Ij5TdWJqZWN0OiA8L3NwYW4+PHNwYW4gc3R5bGU9M0QiRk9OVC1TSVpFOiAxMXB0 OyBGT05ULUZBTUlMWTogQ2FsaWJyaSxzYT0KbnMtc2VyaWYiIGRhdGEtbWNlLXN0eWxlPTNEImZv bnQtc2l6ZTogMTFwdDsgZm9udC1mYW1pbHk6IENhbGlicmksc2Fucy1zZXJpPQpmOyI+UmU6IFtV c2Vyc10gYWRkaW5nIHNjcmlwdHM8L3NwYW4+PGJyPjxkaXY+PGJyPjwvZGl2PjwvZGl2PmlmIHlv dSBhcmUgdHI9CnlpbmcgdG8gaG9vayBpbnRvIFVJLXNwZWNpZmljIGV2ZW50cywgaXQgc291bmRz IDxicj5saWtlIHlvdSB3aWxsIG5lZWQgdG8gdz0Kcml0ZSBhbiBvVmlydCBVSSBQbHVnaW4gWzFd IGluIG9yZGVyIHRvIDxicj5kbyB0aGF0LiBIb3dldmVyLCBJIGJlbGlldmUgdGhhPQp0IHRoZSBv VmlydCBVSSBQbHVnaW5zIDxicj5pbmZyYXN0cnVjdHVyZSBkb2Vzbid0IHN1cHBvcnQgaG9va2lu ZyB0byBldmVudHM9CiBzdWNoIGFzICJ0YWIgPGJyPnggd2FzIHNlbGVjdGVkIiBhbmQvb3IgImJ1 dHRvbiBiIHdhcyBjbGlja2VkIi4gPGJyPkl0IGRvZT0KcyBhbGxvdyB5b3UgdG8gYWRkIG5ldyAo Y3VzdG9tKSB0YWJzL3N1Yi10YWJzL2J1dHRvbnMgb2YgPGJyPnlvdXIgb3duLCBhbmQgPQp0aGVy ZSBpcyBhIGNoYW5jZSB0aGF0IGl0IGFsbG93cyB5b3UgdG8gaG9vayA8YnI+aW50byBldmVudHMg c3VjaCBhcyAncm93IHg9CiB3YXMgc2VsZWN0ZWQgaW4gdGhlIGdyaWQnLiA8YnI+PGRpdj48YnI+ PC9kaXY+QFZvanRlY2ggd2lsbCBrbm93IGJldHRlci4gVj0Kb2p0ZWNoPzxicj48ZGl2Pjxicj48 L2Rpdj5pZiB5b3UgYXJlIHRyeWluZyB0byBob29rIGludG8gZW5naW5lIGV2ZW50cyAoZS5nPQou IHlvdSB3YW50IHRvIDxicj5ydW4gYSBzY3JpcHQgZXZlcnkgdGltZSBhIFZNIGlzIHN0YXJ0ZWQg aW4gb1ZpcnQsIG5vIG1hdHQ9CmVyIGlmIDxicj50aGUgdXNlciBzdGFydGVkIGl0IGJ5IGNsaWNr aW5nIHRoZSAncnVuJyBidXR0b24gaW4gdGhlIG9WaXJ0LTxicj0KPmVuZ2luZSB3ZWJhZG1pbiwg b3IgaW52b2tlZCBhIFJFU1QgQVBJIHJlcXVlc3QsIG9yIGFuIFNESyA8YnI+Y29tbWFuZCksIHRo PQplbiBpdCB3aWxsIHJlcXVpcmUgc29tZSBzb3J0IG9mIGFuICJlbmdpbmUtcGx1Z2luIiA8YnI+ aW5mcmFzdHJ1Y3R1cmUgdGhhdCA9CndlIGRvbid0IGhhdmUgYXQgdGhlIG1vbWVudCBBRkFJSy4g PGJyPnRoZXJlIGlzIGEgY2hhbmNlIHRoYXQgZm9yIHNvbWUgb2YgdD0KaGUgZXZlbnRzIHlvdSB3 aWxsIGJlIGFibGUgPGJyPnRvIHV0aWxpemUgdGhlIFZEU00gaG9va3MgKGF0IHRoZSBIb3N0IGxl dmVsPQopIFsyXS48YnI+PGRpdj48YnI+PC9kaXY+LS0tLTxicj5UaGFua3MsPGJyPkVpbmF2PGJy PjxkaXY+PGJyPjwvZGl2PlsxXSBodHQ9CnA6Ly93d3cub3ZpcnQub3JnL0ZlYXR1cmVzL1VJUGx1 Z2luczxicj48ZGl2Pjxicj48L2Rpdj5bMl0gaHR0cDovL3d3dy5vdmlydD0KLm9yZy9WRFNNLUhv b2tzPGJyPjxkaXY+PGJyPjwvZGl2Pjxicj4tLS0tLSBPcmlnaW5hbCBNZXNzYWdlIC0tLS0tPGJy PiZndDsgPQpGcm9tOiAiYWRpdHlhIG1hbWlkd2FyIiAmbHQ7YWRpdHlhLm1hbWlkd2FyQGdtYWls LmNvbSZndDs8YnI+Jmd0OyBUbzogdXNlcnM9CkBvdmlydC5vcmcsIGVuZ2luZS1kZXZlbEBvdmly dC5vcmc8YnI+Jmd0OyBTZW50OiBUaHVyc2RheSwgTWFyY2ggMTMsIDIwMTQgMT0KMToyMzozNSBB TTxicj4mZ3Q7IFN1YmplY3Q6IFtVc2Vyc10gYWRkaW5nIHNjcmlwdHM8YnI+Jmd0OyA8YnI+Jmd0 OyA8YnI+Jmd0PQo7IEkgd2FudCB0byBjb21taXQgY2hhbmdlcyB0byB0aGUgZW5naW5lIGJ5IGFk ZGluZyBzb21lIGJhc2ggc2NyaXB0cy48YnI+Jmc9CnQ7IHRoZSBzY3JpcHRzIHNob3VsZCBiZSBp bnZva2VkIG9uY2UgYSBidXR0b24gb3IgdGFiIGlzIHNlbGVjdGVkIGluIHRoZTxicj0KPiZndDsg d2ViYWRtaW4gcG9ydGFsIGJ5IHRoZSB1c2VyLjxicj4mZ3Q7IDxicj4mZ3Q7IGNhbiBzb21lb25l IGd1aWRlIG9uIGFjPQpoaWV2aW5nIHRoaXMuPGJyPiZndDsgPGJyPiZndDsgLS08YnI+Jmd0OyAt QWRpdHlhIE1hbWlkd2FyPGJyPiZndDsgPGJyPiZndDs9CiBfX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fXzxicj4mZ3Q7IFVzZXJzIG1haWxpbmcgbGlzdD0KPGJy PiZndDsgVXNlcnNAb3ZpcnQub3JnPGJyPiZndDsgaHR0cDovL2xpc3RzLm92aXJ0Lm9yZy9tYWls bWFuL2xpc3RpbmZvL3VzPQplcnM8YnI+Jmd0OyA8YnI+PGJyPl9fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fPGJyPlVzZXI9CnMgbWFpbGluZyBsaXN0PGJyPlVz ZXJzQG92aXJ0Lm9yZzxicj5odHRwOi8vbGlzdHMub3ZpcnQub3JnL21haWxtYW4vbGlzdGluZj0K by91c2Vyczxicj48L2Jsb2NrcXVvdGU+PGRpdj48YnI+PC9kaXY+PC9kaXY+PC9ib2R5PjwvaHRt bD4KLS0tLS0tPV9QYXJ0XzI5NDQwXzEwNDI1NTg3MjEuMTM5NDg5Mjk1OTMxNy0tCg== --===============6188261548665338783==-- From ecohen at redhat.com Sun Mar 16 14:04:45 2014 Content-Type: multipart/mixed; boundary="===============8835330270875302695==" MIME-Version: 1.0 From: Einav Cohen To: users at ovirt.org Subject: Re: [Users] adding scripts Date: Sun, 16 Mar 2014 14:04:43 -0400 Message-ID: <852285915.211656.1394993083434.JavaMail.zimbra@redhat.com> In-Reply-To: 965347974.29441.1394892959318.JavaMail.zimbra@redhat.com --===============8835330270875302695== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable may I ask what is the general purpose of these buttons that you = would like to add and where (in the GUI) would you like to add = them? if you would like to add buttons to existing main-tab(s) / sub- tab(s), the way to go is to write a UI Plugin that does that = (especially if you intend these buttons to do something very = specific for your needs). = If you would like to add these buttons elsewhere, you will = need to follow Greg's instructions and dig into the code for = the specific needed location. = > I want to commit changes to the engine... = note that we can push into the code only things that make sense = to include in oVirt (i.e. things that will be useful for typical = oVirt users); again, if these buttons will do something very = specific for your own needs, you should definitely utilize the = UI Plugins infrastructure instead. = > ... and make few tweaks for personal use... if these tweaks are in the "branding" area (i.e. if you want to = change main color themes, top-left image on the top banner, etc), = then writing your own branding [1] is the way to go [you can = override only part of the branding (depending on what you would = like to tweak), you don't actually need to come up with a = complete alternative branding]. = ---- Thanks, Einav [1] http://www.ovirt.org/Feature/Branding ----- Original Message ----- > From: "Greg Sheremeta" > To: "Aditya Mamidwar" > Cc: engine-devel(a)ovirt.org, users(a)ovirt.org > Sent: Saturday, March 15, 2014 10:15:59 AM > Subject: Re: [Users] adding scripts > = > There's not one html file like that, since we use GWT [1]. However, if you > search for *.ui.xml files, you'll find all the GWT UIBinder files. That's > the place to start for simple UI tweaks. The application is partitioned i= nto > small components, so you'll have to do some digging. For example, each > dialog has its own ui.xml file -- so if you want to tweak a specific dial= og, > you'll need to find the right file. Feel free to post questions about tho= se > to engine-devel and we can help you out. > = > Greg > = > [1] http://www.gwtproject.org/ > = > = > = > = > From: "Aditya Mamidwar" > To: "Einav Cohen" , "Vojtech Szocs" > Cc: engine-devel(a)ovirt.org, users(a)ovirt.org > Sent: Saturday, March 15, 2014 8:30:21 AM > Subject: Re: [Users] adding scripts > = > Hey thanks on the previous issue. > Also is there a way i can access WebAdmin.Html to add custom buttons and = make > few tweaks for personal use? > I just cant find that file after using git. > = > Aditya Mamidwar > = > From: Einav Cohen > Sent: =E2=80=8E14-=E2=80=8E03-=E2=80=8E2014 01:21 > To: aditya mamidwar ; Vojtech Szocs > Cc: users(a)ovirt.org ; engine-devel(a)ovirt.org > Subject: Re: [Users] adding scripts > = > if you are trying to hook into UI-specific events, it sounds > like you will need to write an oVirt UI Plugin [1] in order to > do that. However, I believe that the oVirt UI Plugins > infrastructure doesn't support hooking to events such as "tab > x was selected" and/or "button b was clicked". > It does allow you to add new (custom) tabs/sub-tabs/buttons of > your own, and there is a chance that it allows you to hook > into events such as 'row x was selected in the grid'. > = > @Vojtech will know better. Vojtech? > = > if you are trying to hook into engine events (e.g. you want to > run a script every time a VM is started in oVirt, no matter if > the user started it by clicking the 'run' button in the oVirt- > engine webadmin, or invoked a REST API request, or an SDK > command), then it will require some sort of an "engine-plugin" > infrastructure that we don't have at the moment AFAIK. > there is a chance that for some of the events you will be able > to utilize the VDSM hooks (at the Host level) [2]. > = > ---- > Thanks, > Einav > = > [1] http://www.ovirt.org/Features/UIPlugins > = > [2] http://www.ovirt.org/VDSM-Hooks > = > = > ----- Original Message ----- > > From: "aditya mamidwar" > > To: users(a)ovirt.org, engine-devel(a)ovirt.org > > Sent: Thursday, March 13, 2014 11:23:35 AM > > Subject: [Users] adding scripts > > = > > = > > I want to commit changes to the engine by adding some bash scripts. > > the scripts should be invoked once a button or tab is selected in the > > webadmin portal by the user. > > = > > can someone guide on achieving this. > > = > > -- > > -Aditya Mamidwar > > = > > _______________________________________________ > > Users mailing list > > Users(a)ovirt.org > > http://lists.ovirt.org/mailman/listinfo/users > > = > = > _______________________________________________ > Users mailing list > Users(a)ovirt.org > http://lists.ovirt.org/mailman/listinfo/users > = > = > _______________________________________________ > Users mailing list > Users(a)ovirt.org > http://lists.ovirt.org/mailman/listinfo/users > --===============8835330270875302695==-- From awels at redhat.com Mon Mar 17 08:22:52 2014 Content-Type: multipart/mixed; boundary="===============8597184518623732320==" MIME-Version: 1.0 From: Alexander Wels To: users at ovirt.org Subject: Re: [Users] [Engine-devel] adding scripts Date: Mon, 17 Mar 2014 08:22:48 -0400 Message-ID: <2582932.ip0y7S9grx@awels> In-Reply-To: 532447ee.a70e440a.3ce3.ffffd5f5@mx.google.com --===============8597184518623732320== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Aditya, That is because that file doesn't exist. We map that name to a servlet in = web.xml. If you want to modify the GWT host page take a look at = GwtDynamicHostPageServlet.java and its sub classes (for user portal and = webadmin). As well as GwtHostPage.jsp. You will find there is almost nothin= g in = that page as all the HTML is being generated at runtime using GWT. Since you are not really explaining what you are trying to do we can't help = you better on the best strategy to achieve what you want. Alexander On Saturday, March 15, 2014 06:00:21 PM Aditya Mamidwar wrote: > Hey thanks on the previous issue. > Also is there a way i can access WebAdmin.Html to add custom buttons and > make few tweaks for personal use? I just cant find that file after using > git. > = > Aditya Mamidwar > = > -----Original Message----- > From: "Einav Cohen" > Sent: =E2=80=8E14-=E2=80=8E03-=E2=80=8E2014 01:21 > To: "aditya mamidwar" ; "Vojtech Szocs" > Cc: "users(a)ovirt.org" ; > "engine-devel(a)ovirt.org" Subject: Re: [Users] > adding scripts > = > if you are trying to hook into UI-specific events, it sounds > like you will need to write an oVirt UI Plugin [1] in order to > do that. However, I believe that the oVirt UI Plugins > infrastructure doesn't support hooking to events such as "tab > x was selected" and/or "button b was clicked". > It does allow you to add new (custom) tabs/sub-tabs/buttons of > your own, and there is a chance that it allows you to hook > into events such as 'row x was selected in the grid'. > = > @Vojtech will know better. Vojtech? > = > if you are trying to hook into engine events (e.g. you want to > run a script every time a VM is started in oVirt, no matter if > the user started it by clicking the 'run' button in the oVirt- > engine webadmin, or invoked a REST API request, or an SDK > command), then it will require some sort of an "engine-plugin" > infrastructure that we don't have at the moment AFAIK. > there is a chance that for some of the events you will be able > to utilize the VDSM hooks (at the Host level) [2]. > = > ---- > Thanks, > Einav > = > [1] http://www.ovirt.org/Features/UIPlugins > = > [2] http://www.ovirt.org/VDSM-Hooks > = > = > ----- Original Message ----- > = > > From: "aditya mamidwar" > > To: users(a)ovirt.org, engine-devel(a)ovirt.org > > Sent: Thursday, March 13, 2014 11:23:35 AM > > Subject: [Users] adding scripts > > = > > = > > I want to commit changes to the engine by adding some bash scripts. > > the scripts should be invoked once a button or tab is selected in the > > webadmin portal by the user. > > = > > can someone guide on achieving this. > > = > > -- > > -Aditya Mamidwar > > = > > _______________________________________________ > > Users mailing list > > Users(a)ovirt.org > > http://lists.ovirt.org/mailman/listinfo/users --===============8597184518623732320==-- From aditya.mamidwar at gmail.com Fri Mar 21 06:14:01 2014 Content-Type: multipart/mixed; boundary="===============7353612394541421591==" MIME-Version: 1.0 From: aditya mamidwar To: users at ovirt.org Subject: Re: [Users] [Engine-devel] adding scripts Date: Fri, 21 Mar 2014 15:44:01 +0530 Message-ID: In-Reply-To: 2582932.ip0y7S9grx@awels --===============7353612394541421591== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Hey, my team is working on adding AoE protocol support to ovirt. am thus facing following difficulties: 1 : i wrote the required code using in bash scripting, which i wish to invoke after a click of button in the ovirt-portal. (which does not seem to be possible). can you help on that? which programming language should i use, and how that file should be invoked. 2. for ISOs to be available, i need to enable hosts configured in clusters and storage domains of ATA type. (currently NFS, iSCSI and FC are done). which files should i focus on changing for above functionality. 3. How do i change the custom layout of the engine? (like adding a few extra buttons.) please specify the files responsible. 4. the above questions stress that am facing difficulty in identifying files responsible for a particular module. is there a better way to do that instead of digging up the entire source code. ( a documentation if available.) On Mon, Mar 17, 2014 at 5:52 PM, Alexander Wels wrote: > Aditya, > > That is because that file doesn't exist. We map that name to a servlet in > web.xml. If you want to modify the GWT host page take a look at > GwtDynamicHostPageServlet.java and its sub classes (for user portal and > webadmin). As well as GwtHostPage.jsp. You will find there is almost > nothing in > that page as all the HTML is being generated at runtime using GWT. > > Since you are not really explaining what you are trying to do we can't he= lp > you better on the best strategy to achieve what you want. > > Alexander > > On Saturday, March 15, 2014 06:00:21 PM Aditya Mamidwar wrote: > > Hey thanks on the previous issue. > > Also is there a way i can access WebAdmin.Html to add custom buttons and > > make few tweaks for personal use? I just cant find that file after using > > git. > > > > Aditya Mamidwar > > > > -----Original Message----- > > From: "Einav Cohen" > > Sent: 14-03-2014 01:21 > > To: "aditya mamidwar" ; "Vojtech Szocs" > > Cc: "users(a)ovirt.org" ; > > "engine-devel(a)ovirt.org" Subject: Re: [Use= rs] > > adding scripts > > > > if you are trying to hook into UI-specific events, it sounds > > like you will need to write an oVirt UI Plugin [1] in order to > > do that. However, I believe that the oVirt UI Plugins > > infrastructure doesn't support hooking to events such as "tab > > x was selected" and/or "button b was clicked". > > It does allow you to add new (custom) tabs/sub-tabs/buttons of > > your own, and there is a chance that it allows you to hook > > into events such as 'row x was selected in the grid'. > > > > @Vojtech will know better. Vojtech? > > > > if you are trying to hook into engine events (e.g. you want to > > run a script every time a VM is started in oVirt, no matter if > > the user started it by clicking the 'run' button in the oVirt- > > engine webadmin, or invoked a REST API request, or an SDK > > command), then it will require some sort of an "engine-plugin" > > infrastructure that we don't have at the moment AFAIK. > > there is a chance that for some of the events you will be able > > to utilize the VDSM hooks (at the Host level) [2]. > > > > ---- > > Thanks, > > Einav > > > > [1] http://www.ovirt.org/Features/UIPlugins > > > > [2] http://www.ovirt.org/VDSM-Hooks > > > > > > ----- Original Message ----- > > > > > From: "aditya mamidwar" > > > To: users(a)ovirt.org, engine-devel(a)ovirt.org > > > Sent: Thursday, March 13, 2014 11:23:35 AM > > > Subject: [Users] adding scripts > > > > > > > > > I want to commit changes to the engine by adding some bash scripts. > > > the scripts should be invoked once a button or tab is selected in the > > > webadmin portal by the user. > > > > > > can someone guide on achieving this. > > > > > > -- > > > -Aditya Mamidwar > > > > > > _______________________________________________ > > > Users mailing list > > > Users(a)ovirt.org > > > http://lists.ovirt.org/mailman/listinfo/users > > -- = -Aditya Mamidwar --===============7353612394541421591== Content-Type: text/html MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="attachment.html" PGRpdiBkaXI9Imx0ciI+PGRpdj48ZGl2PjxkaXY+PGRpdj48ZGl2PjxkaXY+PGRpdj48YnI+PC9k aXY+SGV5LDxicj48L2Rpdj5teSB0ZWFtIGlzIHdvcmtpbmcgb24gYWRkaW5nIEFvRSBwcm90b2Nv bCBzdXBwb3J0IHRvIG92aXJ0Ljxicj48YnI+PC9kaXY+YW0gdGh1cyBmYWNpbmcgZm9sbG93aW5n IGRpZmZpY3VsdGllczo8YnI+PC9kaXY+MSA6IGkgd3JvdGUgdGhlIHJlcXVpcmVkIGNvZGUgdXNp bmcgaW4gYmFzaCBzY3JpcHRpbmcsIHdoaWNoIGkgd2lzaCB0byBpbnZva2UgYWZ0ZXIgYSBjbGlj ayBvZiBidXR0b24gaW4gdGhlIG92aXJ0LXBvcnRhbC4gKHdoaWNoIGRvZXMgbm90IHNlZW0gdG8g YmUgcG9zc2libGUpLiBjYW4geW91IGhlbHAgb24gdGhhdD8gd2hpY2ggcHJvZ3JhbW1pbmcgbGFu Z3VhZ2Ugc2hvdWxkIGkgdXNlLCBhbmQgaG93IHRoYXQgZmlsZSBzaG91bGQgYmUgaW52b2tlZC48 YnI+Cjxicj48L2Rpdj4yLiBmb3IgSVNPcyB0byBiZSBhdmFpbGFibGUsIGkgbmVlZCB0byBlbmFi bGUgaG9zdHMgY29uZmlndXJlZCBpbiBjbHVzdGVycyBhbmQgc3RvcmFnZSBkb21haW5zIG9mIEFU QSB0eXBlLiAoY3VycmVudGx5IE5GUywgaVNDU0kgYW5kIEZDIGFyZSBkb25lKS4gd2hpY2ggZmls ZXMgc2hvdWxkIGkgZm9jdXMgb24gY2hhbmdpbmcgZm9yIGFib3ZlIGZ1bmN0aW9uYWxpdHkuPGJy Pgo8YnI+PC9kaXY+My4gSG93IGRvIGkgY2hhbmdlIHRoZSBjdXN0b20gbGF5b3V0IG9mIHRoZSBl bmdpbmU/IChsaWtlIGFkZGluZyBhIGZldyBleHRyYSBidXR0b25zLikgcGxlYXNlIHNwZWNpZnkg dGhlIGZpbGVzIHJlc3BvbnNpYmxlLjxicj48YnI+PC9kaXY+NC4gdGhlIGFib3ZlIHF1ZXN0aW9u cyBzdHJlc3MgdGhhdCBhbSBmYWNpbmcgZGlmZmljdWx0eSBpbiBpZGVudGlmeWluZyBmaWxlcyBy ZXNwb25zaWJsZSBmb3IgYSBwYXJ0aWN1bGFyIG1vZHVsZS4gaXMgdGhlcmUgYSBiZXR0ZXIgd2F5 IHRvIGRvIHRoYXQgaW5zdGVhZCBvZiBkaWdnaW5nIHVwIHRoZSBlbnRpcmUgc291cmNlIGNvZGUu ICggYSBkb2N1bWVudGF0aW9uIGlmIGF2YWlsYWJsZS4pPGJyPgo8YnI+PC9kaXY+PGRpdiBjbGFz cz0iZ21haWxfZXh0cmEiPjxicj48YnI+PGRpdiBjbGFzcz0iZ21haWxfcXVvdGUiPk9uIE1vbiwg TWFyIDE3LCAyMDE0IGF0IDU6NTIgUE0sIEFsZXhhbmRlciBXZWxzIDxzcGFuIGRpcj0ibHRyIj4m bHQ7PGEgaHJlZj0ibWFpbHRvOmF3ZWxzQHJlZGhhdC5jb20iIHRhcmdldD0iX2JsYW5rIj5hd2Vs c0ByZWRoYXQuY29tPC9hPiZndDs8L3NwYW4+IHdyb3RlOjxicj4KPGJsb2NrcXVvdGUgY2xhc3M9 ImdtYWlsX3F1b3RlIiBzdHlsZT0ibWFyZ2luOjAgMCAwIC44ZXg7Ym9yZGVyLWxlZnQ6MXB4ICNj Y2Mgc29saWQ7cGFkZGluZy1sZWZ0OjFleCI+QWRpdHlhLDxicj4KPGJyPgpUaGF0IGlzIGJlY2F1 c2UgdGhhdCBmaWxlIGRvZXNuJiMzOTt0IGV4aXN0LiBXZSBtYXAgdGhhdCBuYW1lIHRvIGEgc2Vy dmxldCBpbjxicj4Kd2ViLnhtbC4gSWYgeW91IHdhbnQgdG8gbW9kaWZ5IHRoZSBHV1QgaG9zdCBw YWdlIHRha2UgYSBsb29rIGF0PGJyPgpHd3REeW5hbWljSG9zdFBhZ2VTZXJ2bGV0LmphdmEgYW5k IGl0cyBzdWIgY2xhc3NlcyAoZm9yIHVzZXIgcG9ydGFsIGFuZDxicj4Kd2ViYWRtaW4pLiBBcyB3 ZWxsIGFzIEd3dEhvc3RQYWdlLmpzcC4gWW91IHdpbGwgZmluZCB0aGVyZSBpcyBhbG1vc3Qgbm90 aGluZyBpbjxicj4KdGhhdCBwYWdlIGFzIGFsbCB0aGUgSFRNTCBpcyBiZWluZyBnZW5lcmF0ZWQg YXQgcnVudGltZSB1c2luZyBHV1QuPGJyPgo8YnI+ClNpbmNlIHlvdSBhcmUgbm90IHJlYWxseSBl eHBsYWluaW5nIHdoYXQgeW91IGFyZSB0cnlpbmcgdG8gZG8gd2UgY2FuJiMzOTt0IGhlbHA8YnI+ CnlvdSBiZXR0ZXIgb24gdGhlIGJlc3Qgc3RyYXRlZ3kgdG8gYWNoaWV2ZSB3aGF0IHlvdSB3YW50 Ljxicj4KPHNwYW4gY2xhc3M9IkhPRW5aYiI+PGZvbnQgY29sb3I9IiM4ODg4ODgiPjxicj4KQWxl eGFuZGVyPGJyPgo8L2ZvbnQ+PC9zcGFuPjxkaXYgY2xhc3M9ImltIEhPRW5aYiI+PGJyPgpPbiBT YXR1cmRheSwgTWFyY2ggMTUsIDIwMTQgMDY6MDA6MjEgUE0gQWRpdHlhIE1hbWlkd2FyIHdyb3Rl Ojxicj4KJmd0OyBIZXkgdGhhbmtzIG9uIHRoZSBwcmV2aW91cyBpc3N1ZS48YnI+CiZndDsgQWxz byBpcyB0aGVyZSBhIHdheSBpIGNhbiBhY2Nlc3MgV2ViQWRtaW4uSHRtbCB0byBhZGQgY3VzdG9t IGJ1dHRvbnMgYW5kPGJyPgomZ3Q7IG1ha2UgZmV3IHR3ZWFrcyBmb3IgcGVyc29uYWwgdXNlPyBJ IGp1c3QgY2FudCBmaW5kIHRoYXQgZmlsZSBhZnRlciB1c2luZzxicj4KJmd0OyBnaXQuPGJyPgom Z3Q7PGJyPgomZ3Q7IEFkaXR5YSBNYW1pZHdhcjxicj4KJmd0Ozxicj4KPC9kaXY+PGRpdiBjbGFz cz0iaW0gSE9FblpiIj4mZ3Q7IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tPGJyPgomZ3Q7IEZy b206ICZxdW90O0VpbmF2IENvaGVuJnF1b3Q7ICZsdDs8YSBocmVmPSJtYWlsdG86ZWNvaGVuQHJl ZGhhdC5jb20iPmVjb2hlbkByZWRoYXQuY29tPC9hPiZndDs8YnI+CiZndDsgU2VudDogMTQtMDMt MjAxNCAwMToyMTxicj4KPC9kaXY+PGRpdiBjbGFzcz0iSE9FblpiIj48ZGl2IGNsYXNzPSJoNSI+ Jmd0OyBUbzogJnF1b3Q7YWRpdHlhIG1hbWlkd2FyJnF1b3Q7ICZsdDs8YSBocmVmPSJtYWlsdG86 YWRpdHlhLm1hbWlkd2FyQGdtYWlsLmNvbSI+YWRpdHlhLm1hbWlkd2FyQGdtYWlsLmNvbTwvYT4m Z3Q7OyAmcXVvdDtWb2p0ZWNoIFN6b2NzJnF1b3Q7PGJyPgomZ3Q7ICZsdDs8YSBocmVmPSJtYWls dG86dnN6b2NzQHJlZGhhdC5jb20iPnZzem9jc0ByZWRoYXQuY29tPC9hPiZndDsgQ2M6ICZxdW90 OzxhIGhyZWY9Im1haWx0bzp1c2Vyc0BvdmlydC5vcmciPnVzZXJzQG92aXJ0Lm9yZzwvYT4mcXVv dDsgJmx0OzxhIGhyZWY9Im1haWx0bzp1c2Vyc0BvdmlydC5vcmciPnVzZXJzQG92aXJ0Lm9yZzwv YT4mZ3Q7Ozxicj4KJmd0OyAmcXVvdDs8YSBocmVmPSJtYWlsdG86ZW5naW5lLWRldmVsQG92aXJ0 Lm9yZyI+ZW5naW5lLWRldmVsQG92aXJ0Lm9yZzwvYT4mcXVvdDsgJmx0OzxhIGhyZWY9Im1haWx0 bzplbmdpbmUtZGV2ZWxAb3ZpcnQub3JnIj5lbmdpbmUtZGV2ZWxAb3ZpcnQub3JnPC9hPiZndDsg U3ViamVjdDogUmU6IFtVc2Vyc108YnI+CiZndDsgYWRkaW5nIHNjcmlwdHM8YnI+CiZndDs8YnI+ CiZndDsgaWYgeW91IGFyZSB0cnlpbmcgdG8gaG9vayBpbnRvIFVJLXNwZWNpZmljIGV2ZW50cywg aXQgc291bmRzPGJyPgomZ3Q7IGxpa2UgeW91IHdpbGwgbmVlZCB0byB3cml0ZSBhbiBvVmlydCBV SSBQbHVnaW4gWzFdIGluIG9yZGVyIHRvPGJyPgomZ3Q7IGRvIHRoYXQuIEhvd2V2ZXIsIEkgYmVs aWV2ZSB0aGF0IHRoZSBvVmlydCBVSSBQbHVnaW5zPGJyPgomZ3Q7IGluZnJhc3RydWN0dXJlIGRv ZXNuJiMzOTt0IHN1cHBvcnQgaG9va2luZyB0byBldmVudHMgc3VjaCBhcyAmcXVvdDt0YWI8YnI+ CiZndDsgeCB3YXMgc2VsZWN0ZWQmcXVvdDsgYW5kL29yICZxdW90O2J1dHRvbiBiIHdhcyBjbGlj a2VkJnF1b3Q7Ljxicj4KJmd0OyBJdCBkb2VzIGFsbG93IHlvdSB0byBhZGQgbmV3IChjdXN0b20p IHRhYnMvc3ViLXRhYnMvYnV0dG9ucyBvZjxicj4KJmd0OyB5b3VyIG93biwgYW5kIHRoZXJlIGlz IGEgY2hhbmNlIHRoYXQgaXQgYWxsb3dzIHlvdSB0byBob29rPGJyPgomZ3Q7IGludG8gZXZlbnRz IHN1Y2ggYXMgJiMzOTtyb3cgeCB3YXMgc2VsZWN0ZWQgaW4gdGhlIGdyaWQmIzM5Oy48YnI+CiZn dDs8YnI+CiZndDsgQFZvanRlY2ggd2lsbCBrbm93IGJldHRlci4gVm9qdGVjaD88YnI+CiZndDs8 YnI+CiZndDsgaWYgeW91IGFyZSB0cnlpbmcgdG8gaG9vayBpbnRvIGVuZ2luZSBldmVudHMgKGUu Zy4geW91IHdhbnQgdG88YnI+CiZndDsgcnVuIGEgc2NyaXB0IGV2ZXJ5IHRpbWUgYSBWTSBpcyBz dGFydGVkIGluIG9WaXJ0LCBubyBtYXR0ZXIgaWY8YnI+CiZndDsgdGhlIHVzZXIgc3RhcnRlZCBp dCBieSBjbGlja2luZyB0aGUgJiMzOTtydW4mIzM5OyBidXR0b24gaW4gdGhlIG9WaXJ0LTxicj4K Jmd0OyBlbmdpbmUgd2ViYWRtaW4sIG9yIGludm9rZWQgYSBSRVNUIEFQSSByZXF1ZXN0LCBvciBh biBTREs8YnI+CiZndDsgY29tbWFuZCksIHRoZW4gaXQgd2lsbCByZXF1aXJlIHNvbWUgc29ydCBv ZiBhbiAmcXVvdDtlbmdpbmUtcGx1Z2luJnF1b3Q7PGJyPgomZ3Q7IGluZnJhc3RydWN0dXJlIHRo YXQgd2UgZG9uJiMzOTt0IGhhdmUgYXQgdGhlIG1vbWVudCBBRkFJSy48YnI+CiZndDsgdGhlcmUg aXMgYSBjaGFuY2UgdGhhdCBmb3Igc29tZSBvZiB0aGUgZXZlbnRzIHlvdSB3aWxsIGJlIGFibGU8 YnI+CiZndDsgdG8gdXRpbGl6ZSB0aGUgVkRTTSBob29rcyAoYXQgdGhlIEhvc3QgbGV2ZWwpIFsy XS48YnI+CiZndDs8YnI+CiZndDsgLS0tLTxicj4KJmd0OyBUaGFua3MsPGJyPgomZ3Q7IEVpbmF2 PGJyPgomZ3Q7PGJyPgomZ3Q7IFsxXSA8YSBocmVmPSJodHRwOi8vd3d3Lm92aXJ0Lm9yZy9GZWF0 dXJlcy9VSVBsdWdpbnMiIHRhcmdldD0iX2JsYW5rIj5odHRwOi8vd3d3Lm92aXJ0Lm9yZy9GZWF0 dXJlcy9VSVBsdWdpbnM8L2E+PGJyPgomZ3Q7PGJyPgomZ3Q7IFsyXSA8YSBocmVmPSJodHRwOi8v d3d3Lm92aXJ0Lm9yZy9WRFNNLUhvb2tzIiB0YXJnZXQ9Il9ibGFuayI+aHR0cDovL3d3dy5vdmly dC5vcmcvVkRTTS1Ib29rczwvYT48YnI+CiZndDs8YnI+CiZndDs8YnI+CiZndDsgLS0tLS0gT3Jp Z2luYWwgTWVzc2FnZSAtLS0tLTxicj4KJmd0Ozxicj4KJmd0OyAmZ3Q7IEZyb206ICZxdW90O2Fk aXR5YSBtYW1pZHdhciZxdW90OyAmbHQ7PGEgaHJlZj0ibWFpbHRvOmFkaXR5YS5tYW1pZHdhckBn bWFpbC5jb20iPmFkaXR5YS5tYW1pZHdhckBnbWFpbC5jb208L2E+Jmd0Ozxicj4KJmd0OyAmZ3Q7 IFRvOiA8YSBocmVmPSJtYWlsdG86dXNlcnNAb3ZpcnQub3JnIj51c2Vyc0BvdmlydC5vcmc8L2E+ LCA8YSBocmVmPSJtYWlsdG86ZW5naW5lLWRldmVsQG92aXJ0Lm9yZyI+ZW5naW5lLWRldmVsQG92 aXJ0Lm9yZzwvYT48YnI+CiZndDsgJmd0OyBTZW50OiBUaHVyc2RheSwgTWFyY2ggMTMsIDIwMTQg MTE6MjM6MzUgQU08YnI+CiZndDsgJmd0OyBTdWJqZWN0OiBbVXNlcnNdIGFkZGluZyBzY3JpcHRz PGJyPgomZ3Q7ICZndDs8YnI+CiZndDsgJmd0Ozxicj4KJmd0OyAmZ3Q7IEkgd2FudCB0byBjb21t aXQgY2hhbmdlcyB0byB0aGUgZW5naW5lIGJ5IGFkZGluZyBzb21lIGJhc2ggc2NyaXB0cy48YnI+ CiZndDsgJmd0OyB0aGUgc2NyaXB0cyBzaG91bGQgYmUgaW52b2tlZCBvbmNlIGEgYnV0dG9uIG9y IHRhYiBpcyBzZWxlY3RlZCBpbiB0aGU8YnI+CiZndDsgJmd0OyB3ZWJhZG1pbiBwb3J0YWwgYnkg dGhlIHVzZXIuPGJyPgomZ3Q7ICZndDs8YnI+CiZndDsgJmd0OyBjYW4gc29tZW9uZSBndWlkZSBv biBhY2hpZXZpbmcgdGhpcy48YnI+CiZndDsgJmd0Ozxicj4KJmd0OyAmZ3Q7IC0tPGJyPgomZ3Q7 ICZndDsgLUFkaXR5YSBNYW1pZHdhcjxicj4KJmd0OyAmZ3Q7PGJyPgomZ3Q7ICZndDsgX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX188YnI+CiZndDsgJmd0OyBV c2VycyBtYWlsaW5nIGxpc3Q8YnI+CiZndDsgJmd0OyA8YSBocmVmPSJtYWlsdG86VXNlcnNAb3Zp cnQub3JnIj5Vc2Vyc0BvdmlydC5vcmc8L2E+PGJyPgomZ3Q7ICZndDsgPGEgaHJlZj0iaHR0cDov L2xpc3RzLm92aXJ0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL3VzZXJzIiB0YXJnZXQ9Il9ibGFuayI+ aHR0cDovL2xpc3RzLm92aXJ0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL3VzZXJzPC9hPjxicj4KPGJy Pgo8L2Rpdj48L2Rpdj48L2Jsb2NrcXVvdGU+PC9kaXY+PGJyPjxiciBjbGVhcj0iYWxsIj48YnI+ LS0gPGJyPi1BZGl0eWEgTWFtaWR3YXIKPC9kaXY+Cg== --===============7353612394541421591==-- From gshereme at redhat.com Fri Mar 21 08:33:07 2014 Content-Type: multipart/mixed; boundary="===============3008184913441479362==" MIME-Version: 1.0 From: Greg Sheremeta To: users at ovirt.org Subject: Re: [Users] [Engine-devel] adding scripts Date: Fri, 21 Mar 2014 08:33:04 -0400 Message-ID: <2142144483.1855116.1395405184865.JavaMail.zimbra@redhat.com> In-Reply-To: CA+pz52__SFAV7_6pom_L4HNwpG6b-YUbOk92f04PF0HtOp9keg@mail.gmail.com --===============3008184913441479362== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable ------=3D_Part_1855115_740317422.1395405184864 Content-Type: text/plain; charset=3Dutf-8 Content-Transfer-Encoding: 7bit ----- Original Message ----- From: "aditya mamidwar" = To: awels(a)redhat.com, engine-devel(a)ovirt.org, users(a)ovirt.org = Sent: Friday, March 21, 2014 6:14:01 AM = Subject: Re: [Users] [Engine-devel] adding scripts = Hey, = my team is working on adding AoE protocol support to ovirt. = am thus facing following difficulties: = 1 : i wrote the required code using in bash scripting, which i wish to invo= ke after a click of button in the ovirt-portal. (which does not seem to be = possible). can you help on that? which programming language should i use, a= nd how that file should be invoked. = This needs to be done in Java. You'll need to read up on oVirt's UI Plugin = infrastructure, which Einav and others mentioned below. No, you cannot writ= e a bash script and have a button click in oVirt invoke that. =
2. for ISOs to be available, i need to enable hosts configured in clusters = and storage domains of ATA type. (currently NFS, iSCSI and FC are done). wh= ich files should i focus on changing for above functionality. =
I've never heard of ATA network storage. Are you referring to ATA hardware = technology, i.e. SATA? = At any rate, adding a custom storage domain technology will difficult. Hope= fully someone else on list can direct you. =
3. How do i change the custom layout of the engine? (like adding a few extr= a buttons.) please specify the files responsible. =
Again, you'll need to read up on oVirt's UI Plugin infrastructure. http://w= ww.ovirt.org/Features/UIPlugins =
4. the above questions stress that am facing difficulty in identifying file= s responsible for a particular module. is there a better way to do that ins= tead of digging up the entire source code. ( a documentation if available.) =
Other than what we've already mentioned (JavaDoc, architecture docs on the = wiki), no. = Greg =
On Mon, Mar 17, 2014 at 5:52 PM, Alexander Wels < awels(a)redhat.com > wrot= e: =
Aditya, = That is because that file doesn't exist. We map that name to a servlet in = web.xml. If you want to modify the GWT host page take a look at = GwtDynamicHostPageServlet.java and its sub classes (for user portal and = webadmin). As well as GwtHostPage.jsp. You will find there is almost nothin= g in = that page as all the HTML is being generated at runtime using GWT. = Since you are not really explaining what you are trying to do we can't help = you better on the best strategy to achieve what you want. = Alexander = On Saturday, March 15, 2014 06:00:21 PM Aditya Mamidwar wrote: = > Hey thanks on the previous issue. = > Also is there a way i can access WebAdmin.Html to add custom buttons and = > make few tweaks for personal use? I just cant find that file after using = > git. = > = > Aditya Mamidwar = > = > -----Original Message----- = > From: "Einav Cohen" < ecohen(a)redhat.com > = > Sent: 14-03-2014 01:21 = > To: "aditya mamidwar" < aditya.mamidwar(a)gmail.com >; "Vojtech Szocs" = > < vszocs(a)redhat.com > Cc: " users(a)ovirt.org " < users(a)ovirt.org >; = > " engine-devel(a)ovirt.org " < engine-devel(a)ovirt.org > Subject: Re: [U= sers] = > adding scripts = > = > if you are trying to hook into UI-specific events, it sounds = > like you will need to write an oVirt UI Plugin [1] in order to = > do that. However, I believe that the oVirt UI Plugins = > infrastructure doesn't support hooking to events such as "tab = > x was selected" and/or "button b was clicked". = > It does allow you to add new (custom) tabs/sub-tabs/buttons of = > your own, and there is a chance that it allows you to hook = > into events such as 'row x was selected in the grid'. = > = > @Vojtech will know better. Vojtech? = > = > if you are trying to hook into engine events (e.g. you want to = > run a script every time a VM is started in oVirt, no matter if = > the user started it by clicking the 'run' button in the oVirt- = > engine webadmin, or invoked a REST API request, or an SDK = > command), then it will require some sort of an "engine-plugin" = > infrastructure that we don't have at the moment AFAIK. = > there is a chance that for some of the events you will be able = > to utilize the VDSM hooks (at the Host level) [2]. = > = > ---- = > Thanks, = > Einav = > = > [1] http://www.ovirt.org/Features/UIPlugins = > = > [2] http://www.ovirt.org/VDSM-Hooks = > = > = > ----- Original Message ----- = > = > > From: "aditya mamidwar" < aditya.mamidwar(a)gmail.com > = > > To: users(a)ovirt.org , engine-devel(a)ovirt.org = > > Sent: Thursday, March 13, 2014 11:23:35 AM = > > Subject: [Users] adding scripts = > > = > > = > > I want to commit changes to the engine by adding some bash scripts. = > > the scripts should be invoked once a button or tab is selected in the = > > webadmin portal by the user. = > > = > > can someone guide on achieving this. = > > = > > -- = > > -Aditya Mamidwar = > > = > > _______________________________________________ = > > Users mailing list = > > Users(a)ovirt.org = > > http://lists.ovirt.org/mailman/listinfo/users =
-- = -Aditya Mamidwar = _______________________________________________ = Users mailing list = Users(a)ovirt.org = http://lists.ovirt.org/mailman/listinfo/users =
------=3D_Part_1855115_740317422.1395405184864 Content-Type: text/html; charset=3Dutf-8 Content-Transfer-Encoding: quoted-printable


From: "aditya = =3D mamidwar" <aditya.mamidwar(a)gmail.com>
To: awels(a)redhat.= com,=3D engine-devel(a)ovirt.org, users(a)ovirt.org
Sent: Friday, March = 21, =3D 2014 6:14:01 AM
Subject: Re: [Users] [Engine-devel]  adding = =3D scripts

=
Hey,
my team is working on adding AoE protocol suppor= =3D t to ovirt.

am thus facing following difficulties:<= =3D br>
1 : i wrote the required code using in bash scripting, which i wis= =3D h to invoke after a click of button in the ovirt-portal. (which does not se= =3D em to be possible). can you help on that? which programming language should= =3D i use, and how that file should be invoked.
This needs to be done in Java. You'll need to read up on oVirt's= =3D UI Plugin infrastructure, which Einav and others mentioned below. No, you = =3D cannot write a bash script and have a button click in oVirt invoke that.

2. for ISOs to be available, i need= =3D to enable hosts configured in clusters and storage domains of ATA type. (c= =3D urrently NFS, iSCSI and FC are done). which files should i focus on changin= =3D g for above functionality.
I've never he= =3D ard of ATA network storage. Are you referring to ATA hardware technology, i= =3D .e. SATA?

At any rate, adding a custom storage dom= =3D ain technology will difficult. Hopefully someone else on list can direct yo= =3D u.

3. How do i change the custom lay= ou=3D t of the engine? (like adding a few extra buttons.) please specify the file= =3D s responsible.
Again, you'll need to read up o= =3D n oVirt's UI Plugin infrastructure. http://www.ovirt.org/Features/UIPl= =3D ugins

4. the above questions stress that = am=3D facing difficulty in identifying files responsible for a particular module= =3D . is there a better way to do that instead of digging up the entire source = =3D code. ( a documentation if available.)
Other than wh= =3D at we've already mentioned (JavaDoc, architecture docs on the wiki), no.

Greg



<=3D div class=3D3D"gmail_extra">

On =3D Mon, Mar 17, 2014 at 5:52 PM, Alexander Wels <awels(a)redhat.com= > wrote:
Aditya,

That is because that file doesn't exist. We map that name to a servlet in web.xml. If you want to modify the GWT host page take a look at
GwtDynamicHostPageServlet.java and its sub classes (for user portal and
webadmin). As well as GwtHostPage.jsp. You will find there is almost nothin= =3D g in
that page as all the HTML is being generated at runtime using GWT.
= =3D
Since you are not really explaining what you are trying to do we can't help= =3D
you better on the best strategy to achieve what you want.

Alexander

On Saturday, March 15, 2014 06:00:21 PM Aditya Mamidwar wrote:
> Hey thanks on the previous issue.
> Also is there a way i can access WebAdmin.Html to add custom buttons a= =3D nd
> make few tweaks for personal use? I just cant find that file after usi= =3D ng
> git.
>
> Aditya Mamidwar
>
> -----Original Message-----
> From: "Einav Cohen" <ecohen(a)redhat.com>
> Sent: 14-03-2014 01:21
> To: "aditya mamidwar" <aditya.mamidwar(a)gmail.com>; "Vojtech Szocs"=
> <vszoc= s(a)redh=3D at.com> Cc: "us=3D ers(a)ovirt.org" <users(a)ovirt.org>;
> "eng= ine-de=3D vel(a)ovirt.org" <engine-devel(a)ovirt.org> Subject: Re: [Users]
> adding scripts
>
> if you are trying to hook into UI-specific events, it sounds
> like you will need to write an oVirt UI Plugin [1] in order to
> do that. However, I believe that the oVirt UI Plugins
> infrastructure doesn't support hooking to events such as "tab
> x was selected" and/or "button b was clicked".
> It does allow you to add new (custom) tabs/sub-tabs/buttons of
> your own, and there is a chance that it allows you to hook
> into events such as 'row x was selected in the grid'.
>
> @Vojtech will know better. Vojtech?
>
> if you are trying to hook into engine events (e.g. you want to
> run a script every time a VM is started in oVirt, no matter if
> the user started it by clicking the 'run' button in the oVirt-
> engine webadmin, or invoked a REST API request, or an SDK
> command), then it will require some sort of an "engine-plugin"
> infrastructure that we don't have at the moment AFAIK.
> there is a chance that for some of the events you will be able
> to utilize the VDSM hooks (at the Host level) [2].
>
> ----
> Thanks,
> Einav
>
> [1] http://www.ovirt.org/Features/UIPlugins
>
> [2] = http=3D ://www.ovirt.org/VDSM-Hooks
>
>
> ----- Original Message -----
>
> > From: "aditya mamidwar" <aditya.mamidwar(a)gmail.com>
> > To: us= ers(a)ov=3D irt.org, en=3D gine-devel(a)ovirt.org
> > Sent: Thursday, March 13, 2014 11:23:35 AM
> > Subject: [Users] adding scripts
> >
> >
> > I want to commit changes to the engine by adding some bash script= =3D s.
> > the scripts should be invoked once a button or tab is selected in= =3D the
> > webadmin portal by the user.
> >
> > can someone guide on achieving this.
> >
> > --
> > -Aditya Mamidwar
> >
> > _______________________________________________
> > Users mailing list
> > Users(= a)ovirt.=3D org
> > http://lists.ovirt.org/mailman/listinfo/users
<=3D /div>



--
-Adi= ty=3D a Mamidwar

_______________________________________________
Users mailing = =3D list
Users(a)ovirt.org
http://lists.ovirt.org/mailman/listinfo/users<= br=3D >

------=3D_Part_1855115_740317422.1395405184864-- --===============3008184913441479362== Content-Type: multipart/alternative MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="attachment.bin" LS0tLS0tPV9QYXJ0XzE4NTUxMTVfNzQwMzE3NDIyLjEzOTU0MDUxODQ4NjQKQ29udGVudC1UeXBl OiB0ZXh0L3BsYWluOyBjaGFyc2V0PXV0Zi04CkNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IDdi aXQKCgotLS0tLSBPcmlnaW5hbCBNZXNzYWdlIC0tLS0tCgoKRnJvbTogImFkaXR5YSBtYW1pZHdh ciIgPGFkaXR5YS5tYW1pZHdhckBnbWFpbC5jb20+IApUbzogYXdlbHNAcmVkaGF0LmNvbSwgZW5n aW5lLWRldmVsQG92aXJ0Lm9yZywgdXNlcnNAb3ZpcnQub3JnIApTZW50OiBGcmlkYXksIE1hcmNo IDIxLCAyMDE0IDY6MTQ6MDEgQU0gClN1YmplY3Q6IFJlOiBbVXNlcnNdIFtFbmdpbmUtZGV2ZWxd IGFkZGluZyBzY3JpcHRzIAoKCkhleSwgCm15IHRlYW0gaXMgd29ya2luZyBvbiBhZGRpbmcgQW9F IHByb3RvY29sIHN1cHBvcnQgdG8gb3ZpcnQuIAoKYW0gdGh1cyBmYWNpbmcgZm9sbG93aW5nIGRp ZmZpY3VsdGllczogCjEgOiBpIHdyb3RlIHRoZSByZXF1aXJlZCBjb2RlIHVzaW5nIGluIGJhc2gg c2NyaXB0aW5nLCB3aGljaCBpIHdpc2ggdG8gaW52b2tlIGFmdGVyIGEgY2xpY2sgb2YgYnV0dG9u IGluIHRoZSBvdmlydC1wb3J0YWwuICh3aGljaCBkb2VzIG5vdCBzZWVtIHRvIGJlIHBvc3NpYmxl KS4gY2FuIHlvdSBoZWxwIG9uIHRoYXQ/IHdoaWNoIHByb2dyYW1taW5nIGxhbmd1YWdlIHNob3Vs ZCBpIHVzZSwgYW5kIGhvdyB0aGF0IGZpbGUgc2hvdWxkIGJlIGludm9rZWQuIAoKCgpUaGlzIG5l ZWRzIHRvIGJlIGRvbmUgaW4gSmF2YS4gWW91J2xsIG5lZWQgdG8gcmVhZCB1cCBvbiBvVmlydCdz IFVJIFBsdWdpbiBpbmZyYXN0cnVjdHVyZSwgd2hpY2ggRWluYXYgYW5kIG90aGVycyBtZW50aW9u ZWQgYmVsb3cuIE5vLCB5b3UgY2Fubm90IHdyaXRlIGEgYmFzaCBzY3JpcHQgYW5kIGhhdmUgYSBi dXR0b24gY2xpY2sgaW4gb1ZpcnQgaW52b2tlIHRoYXQuIAoKPGJsb2NrcXVvdGU+CgoKMi4gZm9y IElTT3MgdG8gYmUgYXZhaWxhYmxlLCBpIG5lZWQgdG8gZW5hYmxlIGhvc3RzIGNvbmZpZ3VyZWQg aW4gY2x1c3RlcnMgYW5kIHN0b3JhZ2UgZG9tYWlucyBvZiBBVEEgdHlwZS4gKGN1cnJlbnRseSBO RlMsIGlTQ1NJIGFuZCBGQyBhcmUgZG9uZSkuIHdoaWNoIGZpbGVzIHNob3VsZCBpIGZvY3VzIG9u IGNoYW5naW5nIGZvciBhYm92ZSBmdW5jdGlvbmFsaXR5LiAKCjwvYmxvY2txdW90ZT4KCkkndmUg bmV2ZXIgaGVhcmQgb2YgQVRBIG5ldHdvcmsgc3RvcmFnZS4gQXJlIHlvdSByZWZlcnJpbmcgdG8g QVRBIGhhcmR3YXJlIHRlY2hub2xvZ3ksIGkuZS4gU0FUQT8gCgpBdCBhbnkgcmF0ZSwgYWRkaW5n IGEgY3VzdG9tIHN0b3JhZ2UgZG9tYWluIHRlY2hub2xvZ3kgd2lsbCBkaWZmaWN1bHQuIEhvcGVm dWxseSBzb21lb25lIGVsc2Ugb24gbGlzdCBjYW4gZGlyZWN0IHlvdS4gCgo8YmxvY2txdW90ZT4K CgozLiBIb3cgZG8gaSBjaGFuZ2UgdGhlIGN1c3RvbSBsYXlvdXQgb2YgdGhlIGVuZ2luZT8gKGxp a2UgYWRkaW5nIGEgZmV3IGV4dHJhIGJ1dHRvbnMuKSBwbGVhc2Ugc3BlY2lmeSB0aGUgZmlsZXMg cmVzcG9uc2libGUuIAoKPC9ibG9ja3F1b3RlPgoKQWdhaW4sIHlvdSdsbCBuZWVkIHRvIHJlYWQg dXAgb24gb1ZpcnQncyBVSSBQbHVnaW4gaW5mcmFzdHJ1Y3R1cmUuIGh0dHA6Ly93d3cub3ZpcnQu b3JnL0ZlYXR1cmVzL1VJUGx1Z2lucyAKCjxibG9ja3F1b3RlPgoKCjQuIHRoZSBhYm92ZSBxdWVz dGlvbnMgc3RyZXNzIHRoYXQgYW0gZmFjaW5nIGRpZmZpY3VsdHkgaW4gaWRlbnRpZnlpbmcgZmls ZXMgcmVzcG9uc2libGUgZm9yIGEgcGFydGljdWxhciBtb2R1bGUuIGlzIHRoZXJlIGEgYmV0dGVy IHdheSB0byBkbyB0aGF0IGluc3RlYWQgb2YgZGlnZ2luZyB1cCB0aGUgZW50aXJlIHNvdXJjZSBj b2RlLiAoIGEgZG9jdW1lbnRhdGlvbiBpZiBhdmFpbGFibGUuKSAKCjwvYmxvY2txdW90ZT4KCk90 aGVyIHRoYW4gd2hhdCB3ZSd2ZSBhbHJlYWR5IG1lbnRpb25lZCAoSmF2YURvYywgYXJjaGl0ZWN0 dXJlIGRvY3Mgb24gdGhlIHdpa2kpLCBuby4gCgpHcmVnIAoKCjxibG9ja3F1b3RlPgoKCgoKCk9u IE1vbiwgTWFyIDE3LCAyMDE0IGF0IDU6NTIgUE0sIEFsZXhhbmRlciBXZWxzIDwgYXdlbHNAcmVk aGF0LmNvbSA+IHdyb3RlOiAKCjxibG9ja3F1b3RlPgpBZGl0eWEsIAoKVGhhdCBpcyBiZWNhdXNl IHRoYXQgZmlsZSBkb2Vzbid0IGV4aXN0LiBXZSBtYXAgdGhhdCBuYW1lIHRvIGEgc2VydmxldCBp biAKd2ViLnhtbC4gSWYgeW91IHdhbnQgdG8gbW9kaWZ5IHRoZSBHV1QgaG9zdCBwYWdlIHRha2Ug YSBsb29rIGF0IApHd3REeW5hbWljSG9zdFBhZ2VTZXJ2bGV0LmphdmEgYW5kIGl0cyBzdWIgY2xh c3NlcyAoZm9yIHVzZXIgcG9ydGFsIGFuZCAKd2ViYWRtaW4pLiBBcyB3ZWxsIGFzIEd3dEhvc3RQ YWdlLmpzcC4gWW91IHdpbGwgZmluZCB0aGVyZSBpcyBhbG1vc3Qgbm90aGluZyBpbiAKdGhhdCBw YWdlIGFzIGFsbCB0aGUgSFRNTCBpcyBiZWluZyBnZW5lcmF0ZWQgYXQgcnVudGltZSB1c2luZyBH V1QuIAoKU2luY2UgeW91IGFyZSBub3QgcmVhbGx5IGV4cGxhaW5pbmcgd2hhdCB5b3UgYXJlIHRy eWluZyB0byBkbyB3ZSBjYW4ndCBoZWxwIAp5b3UgYmV0dGVyIG9uIHRoZSBiZXN0IHN0cmF0ZWd5 IHRvIGFjaGlldmUgd2hhdCB5b3Ugd2FudC4gCgpBbGV4YW5kZXIgCgpPbiBTYXR1cmRheSwgTWFy Y2ggMTUsIDIwMTQgMDY6MDA6MjEgUE0gQWRpdHlhIE1hbWlkd2FyIHdyb3RlOiAKPiBIZXkgdGhh bmtzIG9uIHRoZSBwcmV2aW91cyBpc3N1ZS4gCj4gQWxzbyBpcyB0aGVyZSBhIHdheSBpIGNhbiBh Y2Nlc3MgV2ViQWRtaW4uSHRtbCB0byBhZGQgY3VzdG9tIGJ1dHRvbnMgYW5kIAo+IG1ha2UgZmV3 IHR3ZWFrcyBmb3IgcGVyc29uYWwgdXNlPyBJIGp1c3QgY2FudCBmaW5kIHRoYXQgZmlsZSBhZnRl ciB1c2luZyAKPiBnaXQuIAo+IAo+IEFkaXR5YSBNYW1pZHdhciAKPiAKPiAtLS0tLU9yaWdpbmFs IE1lc3NhZ2UtLS0tLSAKPiBGcm9tOiAiRWluYXYgQ29oZW4iIDwgZWNvaGVuQHJlZGhhdC5jb20g PiAKPiBTZW50OiAxNC0wMy0yMDE0IDAxOjIxIAo+IFRvOiAiYWRpdHlhIG1hbWlkd2FyIiA8IGFk aXR5YS5tYW1pZHdhckBnbWFpbC5jb20gPjsgIlZvanRlY2ggU3pvY3MiIAo+IDwgdnN6b2NzQHJl ZGhhdC5jb20gPiBDYzogIiB1c2Vyc0BvdmlydC5vcmcgIiA8IHVzZXJzQG92aXJ0Lm9yZyA+OyAK PiAiIGVuZ2luZS1kZXZlbEBvdmlydC5vcmcgIiA8IGVuZ2luZS1kZXZlbEBvdmlydC5vcmcgPiBT dWJqZWN0OiBSZTogW1VzZXJzXSAKPiBhZGRpbmcgc2NyaXB0cyAKPiAKPiBpZiB5b3UgYXJlIHRy eWluZyB0byBob29rIGludG8gVUktc3BlY2lmaWMgZXZlbnRzLCBpdCBzb3VuZHMgCj4gbGlrZSB5 b3Ugd2lsbCBuZWVkIHRvIHdyaXRlIGFuIG9WaXJ0IFVJIFBsdWdpbiBbMV0gaW4gb3JkZXIgdG8g Cj4gZG8gdGhhdC4gSG93ZXZlciwgSSBiZWxpZXZlIHRoYXQgdGhlIG9WaXJ0IFVJIFBsdWdpbnMg Cj4gaW5mcmFzdHJ1Y3R1cmUgZG9lc24ndCBzdXBwb3J0IGhvb2tpbmcgdG8gZXZlbnRzIHN1Y2gg YXMgInRhYiAKPiB4IHdhcyBzZWxlY3RlZCIgYW5kL29yICJidXR0b24gYiB3YXMgY2xpY2tlZCIu IAo+IEl0IGRvZXMgYWxsb3cgeW91IHRvIGFkZCBuZXcgKGN1c3RvbSkgdGFicy9zdWItdGFicy9i dXR0b25zIG9mIAo+IHlvdXIgb3duLCBhbmQgdGhlcmUgaXMgYSBjaGFuY2UgdGhhdCBpdCBhbGxv d3MgeW91IHRvIGhvb2sgCj4gaW50byBldmVudHMgc3VjaCBhcyAncm93IHggd2FzIHNlbGVjdGVk IGluIHRoZSBncmlkJy4gCj4gCj4gQFZvanRlY2ggd2lsbCBrbm93IGJldHRlci4gVm9qdGVjaD8g Cj4gCj4gaWYgeW91IGFyZSB0cnlpbmcgdG8gaG9vayBpbnRvIGVuZ2luZSBldmVudHMgKGUuZy4g eW91IHdhbnQgdG8gCj4gcnVuIGEgc2NyaXB0IGV2ZXJ5IHRpbWUgYSBWTSBpcyBzdGFydGVkIGlu IG9WaXJ0LCBubyBtYXR0ZXIgaWYgCj4gdGhlIHVzZXIgc3RhcnRlZCBpdCBieSBjbGlja2luZyB0 aGUgJ3J1bicgYnV0dG9uIGluIHRoZSBvVmlydC0gCj4gZW5naW5lIHdlYmFkbWluLCBvciBpbnZv a2VkIGEgUkVTVCBBUEkgcmVxdWVzdCwgb3IgYW4gU0RLIAo+IGNvbW1hbmQpLCB0aGVuIGl0IHdp bGwgcmVxdWlyZSBzb21lIHNvcnQgb2YgYW4gImVuZ2luZS1wbHVnaW4iIAo+IGluZnJhc3RydWN0 dXJlIHRoYXQgd2UgZG9uJ3QgaGF2ZSBhdCB0aGUgbW9tZW50IEFGQUlLLiAKPiB0aGVyZSBpcyBh IGNoYW5jZSB0aGF0IGZvciBzb21lIG9mIHRoZSBldmVudHMgeW91IHdpbGwgYmUgYWJsZSAKPiB0 byB1dGlsaXplIHRoZSBWRFNNIGhvb2tzIChhdCB0aGUgSG9zdCBsZXZlbCkgWzJdLiAKPiAKPiAt LS0tIAo+IFRoYW5rcywgCj4gRWluYXYgCj4gCj4gWzFdIGh0dHA6Ly93d3cub3ZpcnQub3JnL0Zl YXR1cmVzL1VJUGx1Z2lucyAKPiAKPiBbMl0gaHR0cDovL3d3dy5vdmlydC5vcmcvVkRTTS1Ib29r cyAKPiAKPiAKPiAtLS0tLSBPcmlnaW5hbCBNZXNzYWdlIC0tLS0tIAo+IAo+ID4gRnJvbTogImFk aXR5YSBtYW1pZHdhciIgPCBhZGl0eWEubWFtaWR3YXJAZ21haWwuY29tID4gCj4gPiBUbzogdXNl cnNAb3ZpcnQub3JnICwgZW5naW5lLWRldmVsQG92aXJ0Lm9yZyAKPiA+IFNlbnQ6IFRodXJzZGF5 LCBNYXJjaCAxMywgMjAxNCAxMToyMzozNSBBTSAKPiA+IFN1YmplY3Q6IFtVc2Vyc10gYWRkaW5n IHNjcmlwdHMgCj4gPiAKPiA+IAo+ID4gSSB3YW50IHRvIGNvbW1pdCBjaGFuZ2VzIHRvIHRoZSBl bmdpbmUgYnkgYWRkaW5nIHNvbWUgYmFzaCBzY3JpcHRzLiAKPiA+IHRoZSBzY3JpcHRzIHNob3Vs ZCBiZSBpbnZva2VkIG9uY2UgYSBidXR0b24gb3IgdGFiIGlzIHNlbGVjdGVkIGluIHRoZSAKPiA+ IHdlYmFkbWluIHBvcnRhbCBieSB0aGUgdXNlci4gCj4gPiAKPiA+IGNhbiBzb21lb25lIGd1aWRl IG9uIGFjaGlldmluZyB0aGlzLiAKPiA+IAo+ID4gLS0gCj4gPiAtQWRpdHlhIE1hbWlkd2FyIAo+ ID4gCj4gPiBfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXyAK PiA+IFVzZXJzIG1haWxpbmcgbGlzdCAKPiA+IFVzZXJzQG92aXJ0Lm9yZyAKPiA+IGh0dHA6Ly9s aXN0cy5vdmlydC5vcmcvbWFpbG1hbi9saXN0aW5mby91c2VycyAKCgo8L2Jsb2NrcXVvdGU+CgoK CgotLSAKLUFkaXR5YSBNYW1pZHdhciAKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fIApVc2VycyBtYWlsaW5nIGxpc3QgClVzZXJzQG92aXJ0Lm9yZyAKaHR0 cDovL2xpc3RzLm92aXJ0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL3VzZXJzIAoKPC9ibG9ja3F1b3Rl PgoKCgotLS0tLS09X1BhcnRfMTg1NTExNV83NDAzMTc0MjIuMTM5NTQwNTE4NDg2NApDb250ZW50 LVR5cGU6IHRleHQvaHRtbDsgY2hhcnNldD11dGYtOApDb250ZW50LVRyYW5zZmVyLUVuY29kaW5n OiBxdW90ZWQtcHJpbnRhYmxlCgo8aHRtbD48Ym9keT48ZGl2IHN0eWxlPTNEImZvbnQtZmFtaWx5 OiB0aW1lcyBuZXcgcm9tYW4sIG5ldyB5b3JrLCB0aW1lcywgc2U9CnJpZjsgZm9udC1zaXplOiAx MnB0OyBjb2xvcjogIzAwMDAwMCI+PGRpdj48YnI+PC9kaXY+PGhyIGlkPTNEInp3Y2hyIj48Ymxv Yz0Ka3F1b3RlIHN0eWxlPTNEImJvcmRlci1sZWZ0OjJweCBzb2xpZCAjMTAxMEZGO21hcmdpbi1s ZWZ0OjVweDtwYWRkaW5nLWxlZnQ6PQo1cHg7Y29sb3I6IzAwMDtmb250LXdlaWdodDpub3JtYWw7 Zm9udC1zdHlsZTpub3JtYWw7dGV4dC1kZWNvcmF0aW9uOm5vbmU7Zm89Cm50LWZhbWlseTpIZWx2 ZXRpY2EsQXJpYWwsc2Fucy1zZXJpZjtmb250LXNpemU6MTJwdDsiPjxiPkZyb206IDwvYj4iYWRp dHlhID0KbWFtaWR3YXIiICZsdDthZGl0eWEubWFtaWR3YXJAZ21haWwuY29tJmd0Ozxicj48Yj5U bzogPC9iPmF3ZWxzQHJlZGhhdC5jb20sPQogZW5naW5lLWRldmVsQG92aXJ0Lm9yZywgdXNlcnNA b3ZpcnQub3JnPGJyPjxiPlNlbnQ6IDwvYj5GcmlkYXksIE1hcmNoIDIxLCA9CjIwMTQgNjoxNDow MSBBTTxicj48Yj5TdWJqZWN0OiA8L2I+UmU6IFtVc2Vyc10gW0VuZ2luZS1kZXZlbF0gJm5ic3A7 YWRkaW5nID0Kc2NyaXB0czxicj48ZGl2Pjxicj48L2Rpdj48ZGl2IGRpcj0zRCJsdHIiPjxkaXY+ PGRpdj48ZGl2PjxkaXY+PGRpdj48ZGl2PjxkPQppdj48YnI+PC9kaXY+SGV5LDxicj48L2Rpdj5t eSB0ZWFtIGlzIHdvcmtpbmcgb24gYWRkaW5nIEFvRSBwcm90b2NvbCBzdXBwb3I9CnQgdG8gb3Zp cnQuPGJyPjxkaXY+PGJyPjwvZGl2PjwvZGl2PmFtIHRodXMgZmFjaW5nIGZvbGxvd2luZyBkaWZm aWN1bHRpZXM6PD0KYnI+PC9kaXY+MSA6IGkgd3JvdGUgdGhlIHJlcXVpcmVkIGNvZGUgdXNpbmcg aW4gYmFzaCBzY3JpcHRpbmcsIHdoaWNoIGkgd2lzPQpoIHRvIGludm9rZSBhZnRlciBhIGNsaWNr IG9mIGJ1dHRvbiBpbiB0aGUgb3ZpcnQtcG9ydGFsLiAod2hpY2ggZG9lcyBub3Qgc2U9CmVtIHRv IGJlIHBvc3NpYmxlKS4gY2FuIHlvdSBoZWxwIG9uIHRoYXQ/IHdoaWNoIHByb2dyYW1taW5nIGxh bmd1YWdlIHNob3VsZD0KIGkgdXNlLCBhbmQgaG93IHRoYXQgZmlsZSBzaG91bGQgYmUgaW52b2tl ZC48L2Rpdj48L2Rpdj48L2Rpdj48L2Rpdj48L2Jsb2NrPQpxdW90ZT48ZGl2PlRoaXMgbmVlZHMg dG8gYmUgZG9uZSBpbiBKYXZhLiBZb3UnbGwgbmVlZCB0byByZWFkIHVwIG9uIG9WaXJ0J3M9CiBV SSBQbHVnaW4gaW5mcmFzdHJ1Y3R1cmUsIHdoaWNoIEVpbmF2IGFuZCBvdGhlcnMgbWVudGlvbmVk IGJlbG93LiBObywgeW91ID0KY2Fubm90IHdyaXRlIGEgYmFzaCBzY3JpcHQgYW5kIGhhdmUgYSBi dXR0b24gY2xpY2sgaW4gb1ZpcnQgaW52b2tlIHRoYXQuPC9kPQppdj48YmxvY2txdW90ZSBzdHls ZT0zRCJib3JkZXItbGVmdDoycHggc29saWQgIzEwMTBGRjttYXJnaW4tbGVmdDo1cHg7cGFkZGk9 Cm5nLWxlZnQ6NXB4O2NvbG9yOiMwMDA7Zm9udC13ZWlnaHQ6bm9ybWFsO2ZvbnQtc3R5bGU6bm9y bWFsO3RleHQtZGVjb3JhdGlvbj0KOm5vbmU7Zm9udC1mYW1pbHk6SGVsdmV0aWNhLEFyaWFsLHNh bnMtc2VyaWY7Zm9udC1zaXplOjEycHQ7Ij48ZGl2IGRpcj0zRCJsPQp0ciI+PGRpdj48ZGl2Pjxk aXY+PGRpdj48YnI+PC9kaXY+PC9kaXY+Mi4gZm9yIElTT3MgdG8gYmUgYXZhaWxhYmxlLCBpIG5l ZWQ9CiB0byBlbmFibGUgaG9zdHMgY29uZmlndXJlZCBpbiBjbHVzdGVycyBhbmQgc3RvcmFnZSBk b21haW5zIG9mIEFUQSB0eXBlLiAoYz0KdXJyZW50bHkgTkZTLCBpU0NTSSBhbmQgRkMgYXJlIGRv bmUpLiB3aGljaCBmaWxlcyBzaG91bGQgaSBmb2N1cyBvbiBjaGFuZ2luPQpnIGZvciBhYm92ZSBm dW5jdGlvbmFsaXR5LjwvZGl2PjwvZGl2PjwvZGl2PjwvYmxvY2txdW90ZT48ZGl2PkkndmUgbmV2 ZXIgaGU9CmFyZCBvZiBBVEEgbmV0d29yayBzdG9yYWdlLiBBcmUgeW91IHJlZmVycmluZyB0byBB VEEgaGFyZHdhcmUgdGVjaG5vbG9neSwgaT0KLmUuIFNBVEE/PC9kaXY+PGRpdj48YnI+PC9kaXY+ PGRpdj5BdCBhbnkgcmF0ZSwgYWRkaW5nIGEgY3VzdG9tIHN0b3JhZ2UgZG9tPQphaW4gdGVjaG5v bG9neSB3aWxsIGRpZmZpY3VsdC4gSG9wZWZ1bGx5IHNvbWVvbmUgZWxzZSBvbiBsaXN0IGNhbiBk aXJlY3QgeW89CnUuPC9kaXY+PGJsb2NrcXVvdGUgc3R5bGU9M0QiYm9yZGVyLWxlZnQ6MnB4IHNv bGlkICMxMDEwRkY7bWFyZ2luLWxlZnQ6NXB4Oz0KcGFkZGluZy1sZWZ0OjVweDtjb2xvcjojMDAw O2ZvbnQtd2VpZ2h0Om5vcm1hbDtmb250LXN0eWxlOm5vcm1hbDt0ZXh0LWRlY29yPQphdGlvbjpu b25lO2ZvbnQtZmFtaWx5OkhlbHZldGljYSxBcmlhbCxzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxMnB0 OyI+PGRpdiBkaXI9Cj0zRCJsdHIiPjxkaXY+PGRpdj48ZGl2Pjxicj48L2Rpdj48L2Rpdj4zLiBI b3cgZG8gaSBjaGFuZ2UgdGhlIGN1c3RvbSBsYXlvdT0KdCBvZiB0aGUgZW5naW5lPyAobGlrZSBh ZGRpbmcgYSBmZXcgZXh0cmEgYnV0dG9ucy4pIHBsZWFzZSBzcGVjaWZ5IHRoZSBmaWxlPQpzIHJl c3BvbnNpYmxlLjwvZGl2PjwvZGl2PjwvYmxvY2txdW90ZT48ZGl2PkFnYWluLCB5b3UnbGwgbmVl ZCB0byByZWFkIHVwIG89Cm4gb1ZpcnQncyBVSSBQbHVnaW4gaW5mcmFzdHJ1Y3R1cmUuJm5ic3A7 aHR0cDovL3d3dy5vdmlydC5vcmcvRmVhdHVyZXMvVUlQbD0KdWdpbnM8L2Rpdj48YmxvY2txdW90 ZSBzdHlsZT0zRCJib3JkZXItbGVmdDoycHggc29saWQgIzEwMTBGRjttYXJnaW4tbGVmdDo1PQpw eDtwYWRkaW5nLWxlZnQ6NXB4O2NvbG9yOiMwMDA7Zm9udC13ZWlnaHQ6bm9ybWFsO2ZvbnQtc3R5 bGU6bm9ybWFsO3RleHQtZGU9CmNvcmF0aW9uOm5vbmU7Zm9udC1mYW1pbHk6SGVsdmV0aWNhLEFy aWFsLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEycHQ7Ij48ZGl2ID0KZGlyPTNEImx0ciI+PGRpdj48 ZGl2Pjxicj48L2Rpdj48L2Rpdj40LiB0aGUgYWJvdmUgcXVlc3Rpb25zIHN0cmVzcyB0aGF0IGFt PQogZmFjaW5nIGRpZmZpY3VsdHkgaW4gaWRlbnRpZnlpbmcgZmlsZXMgcmVzcG9uc2libGUgZm9y IGEgcGFydGljdWxhciBtb2R1bGU9Ci4gaXMgdGhlcmUgYSBiZXR0ZXIgd2F5IHRvIGRvIHRoYXQg aW5zdGVhZCBvZiBkaWdnaW5nIHVwIHRoZSBlbnRpcmUgc291cmNlID0KY29kZS4gKCBhIGRvY3Vt ZW50YXRpb24gaWYgYXZhaWxhYmxlLik8L2Rpdj48L2Jsb2NrcXVvdGU+PGRpdj5PdGhlciB0aGFu IHdoPQphdCB3ZSd2ZSBhbHJlYWR5IG1lbnRpb25lZCAoSmF2YURvYywgYXJjaGl0ZWN0dXJlIGRv Y3Mgb24gdGhlIHdpa2kpLCBuby48L2Q9Cml2PjxkaXY+PGJyPjwvZGl2PjxkaXY+R3JlZzwvZGl2 PjxkaXY+PGJyPjwvZGl2PjxibG9ja3F1b3RlIHN0eWxlPTNEImJvcmRlcj0KLWxlZnQ6MnB4IHNv bGlkICMxMDEwRkY7bWFyZ2luLWxlZnQ6NXB4O3BhZGRpbmctbGVmdDo1cHg7Y29sb3I6IzAwMDtm b250LXdlPQppZ2h0Om5vcm1hbDtmb250LXN0eWxlOm5vcm1hbDt0ZXh0LWRlY29yYXRpb246bm9u ZTtmb250LWZhbWlseTpIZWx2ZXRpY2EsQXI9CmlhbCxzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxMnB0 OyI+PGRpdiBkaXI9M0QibHRyIj48YnI+PGRpdj48YnI+PC9kaXY+PC9kaXY+PD0KZGl2IGNsYXNz PTNEImdtYWlsX2V4dHJhIj48YnI+PGRpdj48YnI+PC9kaXY+PGRpdiBjbGFzcz0zRCJnbWFpbF9x dW90ZSI+T24gPQpNb24sIE1hciAxNywgMjAxNCBhdCA1OjUyIFBNLCBBbGV4YW5kZXIgV2VscyA8 c3BhbiBkaXI9M0QibHRyIj4mbHQ7PGEgaHJlZj0KPTNEIm1haWx0bzphd2Vsc0ByZWRoYXQuY29t IiB0YXJnZXQ9M0QiX2JsYW5rIj5hd2Vsc0ByZWRoYXQuY29tPC9hPiZndDs8L3NwPQphbj4gd3Jv dGU6PGJyPjxibG9ja3F1b3RlIGNsYXNzPTNEImdtYWlsX3F1b3RlIiBzdHlsZT0zRCJtYXJnaW46 MCAwIDAgLjhleDs9CmJvcmRlci1sZWZ0OjFweCAjY2NjIHNvbGlkO3BhZGRpbmctbGVmdDoxZXgi PkFkaXR5YSw8YnI+PGRpdj48YnI+PC9kaXY+ClRoYXQgaXMgYmVjYXVzZSB0aGF0IGZpbGUgZG9l c24ndCBleGlzdC4gV2UgbWFwIHRoYXQgbmFtZSB0byBhIHNlcnZsZXQgaW48Yj0Kcj4Kd2ViLnht bC4gSWYgeW91IHdhbnQgdG8gbW9kaWZ5IHRoZSBHV1QgaG9zdCBwYWdlIHRha2UgYSBsb29rIGF0 PGJyPgpHd3REeW5hbWljSG9zdFBhZ2VTZXJ2bGV0LmphdmEgYW5kIGl0cyBzdWIgY2xhc3NlcyAo Zm9yIHVzZXIgcG9ydGFsIGFuZDxicj4Kd2ViYWRtaW4pLiBBcyB3ZWxsIGFzIEd3dEhvc3RQYWdl LmpzcC4gWW91IHdpbGwgZmluZCB0aGVyZSBpcyBhbG1vc3Qgbm90aGluPQpnIGluPGJyPgp0aGF0 IHBhZ2UgYXMgYWxsIHRoZSBIVE1MIGlzIGJlaW5nIGdlbmVyYXRlZCBhdCBydW50aW1lIHVzaW5n IEdXVC48YnI+PGRpdj49Cjxicj48L2Rpdj4KU2luY2UgeW91IGFyZSBub3QgcmVhbGx5IGV4cGxh aW5pbmcgd2hhdCB5b3UgYXJlIHRyeWluZyB0byBkbyB3ZSBjYW4ndCBoZWxwPQo8YnI+CnlvdSBi ZXR0ZXIgb24gdGhlIGJlc3Qgc3RyYXRlZ3kgdG8gYWNoaWV2ZSB3aGF0IHlvdSB3YW50Ljxicj48 c3BhbiBjbGFzcz0zRD0KIkhPRW5aYiI+PHNwYW4gc3R5bGU9M0QiY29sb3I6ICM4ODg4ODg7Ij48 YnI+CkFsZXhhbmRlcjxicj4KPC9zcGFuPjwvc3Bhbj48ZGl2IGNsYXNzPTNEImltIEhPRW5aYiI+ PGJyPgpPbiBTYXR1cmRheSwgTWFyY2ggMTUsIDIwMTQgMDY6MDA6MjEgUE0gQWRpdHlhIE1hbWlk d2FyIHdyb3RlOjxicj4KJmd0OyBIZXkgdGhhbmtzIG9uIHRoZSBwcmV2aW91cyBpc3N1ZS48YnI+ CiZndDsgQWxzbyBpcyB0aGVyZSBhIHdheSBpIGNhbiBhY2Nlc3MgV2ViQWRtaW4uSHRtbCB0byBh ZGQgY3VzdG9tIGJ1dHRvbnMgYT0KbmQ8YnI+CiZndDsgbWFrZSBmZXcgdHdlYWtzIGZvciBwZXJz b25hbCB1c2U/IEkganVzdCBjYW50IGZpbmQgdGhhdCBmaWxlIGFmdGVyIHVzaT0Kbmc8YnI+CiZn dDsgZ2l0Ljxicj4KJmd0Ozxicj4KJmd0OyBBZGl0eWEgTWFtaWR3YXI8YnI+CiZndDs8YnI+PC9k aXY+PGRpdiBjbGFzcz0zRCJpbSBIT0VuWmIiPiZndDsgLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0t LS08YnI+CiZndDsgRnJvbTogIkVpbmF2IENvaGVuIiAmbHQ7PGEgaHJlZj0zRCJtYWlsdG86ZWNv aGVuQHJlZGhhdC5jb20iIHRhcmdldD0zRD0KIl9ibGFuayI+ZWNvaGVuQHJlZGhhdC5jb208L2E+ Jmd0Ozxicj4KJmd0OyBTZW50OiAxNC0wMy0yMDE0IDAxOjIxPGJyPjwvZGl2PjxkaXYgY2xhc3M9 M0QiSE9FblpiIj48ZGl2IGNsYXNzPTNEImg1PQoiPiZndDsgVG86ICJhZGl0eWEgbWFtaWR3YXIi ICZsdDs8YSBocmVmPTNEIm1haWx0bzphZGl0eWEubWFtaWR3YXJAZ21haWwuY289Cm0iIHRhcmdl dD0zRCJfYmxhbmsiPmFkaXR5YS5tYW1pZHdhckBnbWFpbC5jb208L2E+Jmd0OzsgIlZvanRlY2gg U3pvY3MiPGJyPgomZ3Q7ICZsdDs8YSBocmVmPTNEIm1haWx0bzp2c3pvY3NAcmVkaGF0LmNvbSIg dGFyZ2V0PTNEIl9ibGFuayI+dnN6b2NzQHJlZGg9CmF0LmNvbTwvYT4mZ3Q7IENjOiAiPGEgaHJl Zj0zRCJtYWlsdG86dXNlcnNAb3ZpcnQub3JnIiB0YXJnZXQ9M0QiX2JsYW5rIj51cz0KZXJzQG92 aXJ0Lm9yZzwvYT4iICZsdDs8YSBocmVmPTNEIm1haWx0bzp1c2Vyc0BvdmlydC5vcmciIHRhcmdl dD0zRCJfYmxhbmsiPQo+dXNlcnNAb3ZpcnQub3JnPC9hPiZndDs7PGJyPgomZ3Q7ICI8YSBocmVm PTNEIm1haWx0bzplbmdpbmUtZGV2ZWxAb3ZpcnQub3JnIiB0YXJnZXQ9M0QiX2JsYW5rIj5lbmdp bmUtZGU9CnZlbEBvdmlydC5vcmc8L2E+IiAmbHQ7PGEgaHJlZj0zRCJtYWlsdG86ZW5naW5lLWRl dmVsQG92aXJ0Lm9yZyIgdGFyZ2V0PTNEIj0KX2JsYW5rIj5lbmdpbmUtZGV2ZWxAb3ZpcnQub3Jn PC9hPiZndDsgU3ViamVjdDogUmU6IFtVc2Vyc108YnI+CiZndDsgYWRkaW5nIHNjcmlwdHM8YnI+ CiZndDs8YnI+CiZndDsgaWYgeW91IGFyZSB0cnlpbmcgdG8gaG9vayBpbnRvIFVJLXNwZWNpZmlj IGV2ZW50cywgaXQgc291bmRzPGJyPgomZ3Q7IGxpa2UgeW91IHdpbGwgbmVlZCB0byB3cml0ZSBh biBvVmlydCBVSSBQbHVnaW4gWzFdIGluIG9yZGVyIHRvPGJyPgomZ3Q7IGRvIHRoYXQuIEhvd2V2 ZXIsIEkgYmVsaWV2ZSB0aGF0IHRoZSBvVmlydCBVSSBQbHVnaW5zPGJyPgomZ3Q7IGluZnJhc3Ry dWN0dXJlIGRvZXNuJ3Qgc3VwcG9ydCBob29raW5nIHRvIGV2ZW50cyBzdWNoIGFzICJ0YWI8YnI+ CiZndDsgeCB3YXMgc2VsZWN0ZWQiIGFuZC9vciAiYnV0dG9uIGIgd2FzIGNsaWNrZWQiLjxicj4K Jmd0OyBJdCBkb2VzIGFsbG93IHlvdSB0byBhZGQgbmV3IChjdXN0b20pIHRhYnMvc3ViLXRhYnMv YnV0dG9ucyBvZjxicj4KJmd0OyB5b3VyIG93biwgYW5kIHRoZXJlIGlzIGEgY2hhbmNlIHRoYXQg aXQgYWxsb3dzIHlvdSB0byBob29rPGJyPgomZ3Q7IGludG8gZXZlbnRzIHN1Y2ggYXMgJ3JvdyB4 IHdhcyBzZWxlY3RlZCBpbiB0aGUgZ3JpZCcuPGJyPgomZ3Q7PGJyPgomZ3Q7IEBWb2p0ZWNoIHdp bGwga25vdyBiZXR0ZXIuIFZvanRlY2g/PGJyPgomZ3Q7PGJyPgomZ3Q7IGlmIHlvdSBhcmUgdHJ5 aW5nIHRvIGhvb2sgaW50byBlbmdpbmUgZXZlbnRzIChlLmcuIHlvdSB3YW50IHRvPGJyPgomZ3Q7 IHJ1biBhIHNjcmlwdCBldmVyeSB0aW1lIGEgVk0gaXMgc3RhcnRlZCBpbiBvVmlydCwgbm8gbWF0 dGVyIGlmPGJyPgomZ3Q7IHRoZSB1c2VyIHN0YXJ0ZWQgaXQgYnkgY2xpY2tpbmcgdGhlICdydW4n IGJ1dHRvbiBpbiB0aGUgb1ZpcnQtPGJyPgomZ3Q7IGVuZ2luZSB3ZWJhZG1pbiwgb3IgaW52b2tl ZCBhIFJFU1QgQVBJIHJlcXVlc3QsIG9yIGFuIFNESzxicj4KJmd0OyBjb21tYW5kKSwgdGhlbiBp dCB3aWxsIHJlcXVpcmUgc29tZSBzb3J0IG9mIGFuICJlbmdpbmUtcGx1Z2luIjxicj4KJmd0OyBp bmZyYXN0cnVjdHVyZSB0aGF0IHdlIGRvbid0IGhhdmUgYXQgdGhlIG1vbWVudCBBRkFJSy48YnI+ CiZndDsgdGhlcmUgaXMgYSBjaGFuY2UgdGhhdCBmb3Igc29tZSBvZiB0aGUgZXZlbnRzIHlvdSB3 aWxsIGJlIGFibGU8YnI+CiZndDsgdG8gdXRpbGl6ZSB0aGUgVkRTTSBob29rcyAoYXQgdGhlIEhv c3QgbGV2ZWwpIFsyXS48YnI+CiZndDs8YnI+CiZndDsgLS0tLTxicj4KJmd0OyBUaGFua3MsPGJy PgomZ3Q7IEVpbmF2PGJyPgomZ3Q7PGJyPgomZ3Q7IFsxXSA8YSBocmVmPTNEImh0dHA6Ly93d3cu b3ZpcnQub3JnL0ZlYXR1cmVzL1VJUGx1Z2lucyIgdGFyZ2V0PTNEIl9ibGE9Cm5rIj5odHRwOi8v d3d3Lm92aXJ0Lm9yZy9GZWF0dXJlcy9VSVBsdWdpbnM8L2E+PGJyPgomZ3Q7PGJyPgomZ3Q7IFsy XSA8YSBocmVmPTNEImh0dHA6Ly93d3cub3ZpcnQub3JnL1ZEU00tSG9va3MiIHRhcmdldD0zRCJf YmxhbmsiPmh0dHA9CjovL3d3dy5vdmlydC5vcmcvVkRTTS1Ib29rczwvYT48YnI+CiZndDs8YnI+ CiZndDs8YnI+CiZndDsgLS0tLS0gT3JpZ2luYWwgTWVzc2FnZSAtLS0tLTxicj4KJmd0Ozxicj4K Jmd0OyAmZ3Q7IEZyb206ICJhZGl0eWEgbWFtaWR3YXIiICZsdDs8YSBocmVmPTNEIm1haWx0bzph ZGl0eWEubWFtaWR3YXJAZ21hPQppbC5jb20iIHRhcmdldD0zRCJfYmxhbmsiPmFkaXR5YS5tYW1p ZHdhckBnbWFpbC5jb208L2E+Jmd0Ozxicj4KJmd0OyAmZ3Q7IFRvOiA8YSBocmVmPTNEIm1haWx0 bzp1c2Vyc0BvdmlydC5vcmciIHRhcmdldD0zRCJfYmxhbmsiPnVzZXJzQG92PQppcnQub3JnPC9h PiwgPGEgaHJlZj0zRCJtYWlsdG86ZW5naW5lLWRldmVsQG92aXJ0Lm9yZyIgdGFyZ2V0PTNEIl9i bGFuayI+ZW49CmdpbmUtZGV2ZWxAb3ZpcnQub3JnPC9hPjxicj4KJmd0OyAmZ3Q7IFNlbnQ6IFRo dXJzZGF5LCBNYXJjaCAxMywgMjAxNCAxMToyMzozNSBBTTxicj4KJmd0OyAmZ3Q7IFN1YmplY3Q6 IFtVc2Vyc10gYWRkaW5nIHNjcmlwdHM8YnI+CiZndDsgJmd0Ozxicj4KJmd0OyAmZ3Q7PGJyPgom Z3Q7ICZndDsgSSB3YW50IHRvIGNvbW1pdCBjaGFuZ2VzIHRvIHRoZSBlbmdpbmUgYnkgYWRkaW5n IHNvbWUgYmFzaCBzY3JpcHQ9CnMuPGJyPgomZ3Q7ICZndDsgdGhlIHNjcmlwdHMgc2hvdWxkIGJl IGludm9rZWQgb25jZSBhIGJ1dHRvbiBvciB0YWIgaXMgc2VsZWN0ZWQgaW49CiB0aGU8YnI+CiZn dDsgJmd0OyB3ZWJhZG1pbiBwb3J0YWwgYnkgdGhlIHVzZXIuPGJyPgomZ3Q7ICZndDs8YnI+CiZn dDsgJmd0OyBjYW4gc29tZW9uZSBndWlkZSBvbiBhY2hpZXZpbmcgdGhpcy48YnI+CiZndDsgJmd0 Ozxicj4KJmd0OyAmZ3Q7IC0tPGJyPgomZ3Q7ICZndDsgLUFkaXR5YSBNYW1pZHdhcjxicj4KJmd0 OyAmZ3Q7PGJyPgomZ3Q7ICZndDsgX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX188YnI+CiZndDsgJmd0OyBVc2VycyBtYWlsaW5nIGxpc3Q8YnI+CiZndDsgJmd0 OyA8YSBocmVmPTNEIm1haWx0bzpVc2Vyc0BvdmlydC5vcmciIHRhcmdldD0zRCJfYmxhbmsiPlVz ZXJzQG92aXJ0Lj0Kb3JnPC9hPjxicj4KJmd0OyAmZ3Q7IDxhIGhyZWY9M0QiaHR0cDovL2xpc3Rz Lm92aXJ0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL3VzZXJzIiB0YXJnZXQ9Cj0zRCJfYmxhbmsiPmh0 dHA6Ly9saXN0cy5vdmlydC5vcmcvbWFpbG1hbi9saXN0aW5mby91c2VyczwvYT48YnI+PGRpdj48 YnI+PD0KL2Rpdj48L2Rpdj48L2Rpdj48L2Jsb2NrcXVvdGU+PC9kaXY+PGJyPjxiciBjbGVhcj0z RCJhbGwiPjxicj4tLSA8YnI+LUFkaXR5PQphIE1hbWlkd2FyCjwvZGl2Pjxicj5fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXzxicj5Vc2VycyBtYWlsaW5nID0K bGlzdDxicj5Vc2Vyc0BvdmlydC5vcmc8YnI+aHR0cDovL2xpc3RzLm92aXJ0Lm9yZy9tYWlsbWFu L2xpc3RpbmZvL3VzZXJzPGJyPQo+PC9ibG9ja3F1b3RlPjxkaXY+PGJyPjwvZGl2PjwvZGl2Pjwv Ym9keT48L2h0bWw+Ci0tLS0tLT1fUGFydF8xODU1MTE1Xzc0MDMxNzQyMi4xMzk1NDA1MTg0ODY0 LS0K --===============3008184913441479362==-- From awels at redhat.com Fri Mar 21 08:49:26 2014 Content-Type: multipart/mixed; boundary="===============8104961223530473118==" MIME-Version: 1.0 From: Alexander Wels To: users at ovirt.org Subject: Re: [Users] [Engine-devel] adding scripts Date: Fri, 21 Mar 2014 08:49:22 -0400 Message-ID: <3252812.0fU9BrnEQL@awels> In-Reply-To: CA+pz52__SFAV7_6pom_L4HNwpG6b-YUbOk92f04PF0HtOp9keg@mail.gmail.com --===============8104961223530473118== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable On Friday, March 21, 2014 03:44:01 PM aditya mamidwar wrote: > Hey, > my team is working on adding AoE protocol support to ovirt. > = > am thus facing following difficulties: > 1 : i wrote the required code using in bash scripting, which i wish to > invoke after a click of button in the ovirt-portal. (which does not seem = to > be possible). can you help on that? which programming language should i > use, and how that file should be invoked. When you say ovirt portal I am assuming you mean the web admin as giving us= ers = access to low level stuff like that in the user portal would probably be a = bad = thing. As said in a couple of other responses the best way to do that in webadmin = is = probably writing a UI plugin. A full explanation of what you can do with a = UI = plugin is available here: http://www.ovirt.org/Features/UIPlugins In short a UI plugin is a mini application written in Javascript that hooks = into the main web admin UI. The UI infrastructure makes certain element of = the = UI available to the plugin. One of the things it can do is to allow you to = add = buttons to the UI. When those buttons are clicked whatever javascript handl= er = you assigned to it will execute. This gives you a couple of options: 1. Write your own web application that can take commands from buttons insid= e = the web admin interface. Since the ovirt engine runs on JBOSS I would sugge= st = you write your own web application in Java that executes the appropriate ba= sh = commands based on which button is pressed using the UI plugin. 2. Write a minimal plugin that makes use of the REST API and add code to ca= ll = your bash scripts from the REST api. > = > 2. for ISOs to be available, i need to enable hosts configured in clusters > and storage domains of ATA type. (currently NFS, iSCSI and FC are done). > which files should i focus on changing for above functionality. > = Honestly I don't know enough about the storage infrastructure to give you a = good answer to that. Maybe someone else can fill this in. > 3. How do i change the custom layout of the engine? (like adding a few > extra buttons.) please specify the files responsible. > = Look at the UI plugins, the page linked above explains their usage in great = detail as well as give a bunch of examples on how to achieve this. > 4. the above questions stress that am facing difficulty in identifying > files responsible for a particular module. is there a better way to do th= at > instead of digging up the entire source code. ( a documentation if > available.) > = This gives a nice overview of the architecture of oVirt: = http://www.ovirt.org/Architecture The source code associated with that is basically split out into two GIT = repositories. 1. For the frontend and the engine, which is all java code. 2. For VDSM which is all python. The user portal and web admin communicate with the engine using GWT-RPC and = soon the REST api. Then the engine communicates with VDSM using XML-RPC. The engine runs on one machine (either dedicated or as its own VM on one of = your hosts). Then VDSM runs on the hosts. The hosts are the ones that = communicate with the storage. So I am guessing your bash code will run on a = host? So in short, I think this is what you want? 1. Write UI plugin to add the buttons/etc to the webadmin. 2. Write your own web app, or hook into the REST API and add the commands t= o = execute whatever it is you are doing. 3. (Maybe?) Modify VDSM to accept the commands from the REST API or your we= b = application, and execute your scripts using VDSM based on the commands. Alexander > On Mon, Mar 17, 2014 at 5:52 PM, Alexander Wels wrot= e: > > Aditya, > > = > > That is because that file doesn't exist. We map that name to a servlet = in > > web.xml. If you want to modify the GWT host page take a look at > > GwtDynamicHostPageServlet.java and its sub classes (for user portal and > > webadmin). As well as GwtHostPage.jsp. You will find there is almost > > nothing in > > that page as all the HTML is being generated at runtime using GWT. > > = > > Since you are not really explaining what you are trying to do we can't > > help > > you better on the best strategy to achieve what you want. > > = > > Alexander > > = > > On Saturday, March 15, 2014 06:00:21 PM Aditya Mamidwar wrote: > > > Hey thanks on the previous issue. > > > Also is there a way i can access WebAdmin.Html to add custom buttons = and > > > make few tweaks for personal use? I just cant find that file after us= ing > > > git. > > > = > > > Aditya Mamidwar > > > = > > > -----Original Message----- > > > From: "Einav Cohen" > > > Sent: 14-03-2014 01:21 > > > To: "aditya mamidwar" ; "Vojtech Szocs" > > > Cc: "users(a)ovirt.org" ; > > > "engine-devel(a)ovirt.org" Subject: Re: [U= sers] > > > adding scripts > > > = > > > if you are trying to hook into UI-specific events, it sounds > > > like you will need to write an oVirt UI Plugin [1] in order to > > > do that. However, I believe that the oVirt UI Plugins > > > infrastructure doesn't support hooking to events such as "tab > > > x was selected" and/or "button b was clicked". > > > It does allow you to add new (custom) tabs/sub-tabs/buttons of > > > your own, and there is a chance that it allows you to hook > > > into events such as 'row x was selected in the grid'. > > > = > > > @Vojtech will know better. Vojtech? > > > = > > > if you are trying to hook into engine events (e.g. you want to > > > run a script every time a VM is started in oVirt, no matter if > > > the user started it by clicking the 'run' button in the oVirt- > > > engine webadmin, or invoked a REST API request, or an SDK > > > command), then it will require some sort of an "engine-plugin" > > > infrastructure that we don't have at the moment AFAIK. > > > there is a chance that for some of the events you will be able > > > to utilize the VDSM hooks (at the Host level) [2]. > > > = > > > ---- > > > Thanks, > > > Einav > > > = > > > [1] http://www.ovirt.org/Features/UIPlugins > > > = > > > [2] http://www.ovirt.org/VDSM-Hooks > > > = > > > = > > > ----- Original Message ----- > > > = > > > > From: "aditya mamidwar" > > > > To: users(a)ovirt.org, engine-devel(a)ovirt.org > > > > Sent: Thursday, March 13, 2014 11:23:35 AM > > > > Subject: [Users] adding scripts > > > > = > > > > = > > > > I want to commit changes to the engine by adding some bash scripts. > > > > the scripts should be invoked once a button or tab is selected in t= he > > > > webadmin portal by the user. > > > > = > > > > can someone guide on achieving this. > > > > = > > > > -- > > > > -Aditya Mamidwar > > > > = > > > > _______________________________________________ > > > > Users mailing list > > > > Users(a)ovirt.org > > > > http://lists.ovirt.org/mailman/listinfo/users --===============8104961223530473118==-- From herrold at owlriver.com Fri Mar 21 10:43:30 2014 Content-Type: multipart/mixed; boundary="===============4883472925962448924==" MIME-Version: 1.0 From: R P Herrold To: users at ovirt.org Subject: [Users] adding scripts Date: Fri, 21 Mar 2014 10:43:27 -0400 Message-ID: In-Reply-To: 2142144483.1855116.1395405184865.JavaMail.zimbra@redhat.com --===============4883472925962448924== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable the threading is not clear to me, and I hope I have the = attributions correct On Fri, 21 Mar 2014, Greg Sheremeta wrote: >> From: "aditya mamidwar" = >> To: awels(a)redhat.com, engine-devel(a)ovirt.org, users(a)ovirt.org = >> Sent: Friday, March 21, 2014 6:14:01 AM = >> Subject: Re: [Users] [Engine-devel] adding scripts = >> am thus facing following difficulties: = >> 1 : i wrote the required code using in bash scripting, = >> which i wish to invoke after a click of button in the = >> ovirt-portal. (which does not seem to be possible). can you = >> help on that? which programming language should i use, and = >> how that file should be invoked. [I think Greg said:] > This needs to be done in Java. You'll need to read up on = > oVirt's UI Plugin infrastructure, which Einav and others = > mentioned below. No, you cannot write a bash script and have = > a button click in oVirt invoke that. Reading this: http://www.ovirt.org/VDSM-Hooks it states as a pull quote: The hooks reside on every host in = /usr/libexec/vdsm/hooks/ A hook can be any executable = (bash/python/perl/binary/etc). = and then at: http://www.ovirt.org/Features/UIPlugins UI plugins integrate with WebAdmin directly on the = client (web browser) using JavaScript programming language. = Plugin invocation is driven by WebAdmin and happens right = within the context of browser's JavaScript runtime, using = JavaScript language as the lowest common denominator between = WebAdmin (GWT) and individual plugins. UI plugins can take = full advantage of JavaScript language and its rich ecosystem = of libraries. There are no specific rules on how to implement = UI plugins, plugin API is designed to be simple and not to get = in developer's way, regardless of how a developer chooses to = write the plugin =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D I thought I understood the model, but have gotten confused. = Iam left with two questions: 1. is the plugin to be Java or JavaScript? (I think the answer = is the latter) 2. is there a constraint as to implementation language, or = not. I think a JS wrapper can call whatever it wishes, but = this is not clear to me Thank you -- Russ herrold --===============4883472925962448924==-- From awels at redhat.com Fri Mar 21 10:58:25 2014 Content-Type: multipart/mixed; boundary="===============6840189794600711156==" MIME-Version: 1.0 From: Alexander Wels To: users at ovirt.org Subject: Re: [Users] adding scripts Date: Fri, 21 Mar 2014 10:58:20 -0400 Message-ID: <1815745.CSTD58eMEM@awels> In-Reply-To: alpine.LRH.2.03.1403211032430.27644@bjyevire.pbz --===============6840189794600711156== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable On Friday, March 21, 2014 10:43:27 AM R P Herrold wrote: > the threading is not clear to me, and I hope I have the > attributions correct > = > On Fri, 21 Mar 2014, Greg Sheremeta wrote: > >> From: "aditya mamidwar" > >> = > >> To: awels(a)redhat.com, engine-devel(a)ovirt.org, users(a)ovirt.org > >> Sent: Friday, March 21, 2014 6:14:01 AM > >> Subject: Re: [Users] [Engine-devel] adding scripts > >> = > >> am thus facing following difficulties: > >> = > >> 1 : i wrote the required code using in bash scripting, > >> which i wish to invoke after a click of button in the > >> ovirt-portal. (which does not seem to be possible). can you > >> help on that? which programming language should i use, and > >> how that file should be invoked. > = > [I think Greg said:] > = > > This needs to be done in Java. You'll need to read up on > > oVirt's UI Plugin infrastructure, which Einav and others > > mentioned below. No, you cannot write a bash script and have > > a button click in oVirt invoke that. > = > Reading this: > http://www.ovirt.org/VDSM-Hooks > it states as a pull quote: > = > The hooks reside on every host in > /usr/libexec/vdsm/hooks/ A hook can be any executable > (bash/python/perl/binary/etc). > = > and then at: > http://www.ovirt.org/Features/UIPlugins > = > UI plugins integrate with WebAdmin directly on the > client (web browser) using JavaScript programming language. > Plugin invocation is driven by WebAdmin and happens right > within the context of browser's JavaScript runtime, using > JavaScript language as the lowest common denominator between > WebAdmin (GWT) and individual plugins. UI plugins can take > full advantage of JavaScript language and its rich ecosystem > of libraries. There are no specific rules on how to implement > UI plugins, plugin API is designed to be simple and not to get > in developer's way, regardless of how a developer chooses to > write the plugin > = > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D > = > I thought I understood the model, but have gotten confused. > Iam left with two questions: > = > 1. is the plugin to be Java or JavaScript? (I think the answer > is the latter) > = Javascript. But remember the UI plugins are running javascript in your = browser, and don't directly communicate with VDSM. > 2. is there a constraint as to implementation language, or > not. I think a JS wrapper can call whatever it wishes, but > this is not clear to me > = > Thank you > = > -- Russ herrold Note the VDSM hooks have nothing to do with the UI plugins. The VDSM hooks = alter the way VDSM works. The UI plugins alter the way the UI works. The = engine sits in between the UI and VDSM. Basically the UI issues a command t= o = the engine, then the engine issues a command to VDSM. For UI plugins it is easiest to communicate with the engine using the REST = api. So your instance your UI plugin has a button, which when you click it = issues a REST api call. The REST api call is part of the engine. The engine = creates a command based on the URL and parameters of the REST call and uses = that command to make a call to VDSM. Once the call reaches VDSM then the VD= SM = hooks come into play. So I don't entirely understand what you are trying to do, but you might hav= e = to write some code in the engine to create the appropriate command to pass = to = VDSM. In addition to the UI plugin and the VDSM hook. --===============6840189794600711156==-- From vszocs at redhat.com Fri Mar 21 11:24:02 2014 Content-Type: multipart/mixed; boundary="===============1617032254340582184==" MIME-Version: 1.0 From: Vojtech Szocs To: users at ovirt.org Subject: Re: [Users] adding scripts Date: Fri, 21 Mar 2014 11:24:00 -0400 Message-ID: <2025036079.3619062.1395415440989.JavaMail.zimbra@redhat.com> In-Reply-To: alpine.LRH.2.03.1403211032430.27644@bjyevire.pbz --===============1617032254340582184== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable ----- Original Message ----- > From: "R P Herrold" > To: "oVirt Users ML" > Cc: "aditya mamidwar" > Sent: Friday, March 21, 2014 3:43:27 PM > Subject: [Users] adding scripts > = > = > the threading is not clear to me, and I hope I have the > attributions correct > = > On Fri, 21 Mar 2014, Greg Sheremeta wrote: > = > >> From: "aditya mamidwar" > = > >> To: awels(a)redhat.com, engine-devel(a)ovirt.org, users(a)ovirt.org > >> Sent: Friday, March 21, 2014 6:14:01 AM > >> Subject: Re: [Users] [Engine-devel] adding scripts > = > >> am thus facing following difficulties: > = > >> 1 : i wrote the required code using in bash scripting, > >> which i wish to invoke after a click of button in the > >> ovirt-portal. (which does not seem to be possible). can you > >> help on that? which programming language should i use, and > >> how that file should be invoked. > = > [I think Greg said:] > = > > This needs to be done in Java. You'll need to read up on > > oVirt's UI Plugin infrastructure, which Einav and others > > mentioned below. No, you cannot write a bash script and have > > a button click in oVirt invoke that. > = > Reading this: > http://www.ovirt.org/VDSM-Hooks > it states as a pull quote: > = > The hooks reside on every host in > /usr/libexec/vdsm/hooks/ A hook can be any executable > (bash/python/perl/binary/etc). > = > and then at: > http://www.ovirt.org/Features/UIPlugins > = > UI plugins integrate with WebAdmin directly on the > client (web browser) using JavaScript programming language. > Plugin invocation is driven by WebAdmin and happens right > within the context of browser's JavaScript runtime, using > JavaScript language as the lowest common denominator between > WebAdmin (GWT) and individual plugins. UI plugins can take > full advantage of JavaScript language and its rich ecosystem > of libraries. There are no specific rules on how to implement > UI plugins, plugin API is designed to be simple and not to get > in developer's way, regardless of how a developer chooses to > write the plugin > = > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D > = > I thought I understood the model, but have gotten confused. > Iam left with two questions: > = > 1. is the plugin to be Java or JavaScript? (I think the answer > is the latter) Right, UI plugins are written in JavaScript as their code is dynamically lo= aded during WebAdmin startup. Your UI plugin is technically a web application on its own, except that plu= gin host page [1] is rendered inside invisible