def test_cloud_compute_flatdhcp_context(self, netman):
     netman.return_value = 'flatdhcpmanager'
     self.relation_ids.return_value = 'cloud-compute:0'
     self.related_units.return_value = 'nova-cloud-controller/0'
     self.test_relation.set({
         'network_manager': 'FlatDHCPManager',
         'ec2_host': 'novaapihost'
     })
     cloud_compute = context.CloudComputeContext()
     ex_ctxt = {
         'network_manager': 'flatdhcpmanager',
         'network_manager_config': {
             'ec2_dmz_host': 'novaapihost',
             'flat_interface': 'eth1'
         },
         'service_protocol': None,
         'service_host': None,
         'service_port': None,
         'admin_tenant_name': None,
         'admin_user': None,
         'admin_password': None,
         'auth_protocol': None,
         'auth_host': None,
         'auth_port': None,
         'api_version': None,
     }
     self.assertEqual(ex_ctxt, cloud_compute())
 def test_cloud_compute_volume_context_cinder(self, netman):
     netman.return_value = None
     self.relation_ids.return_value = 'cloud-compute:0'
     self.related_units.return_value = 'nova-cloud-controller/0'
     cloud_compute = context.CloudComputeContext()
     self.test_relation.set({'volume_service': 'cinder'})
     self.assertEqual({'volume_service': 'cinder'}, cloud_compute())
    def test_cloud_compute_context_restart_trigger(self, nm):
        nm.return_value = None
        cloud_compute = context.CloudComputeContext()
        with patch.object(cloud_compute, 'restart_trigger') as rt:
            rt.return_value = 'footrigger'
            ctxt = cloud_compute()
        self.assertEqual(ctxt.get('restart_trigger'), 'footrigger')

        with patch.object(cloud_compute, 'restart_trigger') as rt:
            rt.return_value = None
            ctxt = cloud_compute()
        self.assertEqual(ctxt.get('restart_trigger'), None)
 def test_cloud_compute_vendordata_context(self, netman):
     self.relation_ids.return_value = 'cloud-compute:0'
     self.related_units.return_value = 'nova-cloud-controller/0'
     data = ('{"vendor_data": true, "vendor_data_url": "fake_url",'
             ' "foo": "bar",'
             ' "vendordata_providers": "StaticJSON,DynamicJSON"}')
     self.test_relation.set({'vendor_data': data})
     cloud_compute = context.CloudComputeContext()
     ex_ctxt = {
         'vendor_data': True,
         'vendor_data_url': 'fake_url',
         'vendordata_providers': 'StaticJSON,DynamicJSON',
     }
     self.assertEqual(ex_ctxt, cloud_compute())
Exemplo n.º 5
0
 def test_cloud_compute_flatdhcp_context(self, netman):
     netman.return_value = 'flatdhcpmanager'
     self.relation_ids.return_value = 'cloud-compute:0'
     self.related_units.return_value = 'nova-cloud-controller/0'
     self.test_relation.set({
         'network_manager': 'FlatDHCPManager',
         'ec2_host': 'novaapihost'})
     cloud_compute = context.CloudComputeContext()
     ex_ctxt = {
         'network_manager': 'flatdhcpmanager',
         'network_manager_config': {
             'ec2_dmz_host': 'novaapihost',
             'flat_interface': 'eth1'
         },
     }
     self.assertEqual(ex_ctxt, cloud_compute())
Exemplo n.º 6
0
 def test_cloud_compute_neutron_ctxt_dns_domain(self, netman, url, plugin):
     self.relation_ids.return_value = 'cloud-compute:0'
     self.related_units.return_value = 'nova-cloud-controller/0'
     netman.return_value = 'neutron'
     plugin.return_value = 'ovs'
     url.return_value = 'http://nova-c-c:9696'
     NEUTRON_CONTEXT.update({'dns_domain': 'example.tld'})
     self.test_relation.set(NEUTRON_CONTEXT)
     cloud_compute = context.CloudComputeContext()
     ex_ctxt = {
         'network_manager': 'neutron',
         'network_manager_config': {
             'api_version': '2.0',
             'auth_protocol': 'https',
             'service_protocol': 'http',
             'auth_port': '5000',
             'dns_domain': 'example.tld',
             'keystone_host': 'keystone_host',
             'neutron_admin_auth_url': 'https://keystone_host:5000/v2.0',
             'neutron_admin_password': '******',
             'neutron_admin_tenant_name': 'admin',
             'neutron_admin_username': '******',
             'neutron_admin_domain_name': 'admin_domain',
             'neutron_auth_strategy': 'keystone',
             'neutron_plugin': 'ovs',
             'neutron_security_groups': True,
             'neutron_url': 'http://nova-c-c:9696',
             'service_protocol': 'http',
             'service_port': '5000',
         },
         'service_host': 'keystone_host',
         'admin_tenant_name': 'admin',
         'admin_user': '******',
         'admin_password': '******',
         'admin_domain_name': 'admin_domain',
         'auth_port': '5000',
         'auth_protocol': 'https',
         'auth_host': 'keystone_host',
         'api_version': '2.0',
         'dns_domain': 'example.tld',
         'service_protocol': 'http',
         'service_port': '5000',
     }
     self.assertEqual(ex_ctxt, cloud_compute())
     self._save_flag_file.assert_called_with(
         path='/etc/nova/nm.conf', data='neutron')
Exemplo n.º 7
0
    def test_cloud_compute_cross_az_context(self, netman):
        netman.return_value = None
        self.relation_ids.return_value = 'cloud-compute:1'
        self.related_units.return_value = 'nova-cloud-controller/0'
        cloud_compute = context.CloudComputeContext()

        # Check no cross_az_attach value set, defaults to cross_az_attach=True
        self.test_relation.set({'volume_service': 'cinder'})
        self.assertEqual({'volume_service': 'cinder',
                          'cross_az_attach': True}, cloud_compute())

        # Check that explicit True setting for cross_az_attach
        self.test_relation.set({'volume_service': 'cinder',
                                'cross_az_attach': True})
        self.assertEqual({'volume_service': 'cinder',
                          'cross_az_attach': True}, cloud_compute())

        # Check false setting for cross_az_attach
        self.test_relation.set({'volume_service': 'cinder',
                                'cross_az_attach': False})
        self.assertEqual({'volume_service': 'cinder',
                          'cross_az_attach': False}, cloud_compute())
 def test_cloud_compute_context_no_relation(self):
     self.relation_ids.return_value = []
     cloud_compute = context.CloudComputeContext()
     self.assertEqual({}, cloud_compute())