git://git.onelab.eu
/
sfa.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
dbbdc22
)
PerformOperationalAction can only be called on fully allocated slivers
author
Tony Mack
<tmack@paris.CS.Princeton.EDU>
Wed, 5 Dec 2012 18:08:02 +0000
(13:08 -0500)
committer
Tony Mack
<tmack@paris.CS.Princeton.EDU>
Wed, 5 Dec 2012 18:08:02 +0000
(13:08 -0500)
sfa/openstack/nova_driver.py
patch
|
blob
|
history
diff --git
a/sfa/openstack/nova_driver.py
b/sfa/openstack/nova_driver.py
index
08c48db
..
b6595b2
100644
(file)
--- a/
sfa/openstack/nova_driver.py
+++ b/
sfa/openstack/nova_driver.py
@@
-408,6
+408,16
@@
class NovaDriver(Driver):
action_method = aggreate.restart_instances
else:
raise UnsupportedOperation(action)
action_method = aggreate.restart_instances
else:
raise UnsupportedOperation(action)
+
+ # fault if sliver is not full allocated (operational status is geni_pending_allocation)
+ description = self.describe(urns, None, options)
+ for sliver in description['geni_slivers']:
+ if sliver['geni_operational_status'] == 'geni_pending_allocation':
+ raise UnsupportedOperation(action, "Sliver must be fully allocated (operational status is not geni_pending_allocation)")
+ #
+ # Perform Operational Action Here
+ #
+
instances = aggregate.get_instances(urns)
for instance in instances:
tenant_name = self.driver.shell.auth_manager.client.tenant_name
instances = aggregate.get_instances(urns)
for instance in instances:
tenant_name = self.driver.shell.auth_manager.client.tenant_name