Skip to content

Improve user switching in Docker execution - #16

Open
imsudiproy wants to merge 2 commits into
masterfrom
user_bug
Open

Improve user switching in Docker execution#16
imsudiproy wants to merge 2 commits into
masterfrom
user_bug

Conversation

@imsudiproy

@imsudiproyimsudiproy commented Nov 13, 2025

Copy link
Copy Markdown
Owner

Refactor user switching logic for container execution.

Summary by CodeRabbit

  • Chores
    • Improved verification reliability by adding container user awareness: the process now ensures scripts run under the expected user, switching when needed.
    • Added error handling for undetermined container user, with cleanup and exit on failure.
    • Maintains existing log capture, finalization, and path-based script invocation while reducing unnecessary user switching.

Refactor user switching logic for container execution.
@imsudiproyimsudiproy self-assigned this Nov 13, 2025
@imsudiproyimsudiproy added the bug Something isn't working label Nov 13, 2025
@coderabbitai

coderabbitaiBot commented Nov 13, 2025

Copy link
Copy Markdown

Walkthrough

Adds container-user detection to auto_verify.sh: the script queries the current user inside the container, handles failures, and only switches to the "test" user with su when the container user differs; otherwise it runs the build script directly, preserving existing logging and cleanup flows.

Changes

Cohort / File(s)Summary
Container user detection & execution flow
auto_verify.sh
Query container user; on query error perform cleanup and exit; if user != test switch to test via su before running the build script, otherwise execute build directly; maintain existing log capture and finalization.

Sequence Diagram(s)

sequenceDiagram
participant Script as auto_verify.sh
participant Container as Container
participant Build as Build Script
Script->>Container: run command to get current user
Container-->>Script: returns username / error
opt error determining user
Script->>Container: cleanup & stop container
Script-->>Script: exit with failure
end
alt username == "test"
Script->>Build: execute build script directly
Build-->>Script: build output/logs
else username != "test"
Script->>Container: su - test -c "run build script"
Container-->>Script: build output/logs
end
Script->>Script: capture logs & finalize
Loading

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

  • Inspect the user-query command and its error handling
  • Verify su invocation and quoting/escaping when running the build script
  • Confirm log capture, cleanup and exit-code propagation remain correct

Poem

🐰 I peeked inside the container den,
"Who's running this?" I asked again.
If it's already test, I clap and cheer,
Else I nudge it gently — "switch, please" — and steer.
Logs tucked in my satchel, I hop away, sincere.

Pre-merge checks and finishing touches

❌ Failed checks (1 warning)
Check nameStatusExplanationResolution
Docstring Coverage⚠️ WarningDocstring coverage is 0.00% which is insufficient. The required threshold is 80.00%.You can run @coderabbitai generate docstrings to improve docstring coverage.
✅ Passed checks (2 passed)
Check nameStatusExplanation
Description Check✅ PassedCheck skipped - CodeRabbit’s high-level summary is enabled.
Title check✅ PassedThe title 'Improve user switching in Docker execution' directly aligns with the main change: refactoring user switching logic in the auto_verify.sh script to add container user awareness and conditional user switching.
✨ Finishing touches
  • 📝 Generate docstrings
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch user_bug

📜 Recent review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 8b390b5 and cc87b94.

📒 Files selected for processing (1)
  • auto_verify.sh (1 hunks)
🚧 Files skipped from review as they are similar to previous changes (1)
  • auto_verify.sh

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.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@coderabbitaicoderabbitaiBot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 2

📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between bdf5366 and 8b390b5.

📒 Files selected for processing (1)
  • auto_verify.sh (1 hunks)

Comment threadauto_verify.sh
Comment threadauto_verify.sh
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bugSomething isn't working

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant

@imsudiproy