feat(podman): honor OCI image working directories - #2715
Conversation
|
🌿 Preview your docs: https://nvidia-preview-pr-2715.docs.buildwithfern.com/openshell |
|
Label |
matthewgrossman
left a comment
There was a problem hiding this comment.
gator-agent
PR Review Status
Validation: This PR is project-valid because it implements maintainer-authored, agent-ready issue #2526 and explicitly supersedes #2563 with a simpler Podman OCI WorkingDir design.
Head SHA: 91ec914db17f7fce81789d384d931672ad371df1
Base SHA: dd2b4e3bc0688bdd59f90030f7c1d52511d6e354
Merge base SHA: dd2b4e3bc0688bdd59f90030f7c1d52511d6e354
Patch ID: 04b32d7237ac5106b69432b00e9c21a9720c45e6
Gator payload: 3
Review mode: initial
Previous reviewed SHA: none
Blocking findings:
- No blocking findings remain.
Carried findings:
- None.
Non-blocking suggestions:
- None.
Docs: Fern compute-driver documentation, architecture guidance, Podman driver documentation, and companion agent guidance cover the user-visible OCI WorkingDir behavior.
E2E: test:e2e is applied because the change affects Podman sandbox lifecycle and persistent workspace behavior.
Next state: gator:watch-pipeline
Signed-off-by: Matthew Grossman <mgrossman@nvidia.com>
d62b8cd to
8e70fae
Compare
matthewgrossman
left a comment
There was a problem hiding this comment.
gator-agent
PR Review Status
Validation: This PR remains project-valid because it implements maintainer-authored issue #2526 and supersedes #2563 with the requested simpler Podman OCI WorkingDir design.
Head SHA: 8e70faeeffe62daa4d88ecb12be998d129474768
Base SHA: c4b500a7de64d0b66e3ee8098f58d14299092162
Merge base SHA: dd2b4e3bc0688bdd59f90030f7c1d52511d6e354
Patch ID: 499fe2c87443b3ca0796e08cef3a965c295fe945
Gator payload: 4
Review mode: follow_up
Previous reviewed SHA: 91ec914db17f7fce81789d384d931672ad371df1
Review budget exhausted: no
Maintainer decision required: no
I re-reviewed the non-equivalent effective diff after the history rewrite.
Blocking findings:
- No blocking findings remain.
Carried findings:
- None.
Non-blocking findings:
- None.
Docs: Fern compute-driver documentation, architecture guidance, Podman driver documentation, and companion agent guidance cover the user-visible OCI WorkingDir behavior.
CI/E2E: Branch Checks and Helm Lint are green for this head. The required test:e2e workflow is running for this head; build and manifest jobs are progressing and the required OpenShell / E2E gate remains pending.
Next state: gator:watch-pipeline
Summary
Add Podman OCI
WORKDIRsupport with the persistent workspace volume mounted at the resolved image workdir. This is a simpler alternative to #2563: Docker and Podman use the same structural workspace validation contract, with no separate Podman probe or final-identity writability protocol.Related Issue
Closes #2526
Supersedes #2563.
Changes
USERandWorkingDir, and mount the named workspace volume at the resolved workdirWORKDIRand OpenShell control paths/usr/src/apprun_as_userorrun_as_groupvalues/sandboxcompatibility workspacedmesghelper only from protected absolute system paths instead of the image'sPATHTesting
mise run pre-commitmise run testcargo test -p openshell-supervisor-processcargo test -p openshell-driver-dockercargo test -p openshell-driver-podmancargo test -p openshell-sandboxcargo test -p openshell-core driver_mountsPodman volume initialization can vary across rootless, rootful, user-namespace, and SELinux configurations. The documentation calls out that image authors remain responsible for a usable
USER/WORKDIRcombination and OpenShell does not request ownership-changing options such as:Uor repair the result.Checklist