rust-lang / rust-lang/rustwide
Interest in PR(s) for extracting Container behaviour into a trait?
Nobody has claimed this yet.
- Dominant language
- Rust
- Stars
- 198
- Forks
- 45
- Avg merge
- 18h 46m
- Merged PRs (30d)
- 7
Description
Thanks for open-sourcing this super useful project. I've recently been using a fork of rustwide at work which I use for building several of our in-house crates.
Currently, rustwide is coupled to docker, and a downstream change I have found useful is extracting the Container logic into a separate trait so that users can 'bring-your-own-container' (VM / LXC / bare-metal etc). This flexibility has made integrating rustwide with our existing infrastructure much easier.
Would this work be of benefit to the greater community? I'd be happy to raise a PR for this if so, or even make this change somewhere else if rustwide folks are keen - you will have better understanding than me of where the right abstraction boundary lies! I don't expect rustwide to support non-docker containers, but this change may allow others to do so without having to fork?
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reading the Container logic linked in src/cmd/sandbox.rs and review how rustwide is currently coupled to Docker. Compare that boundary with the proposed trait approach and determine what abstraction would let users provide VM, LXC, or bare-metal behavior without requiring rustwide to support those containers directly. Done means the design is agreed and the default Docker behavior remains usable.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- docker, rust
- Domain
- infrastructure
- Issue type
- Refactor
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Quiet
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100