Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 452030 - `ebuild ... test install' runs test phase twice after initial test phase failure
Summary: `ebuild ... test install' runs test phase twice after initial test phase failure
Status: RESOLVED FIXED
Alias: None
Product: Portage Development
Classification: Unclassified
Component: Core - Ebuild Support (show other bugs)
Hardware: All Linux
: Normal minor (vote)
Assignee: Portage team
URL:
Whiteboard:
Keywords: InVCS
Depends on:
Blocks: 445274
  Show dependency tree
 
Reported: 2013-01-14 13:05 UTC by Jeroen Roovers (RETIRED)
Modified: 2013-01-15 16:09 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments
net-misc:youtube-dl-2013.01.13:20130114-125530.log - example build log (20130114-125530.log,20.89 KB, text/plain)
2013-01-14 13:05 UTC, Jeroen Roovers (RETIRED)
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Jeroen Roovers (RETIRED) gentoo-dev 2013-01-14 13:05:08 UTC
Created attachment 335600 [details]
net-misc:youtube-dl-2013.01.13:20130114-125530.log - example build log

Running ebuild(1) without FEATURES=test USE=test set will silently enable them. After this, `ebuild ... test install' runs the test phase twice when the first iteration fails, because apparently the test phase must be run before the install phase.
Comment 1 Zac Medico gentoo-dev 2013-01-14 13:19:27 UTC
Do you have FEATURES=test-fail-continue enabled? If so, the reported behavior is as intended. When you pass the "install" argument, it also implies phases on which it depends, which includes the "test" phase. So, it's redundant for you to request both test and install. Do you want it to automatically eliminate the redundant "test" argument on your behalf?
Comment 2 Jeroen Roovers (RETIRED) gentoo-dev 2013-01-14 19:27:27 UTC
The install phase depends on the test phase by design? If that is what causes rerunning it, what is the rationale for that dependency?
Comment 3 Zac Medico gentoo-dev 2013-01-14 19:32:20 UTC
Well, it's just based on the order the phases have always gone in. For autotools based packages, it's typical to do `make ; make check ; make install`, so that's how our phases have always been ordered.
Comment 4 Jeroen Roovers (RETIRED) gentoo-dev 2013-01-14 20:31:26 UTC
Ah, I momentarily assumed you meant a hard dependency between the two phases.

Could this all be because normally you'd see:
>>> It appears that 'test' has already executed for 'adobe-flash-10.3.183.50'; skipping.
>>> Remove '/home/jer/portage/www-plugins/adobe-flash-10.3.183.50/.tested' to force test.

but that now it's omitted since the test phase failed, despite having test-fail-continue? I guess I would expect the test phase to be marked completed when that feature is on, despite its failure.
Comment 5 Zac Medico gentoo-dev 2013-01-15 14:47:20 UTC
(In reply to comment #4)
> I guess I would expect the test phase to be marked
> completed when that feature is on, despite its failure.

Okay, done:

http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=70bfb6b8ebdb74fe5fbe244532e35f86cab9742e
Comment 6 Zac Medico gentoo-dev 2013-01-15 16:09:06 UTC
This is fixed in 2.1.11.42 and 2.2.0_alpha153.