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
duplicity: enable tests #60956
duplicity: enable tests #60956
Conversation
This is failing for me locally FAILED (failures=21, errors=127, skipped=4)
Test failed: <unittest.runner.TextTestResult run=418 errors=127 failures=21> Let's try |
Interesting. These failures are on NixOS? I'll try to reproduce the test failures on my machine. |
Yes on NixOS with sandboxing. The logs for ofBorg's builds are pretty much the same, on both amd64 and aarch64 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I am hugely in favor of running the test suite! We just need it to succeed first. :-/
I can reproduce the errors if I enable sandboxing in NixOS. |
I think I fixed the tests with the sandbox enabled. |
Build with tests completed on my side. |
Those tests are taking quite a long time (a lot more than the build itself). And unfortunately it still fails on Darwin |
That's fine, IMHO. That's time well spent verifying that my preferred backup solution actually works. :-)
I'd be happy to merge the current state as-is if you'd add |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
If you disable the test suite on Darwin only, i.e. by adding doCheck = !stdenv.isDarwin
, then we can merge IMHO!
I'm not really in favor of enabling tests that are 1) likely to break; 2); slow; 3) require bunch of patches that make it harder to maintain the package. |
* Install required tool dependencies ('tar', 'rdiff', etc.) * Run installed duplicity instead of source tree duplicity * Fix shebang of scripts in testing/overrides/bin/ * Disable some unhelpful developer-only tests * Disable a test broken on Linux (root cause unknown) * Work around low file descriptor soft limit for Darwin builders
Apply some upstream duplicity patches which optimize installCheckPhase. On my laptop, this lowers duplicity's total build time from 8 m 42 s to 6 m 50 s (-21%).
I reduced test run time by almost two minutes, and I disabled testing on macOS to make CI happy. |
Motivation for this change
Prevent regressions when upgrading duplicity (or one of its dependencies) by running duplicity's test suite.
Things done
sandbox
innix.conf
on non-NixOS)nix-shell -p nix-review --run "nix-review wip"
./result/bin/
)nix path-info -S
before and after)