def load(self): super(HttpService, self).load() network.check_metadata_ip_route(CONF.metadata_base_url) try: self._get_meta_data() return True except Exception: LOG.debug('Metadata not found at URL \'%s\'' % CONF.metadata_base_url) return False
def load(self): super(HttpService, self).load() if CONF.add_metadata_private_ip_route: network.check_metadata_ip_route(CONF.metadata_base_url) try: self._get_meta_data() return True except Exception: LOG.debug("Metadata not found at URL '%s'" % CONF.metadata_base_url) return False
def load(self): super(HttpService, self).load() if CONF.add_metadata_private_ip_route: network.check_metadata_ip_route(CONF.metadata_base_url) try: self._get_meta_data() return True except Exception: LOG.debug('Metadata not found at URL \'%s\'' % CONF.metadata_base_url) return False
def load(self): super(EC2Service, self).load() network.check_metadata_ip_route(CONF.ec2_metadata_base_url) try: self.get_host_name() return True except Exception, ex: LOG.exception(ex) LOG.debug('Metadata not found at URL \'%s\'' % CONF.ec2_metadata_base_url) return False
def load(self): super(EC2Service, self).load() if CONF.ec2.add_metadata_private_ip_route: network.check_metadata_ip_route(CONF.ec2.metadata_base_url) try: self.get_host_name() return True except Exception as ex: LOG.exception(ex) LOG.debug('Metadata not found at URL \'%s\'' % CONF.ec2.metadata_base_url) return False
def load(self): super(OracleCloudService, self).load() if CONF.oraclecloud.add_metadata_private_ip_route: network.check_metadata_ip_route(CONF.oraclecloud.metadata_base_url) try: self.get_instance_id() return True except Exception as ex: LOG.exception(ex) LOG.debug('Metadata not found at URL \'%s\'' % CONF.oraclecloud.metadata_base_url) return False
def _test_check_metadata_ip_route(self, mock_urlparse, mock_get_os_utils, side_effect): mock_utils = mock.MagicMock() mock_split = mock.MagicMock() mock_get_os_utils.return_value = mock_utils mock_utils.check_os_version.return_value = True mock_urlparse().netloc.split.return_value = mock_split mock_split[0].startswith.return_value = True mock_utils.check_static_route_exists.return_value = False mock_utils.get_default_gateway.return_value = (1, '0.0.0.0') mock_utils.add_static_route.side_effect = [side_effect] network.check_metadata_ip_route('196.254.196.254') mock_utils.check_os_version.assert_called_once_with(6, 0) mock_urlparse.assert_called_with('196.254.196.254') mock_split[0].startswith.assert_called_once_with("169.254.") mock_utils.check_static_route_exists.assert_called_once_with( mock_split[0]) mock_utils.get_default_gateway.assert_called_once_with() mock_utils.add_static_route.assert_called_once_with( mock_split[0], "255.255.255.255", '0.0.0.0', 1, 10)
def load(self): """Obtain all the required information.""" super(CloudStack, self).load() if CONF.cloudstack.add_metadata_private_ip_route: network.check_metadata_ip_route(CONF.cloudstack.metadata_base_url) if self._test_api(CONF.cloudstack.metadata_base_url): return True dhcp_servers = self._osutils.get_dhcp_hosts_in_use() if not dhcp_servers: LOG.debug('No DHCP server was found.') return False for _, _, ip_address in dhcp_servers: LOG.debug('Testing: %s', ip_address) if self._test_api('http://%s/' % ip_address): return True return False
def load(self): super(HttpService, self).load() if CONF.openstack.add_metadata_private_ip_route: network.check_metadata_ip_route(CONF.openstack.metadata_base_url) for i in range(0, self._MAX_META_DATA_GET_RETRIES): try: self._get_meta_data() LOG.debug('Metadata found at URL \'%s\'' % CONF.openstack.metadata_base_url) return True except Exception: LOG.debug( 'Metadata not found at URL \'%s\'. ' 'Retrying in %s seconds' % CONF.openstack.metadata_base_url, self._RETRY_DELAY_SEC) wait_until = time.clock() + self._RETRY_DELAY_SEC while time.clock() < wait_until: pass return False
import requests import sys from cloudbaseinit.utils import network metadata_url = "http://169.254.169.254" password_metadata_url = metadata_url + "/openstack/latest/password" network.check_metadata_ip_route(metadata_url) existent_message = requests.get(password_metadata_url).content print(existent_message) data = "NIC_ADD" try: data = sys.argv[1] or "NIC_ADD" except Exception: pass requests.request(method="POST", url=password_metadata_url, data=data) # TO DO # Recache the existent_message