import glob, yaml, json yaml_dir = "/home/naeel/terra/terraform/devops/profiles/test/generated/resources_yaml" missing_ids = {100,110,113,114,115,116,117,119,120,149,1,20,23,27,29,2,32,50,81,82,88,89,91,92,96,97,98,99} results = [] for f in sorted(glob.glob(yaml_dir + "/*.yaml")): data = yaml.safe_load(open(f)) sid = data.get("service_id") if sid not in missing_ids: continue name = data.get("name","") disp = data.get("service_display_name","") ops = data.get("operations", []) ref_params = [] req_params = [] for op in ops: if op.get("kind") == "instance" and op.get("action") == "create": for p in op.get("params", []): code = p.get("code","") req = p.get("required", False) ref_svc = p.get("ref_service_id","") if ref_svc: ref_params.append(code + "(svc=" + str(ref_svc) + ")") elif req: req_params.append(code) results.append({ "serviceId": sid, "name": name, "display": disp, "deps": ref_params, "required_params": req_params, }) for r in results: dep_str = str(r["deps"]) if r["deps"] else "none" req_str = str(r["required_params"]) if r["required_params"] else "[]" print("[" + str(r["serviceId"]).rjust(3) + "] " + r["name"].ljust(25) + " deps=" + dep_str + " required=" + req_str)