def test_vendordata_mitaka(self): _vdata_url = 'http://example.org/vdata' self.os_release.return_value = 'mitaka' self.test_config.set('vendor-data-url', _vdata_url) ctxt = neutron_contexts.NovaMetadataContext()() self.assertEqual(ctxt, {'vendordata_providers': []})
def test_vendordata_dynamic(self): _vdata_url = 'http://example.org/vdata' self.os_release.return_value = 'pike' self.test_config.set('vendor-data-url', _vdata_url) ctxt = neutron_contexts.NovaMetadataContext()() self.assertEqual(ctxt['vendor_data_url'], _vdata_url) self.assertEqual(ctxt['vendordata_providers'], ['DynamicJSON'])
def test_vendordata_static(self): _vdata = '{"good": "json"}' self.os_release.return_value = 'pike' self.test_config.set('vendor-data', _vdata) ctxt = neutron_contexts.NovaMetadataContext()() self.assertTrue(ctxt['vendor_data']) self.assertEqual(ctxt['vendordata_providers'], ['StaticJSON'])
def test_NovaMetadataContext_no_relations(self, _relation_ids, _get_shared_secret, _get_local_ip): _relation_ids.return_value = [] _get_shared_secret.return_value = 'buuid' _get_local_ip.return_value = '127.0.0.1' self.os_release.return_value = 'rocky' self.assertEqual( neutron_contexts.NovaMetadataContext()(), { 'nova_metadata_host': '127.0.0.1', 'nova_metadata_port': '8775', 'nova_metadata_protocol': 'http', 'shared_secret': 'buuid' })
def test_vendordata_rocky(self, _relation_ids, _get_shared_secret, _get_local_ip, parent): _get_shared_secret.return_value = 'asecret' _get_local_ip.return_value = '127.0.0.1' _relation_ids.return_value = [] self.os_release.return_value = 'rocky' parent.return_value = { 'vendor_data': True, 'vendor_data_url': 'http://example.org/vdata', 'vendordata_providers': 'StaticJSON,DynamicJSON', } ctxt = neutron_contexts.NovaMetadataContext()() self.assertNotIn('vendor_data', ctxt) self.assertNotIn('vendor_data_url', ctxt) self.assertNotIn('vendordata_providers', ctxt)
def test_NovaMetadataContext_with_relations(self, _relation_ids, _related_units, _relation_get): _relation_ids.return_value = ['rid:1'] _related_units.return_value = ['nova-cloud-contoller/0'] _relation_get.return_value = { 'nova-metadata-host': '10.0.0.10', 'nova-metadata-port': '8775', 'nova-metadata-protocol': 'http', 'shared-metadata-secret': 'auuid' } self.os_release.return_value = 'rocky' self.assertEqual( neutron_contexts.NovaMetadataContext()(), { 'nova_metadata_host': '10.0.0.10', 'nova_metadata_port': '8775', 'nova_metadata_protocol': 'http', 'shared_secret': 'auuid' })
def test_vendordata_queens(self, _relation_ids, _get_shared_secret, _get_local_ip, parent): _get_shared_secret.return_value = 'asecret' _get_local_ip.return_value = '127.0.0.1' _relation_ids.return_value = [] _vdata_url = 'http://example.org/vdata' _vdata_providers = 'StaticJSON,DynamicJSON' self.os_release.return_value = 'queens' parent.return_value = { 'vendor_data': True, 'vendor_data_url': _vdata_url, 'vendordata_providers': _vdata_providers, } ctxt = neutron_contexts.NovaMetadataContext()() self.assertTrue(ctxt['vendor_data']) self.assertEqual(ctxt['vendordata_providers'], _vdata_providers) self.assertEqual(ctxt['vendor_data_url'], _vdata_url)