feat: add BarePodManager implementing SandboxProvider#86
Conversation
Extract pod-spec construction logic into a reusable PodSpecBuilder struct that produces corev1.PodSpec. Handles LLM env vars, credential mounts, skills OCI volumes, MCP server config, required secrets, probes, and security context. Shared foundation for both SandboxClaim and bare pod sandbox modes. Ref: OLS-3242
Add SetStep method so providers receive resolved step config (Agent, LLMProvider, Tools) before each Claim call. SandboxManager gets a no-op implementation. Test fakes updated to match. Ref: OLS-3243 Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>
BarePodManager creates/waits/deletes bare Pods using PodSpecBuilder. Claim creates a Pod in the operator namespace with proposal/step labels. WaitReady polls pod conditions until Ready=True and returns the pod IP. Release deletes the pod (idempotent via NotFound). Ref: OLS-3243 Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>
|
Warning Review limit reached
More reviews will be available in 59 minutes and 32 seconds. Learn how PR review limits work. Your organization has run out of usage credits. Purchase more in the billing tab. ⌛ How to resolve this issue?After more reviews become available, a review can be triggered using the We recommend that you space out your commits to avoid hitting the rate limit. 🚦 How do rate limits work?CodeRabbit enforces hourly rate limits for each developer per organization. Our paid plans include higher PR review limits than trial, open-source, and free plans. In all cases, reviews become available again over time. During sustained high-volume PR review activity, CodeRabbit may temporarily slow when the next review becomes available. Please see our Fair Usage Limits Policy for further information. ℹ️ Review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Enterprise Run ID: 📒 Files selected for processing (6)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|
[APPROVALNOTIFIER] This PR is NOT APPROVED This pull-request has been approved by: The full list of commands accepted by this bot can be found here. DetailsNeeds approval from an approver in each of these files:Approvers can indicate their approval by writing |
|
@thoraxe: The following test failed, say
Full PR test history. Your PR dashboard. DetailsInstructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. I understand the commands that are listed here. |
Summary
SetStep()toSandboxProviderinterface so providers receive resolved step config before eachClaimcallBarePodManager— creates/waits/deletes bare Pods usingPodSpecBuilderls-{step}-{proposalName}truncation conventionJira: OLS-3243
Stacked PR: 2 of 5 — merge after #85
Depends on: #85
Test plan
🤖 Generated with Claude Code