----- Original Message ----- > From: "Barak Azulay" <bazu...@redhat.com> > To: "Vojtech Szocs" <vsz...@redhat.com> > Cc: "Einav Cohen" <eco...@redhat.com>, "Oved Ourfali" <ov...@redhat.com>, > users@ovirt.org > Sent: Tuesday, November 4, 2014 5:15:35 PM > Subject: Re: [ovirt-users] webhook > > > > ----- Original Message ----- > > From: "Vojtech Szocs" <vsz...@redhat.com> > > To: "Einav Cohen" <eco...@redhat.com> > > Cc: "Oved Ourfali" <ov...@redhat.com>, users@ovirt.org > > Sent: Tuesday, November 4, 2014 2:12:05 PM > > Subject: Re: [ovirt-users] webhook > > > > > > > > ----- Original Message ----- > > > From: "Einav Cohen" <eco...@redhat.com> > > > To: "Vojtech Szocs" <vsz...@redhat.com> > > > Cc: "Oved Ourfali" <ov...@redhat.com>, users@ovirt.org > > > Sent: Friday, October 31, 2014 8:01:34 PM > > > Subject: Re: [ovirt-users] webhook > > > > > > > ----- Original Message ----- > > > > From: "Vojtech Szocs" <vsz...@redhat.com> > > > > Sent: Friday, October 31, 2014 11:51:53 AM > > > > > > > > Hi, > > > > > > > > if I get this correctly, you'd like to be notified when certain event > > > > happens (VM created/deleted/etc.) and react upon that. I see multiple > > > > possible approaches here: > > > > > > > > 0, improve Engine extension API (refer to Alon Bar-Lev for details) > > > > - if extensions can be packaged as JARs and these JARs could include > > > > web fragments [1] it would mean the possibility to deploy custom > > > > servlets onto existing Engine instance (in context of webapp that > > > > processes extensions) > > > > - your custom Java servlet could query REST interface (or be > > > > notified > > > > once something happens, but AFAIK we don't have that implemented > > > > yet) > > > > and do whatever logic is needed > > > > - once I asked Alon about ^^ but never got response from him > > > > - IMHO this would be a nice way to deploy custom Java code on Engine > > > > > > > > [1] https://blogs.oracle.com/swchan/entry/servlet_3_0_web_fragment > > > > > > > > 1, improve UI plugin API > > > > - add "VirtualMachineDataLoaded" event fired upon each refresh of > > > > VM data in UI table (generalization -> "{Entity}DataLoaded") > > > > - this is similar to existing "{Entity}SelectionChange" events > > > > > > relying on changes in the UI table is a bad idea: > > > > > > (1) potentially missing events: > > > the UI displays paginated data; if my VMs are sorted by name, and > > > I have 1000 VMs in my setup, and I just added a VM named "z", it will > > > be added to the last "page" which is not displayed right now, so I > > > wouldn't even be aware that something was added. > > > > > > (2) potentially "creating" "fake" events: > > > changes in the displayed data in the UI can occur due to change in the > > > Search query; if I have 50 VMs in my setup, and I initially had the > > > "Vms:" search query, and now I change it to "VMs: name = a*", which > > > results in displaying only 10 VMs, this may falsely hint on removal > > > of 40 VMs from the system. > > > > Agreed, that was a bad idea :) UI data is constrained by things like > > search query, pagination, sorting etc. Scratch my previous idea. > > > > As mentioned before, notification of relevant events occuring in system > > should be the way to go. Either Engine will provide mechanism to notify > > other systems (i.e. email notifier) or other system will poll/listen-to > > changes in Engine (i.e. via REST API). > > > > Idea for consideration, if every change to oVirt system would be sent > > to some event bus, we could easily implement different notification > > mechanisms (like websocket in addition to email), and web apps living > > in Engine EAR context could also register to that event bus (imagine > > WebAdmin servlet that listens for changes and pushes them to clients). > > This can/should be done through the notification service, > currently it supports email & snmp traps ... but it could be extended (very > easily)
Cool, maybe something we could do in future as part of UX improvement, i.e. change notification (push changes to client) to drive UI data update, instead of periodic polling. > > > > > > > > > > > > > > > 2, write UI plugin that uses oVirtJS to periodically check VM events > > > > > > not sure if this is referring to VM-related events in the code (e.g. > > > hooking to the click on "OK" within the New VM / Remove VM dialog, > > > or hooking to the "Success" callback of the action response, or > > > something similar), or to the VM-related "Events" (i.e. the ones that > > > are displayed in the GUI within the Events main-tab / bottom section). > > > If the former: can be done, I assume, though not sure how complex it > > > would be to implement the infrastructure for that. > > > If the latter: this will "catch" actions that were performed either > > > via the GUI or outside the GUI; in this case, it would probably be > > > better to use an Engine extension API (solution "0" above) rather > > > than a UI plugin, since it will be more reliable, will be active > > > even when the GUI is not in use, etc. > > > > It was meant simply as polling Engine via oVirtJS / REST API. > > > > But then again, any UI plugin-based solution has the drawback that > > web GUI must be active (open) in order for plugin to be active. > > > > > > > > > > > > > The disadvantage of 1, and 2, is that WebAdmin GUI must be open. > > > > In any case, if you'd like to explore the possibility of doing this > > > > via UI plugin, I'm here to help. > > > > > > > > Vojtech > > > > > > > > > > > > ----- Original Message ----- > > > > > From: "Oved Ourfali" <ov...@redhat.com> > > > > > To: "Yair Zaslavsky" <yzasl...@redhat.com> > > > > > Cc: "Koen Vanoppen" <vanoppen.k...@gmail.com>, users@ovirt.org, > > > > > "Vojtech > > > > > Szocs" <vsz...@redhat.com> > > > > > Sent: Thursday, October 30, 2014 2:10:12 PM > > > > > Subject: Re: [ovirt-users] webhook > > > > > > > > > > Hi > > > > > > > > > > CC-ing also Vojtech, the "father" of the UI plugins. > > > > > > > > > > Anyway, the only way to accomplish that via UI plugins at the moment > > > > > is > > > > > via > > > > > adding a new "action menu item", that in the background deleted the > > > > > VM, > > > > > and > > > > > reports to Foreman. > > > > > I would be nice to have a "hook" for different UI action items, but > > > > > it > > > > > isn't > > > > > available at the moment. > > > > > There are plenty code samples for UI plugins, most of them available > > > > > at: > > > > > http://www.ovirt.org/Features/UIPlugins > > > > > > > > > > I must say that I'm not sure webhooks are the right approach for > > > > > that, > > > > > as > > > > > I > > > > > guess it is relevant only in environments in which one doesn't use > > > > > the > > > > > API/CLI/SDK.... > > > > > but.. it will be a cool feature! > > > > > > > > > > Regards, > > > > > Oved > > > > > > > > > > ----- Original Message ----- > > > > > > From: "Yair Zaslavsky" <yzasl...@redhat.com> > > > > > > To: "Koen Vanoppen" <vanoppen.k...@gmail.com> > > > > > > Cc: "Oved Ourfali" <ov...@redhat.com>, users@ovirt.org > > > > > > Sent: Thursday, October 30, 2014 1:44:38 PM > > > > > > Subject: Re: [ovirt-users] webhook > > > > > > > > > > > > Oved - can we implement something like this using ui-plugins? > > > > > > > > > > > > > > > > > > ----- Original Message ----- > > > > > > > From: "Koen Vanoppen" <vanoppen.k...@gmail.com> > > > > > > > To: users@ovirt.org > > > > > > > Sent: Monday, October 27, 2014 4:06:40 PM > > > > > > > Subject: [ovirt-users] webhook > > > > > > > > > > > > > > Hi all, > > > > > > > > > > > > > > Just a quick question. Is it possible to set a webhook on the > > > > > > > removal > > > > > > > and > > > > > > > creation of a new vm? So we can send to foreman a delete action > > > > > > > when > > > > > > > the > > > > > > > VM > > > > > > > is deleted... > > > > > > > > > > > > > > Kind regards, > > > > > > > > > > > > > > Koen > > > > > > > > > > > > > > _______________________________________________ > > > > > > > Users mailing list > > > > > > > Users@ovirt.org > > > > > > > http://lists.ovirt.org/mailman/listinfo/users > > > > > > > > > > > > > _______________________________________________ > > > > > > Users mailing list > > > > > > Users@ovirt.org > > > > > > http://lists.ovirt.org/mailman/listinfo/users > > > > > > > > > > > > > > > _______________________________________________ > > > > Users mailing list > > > > Users@ovirt.org > > > > http://lists.ovirt.org/mailman/listinfo/users > > > > > > > > > _______________________________________________ > > Users mailing list > > Users@ovirt.org > > http://lists.ovirt.org/mailman/listinfo/users > > > > > > > _______________________________________________ Users mailing list Users@ovirt.org http://lists.ovirt.org/mailman/listinfo/users