def test_delete_dns_info(self): expected = """# Generated by Wader nameserver 10.0.0.1 nameserver 10.0.0.2 """ self.named_manager.add_dns_info(["10.0.0.1", "10.0.0.2"]) self.assertEqual(expected, get_file_data(self.path)) self.named_manager.delete_dns_info(["10.0.0.1", "10.0.0.2"]) self.assertEqual("", get_file_data(self.path))
def get_iface_stats(self, iface): """See :meth:`wader.common.interfaces.IOSPlugin.get_iface_stats`""" stats_path = "/sys/class/net/%s/statistics" % iface rx_b = join(stats_path, 'rx_bytes') tx_b = join(stats_path, 'tx_bytes') try: return map(int, [get_file_data(rx_b), get_file_data(tx_b)]) except (IOError, OSError): return 0, 0
def test_get_file_data(self): """ Test reading a random file with ``get_file_data`` """ text = os.urandom(2000) path = '/tmp/file.foo' fobj = open(path, 'w') fobj.write(text) fobj.close() self.assertEqual(text, get_file_data(path)) os.unlink(path)
def is_valid(self): if not exists('/etc/lsb-release'): return False lsb = get_file_data('/etc/lsb-release') if 'Ubuntu' in lsb: match = re.search(VERS_REGEX, lsb, re.MULTILINE) if match: vers = match.group('version').replace('.','') try: self.version = int(vers) except ValueError: pass return True return False
def _get_hso_ports(self, ports): dport = cport = None for port in ports: name = port.split('/')[-1] path = join('/sys/class/tty', name, 'hsotype') if exists(path): what = get_file_data(path).strip().lower() if what == 'modem': dport = port elif what == 'application': cport = port if dport and cport: break return dport, cport
def is_valid(self): if not exists("/etc/lsb-release"): return False lsb = get_file_data("/etc/lsb-release") if "LinuxMint" in lsb: match = re.search(VERS_REGEX, lsb, re.MULTILINE) if match: vers = match.group("version") try: self.version = int(vers) except ValueError: pass return True return False
def add_dns_info(self, dns): if self.old_contents is not None: # just log it, don't fail msg = "NamedManager old_contents not empty: %s" log.err(msg % self.old_contents) return # backup old data real_path = os.path.realpath(self.resolvconf_path) self.old_contents = get_file_data(real_path) # set new DNS data to_write = [] if dns: to_write.append("# Generated by Wader") for d in dns: to_write.append("nameserver %s" % d) to_write.append('') save_file(real_path, '\n'.join(to_write))
def get_timezone(self): timezone_re = re.compile('ZONE="(?P<tzname>[\w/]+)"') sysconf_clock_file = get_file_data('/etc/sysconfig/clock') search_dict = timezone_re.search(sysconf_clock_file).groupdict() return search_dict['tzname']
def get_timezone(self): return get_file_data('/etc/timezone').replace('\n', '')