dcm log
Add dcm log filter recaftor
This commit is contained in:
81
bin/dcm
81
bin/dcm
@@ -1,17 +1,5 @@
|
|||||||
#!/usr/bin/env python3
|
#!/usr/bin/env python3
|
||||||
|
|
||||||
"""
|
|
||||||
pulsar
|
|
||||||
# wait-for-pulsar <check-delay> <max-duration>
|
|
||||||
pulsar-create-namespace
|
|
||||||
# wait-for-pulsar-create-namespace - wanted return code 0
|
|
||||||
postgres redis jaeger router
|
|
||||||
# wait-for-postgres
|
|
||||||
|
|
||||||
# jeste poresit fazovani
|
|
||||||
metadata-api-new aqe afm-exec-api result-cache scan-model sql-executor swagger-ui
|
|
||||||
"""
|
|
||||||
|
|
||||||
import subprocess
|
import subprocess
|
||||||
import yaml
|
import yaml
|
||||||
import pprint
|
import pprint
|
||||||
@@ -39,6 +27,24 @@ def load_dc_file(dc_file):
|
|||||||
return dc
|
return dc
|
||||||
|
|
||||||
|
|
||||||
|
def dc_cmd(args):
|
||||||
|
# split join
|
||||||
|
args = " ".join(args)
|
||||||
|
return " ".join([DOCKER_COMPOSE, DC_FILES_ARGS, args])
|
||||||
|
|
||||||
|
|
||||||
|
def dc_run(args):
|
||||||
|
cmd = dc_cmd(args)
|
||||||
|
print(cmd)
|
||||||
|
returned_value = subprocess.call(cmd, shell=True)
|
||||||
|
exit(returned_value)
|
||||||
|
|
||||||
|
|
||||||
|
def dc_log(args):
|
||||||
|
args = ["logs"] + args + [r"| sed -r 's/^[^|]+\| //g'"]
|
||||||
|
dc_run(args)
|
||||||
|
|
||||||
|
|
||||||
def dc_services(dc_file):
|
def dc_services(dc_file):
|
||||||
dc = load_dc_file(dc_file)
|
dc = load_dc_file(dc_file)
|
||||||
return [service for service in dc["services"].keys()]
|
return [service for service in dc["services"].keys()]
|
||||||
@@ -50,6 +56,10 @@ def dump_services(files):
|
|||||||
print(service)
|
print(service)
|
||||||
|
|
||||||
|
|
||||||
|
def service_dependencies(service, dc_files):
|
||||||
|
pass
|
||||||
|
|
||||||
|
|
||||||
def dump_files(files):
|
def dump_files(files):
|
||||||
for file in files:
|
for file in files:
|
||||||
print(file)
|
print(file)
|
||||||
@@ -72,6 +82,17 @@ def wait_for(check, delay, duration):
|
|||||||
sleep(delay)
|
sleep(delay)
|
||||||
|
|
||||||
|
|
||||||
|
def up_and_wait(service, check, delay, duration):
|
||||||
|
pass
|
||||||
|
|
||||||
|
|
||||||
|
def start_tiger():
|
||||||
|
up_and_wait("pulsar", check_pulsar, 5, 60)
|
||||||
|
up(["redis", "jaeger", "router"])
|
||||||
|
up_and_wait("postgres", check_postgres, 5, 60)
|
||||||
|
up(["aqe", "afm-exec-api", "result-cache", "scan-model", "sql-executor", "metadata-api-new"])
|
||||||
|
|
||||||
|
|
||||||
def try_load_list(name, default):
|
def try_load_list(name, default):
|
||||||
if name in os.environ:
|
if name in os.environ:
|
||||||
return split(os.environ[name])
|
return split(os.environ[name])
|
||||||
@@ -79,10 +100,13 @@ def try_load_list(name, default):
|
|||||||
return default
|
return default
|
||||||
|
|
||||||
|
|
||||||
DCF = ["docker-compose.yaml", "docker-compose-monitoring.yaml"]
|
DOCKER_COMPOSE = "docker-compose"
|
||||||
DCF = try_load_list("DCF", DCF)
|
|
||||||
|
|
||||||
TIGER_SERVICES = [
|
DEFAULT_DCF = ["docker-compose.yaml"]
|
||||||
|
DC_FILES = try_load_list("DCF", DEFAULT_DCF)
|
||||||
|
DC_FILES_ARGS = dc_files(DC_FILES)
|
||||||
|
|
||||||
|
DEFAULT_TIGER_SERVICES = [
|
||||||
"afm-exec-api",
|
"afm-exec-api",
|
||||||
"metadata-api-new",
|
"metadata-api-new",
|
||||||
"aqe",
|
"aqe",
|
||||||
@@ -90,27 +114,24 @@ TIGER_SERVICES = [
|
|||||||
"scan-model",
|
"scan-model",
|
||||||
"sql-executor"
|
"sql-executor"
|
||||||
]
|
]
|
||||||
TIGER_SERVICES = try_load_list("SERVICES", TIGER_SERVICES)
|
TIGER_SERVICES = try_load_list("SERVICES", DEFAULT_TIGER_SERVICES)
|
||||||
|
|
||||||
COMMANDS = {
|
COMMANDS = {
|
||||||
"files": lambda: dump_files(DCF),
|
"files": lambda args: dump_files(DC_FILES),
|
||||||
"services": lambda: dump_services(DCF)
|
"services": lambda args: dump_services(DC_FILES),
|
||||||
# deps - vypis zavyslosti
|
"log": dc_log
|
||||||
# logs - aby se nemuselo zadavat tolik argumentu
|
# "dep":
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
def main():
|
def main():
|
||||||
args = " ".join(argv[1:])
|
args = argv[1:]
|
||||||
cmd = " ".join(["docker-compose", dc_files(DCF), args])
|
action = args[0] if args else None
|
||||||
print(cmd)
|
if action in COMMANDS:
|
||||||
returned_value = subprocess.call(cmd, shell=True)
|
COMMANDS[action](args[1:])
|
||||||
exit(returned_value)
|
else:
|
||||||
|
dc_run(args)
|
||||||
|
|
||||||
|
|
||||||
if __name__ == '__main__':
|
if __name__ == '__main__':
|
||||||
action = argv[1] if len(argv) > 1 else None
|
main()
|
||||||
if action in COMMANDS:
|
|
||||||
COMMANDS[action]()
|
|
||||||
else:
|
|
||||||
main()
|
|
||||||
|
|||||||
Reference in New Issue
Block a user