The cluster id -1 is used to indicate objects that can be clustered,
but are not assigned to any cluster. The new methods to remove objects
from their current datastore actually set this 'none' or -1 cluster
ID.
VNets are always created in this 'none' cluster. Hosts and DS require
a cluster ID to be placed when allocated, and the ruby OCA by default
sets it to 'none'
* Chown method: destination user and group are checked, auth. manager request used.
* New one.group.chown method.
* New ObjectCollection class to store sets of IDs.
* New RM user.addgroup user.delgroup methods, users and groups store a cross-reference ID set.
* Clusters store a set of Host IDs. The RM part of the add/remove host functionality works, but should be re-done to avoid deadlocks.
* Fix onedb schmea for template_pool table bug.
* VM, VMTEMPLATE, VNET & IMAGE objects have a GID attribute, and a table column. The group id is inherited from the user creating the object, except for VMs created from Templates, that inherit the Template's group.
* The new flag meaning has been modified in src/rm sources and CLI commands for one.(vm,template,vnet,image)pool.info . It changes from
-2 all, -1 mine & public, >=0 UID
to
-3 mine, -2 all, -1 mine & group
* USER has a group, but not secondary ones. The user_pool table doesn't have a GID column, we'll deal with it later when the group-users relations are implemented.
* onedb migrator 1.rb: deleted USERNAME, and GID added.
So far groups can be managed, but resources can't be associated to a group.
Tasks done:
* New basic onegroup command
* RequestManager XML-RPC methods
* New group pool
* New GROUP authorization symbol
* Basic GroupPool tests
* Ruby OCA methods