-
Notifications
You must be signed in to change notification settings - Fork 1.1k
Implement pod sandbox for FreeBSD #7472
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Codecov Report
Additional details and impacted files@@ Coverage Diff @@
## main #7472 +/- ##
=======================================
Coverage ? 47.98%
=======================================
Files ? 146
Lines ? 16261
Branches ? 0
=======================================
Hits ? 7803
Misses ? 7513
Partials ? 945 |
|
/retest-required |
|
Rebased |
|
/retest |
|
A friendly reminder that this PR had no activity for 30 days. |
|
Rebased |
|
/retest |
On FreeBSD, we use a jail to manage namespaces and managing its lifetime is controlled by the jail's 'persist' flag. Signed-off-by: Doug Rabson <[email protected]>
This uses the build's GOOS value to generate.New, allowing it to create a FreeBSD generator in FreeBSD builds. In future, we should allow this to be overridden since FreeBSD supports Linux emulation - in podman, we use the image OS value. We also avoid dereferencing config.Linux if its nil which is the case on FreeBSD. Signed-off-by: Doug Rabson <[email protected]>
This moves NeedsInfra to sandbox_linux.go and adds implementations for freebsd and other platforms. FreeBSD needs an infra container to own the pod vnet for network mode pod. Arbitrarily, I made the generic stub assume that infra containers are not needed. Signed-off-by: Doug Rabson <[email protected]>
... and add a FreeBSD implementation Signed-off-by: Doug Rabson <[email protected]>
Signed-off-by: Doug Rabson <[email protected]>
Initially, FreeBSD supports just the network namespace although we may add IPC and UTS in future. Signed-off-by: Doug Rabson <[email protected]>
Signed-off-by: Doug Rabson <[email protected]>
This simply moves SetupShm to infra_linux.go since this is not needed on FreeBSD and the MS_* constants are Linux-specific. Signed-off-by: Doug Rabson <[email protected]>
This factors out configNsPath from container_server.go so that we can find the network namespace for the pod. Signed-off-by: Doug Rabson <[email protected]>
Signed-off-by: Doug Rabson <[email protected]>
|
Rebased to pick up #7709 |
|
/approve LGTM, thanks @dfr |
|
/retest-required |
|
All the tests are green except for ci/kata-jenkins which is showing as 'Expected — Waiting for status to be reported'. Is that normal? Should I try to restart it? |
|
@dfr yes that's normal, all tests are green |
|
@cri-o/cri-o-maintainers any additional thoughts or are we good to merge? |
|
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: dfr, haircommander, saschagrunert The full list of commands accepted by this bot can be found here. The pull request process is described here
Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing |
|
/retest-required |
What type of PR is this?
/kind feature
What this PR does / why we need it:
This implements the sandbox lifecycle for FreeBSD, allowing pods to be created and destroyed. I have not included the code for container lifecycle to attempt to reduce the scope of this PR to the minimum. Part of #6492.
Which issue(s) this PR fixes:
None
Special notes for your reviewer:
Does this PR introduce a user-facing change?