diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index ee6372c57..dc10ea662 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -5,7 +5,7 @@ # Note: .gitlab-ci.yml itself is NOT in changes: filters — CI-only edits skip build # # Node pool routing: Runner default nodeSelector pool=ci-compile. -# Override via KUBERNETES_NODE_SELECTOR_pool: +# Override via KUBERNETES_NODE_SELECTOR_pool: "pool=" (k=v format required) # Pools: ci-compile (L4 GPU), ci-training (L40S GPU), services (DEV1-M), gitlab (GP1-XS) # Ensure pipeline is always created — individual job rules handle filtering. @@ -462,8 +462,8 @@ build-training: variables: KUBERNETES_RUNTIME_CLASS_NAME: nvidia # Route to L40S pool (48GB VRAM for large supervised models) - # Label: pool=ci-training (simple label, overrides runner default pool=ci-compile) - KUBERNETES_NODE_SELECTOR_pool: ci-training + # Overrides runner default pool=ci-compile + KUBERNETES_NODE_SELECTOR_pool: "pool=ci-training" # Supervised is GPU-bound — minimal CPU. Low request allows 3-4 concurrent jobs. KUBERNETES_CPU_REQUEST: "1000m" KUBERNETES_CPU_LIMIT: "2000m" @@ -1252,8 +1252,8 @@ deploy: - kapsule variables: # Deploy only needs kubectl — route to services pool, not GPU nodes - # Label: pool=services (overrides runner default pool=ci-compile) - KUBERNETES_NODE_SELECTOR_pool: services + # Overrides runner default pool=ci-compile + KUBERNETES_NODE_SELECTOR_pool: "pool=services" KUBERNETES_CPU_REQUEST: "200m" KUBERNETES_CPU_LIMIT: "500m" KUBERNETES_MEMORY_REQUEST: "256Mi"