本文整理汇总了Python中rally.task.utils.wait_for_status函数的典型用法代码示例。如果您正苦于以下问题:Python wait_for_status函数的具体用法?Python wait_for_status怎么用?Python wait_for_status使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了wait_for_status函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: _migrate
def _migrate(self, server, skip_host_check=False):
"""Run migration of the given server.
:param server: Server object
:param skip_host_check: Specifies whether to verify the targeted host
availability
"""
server_admin = self.admin_clients("nova").servers.get(server.id)
host_pre_migrate = getattr(server_admin, "OS-EXT-SRV-ATTR:host")
server_admin.migrate()
utils.wait_for_status(
server,
ready_statuses=["VERIFY_RESIZE"],
update_resource=utils.get_from_manager(),
timeout=CONF.openstack.nova_server_migrate_timeout,
check_interval=(
CONF.openstack.nova_server_migrate_poll_interval)
)
if not skip_host_check:
server_admin = self.admin_clients("nova").servers.get(server.id)
host_after_migrate = getattr(server_admin, "OS-EXT-SRV-ATTR:host")
if host_pre_migrate == host_after_migrate:
raise exceptions.RallyException(
"Migration failed: Migration complete but instance"
" did not change host: %s" % host_pre_migrate)
示例2: _allow_access_share
def _allow_access_share(self, share, access_type, access, access_level):
"""Allow access to a share
:param share: :class:`Share`
:param access_type: represents the access type (e.g: 'ip', 'domain'...)
:param access: represents the object (e.g: '127.0.0.1'...)
:param access_level: access level to the share (e.g: 'rw', 'ro')
"""
access_result = share.allow(access_type, access, access_level)
# Get access from the list of accesses of the share
access = next(access for access in share.access_list()
if access.id == access_result["id"])
fn = self._update_resource_in_allow_access_share(share,
access_result["id"])
# We check if the access in that access_list has the active state
utils.wait_for_status(
access,
ready_statuses=["active"],
update_resource=fn,
check_interval=CONF.openstack.manila_access_create_poll_interval,
timeout=CONF.openstack.manila_access_create_timeout)
return access_result
示例3: _live_migrate
def _live_migrate(self, server, block_migration=False,
disk_over_commit=False, skip_host_check=False):
"""Run live migration of the given server.
:param server: Server object
:param block_migration: Specifies the migration type
:param disk_over_commit: Specifies whether to overcommit migrated
instance or not
:param skip_host_check: Specifies whether to verify the targeted host
availability
"""
server_admin = self.admin_clients("nova").servers.get(server.id)
host_pre_migrate = getattr(server_admin, "OS-EXT-SRV-ATTR:host")
server_admin.live_migrate(block_migration=block_migration,
disk_over_commit=disk_over_commit)
utils.wait_for_status(
server,
ready_statuses=["ACTIVE"],
update_resource=utils.get_from_manager(),
timeout=CONF.openstack.nova_server_live_migrate_timeout,
check_interval=(
CONF.openstack.nova_server_live_migrate_poll_interval)
)
server_admin = self.admin_clients("nova").servers.get(server.id)
if (host_pre_migrate == getattr(server_admin, "OS-EXT-SRV-ATTR:host")
and not skip_host_check):
raise exceptions.RallyException(
"Live Migration failed: Migration complete "
"but instance did not change host: %s" % host_pre_migrate)
示例4: delete_image
def delete_image(self, image):
image.delete()
utils.wait_for_status(
image, ["deleted"],
check_deletion=True,
update_resource=utils.get_from_manager(),
timeout=CONF.benchmark.glance_image_delete_timeout,
check_interval=CONF.benchmark.glance_image_delete_poll_interval)
示例5: _wait_for_ping
def _wait_for_ping(self, server_ip):
server = Host(server_ip)
utils.wait_for_status(
server,
ready_statuses=[Host.ICMP_UP_STATUS],
update_resource=Host.update_status,
timeout=CONF.benchmark.vm_ping_timeout,
check_interval=CONF.benchmark.vm_ping_poll_interval
)
示例6: _resize
def _resize(self, server, flavor):
server.resize(flavor)
utils.wait_for_status(
server,
ready_statuses=["VERIFY_RESIZE"],
update_resource=utils.get_from_manager(),
timeout=CONF.openstack.nova_server_resize_timeout,
check_interval=CONF.openstack.nova_server_resize_poll_interval
)
示例7: delete
def delete(self):
client = self._client()
client().images.delete(self.raw_resource.id)
task_utils.wait_for_status(
self.raw_resource, ["deleted"],
check_deletion=True,
update_resource=self._wrapper().get_image,
timeout=CONF.benchmark.glance_image_delete_timeout,
check_interval=CONF.benchmark.glance_image_delete_poll_interval)
示例8: _do_server_reboot
def _do_server_reboot(self, server, reboottype):
server.reboot(reboot_type=reboottype)
self.sleep_between(CONF.openstack.nova_server_pause_prepoll_delay)
utils.wait_for_status(
server,
ready_statuses=["ACTIVE"],
update_resource=utils.get_from_manager(),
timeout=CONF.openstack.nova_server_reboot_timeout,
check_interval=CONF.openstack.nova_server_reboot_poll_interval
)
示例9: _resize_revert
def _resize_revert(self, server, status="ACTIVE"):
server.revert_resize()
utils.wait_for_status(
server,
ready_statuses=[status],
update_resource=utils.get_from_manager(),
timeout=CONF.openstack.nova_server_resize_revert_timeout,
check_interval=(
CONF.openstack.nova_server_resize_revert_poll_interval)
)
示例10: delete
def delete(self):
client = self._client()
if self.raw_resource.status == "deactivated":
glancev2 = glance_v2.GlanceV2Service(self.admin or self.user)
glancev2.reactivate_image(self.raw_resource.id)
client.delete_image(self.raw_resource.id)
task_utils.wait_for_status(
self.raw_resource, ["deleted"],
check_deletion=True,
update_resource=self._client().get_image,
timeout=CONF.openstack.glance_image_delete_timeout,
check_interval=CONF.openstack.glance_image_delete_poll_interval)
示例11: _delete_share_network
def _delete_share_network(self, share_network):
"""Delete share network.
:param share_network: instance of :class:`ShareNetwork`.
"""
share_network.delete()
utils.wait_for_status(
share_network,
ready_statuses=["deleted"],
check_deletion=True,
update_resource=utils.get_from_manager(),
timeout=CONF.openstack.manila_share_delete_timeout,
check_interval=CONF.openstack.manila_share_delete_poll_interval)
示例12: _shrink_share
def _shrink_share(self, share, new_size):
"""Shrink the given share
:param share: :class:`Share`
:param new_size: new size of the share
"""
share.shrink(new_size)
utils.wait_for_status(
share,
ready_statuses=["available"],
update_resource=utils.get_from_manager(),
timeout=CONF.openstack.manila_share_create_timeout,
check_interval=CONF.openstack.manila_share_create_poll_interval)
示例13: _cleanup_images
def _cleanup_images(self):
glance_wrapper = glance.wrap(self.clients.glance, self)
for image in self._created_images:
LOG.debug("Deleting image '%s'" % image.name)
self.clients.glance().images.delete(image.id)
task_utils.wait_for_status(
image, ["deleted", "pending_delete"],
check_deletion=True,
update_resource=glance_wrapper.get_image,
timeout=CONF.benchmark.glance_image_delete_timeout,
check_interval=CONF.benchmark.
glance_image_delete_poll_interval)
self._remove_opt_value_from_config("compute", image.id)
示例14: _delete_security_service
def _delete_security_service(self, security_service):
"""Delete security service.
:param security_service: instance of :class:`SecurityService`.
"""
security_service.delete()
utils.wait_for_status(
security_service,
ready_statuses=["deleted"],
check_deletion=True,
update_resource=utils.get_from_manager(),
timeout=CONF.openstack.manila_share_delete_timeout,
check_interval=CONF.openstack.manila_share_delete_poll_interval)
示例15: create_image
def create_image(self, container_format, image_location,
disk_format, **kwargs):
kw = {
"container_format": container_format,
"disk_format": disk_format,
}
kw.update(kwargs)
if "name" not in kw:
kw["name"] = self.owner.generate_random_name()
if "is_public" in kw:
LOG.warning("is_public is not supported by Glance v2, and is "
"deprecated in Rally v0.8.0")
kw["visibility"] = "public" if kw.pop("is_public") else "private"
image_location = os.path.expanduser(image_location)
image = self.client.images.create(**kw)
rutils.interruptable_sleep(CONF.openstack.
glance_image_create_prepoll_delay)
start = time.time()
image = utils.wait_for_status(
image, ["queued"],
update_resource=self.get_image,
timeout=CONF.openstack.glance_image_create_timeout,
check_interval=CONF.openstack.
glance_image_create_poll_interval)
timeout = time.time() - start
image_data = None
response = None
try:
if os.path.isfile(image_location):
image_data = open(image_location)
else:
response = requests.get(image_location, stream=True)
image_data = response.raw
self.client.images.upload(image.id, image_data)
finally:
if image_data is not None:
image_data.close()
if response is not None:
response.close()
return utils.wait_for_status(
image, ["active"],
update_resource=self.get_image,
timeout=timeout,
check_interval=CONF.openstack.
glance_image_create_poll_interval)