Comments (7)
Thanks @asomers , I will try playing around with @musikid's fork for now
from pjdfstest.
It's basically impossible as they're written now. HOWEVER, @musikid is working on a pjdfstest rewrite which will include that feature: https://github.com/musikid/pjdfstest . Note though that the test coverage will be severely reduced when running as a non-root user.
from pjdfstest.
As a workaround, I created a docker image containing pjdfstest and the build dependencies here: https://hub.docker.com/r/dianarg/pjdfstest. Use at your own risk. You can mount host directories to be tested using docker run --volume
to make them visible within the container. Let me know if you want me to open a PR with the Dockerfile.
from pjdfstest.
OK, after testing the above image on the rootless system, I am still seeing test failures. I'm not sure if this is related to using Rootless Docker, but I'll keep investigating.
from pjdfstest.
What exactly are you trying to accomplish? If you want 100% test coverage, then that absolutely requires root. Using Linux's FS namespaces you might be able to do some privileged operations as a non-root user, but probably not all.
from pjdfstest.
I want to reproduce the testing done by the JuiceFS devs described in https://github.com/juicedata/juicefs#posix-compatibility. I was hoping running as "root" inside a container would get around checks for uid==0
Which tests absolutely require root, and which ones are using root as an artifact of how the tests are written? For example, I believe it should be possible to test operations like create/unlink/read/write as long as the test user has permissions on the directory used for the test.
from pjdfstest.
As-written, pjdfstest doesn't distinguish between tests that need root and tests that don't. But with @musikid's rewrite, it will. In that branch, a non-root user can do a smoke test that covers unprivileged operations like chmod and truncate. But a large part of the test suite will still require root privileges, and there isn't any getting around that.
from pjdfstest.
Related Issues (20)
- Seemingly random test issues in chown/00.t on Linux / TravisCI HOT 7
- test suite open/06.t hang on FUSE filesystem HOT 1
- Rename need not change a file's ctime
- Tests rename/21.t:12-14 failed on ext4 HOT 4
- Should the behavior of "O_RDONLY|O_TRUNC" be undefined? HOT 1
- Bad format specifier HOT 1
- Enhancement request - support file systems with lower PATH_MAX values HOT 8
- Add .spec file for RPM building HOT 1
- Excluding file types HOT 1
- Support for XFS HOT 1
- enhancement request: extended attributes
- Improve PJDFSTest suite HOT 23
- Missing functionality
- rename/09.t uses nested loops... with the same loop var in both HOT 1
- chmod/07.t line 38 HOT 2
- chown/07.t line 30
- what the meaning of `rename/24.t` HOT 1
- sys/sysmacros.h: present but cannot be compiled HOT 6
- rename/21.t HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from pjdfstest.