Re: Fink testing
Alexander Hansen <[email protected]> Tue, 17 Jan 2017 10:07:50 -0800
| Newsgroups | gmane.os.apple.fink.devel |
|---|---|
| Message-ID | <[email protected]> |
> On Jan 17, 2017, at 09:53, Scott Hannahs <[email protected]> wrote: > > >> On Jan 17, 2017, at 10:32 AM, Alexander Hansen <[email protected]> wrote: >> >>> >>> On Jan 16, 2017, at 11:37, Scott Hannahs <[email protected]> wrote: >>> >>> I have a question and maybe an issue for the fink cognoscenti. >>> >>> I maintain a package (duplicity) for doing encrypted backups that has an extensive testing phase. That testing phase is failing under fink. However during that testing, the routines unpack a tar.gz file to create a directory structure for backing up and restoring. >>> >>> In looking at the files, they seem to have the user/group ownership of the tar file and not fink-bld. I find several other files such as byte compiled python files to have ownership as root and not as fink-bld. There are a couple of test scripts that end up as fink-bld as the owner but wheel as the group. >>> >>> If the testing phase were executed as root, then it would unpack the tar file as the original owner and not use fink-bld as the owner. If the following command is done: >>> sudo -u fink-bld tar xzf testfiles.tar.gz >>> >>> Then it will unpack the files as the correct owner/group for testing. But of course the distributed test script does not hardwire in a fink-bld user for testing. >>> >>> Is this a fink issue? I was just trying to get my updated package to pass the testing phase. >>> >>> -Scott >>> >> >> Do the tests work if you use “fink -m --no-build-as-nobody build” ? If so, then you might use BuildAsNobody: false in the .info file so that fink builds as root instead of fink-bld. The tradeoff is that the build isn’t quite as safe. >> >> If the build works without the test phase, another option might be just to have a note that testing needs to be done as root, since end-users generally aren’t expected to run tests. However, this would probably mean that auto-build scripts for the binary distribution won’t work, whereas they would when building as root. >> >> Ideally, of course, there would be a way to force the test scripts to work as fink-bld, but this might not be possible. >> >> -- >> Alexander Hansen, Ph.D. >> Fink User Liaison > > Alexander, > > I am testing the —no-build-as-nobody option. But I am still sort of curious how the tests could run as root and not fink-bld. To have the tar unpacking of the test directories use the stored user/group info would have to have the tar run as root. Otherwise it would change all ownership to fink-bld which I believe would be fine. > > It seems that unpacking the original tar file leaves some files with the group “wheel” and not fink-bld. This would seem to be a problem with the original source unpacking. > It might be worth verifying whether just “tar” is being used, which would be Fink’s GNU tar, or “/usr/bin/tar”, which is Apple’s BSD tar. > I get errors in both forms. > build as root: > Ran 418 tests in 247.699s > > FAILED (failures=24, errors=100, skipped=5) > Test failed: <unittest.runner.TextTestResult run=418 errors=100 failures=24> > error: Test failed: <unittest.runner.TextTestResult run=418 errors=100 failures=24> > phase test: warning > > Build as fink-bld: > Ran 418 tests in 179.702s > > FAILED (failures=23, errors=100, skipped=5) > Test failed: <unittest.runner.TextTestResult run=418 errors=100 failures=23> > error: Test failed: <unittest.runner.TextTestResult run=418 errors=100 failures=23> > phase test: warning > > > Not sure why building as fink-bld runs so much faster? There is 1 failure difference. It’s probably quicker to test as fink-bld because the tests fail promptly, possibly for different reasons than when building as root. fink-bld is set up as an unprivileged user with no home directory or shell. $ id -P fink-bld fink-bld:*:600:600::0:0:Fink Build System:/var/empty:/usr/bin/false The problematic tests may expect one of those. -- Alexander Hansen, Ph.D. Fink User Liaison ------------------------------------------------------------------------------ Check out the vibrant tech community on one of the world's most engaging tech sites, SlashDot.org! http://sdm.link/slashdot _______________________________________________ Fink-devel mailing list [email protected] List archive: https://sourceforge.net/p/fink/mailman/fink-devel Subscription management: https://lists.sourceforge.net/lists/listinfo/fink-devel