diff options
Diffstat (limited to 'vio/vio/pub')
-rw-r--r-- | vio/vio/pub/vim/drivers/vimsdk/compute.py | 13 | ||||
-rw-r--r-- | vio/vio/pub/vim/vimapi/nova/OperateServers.py | 30 |
2 files changed, 43 insertions, 0 deletions
diff --git a/vio/vio/pub/vim/drivers/vimsdk/compute.py b/vio/vio/pub/vim/drivers/vimsdk/compute.py index 2326fff..e415573 100644 --- a/vio/vio/pub/vim/drivers/vimsdk/compute.py +++ b/vio/vio/pub/vim/drivers/vimsdk/compute.py @@ -77,6 +77,19 @@ class ComputeClient(base.DriverBase): return list(ifaces) @sdk.translate_exception + def start_server(self, server_id): + self.conn.compute.start_server(server=server_id) + + @sdk.translate_exception + def stop_server(self, server_id): + self.conn.compute.stop_server(server=server_id) + + @sdk.translate_exception + def reboot_server(self, server_id, reboot_type): + self.conn.compute.reboot_server(server=server_id, + reboot_type=reboot_type) + + @sdk.translate_exception def list_flavors(self, **query): flavors = self.conn.compute.flavors(**query) return flavors diff --git a/vio/vio/pub/vim/vimapi/nova/OperateServers.py b/vio/vio/pub/vim/vimapi/nova/OperateServers.py index 3075276..b14c7f4 100644 --- a/vio/vio/pub/vim/vimapi/nova/OperateServers.py +++ b/vio/vio/pub/vim/vimapi/nova/OperateServers.py @@ -162,3 +162,33 @@ class OperateServers(OperateNova): 'project_id': project_id} project = self.compute(param).delete_server(server_id) return project + + def start_server(self, data, project_id, server_id): + param = {'username': data['username'], + 'user_domain_name': 'default', + 'project_domain_name': 'default', + 'password': data['password'], + 'auth_url': data['url'], + 'project_id': project_id} + project = self.compute(param).start_server(server_id) + return project + + def stop_server(self, data, project_id, server_id): + param = {'username': data['username'], + 'user_domain_name': 'default', + 'project_domain_name': 'default', + 'password': data['password'], + 'auth_url': data['url'], + 'project_id': project_id} + project = self.compute(param).stop_server(server_id) + return project + + def reboot_server(self, data, project_id, server_id, reboot_type): + param = {'username': data['username'], + 'user_domain_name': 'default', + 'project_domain_name': 'default', + 'password': data['password'], + 'auth_url': data['url'], + 'project_id': project_id} + project = self.compute(param).reboot_server(server_id, reboot_type) + return project |