feat: add configmaps, exec action, and reorder phases

Co-authored-by: aider (openrouter/thinkingmachines/inkling-small:free) <aider@aider.chat>
This commit is contained in:
Jiří Stachandaider committed 2026-10-09 17:22:27 +02:00
1 parent cdd3e3818c
commit 508cdff893
4 files changed
+67 -11

No files matched your search

+19 -2
View File
@@ -69,9 +69,17 @@ def get_pvcs(namespace: str = "default", context: str = None):
)
return {"raw": result.stdout, "namespace": namespace, "context": context}
@app.get("/configmaps")
def get_configmaps(namespace: str = "default", context: str = None):
result = run_kubectl(
["get", "configmaps", "-n", namespace, "-o", "json"],
context=context
)
return {"raw": result.stdout, "namespace": namespace, "context": context}
@app.get("/describe")
def describe(resource: str, name: str, namespace: str = "default", context: str = None):
allowed = {"pod", "node", "pvc", "service", "deployment"}
allowed = {"pod", "node", "pvc", "service", "deployment", "configmap"}
if resource not in allowed:
return {"error": "Invalid resource type"}
result = run_kubectl(
@@ -82,7 +90,7 @@ def describe(resource: str, name: str, namespace: str = "default", context: str
@app.post("/delete")
def delete(resource: str, name: str, namespace: str = "default", context: str = None):
allowed = {"pod", "node", "pvc", "service", "deployment"}
allowed = {"pod", "node", "pvc", "service", "deployment", "configmap"}
if resource not in allowed:
return {"error": "Invalid resource type"}
result = run_kubectl(
@@ -98,3 +106,12 @@ def logs(pod: str, namespace: str = "default", context: str = None, tail: int =
context=context
)
return {"output": result.stdout, "stderr": result.stderr, "returncode": result.returncode}
@app.get("/exec")
def exec_pod(pod: str, namespace: str = "default", context: str = None, container: str = None, command: str = "ls"):
cmd = ["exec", pod, "-n", namespace]
if container:
cmd += ["-c", container]
cmd += ["--", "sh", "-c", command]
result = run_kubectl(cmd, context=context)
return {"output": result.stdout, "stderr": result.stderr, "returncode": result.returncode}