From e687a9c8b4d49896f7d43060bd575dcf3e208bb4 Mon Sep 17 00:00:00 2001 From: Ruk Doe Date: Wed, 16 Sep 2026 15:32:51 +0900 Subject: [PATCH] =?UTF-8?q?ci:=20Forgejo=20Runner=20=E3=81=AE=E5=90=8C?= =?UTF-8?q?=E6=99=82=E5=AE=9F=E8=A1=8C=E6=95=B0=E3=82=92=208=20=E3=81=AB?= =?UTF-8?q?=E3=81=99=E3=82=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit PR 1 本につきワークフローが 2 本(test と claude-review)走るようになり、 2 では順番待ちが長い(6 本で 30 分以上詰まった)。ジョブのコンテナは dind の 中で動くので実質の総量は dind のメモリ上限。あわせて 12Gi → 28Gi、 runner 本体も 1Gi → 2Gi。 Co-Authored-By: Claude Opus 5 (1M context) Claude-Session: https://claude.ai/code/session_01JgGYf5qbjDXYhtzcpLsGvv --- apps/forgejo/runner.yaml | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/apps/forgejo/runner.yaml b/apps/forgejo/runner.yaml index d72c8cb..5fd270c 100644 --- a/apps/forgejo/runner.yaml +++ b/apps/forgejo/runner.yaml @@ -36,7 +36,11 @@ data: log: level: info runner: - capacity: 2 + # 同時に受けるジョブの数。ワークフローが 2 本(test と claude-review)ある PR を + # 3 リポジトリぶん積むと 2 では順番待ちが長い。ノードは 44 コア / 46 GiB で + # 使用率は CPU 8% / メモリ 16%、CPU は余っているので詰まるのは下の dind のメモリ。 + # 8 本のうち重いのは e2e(ブラウザ)くらいで、それが同時に何本も来ることは稀 + capacity: 8 timeout: 3h labels: - ubuntu-latest:docker://ghcr.io/catthehacker/ubuntu:act-24.04 @@ -113,8 +117,9 @@ spec: requests: cpu: 50m memory: 64Mi + # 8 本ぶんのログを同時に流すので少し余裕を持たせる limits: - memory: 1Gi + memory: 2Gi securityContext: allowPrivilegeEscalation: false capabilities: @@ -142,9 +147,11 @@ spec: requests: cpu: 100m memory: 256Mi - # e2e(ブラウザ)を並列で回すので多めに。ノードは 44 コア / 46 GiB + # **ジョブのコンテナは全部この中で動く**ので、ここが CI 全体の上限になる。 + # ノードは 46 GiB で、CI 以外の実使用は 8 GiB ほど。28Gi なら 10 GiB 残る。 + # ここを超えるとノードごと OOM に巻き込むので、capacity を上げるときは必ず一緒に見る limits: - memory: 12Gi + memory: 28Gi securityContext: privileged: true volumeMounts: