コード例 #1
0
    def _delete_server(self, nova_client, server):
        """Delete nova instance

        :param server: instance to delete
        :return:
        """
        # delete server
        sec_group_name = server.security_groups[0]['name']
        server_key_name = server.key_name

        LOG.debug("DELETING NOVA INSTANCE: %s", server.id)
        nova_client.servers.delete(server.id)

        LOG.debug("WAITING FOR INSTANCE TO GET DELETED")
        task_utils.wait_for_delete(
            server, update_resource=task_utils.get_from_manager())

        # delete sec-group
        for secgroup in nova_client.security_groups.list():
            if secgroup.name == sec_group_name:
                LOG.debug("DELETING SEC_GROUP: %s", sec_group_name)
                nova_client.security_groups.delete(secgroup.id)

        # delete key-pair
        for key_pair in nova_client.keypairs.list():
            if key_pair.name == server_key_name:
                LOG.debug("DELETING KEY_PAIR: %s", server_key_name)
                nova_client.keypairs.delete(key_pair.id)
コード例 #2
0
    def _delete_share_network(self, share_network):
        """Delete share network.

        :param share_network: instance of :class:`ShareNetwork`.
        """
        share_network.delete()
        utils.wait_for_delete(
            share_network,
            update_resource=utils.get_from_manager(),
            timeout=CONF.benchmark.manila_share_delete_timeout,
            check_interval=CONF.benchmark.manila_share_delete_poll_interval)
コード例 #3
0
ファイル: utils.py プロジェクト: sckevmit/rally
    def _delete_share_network(self, share_network):
        """Delete share network.

        :param share_network: instance of :class:`ShareNetwork`.
        """
        share_network.delete()
        utils.wait_for_delete(
            share_network,
            update_resource=utils.get_from_manager(),
            timeout=CONF.benchmark.manila_share_delete_timeout,
            check_interval=CONF.benchmark.manila_share_delete_poll_interval)
コード例 #4
0
    def _delete_security_service(self, security_service):
        """Delete security service.

        :param security_service: instance of :class:`SecurityService`.
        """
        security_service.delete()
        utils.wait_for_delete(
            security_service,
            update_resource=utils.get_from_manager(),
            timeout=CONF.benchmark.manila_share_delete_timeout,
            check_interval=CONF.benchmark.manila_share_delete_poll_interval)
コード例 #5
0
ファイル: utils.py プロジェクト: sckevmit/rally
    def _delete_security_service(self, security_service):
        """Delete security service.

        :param security_service: instance of :class:`SecurityService`.
        """
        security_service.delete()
        utils.wait_for_delete(
            security_service,
            update_resource=utils.get_from_manager(),
            timeout=CONF.benchmark.manila_share_delete_timeout,
            check_interval=CONF.benchmark.manila_share_delete_poll_interval)
コード例 #6
0
ファイル: network.py プロジェクト: aforalee/rally
    def delete_floating_ip(self, fip_id, wait=False):
        """Delete floating IP.

        :param fip_id: int floating IP id
        :param wait: if True then wait to return until floating ip is deleted
        """
        self.client.floating_ips.delete(fip_id)
        if not wait:
            return
        task_utils.wait_for_delete(
            fip_id,
            update_resource=lambda i: self._get_floating_ip(i, do_raise=True))
コード例 #7
0
    def _delete_share(self, share):
        """Delete the given share.

        :param share: :class:`Share`
        """
        share.delete()
        error_statuses = ("error_deleting", )
        utils.wait_for_delete(
            share,
            update_resource=utils.get_from_manager(error_statuses),
            timeout=CONF.benchmark.manila_share_delete_timeout,
            check_interval=CONF.benchmark.manila_share_delete_poll_interval)
コード例 #8
0
ファイル: utils.py プロジェクト: sckevmit/rally
    def _delete_share(self, share):
        """Delete the given share.

        :param share: :class:`Share`
        """
        share.delete()
        error_statuses = ("error_deleting", )
        utils.wait_for_delete(
            share,
            update_resource=utils.get_from_manager(error_statuses),
            timeout=CONF.benchmark.manila_share_delete_timeout,
            check_interval=CONF.benchmark.manila_share_delete_poll_interval)
コード例 #9
0
ファイル: network.py プロジェクト: afaheem88/rally
    def delete_floating_ip(self, fip_id, wait=False):
        """Delete floating IP.

        :param fip_id: int floating IP id
        :param wait: if True then wait to return until floating ip is deleted
        """
        self.client.floating_ips.delete(fip_id)
        if not wait:
            return
        task_utils.wait_for_delete(
            fip_id,
            update_resource=lambda i: self._get_floating_ip(i, do_raise=True))
コード例 #10
0
ファイル: utils.py プロジェクト: huzaifarasheedmir/rally
    def _delete_volume(self, volume):
        """Delete the given volume.

        Returns when the volume is actually deleted.

        :param volume: volume object
        """
        volume.delete()
        bench_utils.wait_for_delete(
            volume,
            update_resource=bench_utils.get_from_manager(),
            timeout=CONF.benchmark.cinder_volume_delete_timeout,
            check_interval=CONF.benchmark.cinder_volume_delete_poll_interval)
コード例 #11
0
    def _delete_environment(self, environment):
        """Delete given environment.

        Return when the environment is actually deleted.

        :param environment: Environment instance
        """
        self.clients("murano").environments.delete(environment.id)
        utils.wait_for_delete(
            environment,
            update_resource=utils.get_from_manager(),
            timeout=CONF.benchmark.delete_environment_timeout,
            check_interval=CONF.benchmark.delete_environment_check_interval)
コード例 #12
0
ファイル: utils.py プロジェクト: sckevmit/rally
    def _delete_stack(self, stack):
        """Delete given stack.

        Returns when the stack is actually deleted.

        :param stack: stack object
        """
        stack.delete()
        utils.wait_for_delete(
            stack,
            update_resource=utils.get_from_manager(),
            timeout=CONF.benchmark.heat_stack_delete_timeout,
            check_interval=CONF.benchmark.heat_stack_delete_poll_interval)
コード例 #13
0
ファイル: utils.py プロジェクト: huzaifarasheedmir/rally
    def _delete_stack(self, stack):
        """Delete given stack.

        Returns when the stack is actually deleted.

        :param stack: stack object
        """
        stack.delete()
        utils.wait_for_delete(
            stack,
            update_resource=utils.get_from_manager(),
            timeout=CONF.benchmark.heat_stack_delete_timeout,
            check_interval=CONF.benchmark.heat_stack_delete_poll_interval)
コード例 #14
0
ファイル: utils.py プロジェクト: huzaifarasheedmir/rally
    def _delete_snapshot(self, snapshot):
        """Delete the given snapshot.

        Returns when the snapshot is actually deleted.

        :param snapshot: snapshot object
        """
        snapshot.delete()
        bench_utils.wait_for_delete(
            snapshot,
            update_resource=bench_utils.get_from_manager(),
            timeout=CONF.benchmark.cinder_volume_delete_timeout,
            check_interval=CONF.benchmark.cinder_volume_delete_poll_interval)
コード例 #15
0
ファイル: utils.py プロジェクト: huzaifarasheedmir/rally
    def _delete_backup(self, backup):
        """Delete the given backup.

        Returns when the backup is actually deleted.

        :param backup: backup instance
        """
        backup.delete()
        bench_utils.wait_for_delete(
            backup,
            update_resource=bench_utils.get_from_manager(),
            timeout=CONF.benchmark.cinder_volume_delete_timeout,
            check_interval=CONF.benchmark.cinder_volume_delete_poll_interval)
コード例 #16
0
ファイル: utils.py プロジェクト: onecloud/gbp-rally
    def _delete_image(self, image):
        """Deletes given image.

        Returns when the image is actually deleted.

        :param image: Image object
        """
        image.delete()
        utils.wait_for_delete(
            image,
            update_resource=utils.get_from_manager(),
            timeout=CONF.benchmark.glance_image_delete_timeout,
            check_interval=CONF.benchmark.glance_image_delete_poll_interval)
コード例 #17
0
    def _delete_image(self, image):
        """Deletes given image.

        Returns when the image is actually deleted.

        :param image: Image object
        """
        image.delete()
        utils.wait_for_delete(
            image,
            update_resource=utils.get_from_manager(),
            timeout=CONF.benchmark.glance_image_delete_timeout,
            check_interval=CONF.benchmark.glance_image_delete_poll_interval)
コード例 #18
0
ファイル: utils.py プロジェクト: sckevmit/rally
    def _delete_volume(self, volume):
        """Delete the given volume.

        Returns when the volume is actually deleted.

        :param volume: volume object
        """
        volume.delete()
        bench_utils.wait_for_delete(
            volume,
            update_resource=bench_utils.get_from_manager(),
            timeout=CONF.benchmark.cinder_volume_delete_timeout,
            check_interval=CONF.benchmark.cinder_volume_delete_poll_interval
        )
コード例 #19
0
ファイル: utils.py プロジェクト: sckevmit/rally
    def _delete_snapshot(self, snapshot):
        """Delete the given snapshot.

        Returns when the snapshot is actually deleted.

        :param snapshot: snapshot object
        """
        snapshot.delete()
        bench_utils.wait_for_delete(
            snapshot,
            update_resource=bench_utils.get_from_manager(),
            timeout=CONF.benchmark.cinder_volume_delete_timeout,
            check_interval=CONF.benchmark.cinder_volume_delete_poll_interval
        )
コード例 #20
0
ファイル: utils.py プロジェクト: aplanas/rally
    def _delete_environment(self, environment):
        """Delete given environment.

        Return when the environment is actually deleted.

        :param environment: Environment instance
        """
        self.clients("murano").environments.delete(environment.id)
        utils.wait_for_delete(
            environment,
            update_resource=utils.get_from_manager(),
            timeout=CONF.benchmark.delete_environment_timeout,
            check_interval=CONF.benchmark.delete_environment_check_interval
        )
コード例 #21
0
ファイル: utils.py プロジェクト: sckevmit/rally
    def _delete_backup(self, backup):
        """Delete the given backup.

        Returns when the backup is actually deleted.

        :param backup: backup instance
        """
        backup.delete()
        bench_utils.wait_for_delete(
            backup,
            update_resource=bench_utils.get_from_manager(),
            timeout=CONF.benchmark.cinder_volume_delete_timeout,
            check_interval=CONF.benchmark.cinder_volume_delete_poll_interval
        )
コード例 #22
0
ファイル: nova_context.py プロジェクト: joylhx/Rally
 def cleanup(self):
     try:
         manager = osclients.Clients(self.context['users'][0]['credential']).nova().servers
         server = manager.get(self.context['server']['id'])
         server.force_delete()
         try:
             utils.wait_for_delete(server, manager.get)
         except BaseException:
             pass
         LOG.debug("Server '%s' deleted" % self.context["server"]["id"])
     except Exception as e:
         msg = "Can't delete server: %s" % e
         if logging.is_debug():
             LOG.exception(msg)
         else:
             LOG.warning(msg)
コード例 #23
0
    def _delete_server(self, server, force=False):
        """Delete the given server.

        Returns when the server is actually deleted.

        :param server: Server object
        :param force: If True, force_delete will be used instead of delete.
        """
        atomic_name = ("nova.%sdelete_server") % (force and "force_" or "")
        with atomic.ActionTimer(self, atomic_name):
            if force:
                server.force_delete()
            else:
                server.delete()

            utils.wait_for_delete(
                server,
                update_resource=utils.get_from_manager(),
                timeout=CONF.benchmark.nova_server_delete_timeout,
                check_interval=CONF.benchmark.nova_server_delete_poll_interval)
コード例 #24
0
ファイル: utils.py プロジェクト: boris-42/rally
    def _delete_server(self, server, force=False):
        """Delete the given server.

        Returns when the server is actually deleted.

        :param server: Server object
        :param force: If True, force_delete will be used instead of delete.
        """
        atomic_name = ("nova.%sdelete_server") % (force and "force_" or "")
        with atomic.ActionTimer(self, atomic_name):
            if force:
                server.force_delete()
            else:
                server.delete()

            utils.wait_for_delete(
                server,
                update_resource=utils.get_from_manager(),
                timeout=CONF.benchmark.nova_server_delete_timeout,
                check_interval=CONF.benchmark.nova_server_delete_poll_interval
            )
コード例 #25
0
def delete_servers(nova_client, servers):
    """Delete nova servers

    It deletes the nova servers, associated security groups.

    :param nova_client: nova client
    :param servers: nova instances to be deleted
    :return:
    """
    for server in servers:
        LOG.debug("DELETING NOVA INSTANCE: %s", server.id)
        sec_group_name = server.security_groups[0]["name"]
        nova_client.servers.delete(server.id)

        LOG.debug("WAITING FOR INSTANCE TO GET DELETED")
        task_utils.wait_for_delete(server, update_resource=task_utils.get_from_manager())

        for secgroup in nova_client.security_groups.list():
            if secgroup.name == sec_group_name:
                LOG.debug("DELETING SEC_GROUP: %s", sec_group_name)
                nova_client.security_groups.delete(secgroup.id)
コード例 #26
0
    def _delete_servers(self, servers, force=False):
        """Delete multiple servers.

        :param servers: A list of servers to delete
        :param force: If True, force_delete will be used instead of delete.
        """
        atomic_name = ("nova.%sdelete_servers") % (force and "force_" or "")
        with atomic.ActionTimer(self, atomic_name):
            for server in servers:
                if force:
                    server.force_delete()
                else:
                    server.delete()

            for server in servers:
                utils.wait_for_delete(
                    server,
                    update_resource=utils.get_from_manager(),
                    timeout=CONF.benchmark.nova_server_delete_timeout,
                    check_interval=CONF.benchmark.
                    nova_server_delete_poll_interval)
コード例 #27
0
def delete_servers(nova_client, servers):
    """Delete nova servers

    It deletes the nova servers, associated security groups.

    :param nova_client: nova client
    :param servers: nova instances to be deleted
    :return:
    """
    for server in servers:
        LOG.debug("DELETING NOVA INSTANCE: %s", server.id)
        sec_group_id = server.security_groups[0]['name']
        nova_client.servers.delete(server.id)

        LOG.debug("WAITING FOR INSTANCE TO GET DELETED")
        task_utils.wait_for_delete(
            server, update_resource=task_utils.get_from_manager())

        for secgroup in nova_client.security_groups.list():
            if secgroup.id == sec_group_id:
                LOG.debug("DELETING SEC_GROUP: %s", sec_group_id)
                nova_client.security_groups.delete(secgroup.id)
コード例 #28
0
ファイル: utils.py プロジェクト: boris-42/rally
    def _delete_servers(self, servers, force=False):
        """Delete multiple servers.

        :param servers: A list of servers to delete
        :param force: If True, force_delete will be used instead of delete.
        """
        atomic_name = ("nova.%sdelete_servers") % (force and "force_" or "")
        with atomic.ActionTimer(self, atomic_name):
            for server in servers:
                if force:
                    server.force_delete()
                else:
                    server.delete()

            for server in servers:
                utils.wait_for_delete(
                    server,
                    update_resource=utils.get_from_manager(),
                    timeout=CONF.benchmark.nova_server_delete_timeout,
                    check_interval=CONF.
                    benchmark.nova_server_delete_poll_interval
                )
コード例 #29
0
    def _delete_server(self, nova_id):
        """Delete nova instance

        :param nova_id: instance id to delete
        :return:
        """
        # Remove rally key-pair
        nova_client = self.clients("nova")

        vm_list = nova_client.servers.list()
        for vm in vm_list:
            if nova_id == vm.id:
                server = vm
                sec_group_name = vm.security_groups[0]['name']
                server_id = vm.id
                server_key_name = vm.key_name
                break

        LOG.info("Deleting nova instance: %s", server_id)
        nova_client.servers.delete(server_id)

        LOG.info("Waiting for instance to get deleted")
        task_utils.wait_for_delete(
            server, update_resource=task_utils.get_from_manager())

        # delete sec-group
        for secgroup in nova_client.security_groups.list():
            if secgroup.name == sec_group_name:
                LOG.info("Deleting sec-group: %s", sec_group_name)
                nova_client.security_groups.delete(secgroup.id)

        # delete key-pair
        for key_pair in nova_client.keypairs.list():
            if key_pair.name == server_key_name:
                LOG.info("Deleting key-pair: %s", server_key_name)
                nova_client.keypairs.delete(key_pair.id)
コード例 #30
0
ファイル: test_utils.py プロジェクト: alinbalutoiu/rally
    def test_wait_for_delete(self):
        def update_resource(self):
            raise exceptions.GetResourceNotFound(resource=None)

        resource = mock.MagicMock()
        utils.wait_for_delete(resource, update_resource=update_resource)
コード例 #31
0
    def test_wait_for_delete(self):
        def update_resource(self):
            raise exceptions.GetResourceNotFound(resource=None)

        resource = mock.MagicMock()
        utils.wait_for_delete(resource, update_resource=update_resource)