diff --git a/trustgraph-cli/scripts/tg-show-flows b/trustgraph-cli/scripts/tg-show-flows index 2a090013..3313fd7d 100755 --- a/trustgraph-cli/scripts/tg-show-flows +++ b/trustgraph-cli/scripts/tg-show-flows @@ -6,82 +6,40 @@ import argparse import os import tabulate -from trustgraph.api import Api, ConfigKey +from trustgraph.api import Api import json default_url = os.getenv("TRUSTGRAPH_URL", 'http://localhost:8088/') -def get_interface(api, i): - - key = ConfigKey("interface-descriptions", i) - - value = api.config_get([key])[0].value - - return json.loads(value) - -def describe_interfaces(intdefs, flow): - - intfs = flow.get("interfaces", {}) - - lst = [] - - for k, v in intdefs.items(): - - if intdefs[k].get("visible", False): - - label = intdefs[k].get("description", k) - kind = intdefs[k].get("kind", None) - - if kind == "request-response": - req = intfs[k]["request"] - resp = intfs[k]["request"] - - lst.append(f"{k} request: {req}") - lst.append(f"{k} response: {resp}") - - if kind == "send": - q = intfs[k] - - lst.append(f"{k}: {q}") - - return "\n".join(lst) - def show_flows(url): api = Api(url) - interface_names = api.config_list("interface-descriptions") - - interface_defs = { - i: get_interface(api, i) - for i in interface_names - } - flow_ids = api.flow_list() if len(flow_ids) == 0: print("No flows.") return + print(flow_ids) + flows = [] for id in flow_ids: - flow = api.flow_get(id) - - table = [] - table.append(("id", id)) - table.append(("class", flow.get("class-name", ""))) - table.append(("desc", flow.get("description", ""))) - table.append(("queue", describe_interfaces(interface_defs, flow))) - - print(tabulate.tabulate( - table, - tablefmt="pretty", - stralign="left", + flows.append(( + id, + flow.get("description", ""), )) - print() + print(tabulate.tabulate( + flows, + tablefmt="pretty", + maxcolwidths=[None, 40], + stralign="left", + headers = ["id", "description"], + )) + def main(): parser = argparse.ArgumentParser( diff --git a/trustgraph-flow/trustgraph/config/service/flow.py b/trustgraph-flow/trustgraph/config/service/flow.py index 3933e4aa..beef679e 100644 --- a/trustgraph-flow/trustgraph/config/service/flow.py +++ b/trustgraph-flow/trustgraph/config/service/flow.py @@ -112,27 +112,9 @@ class FlowConfig: self.config["flows-active"][processor] = json.dumps(target) - def repl_interface(i): - if isinstance(i, str): - return repl_template(i) - else: - return { - k: repl_template(v) - for k, v in i.items() - } - - if "interfaces" in cls: - interfaces = { - k: repl_interface(v) - for k, v in cls["interfaces"].items() - } - else: - interfaces = {} - self.config["flows"][msg.flow_id] = json.dumps({ "description": msg.description, "class-name": msg.class_name, - "interfaces": interfaces, }) await self.config.push()