Fix iteration.
This commit is contained in:
parent
58917e6cd2
commit
8c297cef6f
2 changed files with 8 additions and 9 deletions
|
@ -1468,14 +1468,10 @@ class PerlBuildTiny(BuildSystem):
|
||||||
self.setup(session, fixers)
|
self.setup(session, fixers)
|
||||||
with DistCatcher([session.external_path('.')]) as dc:
|
with DistCatcher([session.external_path('.')]) as dc:
|
||||||
if self.minilla:
|
if self.minilla:
|
||||||
lines = run_with_build_fixers(session, ["minil", "dist"], fixers)
|
|
||||||
# minil seems to return 0 even if it didn't produce a tarball :(
|
# minil seems to return 0 even if it didn't produce a tarball :(
|
||||||
if not dc.find_files():
|
run_with_build_fixers(
|
||||||
match, error = find_build_failure_description(lines)
|
session, ["minil", "dist"], fixers,
|
||||||
if error:
|
check_success=lambda retcode, lines: bool(dc.find_files()))
|
||||||
raise DetailedFailure(0, ["minil", "dist"], error)
|
|
||||||
else:
|
|
||||||
raise UnidentifiedError(0, ["minil", "dist"], lines, match)
|
|
||||||
else:
|
else:
|
||||||
try:
|
try:
|
||||||
run_with_build_fixers(session, ["./Build", "dist"], fixers)
|
run_with_build_fixers(session, ["./Build", "dist"], fixers)
|
||||||
|
|
|
@ -44,14 +44,17 @@ class BuildFixer(object):
|
||||||
return self._fix(problem, phase)
|
return self._fix(problem, phase)
|
||||||
|
|
||||||
|
|
||||||
def run_detecting_problems(session: Session, args: List[str], **kwargs):
|
def run_detecting_problems(session: Session, args: List[str], check_success=None, **kwargs):
|
||||||
|
if check_success is None:
|
||||||
|
def check_success(retcode, contents):
|
||||||
|
return (retcode == 0)
|
||||||
try:
|
try:
|
||||||
retcode, contents = run_with_tee(session, args, **kwargs)
|
retcode, contents = run_with_tee(session, args, **kwargs)
|
||||||
except FileNotFoundError:
|
except FileNotFoundError:
|
||||||
error = MissingCommand(args[0])
|
error = MissingCommand(args[0])
|
||||||
retcode = 1
|
retcode = 1
|
||||||
else:
|
else:
|
||||||
if retcode == 0:
|
if check_success(retcode, contents):
|
||||||
return contents
|
return contents
|
||||||
lines = "".join(contents).splitlines(False)
|
lines = "".join(contents).splitlines(False)
|
||||||
match, error = find_build_failure_description(lines)
|
match, error = find_build_failure_description(lines)
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue