Пример #1
0
    def setUp(self):
        super(TestPartition, self).setUp()

        # Mock the conductor API
        self.fake_conductor_api = FakeConductorAPI(self.dbapi)
        p = mock.patch('sysinv.conductor.rpcapi.ConductorAPI')
        self.mock_conductor_api = p.start()
        self.mock_conductor_api.return_value = self.fake_conductor_api
        self.addCleanup(p.stop)

        # Behave as if the API is running on controller-0
        p = mock.patch('socket.gethostname')
        self.mock_socket_gethostname = p.start()
        self.mock_socket_gethostname.return_value = 'controller-0'
        self.addCleanup(p.stop)

        # Behave as if running on a virtual system
        p = mock.patch('sysinv.common.utils.is_virtual')
        self.mock_utils_is_virtual = p.start()
        self.mock_utils_is_virtual.return_value = True
        self.addCleanup(p.stop)

        # Create an isystem and load
        self.system = dbutils.create_test_isystem(
            capabilities={
                "cinder_backend": constants.CINDER_BACKEND_CEPH,
                "vswitch_type": constants.VSWITCH_TYPE_NONE,
                "region_config": False,
                "sdn_enabled": False,
                "shared_services": "[]"
            })
        self.load = dbutils.create_test_load()
        # Create controller-0
        self.ihost = self._create_controller_0()
        self.disk = self._create_disk(self.ihost.id)
Пример #2
0
 def setUp(self):
     super(PTPTestCase, self).setUp()
     self.dbapi = dbapi.get_instance()
     self.system = dbutils.create_test_isystem()
     self.load = dbutils.create_test_load()
     self.controller = dbutils.create_test_ihost(
         id='1',
         uuid=None,
         forisystemid=self.system.id,
         hostname='controller-0',
         personality=constants.CONTROLLER,
         subfunctions=constants.CONTROLLER,
         invprovision=constants.PROVISIONED,
     )
     self.worker = dbutils.create_test_ihost(
         id='2',
         uuid=None,
         forisystemid=self.system.id,
         hostname='worker-0',
         personality=constants.WORKER,
         subfunctions=constants.WORKER,
         mgmt_mac='01:02.03.04.05.C0',
         mgmt_ip='192.168.24.12',
         invprovision=constants.PROVISIONED,
         administrative=constants.ADMIN_LOCKED)
     self.dbapi.ptp_create({})
     self.ptp = self.dbapi.ptp_get_one()
     self.ptp_uuid = self.ptp.uuid
Пример #3
0
 def setUp(self):
     super(ManagerTestCase, self).setUp()
     self.service = manager.ConductorManager('test-host', 'test-topic')
     self.service.dbapi = dbapi.get_instance()
     self.context = context.get_admin_context()
     self.dbapi = dbapi.get_instance()
     self.system = utils.create_test_isystem()
     self.load = utils.create_test_load()
Пример #4
0
    def test_create_platform_upgrade_exists(self):
        # Test creation of upgrade when platform upgrade in progress
        dbutils.create_test_load(software_version=dbutils.SW_VERSION_NEW,
                                 compatible_version=dbutils.SW_VERSION,
                                 state=constants.IMPORTED_LOAD_STATE)
        dbutils.create_test_upgrade()

        create_dict = dbutils.post_get_test_kube_upgrade(to_version='v1.43.2')
        result = self.post_json('/kube_upgrade', create_dict,
                                headers={'User-Agent': 'sysinv-test'},
                                expect_errors=True)

        # Verify the failure
        self.assertEqual(result.content_type, 'application/json')
        self.assertEqual(http_client.BAD_REQUEST, result.status_int)
        self.assertIn("upgrade cannot be done while a platform upgrade",
                      result.json['error_message'])
Пример #5
0
 def setUp(self):
     super(StorageTierIndependentTCs, self).setUp()
     self.mock_set_crushmap = self.set_crushmap_patcher.start()
     self.system = dbutils.create_test_isystem()
     self.cluster = dbutils.create_test_cluster(system_id=self.system.id,
                                                name='ceph_cluster')
     self.load = dbutils.create_test_load()
     self.host = dbutils.create_test_ihost(forisystemid=self.system.id)
Пример #6
0
    def test_create(self):
        # Create the to load
        dbutils.create_test_load(software_version=dbutils.SW_VERSION_NEW,
                                 compatible_version=dbutils.SW_VERSION,
                                 state=constants.IMPORTED_LOAD_STATE)

        # Test creation of upgrade
        create_dict = dbutils.get_test_upgrade()
        result = self.post_json('/upgrade',
                                create_dict,
                                headers={'User-Agent': 'sysinv-test'})

        # Verify that the upgrade was started
        self.fake_conductor_api.start_upgrade.assert_called_once()

        # Verify that the upgrade has the expected attributes
        self.assertEqual(result.json['from_release'], dbutils.SW_VERSION)
        self.assertEqual(result.json['to_release'], dbutils.SW_VERSION_NEW)
        self.assertEqual(result.json['state'], constants.UPGRADE_STARTING)
Пример #7
0
 def setUp(self):
     super(StorageTierDependentTCs, self).setUp()
     self.mock_set_crushmap = self.set_crushmap_patcher.start()
     self.service = manager.ConductorManager('test-host', 'test-topic')
     self.service.dbapi = dbapi.get_instance()
     self.context = context.get_admin_context()
     self.dbapi = dbapi.get_instance()
     self.system = dbutils.create_test_isystem()
     self.load = dbutils.create_test_load()
     self.host_index = -1
     self.mon_index = -1
Пример #8
0
    def setUp(self):
        super(UpdateCephCluster, self).setUp()
        self.service = manager.ConductorManager('test-host', 'test-topic')
        self.service.dbapi = dbapi.get_instance()
        self.context = context.get_admin_context()
        self.dbapi = dbapi.get_instance()
        self.system = utils.create_test_isystem()
        self.load = utils.create_test_load()
        self.host_index = -1

        self.mock_upgrade_downgrade_kube_components = self.upgrade_downgrade_kube_components_patcher.start(
        )
Пример #9
0
 def setUp(self):
     super(StorageTierIndependentTCs, self).setUp()
     self.mock_set_crushmap = self.set_crushmap_patcher.start()
     self.set_monitors_status_patcher = self.set_monitors_status_patcher.start()
     self.set_monitors_status_patcher.return_value = \
         [3, 2, ['controller-0', 'controller-1', 'storage-0']]
     self.set_is_initial_config_patcher = self.set_is_initial_config_patcher.start()
     self.set_is_initial_config_patcher.return_value = True
     self.system = dbutils.create_test_isystem()
     self.cluster = dbutils.create_test_cluster(system_id=self.system.id, name='ceph_cluster')
     self.load = dbutils.create_test_load()
     self.host = dbutils.create_test_ihost(forisystemid=self.system.id)
Пример #10
0
    def setUp(self):
        super(InterfaceDataNetworkTestCase, self).setUp()

        p = mock.patch.object(api_if_v1, '_get_lower_interface_macs')
        self.mock_lower_macs = p.start()
        self.mock_lower_macs.return_value = {
            'enp0s18': '08:00:27:8a:87:48',
            'enp0s19': '08:00:27:ea:93:8e'
        }
        self.addCleanup(p.stop)

        p = mock.patch('sysinv.common.utils.is_aio_simplex_system')
        self.mock_utils_is_aio_simplex_system = p.start()
        self.mock_utils_is_aio_simplex_system.return_value = True
        self.addCleanup(p.stop)

        self.system = dbutils.create_test_isystem()
        self.load = dbutils.create_test_load()
        self.controller = dbutils.create_test_ihost(
            id='1',
            uuid=None,
            forisystemid=self.system.id,
            hostname='controller-0',
            personality=constants.CONTROLLER,
            subfunctions=constants.WORKER,
            administrative=constants.ADMIN_UNLOCKED,
            invprovision=constants.PROVISIONED,
        )
        self.datanetwork = dbutils.create_test_datanetwork(
            name='test1',
            uuid=str(uuid.uuid4()),
            network_type=constants.DATANETWORK_TYPE_VLAN,
            mtu=1500)
        self.if_sriov0 = dbutils.create_test_interface(
            ifname='sriov0',
            ifclass=constants.INTERFACE_CLASS_PCI_SRIOV,
            forihostid=self.controller.id,
            ihost_uuid=self.controller.uuid)
        self.if_data0 = dbutils.create_test_interface(
            ifname='data0',
            ifclass=constants.INTERFACE_CLASS_DATA,
            forihostid=self.controller.id,
            ihost_uuid=self.controller.uuid)
        self.if_sriov1 = dbutils.create_test_interface(
            ifname='sriov1',
            ifclass=constants.INTERFACE_CLASS_PCI_SRIOV,
            forihostid=self.controller.id,
            ihost_uuid=self.controller.uuid)
Пример #11
0
    def setUp(self):
        super(UpdateCephCluster, self).setUp()
        self.service = manager.ConductorManager('test-host', 'test-topic')
        self.service.dbapi = dbapi.get_instance()
        self.context = context.get_admin_context()
        self.dbapi = dbapi.get_instance()
        self.system = utils.create_test_isystem()
        self.load = utils.create_test_load()
        self.host_index = -1

        self.mock_upgrade_downgrade_kube_components = self.upgrade_downgrade_kube_components_patcher.start(
        )
        self.mock_fix_crushmap = self.fix_crushmap_patcher.start()
        self.mock_fix_crushmap.return_value = True

        self.service._sx_to_dx_post_migration_actions = mock.Mock()
Пример #12
0
    def setUp(self):
        super(StorageTierDependentTCs, self).setUp()
        self.mock_set_crushmap = self.set_crushmap_patcher.start()
        self.set_monitors_status_patcher = self.set_monitors_status_patcher.start()
        self.set_monitors_status_patcher.return_value = \
            [3, 2, ['controller-0', 'controller-1', 'storage-0']]
        self.set_is_initial_config_patcher = self.set_is_initial_config_patcher.start()
        self.set_is_initial_config_patcher.return_value = True
        self.service = manager.ConductorManager('test-host', 'test-topic')
        self.service.dbapi = dbapi.get_instance()
        self.context = context.get_admin_context()
        self.dbapi = dbapi.get_instance()
        self.system = dbutils.create_test_isystem()
        self.load = dbutils.create_test_load()
        self.host_index = -1
        self.mon_index = -1

        self.mock_upgrade_downgrade_kube_components = self.upgrade_downgrade_kube_components_patcher.start()
Пример #13
0
    def setUp(self):
        super(ProfileTestCase, self).setUp()
        self.dbapi = dbapi.get_instance()
        self.system = dbutils.create_test_isystem()
        self.load = dbutils.create_test_load()
        self.controller = dbutils.create_test_ihost(
            id='1',
            uuid=None,
            forisystemid=self.system.id,
            hostname='controller-0',
            personality=constants.CONTROLLER,
            subfunctions=constants.CONTROLLER,
            invprovision=constants.PROVISIONED,
        )
        self.worker = dbutils.create_test_ihost(
            id='2',
            uuid=None,
            forisystemid=self.system.id,
            hostname='worker-0',
            personality=constants.WORKER,
            subfunctions=constants.WORKER,
            mgmt_mac='01:02.03.04.05.C0',
            mgmt_ip='192.168.24.12',
            invprovision=constants.PROVISIONED,
        )
        self.profile = {
            'profilename': 'profile-node1',
            'ihost_uuid': self.controller.uuid,
        }
        self.ctrlnode = self.dbapi.inode_create(self.controller.id,
                                                dbutils.get_test_node(id=1))
        self.ctrlcpu = self.dbapi.icpu_create(
            self.controller.id,
            dbutils.get_test_icpu(
                id=1,
                cpu=0,
                forihostid=self.controller.id,
                forinodeid=self.ctrlnode.id,
            ))

        self.ctrlif = dbutils.create_test_interface(
            forihostid=self.controller.id)
        self.port1 = dbutils.create_test_ethernet_port(
            id='1',
            name=self.ctrlif.ifname,
            host_id=self.controller.id,
            interface_id=self.ctrlif.id,
            mac='08:00:27:43:60:11')

        self.ctrlmemory = self.dbapi.imemory_create(
            self.controller.id,
            dbutils.get_test_imemory(id=1,
                                     hugepages_configured=True,
                                     forinodeid=self.ctrlcpu.forinodeid))

        self.compnode = self.dbapi.inode_create(self.worker.id,
                                                dbutils.get_test_node(id=2))
        self.compcpu = self.dbapi.icpu_create(
            self.worker.id,
            dbutils.get_test_icpu(id=5,
                                  cpu=3,
                                  forinodeid=self.compnode.id,
                                  forihostid=self.worker.id))
        self.compcpuapp = self.dbapi.icpu_create(
            self.worker.id,
            dbutils.get_test_icpu(
                id=6,
                cpu=4,
                forinodeid=self.compnode.id,
                forihostid=self.worker.id,
                allocated_function=constants.APPLICATION_FUNCTION))
        self.compmemory = self.dbapi.imemory_create(
            self.worker.id,
            dbutils.get_test_imemory(id=2,
                                     Hugepagesize=constants.MIB_1G,
                                     forinodeid=self.compcpu.forinodeid))

        self.disk = self.dbapi.idisk_create(
            self.worker.id,
            dbutils.get_test_idisk(device_node='/dev/sdb',
                                   device_type=constants.DEVICE_TYPE_HDD))
        self.lvg = self.dbapi.ilvg_create(
            self.worker.id,
            dbutils.get_test_lvg(lvm_vg_name=constants.LVG_NOVA_LOCAL))
        self.pv = self.dbapi.ipv_create(
            self.worker.id,
            dbutils.get_test_pv(lvm_vg_name=constants.LVG_NOVA_LOCAL,
                                disk_or_part_uuid=self.disk.uuid))
 def setUp(self):
     super(InterfaceNetworkTestCase, self).setUp()
     self.system = dbutils.create_test_isystem()
     self.load = dbutils.create_test_load()
     self.controller = dbutils.create_test_ihost(
         id='1',
         uuid=None,
         forisystemid=self.system.id,
         hostname='controller-0',
         personality=constants.CONTROLLER,
         subfunctions=constants.CONTROLLER,
         invprovision=constants.PROVISIONED,
     )
     self.worker = dbutils.create_test_ihost(
         id='2',
         uuid=None,
         forisystemid=self.system.id,
         hostname='worker-0',
         personality=constants.WORKER,
         subfunctions=constants.WORKER,
         mgmt_mac='01:02.03.04.05.C0',
         mgmt_ip='192.168.24.12',
         invprovision=constants.PROVISIONED,
     )
     self.address_pool_mgmt = dbutils.create_test_address_pool(
         id=1,
         network='192.168.204.0',
         name='management',
         ranges=[['192.168.204.2', '192.168.204.254']],
         prefix=24)
     self.mgmt_network = dbutils.create_test_network(
         id=1,
         name='mgmt',
         type=constants.NETWORK_TYPE_MGMT,
         link_capacity=1000,
         vlan_id=2,
         address_pool_id=self.address_pool_mgmt.id)
     self.address_pool_infra = dbutils.create_test_address_pool(
         id=2,
         network='192.168.205.0',
         name='infrastructure',
         ranges=[['192.168.205.2', '192.168.205.254']],
         prefix=24)
     self.infra_network = dbutils.create_test_network(
         id=2,
         name='infra',
         type=constants.NETWORK_TYPE_INFRA,
         link_capacity=10000,
         vlan_id=3,
         address_pool_id=self.address_pool_infra.id)
     self.address_pool_oam = dbutils.create_test_address_pool(
         id=3,
         network='128.224.150.0',
         name='oam',
         ranges=[['128.224.150.1', '128.224.151.254']],
         prefix=23)
     self.oam_network = dbutils.create_test_network(
         id=3,
         name='oam',
         type=constants.NETWORK_TYPE_OAM,
         address_pool_id=self.address_pool_oam.id)
     self.address_pool_pxeboot = dbutils.create_test_address_pool(
         id=4,
         network='192.168.202.0',
         name='pxeboot',
         ranges=[['192.168.202.2', '192.168.202.254']],
         prefix=23)
     self.pxeboot_network = dbutils.create_test_network(
         id=4,
         type=constants.NETWORK_TYPE_PXEBOOT,
         address_pool_id=self.address_pool_pxeboot.id)
    def setUp(self):
        super(InterfaceNetworkTestCase, self).setUp()

        p = mock.patch.object(api_if_v1, '_get_lower_interface_macs')
        self.mock_lower_macs = p.start()
        self.mock_lower_macs.return_value = {
            'enp0s18': '08:00:27:8a:87:48',
            'enp0s19': '08:00:27:ea:93:8e'
        }
        self.addCleanup(p.stop)

        self.system = dbutils.create_test_isystem()
        self.load = dbutils.create_test_load()
        self.controller = dbutils.create_test_ihost(
            id='1',
            uuid=None,
            forisystemid=self.system.id,
            hostname='controller-0',
            personality=constants.CONTROLLER,
            subfunctions=constants.CONTROLLER,
            invprovision=constants.PROVISIONED,
        )
        self.worker = dbutils.create_test_ihost(
            id='2',
            uuid=None,
            forisystemid=self.system.id,
            hostname='worker-0',
            personality=constants.WORKER,
            subfunctions=constants.WORKER,
            mgmt_mac='01:02.03.04.05.C0',
            mgmt_ip='192.168.24.12',
            invprovision=constants.PROVISIONED,
        )
        self.address_pool_mgmt = dbutils.create_test_address_pool(
            id=1,
            network='192.168.204.0',
            name='management',
            ranges=[['192.168.204.2', '192.168.204.254']],
            prefix=24)
        self.mgmt_network = dbutils.create_test_network(
            id=1,
            name='mgmt',
            type=constants.NETWORK_TYPE_MGMT,
            link_capacity=1000,
            vlan_id=2,
            address_pool_id=self.address_pool_mgmt.id)
        self.address_pool_cluster_host = dbutils.create_test_address_pool(
            id=2,
            network='192.168.206.0',
            name='cluster-host',
            ranges=[['192.168.206.2', '192.168.206.254']],
            prefix=24)
        self.cluster_host_network = dbutils.create_test_network(
            id=2,
            name='cluster-host',
            type=constants.NETWORK_TYPE_CLUSTER_HOST,
            link_capacity=10000,
            vlan_id=3,
            address_pool_id=self.address_pool_cluster_host.id)
        self.address_pool_oam = dbutils.create_test_address_pool(
            id=3,
            network='128.224.150.0',
            name='oam',
            ranges=[['128.224.150.1', '128.224.151.254']],
            prefix=23)
        self.oam_network = dbutils.create_test_network(
            id=3,
            name='oam',
            type=constants.NETWORK_TYPE_OAM,
            address_pool_id=self.address_pool_oam.id)
        self.oam_address = dbutils.create_test_address(
            family=2,
            address='10.10.10.3',
            prefix=24,
            name='controller-0-oam',
            address_pool_id=self.address_pool_oam.id)
        self.address_pool_pxeboot = dbutils.create_test_address_pool(
            id=4,
            network='192.168.202.0',
            name='pxeboot',
            ranges=[['192.168.202.2', '192.168.202.254']],
            prefix=23)
        self.pxeboot_network = dbutils.create_test_network(
            id=4,
            type=constants.NETWORK_TYPE_PXEBOOT,
            address_pool_id=self.address_pool_pxeboot.id)
        self.pxeboot_address = dbutils.create_test_address(
            family=2,
            address='192.168.202.3',
            prefix=24,
            name='controller-0-pxeboot',
            address_pool_id=self.address_pool_pxeboot.id)
Пример #16
0
 def _create_test_load(self):
     self.load = dbutils.create_test_load()
Пример #17
0
 def setUp(self):
     super(TestListServers, self).setUp()
     self.system = dbutils.create_test_isystem()
     self.load = dbutils.create_test_load()
Пример #18
0
 def setUp(self):
     super(sensorgroupTestCase, self).setUp()
     self.system = dbutils.create_test_isystem()
     self.load = dbutils.create_test_load()
     self.host = dbutils.create_test_ihost(forisystemid=self.system.id)
Пример #19
0
 def setUp(self):
     super(DbNodeTestCase, self).setUp()
     self.dbapi = dbapi.get_instance()
     self.system = utils.create_test_isystem()
     self.load = utils.create_test_load()