from tests_lib.cmd import exec_cmd2 from tests_lib.settings import NKFS_CLIENT, NKFS_CTL, init_logging import tempfile import os import inspect import hashlib import random import shutil import logging from multiprocessing import Process import tests_lib.settings init_logging() log = logging.getLogger('main') currentdir = os.path.dirname(os.path.abspath(inspect.getfile(inspect.currentframe()))) CURR_DIR = os.path.abspath(currentdir) class NkfsClient: def __init__(self, ip, port): self.ip = ip self.port = port def ctl_cmd(self, cmd): return NKFS_CTL + " " + cmd def add_dev(self, dev, fmt = False): task = self.ctl_cmd("dev_add") + " -d " + dev if fmt: task+= " -f" exec_cmd2(task, throw = True, elog = log) def rem_dev(self, dev): exec_cmd2(self.ctl_cmd("dev_rem") + " -d " + dev, throw = True, elog = log)
from nkfs_client import NkfsClient import tempfile import os import inspect import hashlib import random import shutil import uuid import logging from multiprocessing import Process currentdir = os.path.dirname(os.path.abspath(inspect.getfile(inspect.currentframe()))) CURR_DIR = os.path.abspath(currentdir) settings.init_logging() log = logging.getLogger('main') class NkfsTest: def __init__(self, env): self.env = env self.passed = False self.uid = str(uuid.uuid4()) def prepare(self): pass def cleanup(self): pass def get_client(self): return self.env.get_client() def test(self): pass
if __name__=="__main__": i = 0 ips = [] for arg in sys.argv: if i > 0: ips.append(sys.argv[i]) i+= 1 if len(ips) == 0: raise Exception("No ips specified") rootdir = os.path.abspath('amzn_tests') exec_cmd2('rm -rf ' + rootdir, throw = True) exec_cmd2('mkdir ' + rootdir, throw = True) settings.init_logging(log_dir = rootdir, log_name = 'test.log') log = logging.getLogger('main') log.info('starting') nodes = [] for ip in ips: n = AmznNode(log, ip, AmznNodeKeyPath().get(), rootdir) nodes.append(n) try: multi_process([n.prepare_nkfs for n in nodes]) multi_process([n.start_nkfs for n in nodes]) nodes_connect(nodes) log.info('will sleep 20 secs to simulate run') time.sleep(20) #catch hbt multi_process([n.query_nkfs for n in nodes]) finally:
if __name__ == "__main__": i = 0 ips = [] for arg in sys.argv: if i > 0: ips.append(sys.argv[i]) i += 1 if len(ips) == 0: raise Exception("No ips specified") rootdir = os.path.abspath('amzn_tests') exec_cmd2('rm -rf ' + rootdir, throw=True) exec_cmd2('mkdir ' + rootdir, throw=True) settings.init_logging(log_dir=rootdir, log_name='test.log') log = logging.getLogger('main') log.info('starting') nodes = [] for ip in ips: n = AmznNode(log, ip, AmznNodeKeyPath().get(), rootdir) nodes.append(n) try: multi_process([n.prepare_nkfs for n in nodes]) multi_process([n.start_nkfs for n in nodes]) nodes_connect(nodes) log.info('will sleep 20 secs to simulate run') time.sleep(20) #catch hbt multi_process([n.query_nkfs for n in nodes]) finally: