当前 workflow_job webhook → NATS → 临时 act_runner 的实现用于快速验证 Pod/VM 生命周期。它依赖 webhook 时序,而且 queued 事件创建的 runner 不保证领取同一个 task,因此不是长期调度接口。
workflow_job
controller 直接作为 Gitea Runner 协议客户端注册并声明 self-hosted、pod、vm labels,只在 backend 有容量时通过 RunnerService 领取 task,再将已领取 task 交给一次性 Pod 或 microVM executor。
self-hosted
pod
vm
[self-hosted, pod]
[self-hosted, vm]
详细路线见 PR #6 新增的 docs/runner-protocol-roadmap.md。
docs/runner-protocol-roadmap.md
No dependencies set.
The note is not visible to the blocked user.
背景
当前
workflow_jobwebhook → NATS → 临时 act_runner 的实现用于快速验证 Pod/VM 生命周期。它依赖 webhook 时序,而且 queued 事件创建的 runner 不保证领取同一个 task,因此不是长期调度接口。目标
controller 直接作为 Gitea Runner 协议客户端注册并声明
self-hosted、pod、vmlabels,只在 backend 有容量时通过 RunnerService 领取 task,再将已领取 task 交给一次性 Pod 或 microVM executor。必须覆盖
[self-hosted, pod]、[self-hosted, vm]workflow 接口不变详细路线见 PR #6 新增的
docs/runner-protocol-roadmap.md。