Re: Fink testing

Scott Hannahs <[email protected]> Tue, 17 Jan 2017 12:53:42 -0500
Newsgroups gmane.os.apple.fink.devel
Message-ID <[email protected]>
> 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.

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.
------------------------------------------------------------------------------
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