Skip to content

feat: support ulimits service key (final per-container Bucket A key); reclassify sysctls as pod-level#26

Merged
lesnik512 merged 4 commits into
mainfrom
feat/ulimits-service-key
Jul 9, 2026
Merged

feat: support ulimits service key (final per-container Bucket A key); reclassify sysctls as pod-level#26
lesnik512 merged 4 commits into
mainfrom
feat/ulimits-service-key

Conversation

@lesnik512

Copy link
Copy Markdown
Member

The final per-container Bucket A key, plus a docs-only sysctls reclassification.

  • ulimits -> --ulimit name=soft:hard (mapping form) / --ulimit name=value (scalar; podman sets soft = hard). Dedicated _ulimit_args/_add_ulimit_flags emission and a dedicated _validate_ulimits (kept out of _validate_service_forms to avoid the ruff C901 limit). A mapping value must have exactly soft and hard, each an int/string — a non-scalar soft/hard is rejected at parse time rather than mis-emitted as a garbage flag. Args are ${VAR}-interpolated.
  • sysctls reclassified out of Bucket A (no code change — it keeps raising as unsupported). Only namespaced sysctls (net.*, the IPC kernel.*/fs.mqueue.* set) are settable, and a pod owns net + ipc, so they belong on podman pod create --sysctl (pod-wide), not a per-container run. Deferred alongside dns. A guard test locks the non-support.

Design and rationale (single home): planning/changes/2026-07-09.07-ulimits-service-key.md and planning/decisions/2026-07-09-sysctls-pod-level.md. Behavior promoted into architecture/supported-subset.md; the coverage audit now marks per-container Bucket A complete.

Tests: 195 passing at 100% line coverage; just lint-ci clean.

🤖 Generated with Claude Code

@lesnik512 lesnik512 merged commit 07abb63 into main Jul 9, 2026
6 checks passed
@lesnik512 lesnik512 deleted the feat/ulimits-service-key branch July 9, 2026 15:38
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant