From: Zac Medico Date: Wed, 11 Mar 2009 03:36:37 +0000 (-0000) Subject: Make emerge --regen return non-zero if that are any failures. Thanks to Daniel X-Git-Tag: v2.1.6.8~221 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=9cde75d21dc83eb89d3602c09460153008d07390;p=portage.git Make emerge --regen return non-zero if that are any failures. Thanks to Daniel Robbins for reporting. (trunk r12575) svn path=/main/branches/2.1.6/; revision=12856 --- diff --git a/pym/_emerge/__init__.py b/pym/_emerge/__init__.py index 7dbf3c14b..0e6a7f443 100644 --- a/pym/_emerge/__init__.py +++ b/pym/_emerge/__init__.py @@ -11129,6 +11129,8 @@ class MetadataRegen(PollScheduler): self._valid_pkgs = set() self._process_iter = self._iter_metadata_processes() + self.returncode = os.EX_OK + self._error_count = 0 def _iter_metadata_processes(self): portdb = self._portdb @@ -11206,6 +11208,8 @@ class MetadataRegen(PollScheduler): def _metadata_exit(self, metadata_process): self._jobs -= 1 if metadata_process.returncode != os.EX_OK: + self.returncode = 1 + self._error_count += 1 self._valid_pkgs.discard(metadata_process.cpv) portage.writemsg("Error processing %s, continuing...\n" % \ (metadata_process.cpv,)) @@ -12697,6 +12701,7 @@ def action_regen(settings, portdb, max_jobs, max_load): regen.run() portage.writemsg_stdout("done!\n") + return regen.returncode def action_config(settings, trees, myopts, myfiles): if len(myfiles) != 1: @@ -14705,7 +14710,7 @@ def emerge_main(): action_metadata(settings, portdb, myopts) elif myaction=="regen": validate_ebuild_environment(trees) - action_regen(settings, portdb, myopts.get("--jobs"), + return action_regen(settings, portdb, myopts.get("--jobs"), myopts.get("--load-average")) # HELP action elif "config"==myaction: