Add helper methods to attach/detach shares
Manila is the OpenStack Shared Filesystems service. These series of patches implement changes required in Nova to allow the shares provided by Manila to be associated with and attached to instances using virtiofs. Implements: blueprint libvirt-virtiofs-attach-manila-shares Change-Id: Ieef67e5a090e2d4b5eb3dd53381c26d277ccfcbe
This commit is contained in:
parent
5e508a09b3
commit
bef088040d
@ -395,6 +395,24 @@ class TestOpenStackClient(object):
|
||||
return self.api_delete('/servers/%s/os-volume_attachments/%s' %
|
||||
(server_id, volume_id))
|
||||
|
||||
def get_server_shares(self, server_id):
|
||||
return self.api_get('/servers/%s/shares' %
|
||||
(server_id)).body['share']
|
||||
|
||||
def get_server_share(self, server_id, share_id):
|
||||
return self.api_get('/servers/%s/shares/%s' %
|
||||
(server_id, share_id)
|
||||
).body['share']
|
||||
|
||||
def post_server_share(self, server_id, share_attachment):
|
||||
return self.api_post('/servers/%s/shares' %
|
||||
(server_id), share_attachment
|
||||
).body['share']
|
||||
|
||||
def delete_server_share(self, server_id, share_id):
|
||||
return self.api_delete('/servers/%s/shares/%s' %
|
||||
(server_id, share_id))
|
||||
|
||||
def post_server_metadata(self, server_id, metadata):
|
||||
post_body = {'metadata': {}}
|
||||
post_body['metadata'].update(metadata)
|
||||
|
@ -550,6 +550,24 @@ class InstanceHelperMixin:
|
||||
self.notifier.wait_for_versioned_notifications(
|
||||
'instance.interface_detach.end')
|
||||
|
||||
def _get_share(self, server, share_id):
|
||||
return (self.api.get_server_share(server['id'], share_id))
|
||||
|
||||
def _attach_share(self, server, share_id, tag=None):
|
||||
if not tag:
|
||||
self.api.post_server_share(
|
||||
server['id'], {"share": {"share_id": share_id}})
|
||||
else:
|
||||
self.api.post_server_share(
|
||||
server['id'], {"share": {"share_id": share_id, "tag": tag}})
|
||||
self.notifier.wait_for_versioned_notifications(
|
||||
'instance.share_attach.end')
|
||||
|
||||
def _detach_share(self, server, share_id):
|
||||
self.api.delete_server_share(server['id'], share_id)
|
||||
self.notifier.wait_for_versioned_notifications(
|
||||
'instance.share_detach.end')
|
||||
|
||||
def _rebuild_server(self, server, image_uuid, expected_state='ACTIVE'):
|
||||
"""Rebuild a server."""
|
||||
self.api.post_server_action(
|
||||
|
Loading…
x
Reference in New Issue
Block a user