Re: [Engine-devel] UI Plugins: PoC patch revision 6 now available

2012-10-22 Thread Itamar Heim

On 10/22/2012 05:25 PM, Morrissey, Christopher wrote:

Hi Vojtech,

Thanks again for the delivery of the patch. For revision 7, do you have
a list of content? I had previously indicated I could work on adding the
plugin API to launch a dialog, but hadn’t been able to get started on it
until now. I wanted to see if you by chance were already working on it
or if you were planning to deliver that yourself in the next revision?

A couple of other items we are looking for are the ability to add tasks
for execution and get access to the session ID or some kind of
authentication token so that we can make calls from our server into the
REST API. I’m not very familiar yet with the REST API so I’m not sure
what authentication methods are available and which would be best.


Oved - I remember we discussed UI plugins should be able to use same 
logic as jasper reports for getting a session identifier for using the 
REST API.

do you remember the details on this one?

Thanks,
   Itamar



-Chris

*From:*engine-devel-boun...@ovirt.org
[mailto:engine-devel-boun...@ovirt.org] *On Behalf Of *Vojtech Szocs
*Sent:* Thursday, October 18, 2012 10:49 AM
*To:* engine-devel
*Subject:* [Engine-devel] UI Plugins: PoC patch revision 6 now available

Hi guys,

the latest revision of UI Plugins proof-of-concept patch is now
available for you to experiment with. You can download the patch from
oVirt Gerrit at http://gerrit.ovirt.org/#/c/8120/2 (patch set 2).

Please read on to learn what's new in this revision. If you have any
comments, questions or ideas, please let me know!




*0. UI plugin path information resolved using local Engine configuration**
*
Server-side UI plugin infrastructure now uses local (machine-specific)
Engine configuration instead of global (/vdc_options/ database table)
Engine configuration:

  * Previously, path information was resolved through
org.ovirt.engine.core.common.config.Config class - Engine
configuration values were retrieved from /vdc_options/ database table.
  * Currently, path information is resolved through
org.ovirt.engine.core.utils.LocalConfig class - Engine configuration
values are retrieved from local file system.

In case you're not working with oVirt Engine through RPM package system,
e.g. you have a local development environment set up and you build and
deploy oVirt Engine through Maven, please follow these steps:

a. Copy default Engine configuration into /usr/share/*ovirt-engine*/conf

# mkdir -p /usr/share/ovirt-engine/conf
# cp /backend/manager/conf/engine.conf.defaults
/usr/share/ovirt-engine/conf/engine.conf.defaults


b. If necessary, copy UI plugin data files from
/usr/share/engine/ui-plugins to /usr/share/*ovirt-engine*/ui-plugins

c. If necessary, copy UI plugin config files from /etc/engine/ui-plugins
to /etc/*ovirt-engine*/ui-plugins

d, In case you want to override the default Engine configuration, put
your custom property file into /etc/sysconfig/ovirt-engine

The reason behind this change is that path information for UI plugin
data and configuration is typically machine-specific, and should be
customizable per machine through Engine local configuration.




*1. New plugin API function: addMainTabActionButton
*
The "addMainTabActionButton" API adds custom context-sensitive button to
the given main tab's data grid, along with corresponding data grid
context menu item.

addMainTabActionButton(entityTypeName, label, actionButtonInterface)

/entityTypeName/ indicates which main tab's data grid the button should
be added to, according to the entity type associated with the main
tab./entityTypeName/ values are strings reflecting
org.ovirt.engine.ui.webadmin.plugin.entityEntityType enum members.
Following /entityTypeName/ values are currently supported (values are
case-sensitive): "DataCenter", "Cluster", "Host", "Storage", "Disk",
"VirtualMachine", "Template".

Note: "Pool" value is currently not supported, because of
org.ovirt.engine.core.common.businessentities.vm_pools entity not
implementing the BusinessEntity interface, not sure why though. Maybe we
should switch from BusinessEntity to IVdcQueryable interface and always
cast getQueryableId method result value to Guid?

/label/ is the title displayed on the button/.
/
/actionButtonInterface/ represents an object that "implements the button
interface" by declaring its functions: /onClick/, /isEnabled/,
/isAccessible/. All functions of /actionButtonInterface/ receive
currently selected item(s) as function arguments.

Let's take a closer look at the concept behind /actionButtonInterface/.
In traditional class-based object-oriented languages, such as Java,
interface is an abstract type that contains method declarations without
an implementation. A class that implements the given interface must
implement all methods declared by that interface (unless it's an
abstract class,

[Engine-devel] git-review

2012-10-22 Thread Saggi Mizrahi
I've recently encountered more and more people not using the git-review tool 
and manually pushing their changes to Gerrit using raw git commands.
Even though there is nothing wrong with doing things the hard way. I prefer not 
using an overly complicated error prone way to interact with Gerrit.

Last I checked the version of git-review in Fedora is broken but I suggest 
using pip anyway as it is always synced with the master branch.

Also, please use topics. Either use a BZ# or a topic codename (eg. 
live_migration, vdsm_api, nfs4_support) so people can skim the review list for 
topics they might want to review.
Be careful, it automatically uses current the branch name (unless you use -t) 
so if you giving your branches funny names (I know I do) don't forget to 
manually specify a topic.

More information.

http://wiki.openstack.org/GerritWorkflow
https://github.com/openstack-ci/git-review
___
Engine-devel mailing list
Engine-devel@ovirt.org
http://lists.ovirt.org/mailman/listinfo/engine-devel


Re: [Engine-devel] [vdsm] Strange input from oVirt-engine for create (VM) API

2012-10-22 Thread Dan Kenigsberg
On Mon, Oct 22, 2012 at 02:22:18PM -0500, Adam Litke wrote:
> Hi all,
> 
> Today I was watching the vdsm log as ovirt-engine started a VM and I saw
> something peculiar with how VM device addresses were specified.  Here is a
> sample of the python dictionary for the VM from vdsm.log (I reformatted it 
> with
> pprint for readability):
> 
>  {'address': {' bus': '1',
>   ' controller': '0',
>   ' target': '0',
>   ' type': 'drive',
>   'unit': '0'},
> 
> Notice the whitespace in the 'controller', 'target', and 'type' keys.  Could
> someone explain why this is happening?  Is it deliberate or a bug?

I'm ashamed to see that I've taken a patch stripping these whitespaces
without discussion
http://gerrit.ovirt.org/#/c/3107/1/vdsm/libvirtvm.py

Igor, do you remember why this was not fixed properly, at the Engine
side?

Vdsm's schema should not be as lenient as the current code.

Dan.
___
Engine-devel mailing list
Engine-devel@ovirt.org
http://lists.ovirt.org/mailman/listinfo/engine-devel


[Engine-devel] Strange input from oVirt-engine for create (VM) API

2012-10-22 Thread Adam Litke
Hi all,

Today I was watching the vdsm log as ovirt-engine started a VM and I saw
something peculiar with how VM device addresses were specified.  Here is a
sample of the python dictionary for the VM from vdsm.log (I reformatted it with
pprint for readability):

 {'address': {' bus': '1',
  ' controller': '0',
  ' target': '0',
  ' type': 'drive',
  'unit': '0'},

Notice the whitespace in the 'controller', 'target', and 'type' keys.  Could
someone explain why this is happening?  Is it deliberate or a bug?

Thanks!

-- 
Adam Litke 
IBM Linux Technology Center

___
Engine-devel mailing list
Engine-devel@ovirt.org
http://lists.ovirt.org/mailman/listinfo/engine-devel


[Engine-devel] Feature page for GLUSTERFS_DOMAIN support is now available.

2012-10-22 Thread Deepak C Shetty

Hi list,
I created a wiki page for GLUSTERFS_DOMAIN support.
Comments/Suggestions are welcome.

http://wiki.ovirt.org/wiki/Features/GlusterFS_Storage_Domain

thanx,
deepak




___
Engine-devel mailing list
Engine-devel@ovirt.org
http://lists.ovirt.org/mailman/listinfo/engine-devel


Re: [Engine-devel] alias in disk instead of name

2012-10-22 Thread Simon Grinberg


- Original Message -
> From: "Michael Pasternak" 
> To: "Simon Grinberg" 
> Cc: "engine-devel" 
> Sent: Monday, October 22, 2012 8:58:25 AM
> Subject: Re: [Engine-devel] alias in disk instead of name
> 
> On 10/21/2012 06:13 PM, Simon Grinberg wrote:
> > 
> > 
> > - Original Message -
> >> From: "Michael Pasternak" 
> >> To: "Simon Grinberg" 
> >> Cc: "engine-devel" 
> >> Sent: Sunday, October 21, 2012 4:56:33 PM
> >> Subject: Re: [Engine-devel] alias in disk instead of name
> >>
> >> On 10/21/2012 04:15 PM, Simon Grinberg wrote:
> >>>
> >>>
> >>> - Original Message -
>  From: "Michael Pasternak" 
>  To: "Simon Grinberg" 
>  Cc: "engine-devel" 
>  Sent: Sunday, October 21, 2012 3:48:46 PM
>  Subject: Re: [Engine-devel] alias in disk instead of name
> 
>  On 10/21/2012 03:36 PM, Simon Grinberg wrote:
> >
> > - Original Message -
> >>> From: "Michael Pasternak" 
> >>> To: "engine-devel" 
> >>> Sent: Sunday, October 21, 2012 12:26:46 PM
> >>> Subject: [Engine-devel] alias in disk instead of name
> >>>
> >>>
> >>> The problem we caused by using alias in disk instead of name
> >>> is
> >>> break
> >>> of search-by-name paradigm
> >>> in engine.search dialect, not sure why we do not want forcing
> >>> disk
> >>> name to be unique [1],
> >>> but lack of "name" in disk search is does not look good in my
> >>> view.
> >>>
> >>> thoughts?
> >>>
> >>> [1] can be easily achieved via appropriate can-do-action
> >>> verification.
> > Names by definition are not unique IDs,
> 
>  they do, otherwise /search wasn't effective, remember users not
>  exposed to entity id, all entities fetched by-name, so names has
>  to
>  be unique.
> >>>
> >>> Yap that is what we do with many entities, and it causes
> >>> problems.
> >>> But with disks it is multiplied
> >>>
> 
> > thus it should not be enforced.
> > What would be the auto naming conversion to ensure uniqueness
> > with
> > plain text?
> 
>  not sure i follow, i'll assume you refer here to empty name, -
>  you
>  cannot have an
>  entity with no name.
> >>>
> >>> Well you create a new disk - do we want to enforce the user to
> >>> provide a unique disk name/alias for every disk he creates?
> >>> This will drive the user crazy. This is important even for user
> >>> only for floating/shared disks. For any other disks user does not
> >>> care if it's disk1, hd1, whatever. For these kind of disk, it's
> >>> just a VM disk and the user does not care if in all VMs this is
> >>> called disk 1 - so why bother him?
> >>
> >> from the same reason we have unique
> >> clusters/datacenters/networks/templates/etc...
> > 
> > Networks, DataCenter, Clusters, templates - are in order of
> > magnitude less then the number of disks.
> > And you name once and use many.
> > 
> > As for VMs - well it's may take that we should not force uniqueness
> > either ( you can warn though )
> 
> you cannot have two vms with same name in same domain ...

I didn't say that in a domain you are allowed to have two guests with the same 
hostname, I've said engine should allow for having duplicate VM names.
You are assuming that the VM name is identical to the guest host name. 

For many this is the case, for other it's just an alias/name given in oVirt. 
Actually for the cloud, this is mostly going to be the case and worse, you are 
blocking different tenants from having the same VM name just because you are 
assuming that VM name = guest hostname.  

> 
> > 
> > For disks, well number is >= VMs to >>>= VMs
> > Name by definition is mostly interesting in many cases only within
> > the VM, and we don't even have a way to correlate disk alias to
> > the internal name in the VM. In many cases as said before, a user
> > won't care about the name/alias if it is always attached to the
> > same VM. A user will rather look the VM and then list it's disk.
> > So actually I'll be better off with vm1.disk1 vm2.disk2 then
> > unique name per disk (PS AFAIK) this should be the default
> > suggested name by the UI, but then changing the VM name will break
> > this (yes, I know it's not possible ATM, but many people I know
> > requested for that).
> > 
> > So I as user will prefer that all the disks that created from a
> > template will have the same name as the original template, and
> > then to be able to search by (vm=name, disk=name) thus I can
> > access easily the same disk for the VMs.
> > 
> > On the other hand for others, as you've mentioned (especially for
> > floating and shared disk) the name/alias may be of importance,
> > uniqueness may be very important.
> 
> any disk can become shared.

Then when you make it shared then bother to give it a meaningful alias

> 
> > 
> > All that I'm saying that we can't force it's not that uniqueness in
> > never desired.
> 
> simon, you missing the point, i was talk