示例#1
0
def fake_compute_get_all(*args, **kwargs):
    db_list = [
        fakes.stub_instance(1, uuid=UUID1, nw_cache=NW_CACHE),
        fakes.stub_instance(2, uuid=UUID2, nw_cache=NW_CACHE),
    ]
    fields = instance_obj.INSTANCE_DEFAULT_FIELDS
    return instance_obj._make_instance_list(args[1], objects.InstanceList(),
                                            db_list, fields)
示例#2
0
def fake_compute_get_all(*args, **kwargs):
    db_list = [
        fakes.stub_instance(1, uuid=UUID1, nw_cache=NW_CACHE),
        fakes.stub_instance(2, uuid=UUID2, nw_cache=NW_CACHE),
    ]
    fields = instance_obj.INSTANCE_DEFAULT_FIELDS
    return instance_obj._make_instance_list(args[1],
                                            objects.InstanceList(),
                                            db_list, fields)
示例#3
0
def fake_compute_get_all(*args, **kwargs):
    inst1 = fakes.stub_instance(1, uuid=UUID1, host="all-host",
                                vm_state=vm_states.ACTIVE)
    inst2 = fakes.stub_instance(2, uuid=UUID2, host="all-host",
                                vm_state=vm_states.ACTIVE)
    db_list = [inst1, inst2]
    fields = instance_obj.INSTANCE_DEFAULT_FIELDS
    return instance_obj._make_instance_list(args[1],
                                            objects.InstanceList(),
                                            db_list, fields)
示例#4
0
def fake_compute_get_all(*args, **kwargs):
    db_list = [
        fakes.stub_instance(2, uuid=UUID1, launched_at=DATE2,
                            terminated_at=DATE3),
        fakes.stub_instance(3, uuid=UUID2, launched_at=DATE1,
                            terminated_at=DATE3),
    ]
    fields = instance_obj.INSTANCE_DEFAULT_FIELDS
    return instance_obj._make_instance_list(args[1],
                                            objects.InstanceList(),
                                            db_list, fields)
示例#5
0
def fake_compute_get_all(*args, **kwargs):
    db_list = [
        fakes.stub_instance(1, uuid=UUID1, task_state="task-1",
                vm_state="vm-1", power_state=1),
        fakes.stub_instance(2, uuid=UUID2, task_state="task-2",
                vm_state="vm-2", power_state=2),
    ]

    fields = instance_obj.INSTANCE_DEFAULT_FIELDS
    return instance_obj._make_instance_list(args[1],
                                            objects.InstanceList(),
                                            db_list, fields)
示例#6
0
def fake_compute_get_all(*args, **kwargs):
    db_list = [
        fakes.stub_instance(1,
                            uuid=UUID1,
                            task_state="task-1",
                            vm_state="vm-1",
                            power_state=1),
        fakes.stub_instance(2,
                            uuid=UUID2,
                            task_state="task-2",
                            vm_state="vm-2",
                            power_state=2),
    ]

    fields = instance_obj.INSTANCE_DEFAULT_FIELDS
    return instance_obj._make_instance_list(args[1], objects.InstanceList(),
                                            db_list, fields)
def fake_compute_get_all(*args, **kwargs):
    db_list = [
        fakes.stub_instance(1, uuid=UUID1, host="host-1", node="node-1",
                            reservation_id="r-1", launch_index=0,
                            kernel_id=UUID4, ramdisk_id=UUID5,
                            display_name="hostname-1",
                            root_device_name="/dev/vda",
                            user_data="userdata"),
        fakes.stub_instance(2, uuid=UUID2, host="host-2", node="node-2",
                            reservation_id="r-2", launch_index=1,
                            kernel_id=UUID4, ramdisk_id=UUID5,
                            display_name="hostname-2",
                            root_device_name="/dev/vda",
                            user_data="userdata")
    ]
    fields = instance_obj.INSTANCE_DEFAULT_FIELDS
    return instance_obj._make_instance_list(args[1],
                                            objects.InstanceList(),
                                            db_list, fields)
示例#8
0
 def build_instances(self, ctxt, build_inst_kwargs):
     """Pick a cell (possibly ourselves) to build new instance(s) and
     forward the request accordingly.
     """
     # Target is ourselves first.
     filter_properties = build_inst_kwargs.get('filter_properties')
     if (filter_properties is not None and not isinstance(
             filter_properties['instance_type'], objects.Flavor)):
         # NOTE(danms): Handle pre-1.30 build_instances() call. Remove me
         # when we bump the RPC API version to 2.0.
         flavor = objects.Flavor(**filter_properties['instance_type'])
         build_inst_kwargs['filter_properties'] = dict(filter_properties,
                                                       instance_type=flavor)
     instances = build_inst_kwargs['instances']
     if not isinstance(instances[0], objects.Instance):
         # NOTE(danms): Handle pre-1.32 build_instances() call. Remove me
         # when we bump the RPC API version to 2.0
         build_inst_kwargs['instances'] = instance_obj._make_instance_list(
             ctxt, objects.InstanceList(), instances,
             ['system_metadata', 'metadata'])
     our_cell = self.state_manager.get_my_state()
     self.msg_runner.build_instances(ctxt, our_cell, build_inst_kwargs)
示例#9
0
文件: manager.py 项目: hsluoyz/patron
 def build_instances(self, ctxt, build_inst_kwargs):
     """Pick a cell (possibly ourselves) to build new instance(s) and
     forward the request accordingly.
     """
     # Target is ourselves first.
     filter_properties = build_inst_kwargs.get('filter_properties')
     if (filter_properties is not None and
         not isinstance(filter_properties['instance_type'],
                        objects.Flavor)):
         # NOTE(danms): Handle pre-1.30 build_instances() call. Remove me
         # when we bump the RPC API version to 2.0.
         flavor = objects.Flavor(**filter_properties['instance_type'])
         build_inst_kwargs['filter_properties'] = dict(
             filter_properties, instance_type=flavor)
     instances = build_inst_kwargs['instances']
     if not isinstance(instances[0], objects.Instance):
         # NOTE(danms): Handle pre-1.32 build_instances() call. Remove me
         # when we bump the RPC API version to 2.0
         build_inst_kwargs['instances'] = instance_obj._make_instance_list(
             ctxt, objects.InstanceList(), instances, ['system_metadata',
                                                       'metadata'])
     our_cell = self.state_manager.get_my_state()
     self.msg_runner.build_instances(ctxt, our_cell, build_inst_kwargs)
示例#10
0
    def test_sync_power_states_instance_not_found(self):
        db_instance = fake_instance.fake_db_instance()
        ctxt = context.get_admin_context()
        instance_list = instance_obj._make_instance_list(ctxt,
                objects.InstanceList(), [db_instance], None)
        instance = instance_list[0]

        self.mox.StubOutWithMock(objects.InstanceList, 'get_by_host')
        self.mox.StubOutWithMock(self.compute.driver, 'get_num_instances')
        self.mox.StubOutWithMock(vm_utils, 'lookup')
        self.mox.StubOutWithMock(self.compute, '_sync_instance_power_state')

        objects.InstanceList.get_by_host(ctxt,
                self.compute.host, expected_attrs=[],
                use_slave=True).AndReturn(instance_list)
        self.compute.driver.get_num_instances().AndReturn(1)
        vm_utils.lookup(self.compute.driver._session, instance['name'],
                False).AndReturn(None)
        self.compute._sync_instance_power_state(ctxt, instance,
                power_state.NOSTATE)

        self.mox.ReplayAll()

        self.compute._sync_power_states(ctxt)
示例#11
0
    def test_sync_power_states_instance_not_found(self):
        db_instance = fake_instance.fake_db_instance()
        ctxt = context.get_admin_context()
        instance_list = instance_obj._make_instance_list(
            ctxt, objects.InstanceList(), [db_instance], None)
        instance = instance_list[0]

        self.mox.StubOutWithMock(objects.InstanceList, 'get_by_host')
        self.mox.StubOutWithMock(self.compute.driver, 'get_num_instances')
        self.mox.StubOutWithMock(vm_utils, 'lookup')
        self.mox.StubOutWithMock(self.compute, '_sync_instance_power_state')

        objects.InstanceList.get_by_host(
            ctxt, self.compute.host, expected_attrs=[],
            use_slave=True).AndReturn(instance_list)
        self.compute.driver.get_num_instances().AndReturn(1)
        vm_utils.lookup(self.compute.driver._session, instance['name'],
                        False).AndReturn(None)
        self.compute._sync_instance_power_state(ctxt, instance,
                                                power_state.NOSTATE)

        self.mox.ReplayAll()

        self.compute._sync_power_states(ctxt)
示例#12
0
def fake_compute_get_all(*args, **kwargs):
    db_list = [fakes.stub_instance(1), fakes.stub_instance(2)]
    fields = instance_obj.INSTANCE_DEFAULT_FIELDS
    return instance_obj._make_instance_list(args[1],
                                            objects.InstanceList(),
                                            db_list, fields)
示例#13
0
def fake_compute_get_all(*args, **kwargs):
    db_list = [fakes.stub_instance(1), fakes.stub_instance(2)]
    fields = instance_obj.INSTANCE_DEFAULT_FIELDS
    return instance_obj._make_instance_list(args[1], objects.InstanceList(),
                                            db_list, fields)
示例#14
0
 def get_all(*args, **kwargs):
     fields = instance_obj.INSTANCE_DEFAULT_FIELDS
     return instance_obj._make_instance_list(
         args[1], objects.InstanceList(), instances, fields)