feat: operator v0.1.16 — job stdout -> status.Message (feature B)

- FunctionJobReconciler: added KubeClient field (kubernetes.Interface)
- getJobPodOutput(): reads pod logs via typed client after job succeeds
- main.go: inject kubernetes.NewForConfigOrDie into FunctionJobReconciler
- rbac.yaml: add pods/pods/log get/list/watch permissions
- examples/simple-python/: job->function chain demo (Python)
- examples/simple-node/: job->function chain demo (Node.js)

sless_job.X.message now contains the return value of the function
This commit is contained in:
“Naeel”
2026-03-09 14:50:06 +04:00
parent 53d9fa6e74
commit 0aaeb47b3b
19 changed files with 330 additions and 4 deletions
+5 -1
View File
@@ -1,4 +1,4 @@
# Изменено: 2026-03-07
# Изменено: 2026-03-09 (добавлен доступ к pods/log для feature B)
# RBAC для sless оператора.
# ServiceAccount + ClusterRole + ClusterRoleBinding.
# ClusterRole нужен (не namespaced Role) потому что оператор создаёт
@@ -49,6 +49,10 @@ rules:
- apiGroups: [""]
resources: ["events"]
verbs: ["create", "patch"]
# Pods + logs — чтение stdout завершённых Job-подов (feature B: status.Message = return value функции)
- apiGroups: [""]
resources: ["pods", "pods/log"]
verbs: ["get", "list", "watch"]
# Lease для leader election
- apiGroups: ["coordination.k8s.io"]
resources: ["leases"]