perf(ci): parallelize compile+test, bump runner concurrency to 10
- compile-services now depends on check (not test), running in parallel with test stage — saves ~10 min from critical path - Runner concurrent bumped 4→10 so all 9 Kaniko builds run simultaneously - Runner default resources lowered (500m/1Gi) for lightweight Kaniko jobs; Rust compile/test/training override via KUBERNETES_*_REQUEST CI vars Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -272,7 +272,9 @@ test:
|
||||
compile-services:
|
||||
extends: .rust-base
|
||||
stage: compile
|
||||
needs: [test]
|
||||
needs:
|
||||
- job: check
|
||||
optional: true # skipped in dev-release mode
|
||||
rules:
|
||||
- if: $CI_COMMIT_BRANCH == "main" && $CI_PIPELINE_SOURCE == "push"
|
||||
changes:
|
||||
|
||||
@@ -32,11 +32,12 @@ runners:
|
||||
node_selector_overwrite_allowed = ".*"
|
||||
# L40S scale-to-zero needs ~3-5 min to provision; default 180s times out
|
||||
poll_timeout = 600
|
||||
# Resource limits for build pods (L40S node: ~24 vCPU, ~96GB)
|
||||
cpu_request = "6000m"
|
||||
cpu_limit = "20000m"
|
||||
memory_request = "24Gi"
|
||||
memory_limit = "80Gi"
|
||||
# Default resource limits — low for Kaniko/lightweight jobs
|
||||
# Rust compile/test/training jobs override via KUBERNETES_*_REQUEST CI vars
|
||||
cpu_request = "500m"
|
||||
cpu_limit = "4000m"
|
||||
memory_request = "1Gi"
|
||||
memory_limit = "8Gi"
|
||||
helper_cpu_request = "100m"
|
||||
helper_cpu_limit = "500m"
|
||||
helper_memory_request = "128Mi"
|
||||
@@ -68,8 +69,8 @@ runners:
|
||||
# Runner tags for job matching
|
||||
tags: "kapsule,rust,docker,gpu"
|
||||
|
||||
# Concurrency
|
||||
concurrent: 4
|
||||
# Concurrency — 10 allows all 9 Kaniko builds + test to run in parallel
|
||||
concurrent: 10
|
||||
|
||||
# RBAC for runner to spawn pods
|
||||
rbac:
|
||||
|
||||
Reference in New Issue
Block a user