Files
tf_provider/generated/test/analyze_deps.py
T
“Naeel” dd56bcda83 refactor: restructure project — separate tools, config, generated, provider
TOOLS/        — generators + scripts + config + ARCHITECTURE.md
  ├── yaml-generator/    (code)
  ├── resource-generator/ (code)
  ├── docs-generator/    (code)
  ├── scripts/           (← devops/*.sh)
  ├── config/            (← devops/profiles/ + devops/config/)
  │   ├── test/          profile.env, services_list.txt, operation_timeouts.json
  │   ├── prod/
  │   └── dev/
  └── ARCHITECTURE.md    (← devops/ARCHITECTURE.md)

generated/    — pipeline output only (gitignored)
  ├── test/resources_yaml/, go/, docs/, provider_build/
  ├── prod/
  └── dev/

provider/     — code only, no generated files
  resources_yaml/        — DELETED (generated)
  internal/resources_gen/ — DELETED (generated)

devops/       — removed (replaced by TOOLS/scripts + TOOLS/config + generated/)

Generators now fail if NUBES_*_DIR not set (no defaults to provider/).
Provider requires pipeline to populate resources_gen/ before build.
2026-07-06 09:06:09 +04:00

39 lines
1.4 KiB
Python

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)