Compare commits
6 Commits
nilmrun-1.
...
nilmrun-1.
Author | SHA1 | Date | |
---|---|---|---|
38c3e67cf9 | |||
7f05a0fb62 | |||
81c2ad07d4 | |||
3588e843ac | |||
9309fd9b57 | |||
21bd1bd050 |
@@ -13,9 +13,8 @@ def main():
|
|||||||
def_url = os.environ.get("NILMRUN_URL", "http://localhost/nilmrun/")
|
def_url = os.environ.get("NILMRUN_URL", "http://localhost/nilmrun/")
|
||||||
parser = argparse.ArgumentParser(
|
parser = argparse.ArgumentParser(
|
||||||
description = 'Kill/remove a process from the NilmRun server',
|
description = 'Kill/remove a process from the NilmRun server',
|
||||||
formatter_class = argparse.ArgumentDefaultsHelpFormatter)
|
formatter_class = argparse.ArgumentDefaultsHelpFormatter,
|
||||||
parser.add_argument("-V", "--version", action="version",
|
version = nilmrun.__version__)
|
||||||
version = nilmrun.__version__)
|
|
||||||
group = parser.add_argument_group("Standard options")
|
group = parser.add_argument_group("Standard options")
|
||||||
group.add_argument('-u', '--url',
|
group.add_argument('-u', '--url',
|
||||||
help = 'NilmRun server URL', default = def_url)
|
help = 'NilmRun server URL', default = def_url)
|
||||||
|
@@ -10,10 +10,8 @@ def main():
|
|||||||
|
|
||||||
parser = argparse.ArgumentParser(
|
parser = argparse.ArgumentParser(
|
||||||
description = 'Run the NilmRun server',
|
description = 'Run the NilmRun server',
|
||||||
formatter_class = argparse.ArgumentDefaultsHelpFormatter)
|
formatter_class = argparse.ArgumentDefaultsHelpFormatter,
|
||||||
|
version = nilmrun.__version__)
|
||||||
parser.add_argument("-V", "--version", action="version",
|
|
||||||
version = nilmrun.__version__)
|
|
||||||
|
|
||||||
group = parser.add_argument_group("Standard options")
|
group = parser.add_argument_group("Standard options")
|
||||||
group.add_argument('-a', '--address',
|
group.add_argument('-a', '--address',
|
||||||
|
@@ -13,9 +13,8 @@ def main():
|
|||||||
def_url = os.environ.get("NILMRUN_URL", "http://localhost/nilmrun/")
|
def_url = os.environ.get("NILMRUN_URL", "http://localhost/nilmrun/")
|
||||||
parser = argparse.ArgumentParser(
|
parser = argparse.ArgumentParser(
|
||||||
description = 'List NilmRun processes',
|
description = 'List NilmRun processes',
|
||||||
formatter_class = argparse.ArgumentDefaultsHelpFormatter)
|
formatter_class = argparse.ArgumentDefaultsHelpFormatter,
|
||||||
parser.add_argument("-V", "--version", action="version",
|
version = nilmrun.__version__)
|
||||||
version = nilmrun.__version__)
|
|
||||||
group = parser.add_argument_group("Standard options")
|
group = parser.add_argument_group("Standard options")
|
||||||
group.add_argument('-u', '--url',
|
group.add_argument('-u', '--url',
|
||||||
help = 'NilmRun server URL', default = def_url)
|
help = 'NilmRun server URL', default = def_url)
|
||||||
@@ -40,13 +39,14 @@ def main():
|
|||||||
round(info['system']['mem_used'] * 100.0
|
round(info['system']['mem_used'] * 100.0
|
||||||
/ info['system']['mem_total']))
|
/ info['system']['mem_total']))
|
||||||
|
|
||||||
|
# Print process detail for each managed process
|
||||||
|
fmt = "%-36s %-6s %-15s %-4s %-3s %-5s\n"
|
||||||
|
printf(fmt, "PID", "STATE", "SINCE", "PROC", "CPU", "LOG")
|
||||||
|
|
||||||
if len(info['pids']) == 0:
|
if len(info['pids']) == 0:
|
||||||
printf("No running processes\n")
|
printf("No running processes\n")
|
||||||
raise SystemExit(0)
|
raise SystemExit(0)
|
||||||
|
|
||||||
# Print process detail for each managed process
|
|
||||||
fmt = "%-36s %-6s %-15s %-4s %-3s %-5s\n"
|
|
||||||
printf(fmt, "PID", "STATE", "SINCE", "PROC", "CPU", "LOG")
|
|
||||||
for pid in sorted(info['pids'].keys()):
|
for pid in sorted(info['pids'].keys()):
|
||||||
pidinfo = client.get("process/status", { "pid": pid })
|
pidinfo = client.get("process/status", { "pid": pid })
|
||||||
if pidinfo['alive']:
|
if pidinfo['alive']:
|
||||||
|
@@ -14,9 +14,8 @@ def main():
|
|||||||
def_url = os.environ.get("NILMRUN_URL", "http://localhost/nilmrun/")
|
def_url = os.environ.get("NILMRUN_URL", "http://localhost/nilmrun/")
|
||||||
parser = argparse.ArgumentParser(
|
parser = argparse.ArgumentParser(
|
||||||
description = 'Run a command on the NilmRun server',
|
description = 'Run a command on the NilmRun server',
|
||||||
formatter_class = argparse.ArgumentDefaultsHelpFormatter)
|
formatter_class = argparse.ArgumentDefaultsHelpFormatter,
|
||||||
parser.add_argument("-V", "--version", action="version",
|
version = nilmrun.__version__)
|
||||||
version = nilmrun.__version__)
|
|
||||||
group = parser.add_argument_group("Standard options")
|
group = parser.add_argument_group("Standard options")
|
||||||
group.add_argument('-u', '--url',
|
group.add_argument('-u', '--url',
|
||||||
help = 'NilmRun server URL', default = def_url)
|
help = 'NilmRun server URL', default = def_url)
|
||||||
|
@@ -352,8 +352,10 @@ class TestClient(object):
|
|||||||
# start some processes
|
# start some processes
|
||||||
a = client.post("run/command", { "argv": ["sleep","60"] } )
|
a = client.post("run/command", { "argv": ["sleep","60"] } )
|
||||||
b = client.post("run/command", { "argv": ["sh","-c","sleep 2;true"] } )
|
b = client.post("run/command", { "argv": ["sh","-c","sleep 2;true"] } )
|
||||||
c = client.post("run/command", { "argv": ["sh","-c","burnP5;true"] } )
|
c = client.post("run/command", { "argv": [
|
||||||
d = client.post("run/command", { "argv": ["burnP5" ] } )
|
"sh","-c","dd if=/dev/zero of=/dev/null;true"] } )
|
||||||
|
d = client.post("run/command", { "argv": [
|
||||||
|
"dd", "if=/dev/zero", "of=/dev/null" ] } )
|
||||||
|
|
||||||
info = client.get("process/info")
|
info = client.get("process/info")
|
||||||
eq_(info["pids"][a]["procs"], 1)
|
eq_(info["pids"][a]["procs"], 1)
|
||||||
@@ -365,9 +367,13 @@ class TestClient(object):
|
|||||||
lt_(20, info["pids"][c]["cpu_percent"])
|
lt_(20, info["pids"][c]["cpu_percent"])
|
||||||
lt_(80, info["system"]["cpu_percent"])
|
lt_(80, info["system"]["cpu_percent"])
|
||||||
|
|
||||||
time.sleep(2)
|
for x in range(10):
|
||||||
info = client.get("process/info")
|
time.sleep(1)
|
||||||
eq_(info["pids"][b]["procs"], 0)
|
info = client.get("process/info")
|
||||||
|
if info["pids"][b]["procs"] != 2:
|
||||||
|
break
|
||||||
|
else:
|
||||||
|
raise Exception("process B didn't die: " + str(info["pids"][b]))
|
||||||
|
|
||||||
# kill all processes
|
# kill all processes
|
||||||
for pid in client.get("process/list"):
|
for pid in client.get("process/list"):
|
||||||
@@ -377,7 +383,8 @@ class TestClient(object):
|
|||||||
client = HTTPClient(baseurl = testurl, post_json = True)
|
client = HTTPClient(baseurl = testurl, post_json = True)
|
||||||
eq_(client.get("process/list"), [])
|
eq_(client.get("process/list"), [])
|
||||||
def verify(cmd, result):
|
def verify(cmd, result):
|
||||||
pid = client.post("run/command", { "argv": [ "sh", "-c", cmd ] })
|
pid = client.post("run/command", { "argv": [
|
||||||
|
"/bin/bash", "-c", cmd ] })
|
||||||
eq_(client.get("process/list"), [pid])
|
eq_(client.get("process/list"), [pid])
|
||||||
status = self.wait_end(client, pid)
|
status = self.wait_end(client, pid)
|
||||||
eq_(result, status["log"])
|
eq_(result, status["log"])
|
||||||
|
Reference in New Issue
Block a user