def delete_instances()

in footmark/ecs/connection.py [0:0]


    def delete_instances(self, **kwargs):
        """
        Delete the instances specified

        :type instance_ids: list
        :param instance_ids: A list of strings of the Instance IDs to terminate

        :type force: bool
        :param force: Forces the instance to stop

        :rtype: list
        :return: A list of the instance_ids terminated
        """
        instance_ids = kwargs["instance_ids"]
        kwargs = self.format_request_kwargs(**kwargs)
        if instance_ids:
            if isinstance(instance_ids, six.string_types):
                instance_ids = [instance_ids]
            for instance_id in instance_ids:
                kwargs["instance_id"]= instance_id
                retry = 10
                while retry:
                    try:
                        self.get_status_new(self.build_request_params(kwargs))
                        break
                    except ServerException as e:
                        if e.error_code == "IncorrectInstanceStatus.Initializing":
                            time.sleep(5)
                            retry -= 1
                            continue
                        raise e
                if retry <= 0:
                    self.get_status_new(self.build_request_params(kwargs))
            while instance_ids:
                if self.describe_instances(instance_ids=instance_ids):
                    continue
                break
            return True
        return False