Bug 885391

Summary: PRD32 - webadmin: support ui-plugins
Product: Red Hat Enterprise Virtualization Manager Reporter: Einav Cohen <ecohen>
Component: ovirt-engine-webadmin-portalAssignee: Vojtech Szocs <vszocs>
Status: CLOSED ERRATA QA Contact: Jiri Belka <jbelka>
Severity: unspecified Docs Contact:
Priority: high    
Version: unspecifiedCC: acathrow, chetan, dyasny, ecohen, iheim, pstehlik, Rhev-m-bugs, sgrinber, ykaul
Target Milestone: ---Keywords: FutureFeature
Target Release: 3.2.0   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard: ux
Fixed In Version: sf1 Doc Type: Release Note
Doc Text:
Support has been added for extending the administration portal user interface with custom plugins. This includes a dedicated API for discovering and loading plugins, and providing notification of the plugin's key events to the administration portal.
Story Points: ---
Clone Of:
: 889107 (view as bug list) Environment:
Last Closed: 2013-06-10 21:27:01 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 889107, 915537    

Description Einav Cohen 2012-12-09 01:13:40 UTC
Support extending the web-admin's view/functionality via externally-written plug-ins.

Comment 2 Vojtech Szocs 2013-01-04 17:18:37 UTC
The scope of oVirt UI Plugins feature introduced in RHEVM 3.2 is to provide a solid base for extending Web Admin user interface:

(1) client and server side infrastructure for discovering and loading plugins, and enforcing standard plugin lifecycle at runtime
(2) exposing dedicated API to plugins, providing various Web Admin user interface extension points
(3) providing standard events for plugins to hook into, in order to be notified of key events during Web Admin rutime

(1) is pretty much complete and working, no major design changes expected in near future.
(2) and (3) represent the actual functionality offered to plugins, and is therefore likely to be improved/extended in near future.

UI Plugins feature currently supports:
- API: Add custom {main|sub} tab
- API: Control custom {main|sub} tab properties
- API: Add custom main tab action button
- API: Show custom dialog
- Event: User login and logout
- Event: oVirt Engine REST API session acquired
- Event: Main tab {entity} selection change

Comment 3 Itamar Heim 2013-01-07 08:12:30 UTC
*** Bug 803248 has been marked as a duplicate of this bug. ***

Comment 5 Vojtech Szocs 2013-01-18 10:58:35 UTC
Hi, http://www.ovirt.org/wiki/Features/UIPlugins should include step-by-step walkthrough to create simple UI plugin.

A minimalistic UI plugin:

helloWorld.json (plugin descriptor)
---
{
  "name": "HelloWorld",
  "url": "/webadmin/webadmin/plugin/HelloWorld/start.html",
  "resourcePath": "helloWorld-files"
}
---

start.html (plugin host page)
---
<!DOCTYPE html>
<html>
<head>
<script>
  var api = parent.pluginApi('HelloWorld');
  api.register({
    UiInit: function() {
      window.alert('Hello world');
    }
  });
  api.ready();
</script>
</head>
<body>
</body>
</html>
---

Comment 7 Jiri Belka 2013-02-18 10:34:25 UTC
ok, sf7. BZ912298 opened for unicode characters handling.

Comment 8 errata-xmlrpc 2013-06-10 21:27:01 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

http://rhn.redhat.com/errata/RHSA-2013-0888.html