コード例 #1
0
ファイル: test_nodes.py プロジェクト: johalee/Ironic
 def test_update_node_instance_already_associated(self):
     node1 = utils.create_test_node(uuid=uuidutils.generate_uuid())
     new_i_uuid = uuidutils.generate_uuid()
     self.dbapi.update_node(node1.id, {'instance_uuid': new_i_uuid})
     node2 = utils.create_test_node(uuid=uuidutils.generate_uuid())
     self.assertRaises(exception.InstanceAssociated, self.dbapi.update_node,
                       node2.id, {'instance_uuid': new_i_uuid})
コード例 #2
0
ファイル: test_nodes.py プロジェクト: infraredgirl/ironic
    def test_get_nodeinfo_list_with_filters(self):
        node1 = utils.create_test_node(driver='driver-one',
            instance_uuid=uuidutils.generate_uuid(),
            reservation='fake-host',
            uuid=uuidutils.generate_uuid())
        node2 = utils.create_test_node(driver='driver-two',
            uuid=uuidutils.generate_uuid(),
            maintenance=True)

        res = self.dbapi.get_nodeinfo_list(filters={'driver': 'driver-one'})
        self.assertEqual([node1.id], [r[0] for r in res])

        res = self.dbapi.get_nodeinfo_list(filters={'driver': 'bad-driver'})
        self.assertEqual([], [r[0] for r in res])

        res = self.dbapi.get_nodeinfo_list(filters={'associated': True})
        self.assertEqual([node1.id], [r[0] for r in res])

        res = self.dbapi.get_nodeinfo_list(filters={'associated': False})
        self.assertEqual([node2.id], [r[0] for r in res])

        res = self.dbapi.get_nodeinfo_list(filters={'reserved': True})
        self.assertEqual([node1.id], [r[0] for r in res])

        res = self.dbapi.get_nodeinfo_list(filters={'reserved': False})
        self.assertEqual([node2.id], [r[0] for r in res])

        res = self.dbapi.get_node_list(filters={'maintenance': True})
        self.assertEqual([node2.id], [r.id for r in res])

        res = self.dbapi.get_node_list(filters={'maintenance': False})
        self.assertEqual([node1.id], [r.id for r in res])
コード例 #3
0
ファイル: test_nodes.py プロジェクト: ader1990/ironic
    def test_get_node_by_instance_wrong_uuid(self):
        utils.create_test_node(
                instance_uuid='12345678-9999-0000-aaaa-123456789012')

        self.assertRaises(exception.InstanceNotFound,
                          self.dbapi.get_node_by_instance,
                          '12345678-9999-0000-bbbb-123456789012')
コード例 #4
0
ファイル: test_nodes.py プロジェクト: ader1990/ironic
    def test_get_nodeinfo_list_with_filters(self):
        node1 = utils.create_test_node(driver='driver-one',
            instance_uuid=ironic_utils.generate_uuid(),
            reservation='fake-host',
            uuid=ironic_utils.generate_uuid())
        node2 = utils.create_test_node(driver='driver-two',
            uuid=ironic_utils.generate_uuid(),
            maintenance=True)

        res = self.dbapi.get_nodeinfo_list(filters={'driver': 'driver-one'})
        self.assertEqual([node1.id], [r[0] for r in res])

        res = self.dbapi.get_nodeinfo_list(filters={'driver': 'bad-driver'})
        self.assertEqual([], [r[0] for r in res])

        res = self.dbapi.get_nodeinfo_list(filters={'associated': True})
        self.assertEqual([node1.id], [r[0] for r in res])

        res = self.dbapi.get_nodeinfo_list(filters={'associated': False})
        self.assertEqual([node2.id], [r[0] for r in res])

        res = self.dbapi.get_nodeinfo_list(filters={'reserved': True})
        self.assertEqual([node1.id], [r[0] for r in res])

        res = self.dbapi.get_nodeinfo_list(filters={'reserved': False})
        self.assertEqual([node2.id], [r[0] for r in res])

        res = self.dbapi.get_node_list(filters={'maintenance': True})
        self.assertEqual([node2.id], [r.id for r in res])

        res = self.dbapi.get_node_list(filters={'maintenance': False})
        self.assertEqual([node1.id], [r.id for r in res])
コード例 #5
0
ファイル: test_nodes.py プロジェクト: infraredgirl/ironic
    def test_get_node_by_instance_wrong_uuid(self):
        utils.create_test_node(
                instance_uuid='12345678-9999-0000-aaaa-123456789012')

        self.assertRaises(exception.InstanceNotFound,
                          self.dbapi.get_node_by_instance,
                          '12345678-9999-0000-bbbb-123456789012')
コード例 #6
0
ファイル: test_nodes.py プロジェクト: infraredgirl/ironic
 def test_update_node_name_duplicate(self):
     node1 = utils.create_test_node(uuid=uuidutils.generate_uuid(),
                                    name='spam')
     node2 = utils.create_test_node(uuid=uuidutils.generate_uuid())
     self.assertRaises(exception.DuplicateName,
                       self.dbapi.update_node,
                       node2.id,
                       {'name': node1.name})
コード例 #7
0
ファイル: test_nodes.py プロジェクト: Pratyusha9/ironic
 def test_update_node_name_duplicate(self):
     node1 = utils.create_test_node(uuid=uuidutils.generate_uuid(),
                                    name='spam')
     node2 = utils.create_test_node(uuid=uuidutils.generate_uuid())
     self.assertRaises(exception.DuplicateName,
                       self.dbapi.update_node,
                       node2.id,
                       {'name': node1.name})
コード例 #8
0
ファイル: test_nodes.py プロジェクト: infraredgirl/ironic
 def test_create_node_instance_already_associated(self):
     instance = uuidutils.generate_uuid()
     utils.create_test_node(uuid=uuidutils.generate_uuid(),
                            instance_uuid=instance)
     self.assertRaises(exception.InstanceAssociated,
                       utils.create_test_node,
                       uuid=uuidutils.generate_uuid(),
                       instance_uuid=instance)
コード例 #9
0
ファイル: test_nodes.py プロジェクト: ader1990/ironic
 def test_create_node_instance_already_associated(self):
     instance = ironic_utils.generate_uuid()
     utils.create_test_node(uuid=ironic_utils.generate_uuid(),
                            instance_uuid=instance)
     self.assertRaises(exception.InstanceAssociated,
                       utils.create_test_node,
                       uuid=ironic_utils.generate_uuid(),
                       instance_uuid=instance)
コード例 #10
0
ファイル: test_nodes.py プロジェクト: ader1990/ironic
 def test_update_node_instance_already_associated(self):
     node1 = utils.create_test_node(uuid=ironic_utils.generate_uuid())
     new_i_uuid = ironic_utils.generate_uuid()
     self.dbapi.update_node(node1.id, {'instance_uuid': new_i_uuid})
     node2 = utils.create_test_node(uuid=ironic_utils.generate_uuid())
     self.assertRaises(exception.InstanceAssociated,
                       self.dbapi.update_node,
                       node2.id,
                       {'instance_uuid': new_i_uuid})
コード例 #11
0
ファイル: test_nodes.py プロジェクト: maratoid/ironic
    def test_get_nodeinfo_list_with_filters(self):
        node1 = utils.create_test_node(
            driver='driver-one',
            instance_uuid=uuidutils.generate_uuid(),
            reservation='fake-host',
            uuid=uuidutils.generate_uuid())
        node2 = utils.create_test_node(
            driver='driver-two',
            uuid=uuidutils.generate_uuid(),
            maintenance=True)
        node3 = utils.create_test_node(
            driver='driver-one',
            uuid=uuidutils.generate_uuid(),
            reservation='another-fake-host')

        res = self.dbapi.get_nodeinfo_list(filters={'driver': 'driver-one'})
        self.assertEqual(sorted([node1.id, node3.id]),
                         sorted([r[0] for r in res]))

        res = self.dbapi.get_nodeinfo_list(filters={'driver': 'bad-driver'})
        self.assertEqual([], [r[0] for r in res])

        res = self.dbapi.get_nodeinfo_list(filters={'associated': True})
        self.assertEqual([node1.id], [r[0] for r in res])

        res = self.dbapi.get_nodeinfo_list(filters={'associated': False})
        self.assertEqual(sorted([node2.id, node3.id]),
                         sorted([r[0] for r in res]))

        res = self.dbapi.get_nodeinfo_list(filters={'reserved': True})
        self.assertEqual(sorted([node1.id, node3.id]),
                         sorted([r[0] for r in res]))

        res = self.dbapi.get_nodeinfo_list(filters={'reserved': False})
        self.assertEqual([node2.id], [r[0] for r in res])

        res = self.dbapi.get_node_list(filters={'maintenance': True})
        self.assertEqual([node2.id], [r.id for r in res])

        res = self.dbapi.get_node_list(filters={'maintenance': False})
        self.assertEqual(sorted([node1.id, node3.id]),
                         sorted([r.id for r in res]))

        res = self.dbapi.get_node_list(
            filters={'reserved_by_any_of': ['fake-host',
                                            'another-fake-host']})
        self.assertEqual(sorted([node1.id, node3.id]),
                         sorted([r.id for r in res]))
コード例 #12
0
ファイル: test_nodes.py プロジェクト: ader1990/ironic
 def test_update_node_associate_and_disassociate(self):
     node = utils.create_test_node()
     new_i_uuid = ironic_utils.generate_uuid()
     res = self.dbapi.update_node(node.id, {'instance_uuid': new_i_uuid})
     self.assertEqual(new_i_uuid, res.instance_uuid)
     res = self.dbapi.update_node(node.id, {'instance_uuid': None})
     self.assertIsNone(res.instance_uuid)
コード例 #13
0
ファイル: test_nodes.py プロジェクト: johalee/Ironic
 def test_update_node_already_associated(self):
     node = utils.create_test_node()
     new_i_uuid_one = uuidutils.generate_uuid()
     self.dbapi.update_node(node.id, {'instance_uuid': new_i_uuid_one})
     new_i_uuid_two = uuidutils.generate_uuid()
     self.assertRaises(exception.NodeAssociated, self.dbapi.update_node,
                       node.id, {'instance_uuid': new_i_uuid_two})
コード例 #14
0
ファイル: test_power.py プロジェクト: supermari0/ironic
 def setUp(self):
     super(DracPowerInternalMethodsTestCase, self).setUp()
     driver_info = INFO_DICT
     self.node = db_utils.create_test_node(
         driver='fake_drac',
         driver_info=driver_info,
         instance_uuid='instance_uuid_123')
コード例 #15
0
 def setUp(self):
     super(DracPowerInternalMethodsTestCase, self).setUp()
     driver_info = INFO_DICT
     self.node = db_utils.create_test_node(
         driver='fake_drac',
         driver_info=driver_info,
         instance_uuid='instance_uuid_123')
コード例 #16
0
ファイル: test_nodes.py プロジェクト: infraredgirl/ironic
 def test_update_node_provision(self, mock_utcnow):
     mocked_time = datetime.datetime(2000, 1, 1, 0, 0)
     mock_utcnow.return_value = mocked_time
     node = utils.create_test_node()
     res = self.dbapi.update_node(node.id, {'provision_state': 'fake'})
     self.assertEqual(mocked_time,
                      timeutils.normalize_time(res['provision_updated_at']))
コード例 #17
0
ファイル: test_nodes.py プロジェクト: ader1990/ironic
 def test_get_nodeinfo_list_defaults(self):
     node_id_list = []
     for i in range(1, 6):
         node = utils.create_test_node(uuid=ironic_utils.generate_uuid())
         node_id_list.append(node.id)
     res = [i[0] for i in self.dbapi.get_nodeinfo_list()]
     self.assertEqual(sorted(res), sorted(node_id_list))
コード例 #18
0
ファイル: test_nodes.py プロジェクト: infraredgirl/ironic
 def test_update_node_associate_and_disassociate(self):
     node = utils.create_test_node()
     new_i_uuid = uuidutils.generate_uuid()
     res = self.dbapi.update_node(node.id, {'instance_uuid': new_i_uuid})
     self.assertEqual(new_i_uuid, res.instance_uuid)
     res = self.dbapi.update_node(node.id, {'instance_uuid': None})
     self.assertIsNone(res.instance_uuid)
コード例 #19
0
ファイル: test_nodes.py プロジェクト: infraredgirl/ironic
 def test_get_nodeinfo_list_defaults(self):
     node_id_list = []
     for i in range(1, 6):
         node = utils.create_test_node(uuid=uuidutils.generate_uuid())
         node_id_list.append(node.id)
     res = [i[0] for i in self.dbapi.get_nodeinfo_list()]
     self.assertEqual(sorted(res), sorted(node_id_list))
コード例 #20
0
ファイル: test_nodes.py プロジェクト: ader1990/ironic
 def test_update_node_provision(self, mock_utcnow):
     mocked_time = datetime.datetime(2000, 1, 1, 0, 0)
     mock_utcnow.return_value = mocked_time
     n = utils.create_test_node()
     res = self.dbapi.update_node(n['id'], {'provision_state': 'fake'})
     self.assertEqual(mocked_time,
                      timeutils.normalize_time(res['provision_updated_at']))
コード例 #21
0
 def setUp(self):
     super(IRMCPowerInternalMethodsTestCase, self).setUp()
     mgr_utils.mock_the_extension_manager(driver='fake_irmc')
     driver_info = INFO_DICT
     self.node = db_utils.create_test_node(
         driver='fake_irmc',
         driver_info=driver_info,
         instance_uuid='instance_uuid_123')
コード例 #22
0
 def setUp(self):
     super(DracPowerTestCase, self).setUp()
     driver_info = INFO_DICT
     mgr_utils.mock_the_extension_manager(driver="fake_drac")
     self.node = db_utils.create_test_node(
         driver='fake_drac',
         driver_info=driver_info,
         instance_uuid='instance_uuid_123')
コード例 #23
0
ファイル: test_nodes.py プロジェクト: ader1990/ironic
 def test_get_node_list(self):
     uuids = []
     for i in range(1, 6):
         node = utils.create_test_node(uuid=ironic_utils.generate_uuid())
         uuids.append(six.text_type(node['uuid']))
     res = self.dbapi.get_node_list()
     res_uuids = [r.uuid for r in res]
     self.assertEqual(uuids.sort(), res_uuids.sort())
コード例 #24
0
ファイル: test_nodes.py プロジェクト: skw0rm/ironic
    def test_get_node_list_with_filters(self):
        ch1 = utils.get_test_chassis(id=1, uuid=ironic_utils.generate_uuid())
        ch2 = utils.get_test_chassis(id=2, uuid=ironic_utils.generate_uuid())
        self.dbapi.create_chassis(ch1)
        self.dbapi.create_chassis(ch2)

        node1 = utils.create_test_node(
            driver='driver-one',
            instance_uuid=ironic_utils.generate_uuid(),
            reservation='fake-host',
            uuid=ironic_utils.generate_uuid(),
            chassis_id=ch1['id'])
        node2 = utils.create_test_node(driver='driver-two',
                                       uuid=ironic_utils.generate_uuid(),
                                       chassis_id=ch2['id'],
                                       maintenance=True)

        res = self.dbapi.get_node_list(filters={'chassis_uuid': ch1['uuid']})
        self.assertEqual([node1.id], [r.id for r in res])

        res = self.dbapi.get_node_list(filters={'chassis_uuid': ch2['uuid']})
        self.assertEqual([node2.id], [r.id for r in res])

        res = self.dbapi.get_node_list(filters={'driver': 'driver-one'})
        self.assertEqual([node1.id], [r.id for r in res])

        res = self.dbapi.get_node_list(filters={'driver': 'bad-driver'})
        self.assertEqual([], [r.id for r in res])

        res = self.dbapi.get_node_list(filters={'associated': True})
        self.assertEqual([node1.id], [r.id for r in res])

        res = self.dbapi.get_node_list(filters={'associated': False})
        self.assertEqual([node2.id], [r.id for r in res])

        res = self.dbapi.get_node_list(filters={'reserved': True})
        self.assertEqual([node1.id], [r.id for r in res])

        res = self.dbapi.get_node_list(filters={'reserved': False})
        self.assertEqual([node2.id], [r.id for r in res])

        res = self.dbapi.get_node_list(filters={'maintenance': True})
        self.assertEqual([node2.id], [r.id for r in res])

        res = self.dbapi.get_node_list(filters={'maintenance': False})
        self.assertEqual([node1.id], [r.id for r in res])
コード例 #25
0
ファイル: test_nodes.py プロジェクト: infraredgirl/ironic
    def test_release_non_locked_node(self):
        node = utils.create_test_node()

        self.assertEqual(None, node.reservation)
        self.assertRaises(exception.NodeNotLocked,
                          self.dbapi.release_node, 'fake', node.id)
        self.assertRaises(exception.NodeNotLocked,
                          self.dbapi.release_node, 'fake', node.uuid)
コード例 #26
0
ファイル: test_nodes.py プロジェクト: infraredgirl/ironic
 def test_get_node_list(self):
     uuids = []
     for i in range(1, 6):
         node = utils.create_test_node(uuid=uuidutils.generate_uuid())
         uuids.append(six.text_type(node['uuid']))
     res = self.dbapi.get_node_list()
     res_uuids = [r.uuid for r in res]
     self.assertEqual(uuids.sort(), res_uuids.sort())
コード例 #27
0
ファイル: test_nodes.py プロジェクト: infraredgirl/ironic
    def test_release_non_existent_node(self):
        node = utils.create_test_node()
        self.dbapi.destroy_node(node.id)

        self.assertRaises(exception.NodeNotFound,
                          self.dbapi.release_node, 'fake', node.id)
        self.assertRaises(exception.NodeNotFound,
                          self.dbapi.release_node, 'fake', node.uuid)
コード例 #28
0
ファイル: test_power.py プロジェクト: supermari0/ironic
 def setUp(self):
     super(DracPowerTestCase, self).setUp()
     driver_info = INFO_DICT
     mgr_utils.mock_the_extension_manager(driver="fake_drac")
     self.node = db_utils.create_test_node(
         driver='fake_drac',
         driver_info=driver_info,
         instance_uuid='instance_uuid_123')
コード例 #29
0
ファイル: test_power.py プロジェクト: kumarom/ironic
 def setUp(self):
     super(IRMCPowerInternalMethodsTestCase, self).setUp()
     mgr_utils.mock_the_extension_manager(driver='fake_irmc')
     driver_info = INFO_DICT
     self.node = db_utils.create_test_node(
         driver='fake_irmc',
         driver_info=driver_info,
         instance_uuid='instance_uuid_123')
コード例 #30
0
ファイル: test_nodes.py プロジェクト: ader1990/ironic
    def test_release_non_locked_node(self):
        node = utils.create_test_node()

        self.assertEqual(None, node.reservation)
        self.assertRaises(exception.NodeNotLocked,
                          self.dbapi.release_node, 'fake', node.id)
        self.assertRaises(exception.NodeNotLocked,
                          self.dbapi.release_node, 'fake', node.uuid)
コード例 #31
0
ファイル: test_nodes.py プロジェクト: ader1990/ironic
    def test_release_non_existent_node(self):
        node = utils.create_test_node()
        self.dbapi.destroy_node(node.id)

        self.assertRaises(exception.NodeNotFound,
                          self.dbapi.release_node, 'fake', node.id)
        self.assertRaises(exception.NodeNotFound,
                          self.dbapi.release_node, 'fake', node.uuid)
コード例 #32
0
ファイル: test_nodes.py プロジェクト: ader1990/ironic
    def test_get_node_list_with_filters(self):
        ch1 = utils.get_test_chassis(id=1, uuid=ironic_utils.generate_uuid())
        ch2 = utils.get_test_chassis(id=2, uuid=ironic_utils.generate_uuid())
        self.dbapi.create_chassis(ch1)
        self.dbapi.create_chassis(ch2)

        node1 = utils.create_test_node(driver='driver-one',
            instance_uuid=ironic_utils.generate_uuid(),
            reservation='fake-host',
            uuid=ironic_utils.generate_uuid(),
            chassis_id=ch1['id'])
        node2 = utils.create_test_node(driver='driver-two',
            uuid=ironic_utils.generate_uuid(),
            chassis_id=ch2['id'],
            maintenance=True)

        res = self.dbapi.get_node_list(filters={'chassis_uuid': ch1['uuid']})
        self.assertEqual([node1.id], [r.id for r in res])

        res = self.dbapi.get_node_list(filters={'chassis_uuid': ch2['uuid']})
        self.assertEqual([node2.id], [r.id for r in res])

        res = self.dbapi.get_node_list(filters={'driver': 'driver-one'})
        self.assertEqual([node1.id], [r.id for r in res])

        res = self.dbapi.get_node_list(filters={'driver': 'bad-driver'})
        self.assertEqual([], [r.id for r in res])

        res = self.dbapi.get_node_list(filters={'associated': True})
        self.assertEqual([node1.id], [r.id for r in res])

        res = self.dbapi.get_node_list(filters={'associated': False})
        self.assertEqual([node2.id], [r.id for r in res])

        res = self.dbapi.get_node_list(filters={'reserved': True})
        self.assertEqual([node1.id], [r.id for r in res])

        res = self.dbapi.get_node_list(filters={'reserved': False})
        self.assertEqual([node2.id], [r.id for r in res])

        res = self.dbapi.get_node_list(filters={'maintenance': True})
        self.assertEqual([node2.id], [r.id for r in res])

        res = self.dbapi.get_node_list(filters={'maintenance': False})
        self.assertEqual([node1.id], [r.id for r in res])
コード例 #33
0
ファイル: test_nodes.py プロジェクト: Pratyusha9/ironic
    def test_ports_get_destroyed_after_destroying_a_node_by_uuid(self):
        node = utils.create_test_node()

        port = utils.create_test_port(node_id=node.id)

        self.dbapi.destroy_node(node.uuid)

        self.assertRaises(exception.PortNotFound,
                          self.dbapi.get_port_by_id, port.id)
コード例 #34
0
ファイル: test_power.py プロジェクト: larainema/ironic
 def setUp(self):
     super(IloPowerInternalMethodsTestCase, self).setUp()
     driver_info = INFO_DICT
     mgr_utils.mock_the_extension_manager(driver="fake_ilo")
     self.node = db_utils.create_test_node(
         driver="fake_ilo", driver_info=driver_info, instance_uuid="instance_uuid_123"
     )
     CONF.set_override("power_retry", 2, "ilo")
     CONF.set_override("power_wait", 0, "ilo")
コード例 #35
0
ファイル: test_nodes.py プロジェクト: ader1990/ironic
    def test_update_node(self):
        node = utils.create_test_node()

        old_extra = node.extra
        new_extra = {'foo': 'bar'}
        self.assertNotEqual(old_extra, new_extra)

        res = self.dbapi.update_node(node.id, {'extra': new_extra})
        self.assertEqual(new_extra, res.extra)
コード例 #36
0
ファイル: test_nodes.py プロジェクト: johalee/Ironic
 def test_update_node_inspection_finished_at(self, mock_utcnow):
     mocked_time = datetime.datetime(2000, 1, 1, 0, 0)
     mock_utcnow.return_value = mocked_time
     node = utils.create_test_node(uuid=uuidutils.generate_uuid(),
                                   inspection_finished_at=mocked_time)
     res = self.dbapi.update_node(node.id, {'provision_state': 'fake'})
     result = res['inspection_finished_at']
     self.assertEqual(mocked_time, timeutils.normalize_time(result))
     self.assertIsNone(res['inspection_started_at'])
コード例 #37
0
ファイル: test_nodes.py プロジェクト: ader1990/ironic
 def test_update_node_already_associated(self):
     node = utils.create_test_node()
     new_i_uuid_one = ironic_utils.generate_uuid()
     self.dbapi.update_node(node.id, {'instance_uuid': new_i_uuid_one})
     new_i_uuid_two = ironic_utils.generate_uuid()
     self.assertRaises(exception.NodeAssociated,
                       self.dbapi.update_node,
                       node.id,
                       {'instance_uuid': new_i_uuid_two})
コード例 #38
0
ファイル: test_nodes.py プロジェクト: infraredgirl/ironic
    def test_ports_get_destroyed_after_destroying_a_node_by_uuid(self):
        node = utils.create_test_node()

        port = utils.create_test_port(node_id=node.id)

        self.dbapi.destroy_node(node.uuid)

        self.assertRaises(exception.PortNotFound,
                          self.dbapi.get_port_by_id, port.id)
コード例 #39
0
ファイル: test_nodes.py プロジェクト: infraredgirl/ironic
    def test_update_node(self):
        node = utils.create_test_node()

        old_extra = node.extra
        new_extra = {'foo': 'bar'}
        self.assertNotEqual(old_extra, new_extra)

        res = self.dbapi.update_node(node.id, {'extra': new_extra})
        self.assertEqual(new_extra, res.extra)
コード例 #40
0
ファイル: test_nodes.py プロジェクト: ader1990/ironic
    def test_reservation_in_exception_message(self):
        node = utils.create_test_node()
        uuid = node.uuid

        r = 'fake-reservation'
        self.dbapi.reserve_node(r, uuid)
        try:
            self.dbapi.reserve_node('another', uuid)
        except exception.NodeLocked as e:
            self.assertIn(r, str(e))
コード例 #41
0
 def setUp(self):
     super(IloPowerInternalMethodsTestCase, self).setUp()
     driver_info = INFO_DICT
     mgr_utils.mock_the_extension_manager(driver="fake_ilo")
     self.node = db_utils.create_test_node(
         driver='fake_ilo',
         driver_info=driver_info,
         instance_uuid='instance_uuid_123')
     CONF.set_override('power_retry', 2, 'ilo')
     CONF.set_override('power_wait', 0, 'ilo')
コード例 #42
0
ファイル: test_nodes.py プロジェクト: Pratyusha9/ironic
 def test_update_node_inspection_finished_at(self, mock_utcnow):
     mocked_time = datetime.datetime(2000, 1, 1, 0, 0)
     mock_utcnow.return_value = mocked_time
     node = utils.create_test_node(uuid=uuidutils.generate_uuid(),
                                   inspection_finished_at=mocked_time)
     res = self.dbapi.update_node(node.id, {'provision_state': 'fake'})
     result = res['inspection_finished_at']
     self.assertEqual(mocked_time,
                      timeutils.normalize_time(result))
     self.assertIsNone(res['inspection_started_at'])
コード例 #43
0
ファイル: test_nodes.py プロジェクト: infraredgirl/ironic
    def test_reservation_in_exception_message(self):
        node = utils.create_test_node()
        uuid = node.uuid

        r = 'fake-reservation'
        self.dbapi.reserve_node(r, uuid)
        try:
            self.dbapi.reserve_node('another', uuid)
        except exception.NodeLocked as e:
            self.assertIn(r, str(e))
コード例 #44
0
ファイル: test_nodes.py プロジェクト: ader1990/ironic
    def test_release_reservation(self):
        node = utils.create_test_node()
        uuid = node.uuid

        r1 = 'fake-reservation'
        self.dbapi.reserve_node(r1, uuid)

        # release reservation
        self.dbapi.release_node(r1, uuid)
        res = self.dbapi.get_node_by_uuid(uuid)
        self.assertIsNone(res.reservation)
コード例 #45
0
ファイル: test_nodes.py プロジェクト: infraredgirl/ironic
    def test_release_reservation(self):
        node = utils.create_test_node()
        uuid = node.uuid

        r1 = 'fake-reservation'
        self.dbapi.reserve_node(r1, uuid)

        # release reservation
        self.dbapi.release_node(r1, uuid)
        res = self.dbapi.get_node_by_uuid(uuid)
        self.assertIsNone(res.reservation)
コード例 #46
0
ファイル: test_nodes.py プロジェクト: ader1990/ironic
    def test_reserve_node(self):
        node = utils.create_test_node()
        uuid = node.uuid

        r1 = 'fake-reservation'

        # reserve the node
        self.dbapi.reserve_node(r1, uuid)

        # check reservation
        res = self.dbapi.get_node_by_uuid(uuid)
        self.assertEqual(r1, res.reservation)
コード例 #47
0
ファイル: test_nodes.py プロジェクト: infraredgirl/ironic
    def test_reserve_node(self):
        node = utils.create_test_node()
        uuid = node.uuid

        r1 = 'fake-reservation'

        # reserve the node
        self.dbapi.reserve_node(r1, uuid)

        # check reservation
        res = self.dbapi.get_node_by_uuid(uuid)
        self.assertEqual(r1, res.reservation)
コード例 #48
0
ファイル: test_nodes.py プロジェクト: ubuntu3/ironic
    def test_touch_node_provisioning(self, mock_utcnow):
        test_time = datetime.datetime(2000, 1, 1, 0, 0)
        mock_utcnow.return_value = test_time
        node = utils.create_test_node()
        # assert provision_updated_at is None
        self.assertIsNone(node.provision_updated_at)

        self.dbapi.touch_node_provisioning(node.uuid)
        node = self.dbapi.get_node_by_uuid(node.uuid)
        # assert provision_updated_at has been updated
        self.assertEqual(test_time,
                         timeutils.normalize_time(node.provision_updated_at))
コード例 #49
0
    def test_touch_node_provisioning(self, mock_utcnow):
        test_time = datetime.datetime(2000, 1, 1, 0, 0)
        mock_utcnow.return_value = test_time
        node = utils.create_test_node()
        # assert provision_updated_at is None
        self.assertIsNone(node.provision_updated_at)

        self.dbapi.touch_node_provisioning(node.uuid)
        node = self.dbapi.get_node_by_uuid(node.uuid)
        # assert provision_updated_at has been updated
        self.assertEqual(test_time,
                         timeutils.normalize_time(node.provision_updated_at))
コード例 #50
0
ファイル: test_nodes.py プロジェクト: ader1990/ironic
 def test_get_nodeinfo_list_with_cols(self):
     uuids = {}
     extras = {}
     for i in range(1, 6):
         uuid = ironic_utils.generate_uuid()
         extra = {'foo': i}
         node = utils.create_test_node(extra=extra, uuid=uuid)
         uuids[node.id] = uuid
         extras[node.id] = extra
     res = self.dbapi.get_nodeinfo_list(columns=['id', 'extra', 'uuid'])
     self.assertEqual(extras, dict((r[0], r[1]) for r in res))
     self.assertEqual(uuids, dict((r[0], r[2]) for r in res))
コード例 #51
0
ファイル: test_nodes.py プロジェクト: infraredgirl/ironic
 def test_get_nodeinfo_list_with_cols(self):
     uuids = {}
     extras = {}
     for i in range(1, 6):
         uuid = uuidutils.generate_uuid()
         extra = {'foo': i}
         node = utils.create_test_node(extra=extra, uuid=uuid)
         uuids[node.id] = uuid
         extras[node.id] = extra
     res = self.dbapi.get_nodeinfo_list(columns=['id', 'extra', 'uuid'])
     self.assertEqual(extras, dict((r[0], r[1]) for r in res))
     self.assertEqual(uuids, dict((r[0], r[2]) for r in res))
コード例 #52
0
ファイル: test_nodes.py プロジェクト: ader1990/ironic
    def test_get_nodeinfo_list_provision(self, mock_utcnow):
        past = datetime.datetime(2000, 1, 1, 0, 0)
        next = past + datetime.timedelta(minutes=8)
        present = past + datetime.timedelta(minutes=10)
        mock_utcnow.return_value = past

        # node with provision_updated timeout
        node1 = utils.create_test_node(uuid=ironic_utils.generate_uuid(),
                                       provision_updated_at=past)
        # node with None in provision_updated_at
        node2 = utils.create_test_node(uuid=ironic_utils.generate_uuid(),
                                       provision_state=states.DEPLOYWAIT)
        # node without timeout
        utils.create_test_node(uuid=ironic_utils.generate_uuid(),
                            provision_updated_at=next)

        mock_utcnow.return_value = present
        res = self.dbapi.get_nodeinfo_list(filters={'provisioned_before': 300})
        self.assertEqual([node1.id], [r[0] for r in res])

        res = self.dbapi.get_nodeinfo_list(filters={'provision_state':
                                                    states.DEPLOYWAIT})
        self.assertEqual([node2.id], [r[0] for r in res])
コード例 #53
0
ファイル: test_nodes.py プロジェクト: ader1990/ironic
    def test_reservation_after_release(self):
        node = utils.create_test_node()
        uuid = node.uuid

        r1 = 'fake-reservation'
        r2 = 'another-reservation'

        self.dbapi.reserve_node(r1, uuid)
        self.dbapi.release_node(r1, uuid)

        # another host succeeds
        self.dbapi.reserve_node(r2, uuid)
        res = self.dbapi.get_node_by_uuid(uuid)
        self.assertEqual(r2, res.reservation)
コード例 #54
0
ファイル: test_nodes.py プロジェクト: infraredgirl/ironic
    def test_get_nodeinfo_list_provision(self, mock_utcnow):
        past = datetime.datetime(2000, 1, 1, 0, 0)
        next = past + datetime.timedelta(minutes=8)
        present = past + datetime.timedelta(minutes=10)
        mock_utcnow.return_value = past

        # node with provision_updated timeout
        node1 = utils.create_test_node(uuid=uuidutils.generate_uuid(),
                                       provision_updated_at=past)
        # node with None in provision_updated_at
        node2 = utils.create_test_node(uuid=uuidutils.generate_uuid(),
                                       provision_state=states.DEPLOYWAIT)
        # node without timeout
        utils.create_test_node(uuid=uuidutils.generate_uuid(),
                            provision_updated_at=next)

        mock_utcnow.return_value = present
        res = self.dbapi.get_nodeinfo_list(filters={'provisioned_before': 300})
        self.assertEqual([node1.id], [r[0] for r in res])

        res = self.dbapi.get_nodeinfo_list(filters={'provision_state':
                                                    states.DEPLOYWAIT})
        self.assertEqual([node2.id], [r[0] for r in res])
コード例 #55
0
ファイル: test_nodes.py プロジェクト: infraredgirl/ironic
    def test_reservation_after_release(self):
        node = utils.create_test_node()
        uuid = node.uuid

        r1 = 'fake-reservation'
        r2 = 'another-reservation'

        self.dbapi.reserve_node(r1, uuid)
        self.dbapi.release_node(r1, uuid)

        # another host succeeds
        self.dbapi.reserve_node(r2, uuid)
        res = self.dbapi.get_node_by_uuid(uuid)
        self.assertEqual(r2, res.reservation)
コード例 #56
0
ファイル: test_nodes.py プロジェクト: johalee/Ironic
    def test_reservation_of_reserved_node_fails(self):
        node = utils.create_test_node()
        uuid = node.uuid

        r1 = 'fake-reservation'
        r2 = 'another-reservation'

        # reserve the node
        self.dbapi.reserve_node(r1, uuid)

        # another host fails to reserve or release
        self.assertRaises(exception.NodeLocked, self.dbapi.reserve_node, r2,
                          uuid)
        self.assertRaises(exception.NodeLocked, self.dbapi.release_node, r2,
                          uuid)
コード例 #57
0
ファイル: test_nodes.py プロジェクト: ader1990/ironic
    def test_reservation_of_reserved_node_fails(self):
        node = utils.create_test_node()
        uuid = node.uuid

        r1 = 'fake-reservation'
        r2 = 'another-reservation'

        # reserve the node
        self.dbapi.reserve_node(r1, uuid)

        # another host fails to reserve or release
        self.assertRaises(exception.NodeLocked,
                          self.dbapi.reserve_node,
                          r2, uuid)
        self.assertRaises(exception.NodeLocked,
                          self.dbapi.release_node,
                          r2, uuid)
コード例 #58
0
ファイル: test_chassis.py プロジェクト: Pratyusha9/ironic
    def test_destroy_chassis_with_nodes(self):
        utils.create_test_node(chassis_id=self.chassis.id)

        self.assertRaises(exception.ChassisNotEmpty,
                          self.dbapi.destroy_chassis, self.chassis.id)
コード例 #59
0
ファイル: test_nodes.py プロジェクト: infraredgirl/ironic
 def test_get_node_by_name(self):
     node = utils.create_test_node()
     res = self.dbapi.get_node_by_name(node.name)
     self.assertEqual(node.id, res.id)
     self.assertEqual(node.uuid, res.uuid)
     self.assertEqual(node.name, res.name)
コード例 #60
0
ファイル: test_nodes.py プロジェクト: infraredgirl/ironic
 def test_create_node_name_duplicate(self):
     node = utils.create_test_node(name='spam')
     self.assertRaises(exception.DuplicateName,
                       utils.create_test_node,
                       name=node.name)