Uh oh!
There was an error while loading. Please reload this page.
Add V2 physical container volumes - #243
Draft
David Negstad (danegsta) wants to merge 3 commits into
Draft
Conversation
David Negstad (danegsta)
marked this pull request as draft
August 18, 2026 23:51
David Negstad (danegsta)force-pushed
the
danegsta-v2-physical-container-volume
branch
from
August 19, 2026 00:15
7e6e26e to
0a1e3edCompareDavid Negstad (danegsta)force-pushed
the
danegsta-v2-physical-container-volume
branch
from
August 19, 2026 01:23
0a1e3ed to
eede23cCompareCo-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: adc97cfc-61a5-473f-b0a2-e1b981651796
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: adc97cfc-61a5-473f-b0a2-e1b981651796
David Negstad (danegsta)force-pushed
the
danegsta-v2-physical-container-volume
branch
from
August 21, 2026 19:16
eede23c to
2c55bbdCompare
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 freeto 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
PhysicalContainerVolumeAPI, validation, generated models/deepcopy/OpenAPI, and registrationPhysicalContainerOwnership and runtime behavior
spec.volumeIDreferences an existing runtime volume. Referenced volumes are always retained when the API resource is deleted;persistentandreplaceExistingare creation-only and rejected withvolumeID.spec.volumeNamecreates a runtime volume. Created volumes are removed on deletion unlessspec.persistentis true. A same-name collision is terminal and non-destructive by default. Withspec.replaceExisting, the controller inspects the requested name, removes only the canonical resolved volume, then creates and tracks its replacement. Runtime objects carrying this resource's UID are adopted after uncertain create results or in-memory state loss.Removal deliberately uses
Force: false: Docker does not remove in-use volumes even with force, while Podman force-removes the containers using the volume. In-use or transient removal failures retain controller progress and retry without removing attached containers; not-found removal races are confirmed by reinspection.Created volumes carry resource ownership, persistence, and creator-process labels. Startup harvesting lists labeled volumes and removes abandoned non-persistent volumes after abandoned containers, also without force.
Validation
make generatemake test-prereqsmake lintmake testgo test -race -count 1 -parallel 32 -timeout 180s ./test/integration -run 'TestUnusedVolumeHarvesting|TestV2PhysicalContainerVolume'Stacked on
danegsta-danegsta-v2-physical-network.