Specifying the datastore on a VmPool creation via Python-SDK?

Hi, We've several templates that have their disks replicated (copied) on all our Storage Domains. Problem is that we create our VmPools using PythonSDK, and it usually creates the pool on one of our Storage Domains that has a small amount of free disk space. Some of the Data Stores have plenty of space and when creating the VmPool, we'd like to be able to specify on which of these Storage Domains to create the VmPool. So far I see no parameter on the params.VmPool class to do that. I've tried using an Action, but the request is not correct: action = params.Action(storage_domain=api.storagedomains.get(name='...')) pool = params.VmPool(name='testlarge', cluster=api.clusters.get(name='...'), template=api.templates.get(name='Blank'), max_user_vms=1, size=1, type_='manual', actions=action) pool = params.VmPool(name='testlarge', cluster=api.clusters.get(name='...'), template=api.templates.get(name='Blank'), max_user_vms=1, size=1, type_='manual', actions=[action]) api.vmpools.add(pool) Both tries fail. This is Python-SDK 3.x. Is there a way to specify the destination Storage Domain onto where to create the VmPool? Thanks

Any ideas to this? El 2017-01-10 08:43, nicolas@devels.es escribió:
Hi,
We've several templates that have their disks replicated (copied) on all our Storage Domains. Problem is that we create our VmPools using PythonSDK, and it usually creates the pool on one of our Storage Domains that has a small amount of free disk space.
Some of the Data Stores have plenty of space and when creating the VmPool, we'd like to be able to specify on which of these Storage Domains to create the VmPool. So far I see no parameter on the params.VmPool class to do that. I've tried using an Action, but the request is not correct:
action = params.Action(storage_domain=api.storagedomains.get(name='...'))
pool = params.VmPool(name='testlarge', cluster=api.clusters.get(name='...'), template=api.templates.get(name='Blank'), max_user_vms=1, size=1, type_='manual', actions=action) pool = params.VmPool(name='testlarge', cluster=api.clusters.get(name='...'), template=api.templates.get(name='Blank'), max_user_vms=1, size=1, type_='manual', actions=[action])
api.vmpools.add(pool)
Both tries fail.
This is Python-SDK 3.x.
Is there a way to specify the destination Storage Domain onto where to create the VmPool?
Thanks _______________________________________________ Users mailing list Users@ovirt.org http://lists.ovirt.org/mailman/listinfo/users

On 01/11/2017 03:53 PM, nicolas@devels.es wrote:
Any ideas to this?
My understanding is that there is no way to this with the API currently. If you need it, please open a RFE. Meanwhile, I'd suggest to copy the templates to the storage domain that you want to use, and then use the copied templates. I don't see any other alternative.
El 2017-01-10 08:43, nicolas@devels.es escribió:
Hi,
We've several templates that have their disks replicated (copied) on all our Storage Domains. Problem is that we create our VmPools using PythonSDK, and it usually creates the pool on one of our Storage Domains that has a small amount of free disk space.
Some of the Data Stores have plenty of space and when creating the VmPool, we'd like to be able to specify on which of these Storage Domains to create the VmPool. So far I see no parameter on the params.VmPool class to do that. I've tried using an Action, but the request is not correct:
action = params.Action(storage_domain=api.storagedomains.get(name='...'))
pool = params.VmPool(name='testlarge', cluster=api.clusters.get(name='...'), template=api.templates.get(name='Blank'), max_user_vms=1, size=1, type_='manual', actions=action) pool = params.VmPool(name='testlarge', cluster=api.clusters.get(name='...'), template=api.templates.get(name='Blank'), max_user_vms=1, size=1, type_='manual', actions=[action])
api.vmpools.add(pool)
Both tries fail.
This is Python-SDK 3.x.
Is there a way to specify the destination Storage Domain onto where to create the VmPool?
Thanks _______________________________________________ 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

Done [1]. Thank you. [1]: https://bugzilla.redhat.com/show_bug.cgi?id=1412768 El 12/01/17 a las 16:16, Juan Hernández escribió:
On 01/11/2017 03:53 PM, nicolas@devels.es wrote:
Any ideas to this?
My understanding is that there is no way to this with the API currently. If you need it, please open a RFE. Meanwhile, I'd suggest to copy the templates to the storage domain that you want to use, and then use the copied templates. I don't see any other alternative.
El 2017-01-10 08:43, nicolas@devels.es escribió:
Hi,
We've several templates that have their disks replicated (copied) on all our Storage Domains. Problem is that we create our VmPools using PythonSDK, and it usually creates the pool on one of our Storage Domains that has a small amount of free disk space.
Some of the Data Stores have plenty of space and when creating the VmPool, we'd like to be able to specify on which of these Storage Domains to create the VmPool. So far I see no parameter on the params.VmPool class to do that. I've tried using an Action, but the request is not correct:
action = params.Action(storage_domain=api.storagedomains.get(name='...'))
pool = params.VmPool(name='testlarge', cluster=api.clusters.get(name='...'), template=api.templates.get(name='Blank'), max_user_vms=1, size=1, type_='manual', actions=action) pool = params.VmPool(name='testlarge', cluster=api.clusters.get(name='...'), template=api.templates.get(name='Blank'), max_user_vms=1, size=1, type_='manual', actions=[action])
api.vmpools.add(pool)
Both tries fail.
This is Python-SDK 3.x.
Is there a way to specify the destination Storage Domain onto where to create the VmPool?
Thanks _______________________________________________ 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
participants (3)
-
Juan Hernández
-
nicolas@devels.es
-
Nicolás