Open
Conversation
fab3638 to
16cedc3
Compare
Add an optional "pods" key to the kube endpoint run-file config that allows grouping multiple client/server engines into a single pod as separate containers. Each pod group can have a user-defined name or an auto-generated one. Engines not listed in any pod group automatically get their own solo pod, preserving backward compatibility. Key changes: - Add "pods" schema to kube.json with name, engines (role + ids) - Normalize and validate pod groups in normalize_endpoint_settings() - Validate pod-level setting consistency (cpu-partitioning, nodeSelector, hostNetwork, runtimeClassName, annotations, securityContext.pod) across engines sharing a pod - Refactor create_pod_crd() to accept a list of engines and build one container per engine with per-engine settings - Refactor create_cs_pods() to iterate pod groups instead of individual engines - Update verify_pods_running() to handle multi-engine pod details - Add engine-to-pod aliases so downstream lookups by engine name (tool deployment, services, log collection) continue to work - Add deduplication in engine_init() and kube_cleanup() to avoid processing aliased pod entries multiple times Co-Authored-By: Claude Opus 4.6 (1M context) <[email protected]>
Fix two bugs in get_k8s_config() node discovery: 1. OCP label mapping was inverted — nodes with the "worker" label were added to the masters list and vice versa. 2. Nodes matching multiple label conditions (e.g., both "node-role.kubernetes.io/master" and "node-role.kubernetes.io/control-plane") were appended to the same list multiple times. Switch from lists with append() to sets with add(), then convert to sorted lists at the end. Co-Authored-By: Claude Opus 4.6 (1M context) <[email protected]>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
podskey in the kube endpoint run-file config. Engines not listed in any pod group automatically get their own solo pod, preserving full backward compatibility.Test plan
podskey) to confirm backward compatibilitypodsconfig to group engines into shared podscpu-partitioningin same pod group)🤖 Generated with Claude Code