def PerformStage(self): """Generate debug symbols and upload debug.tgz.""" buildroot = self._build_root board = self._current_board # Generate breakpad symbols of Chrome OS binaries. commands.GenerateBreakpadSymbols(buildroot, board, self._run.debug) # Generate breakpad symbols of Android binaries if we have a symbol archive. # This archive is created by AndroidDebugSymbolsStage in Android PFQ. # This must be done after GenerateBreakpadSymbols because it clobbers the # output directory. symbols_file = os.path.join(self.archive_path, constants.ANDROID_SYMBOLS_FILE) if os.path.exists(symbols_file): commands.GenerateAndroidBreakpadSymbols(buildroot, board, symbols_file) self.board_runattrs.SetParallel('breakpad_symbols_generated', True) # Upload them. self.UploadDebugTarball() # Upload debug/breakpad tarball. self.UploadDebugBreakpadTarball() # Upload them to crash server. if self._run.config.upload_symbols: self.UploadSymbols(buildroot, board)
def PerformStage(self): """Generate debug symbols and upload debug.tgz.""" buildroot = self._build_root board = self._current_board commands.GenerateBreakpadSymbols(buildroot, board, self._run.debug) self.board_runattrs.SetParallel('breakpad_symbols_generated', True) steps = [self.UploadDebugTarball] failed_list = os.path.join(self.archive_path, 'failed_upload_symbols.list') if self._run.config.upload_symbols: steps.append(lambda: self.UploadSymbols(buildroot, board, failed_list)) parallel.RunParallelSteps(steps)
def PerformStage(self): """Generate debug symbols and upload debug.tgz.""" buildroot = self._build_root board = self._current_board # Create breakpad symbols. commands.GenerateBreakpadSymbols(buildroot, board, self._run.debug) self.board_runattrs.SetParallel('breakpad_symbols_generated', True) # Upload them. self.UploadDebugTarball() # Upload them to crash server. if self._run.config.upload_symbols: self.UploadSymbols(buildroot, board)
def PerformStage(self): """Generate debug symbols and upload debug.tgz.""" buildroot = self._build_root board = self._current_board # Generate breakpad symbols of Chrome OS binaries. commands.GenerateBreakpadSymbols(buildroot, board, self._run.options.debug_forced, chroot_args=ChrootArgs( self._run.options), extra_env=self._portage_extra_env) # Download android symbols (if this build has them), and Generate # breakpad symbols of Android binaries. This must be done after # GenerateBreakpadSymbols because it clobbers the output # directory. symbols_file = self.DownloadAndroidSymbols() if symbols_file: try: commands.GenerateAndroidBreakpadSymbols( buildroot, board, symbols_file, chroot_args=ChrootArgs(self._run.options), extra_env=self._portage_extra_env) except failures_lib.BuildScriptFailure: # Android breakpad symbol preparation is expected to work in # modern branches. if self.AfterLimit(ANDROID_BREAKPAD): raise # For older branches, we only process them on a best effort basis. logging.PrintBuildbotStepWarnings() logging.warning('Preparing Android symbols failed, ignoring..') # Upload them. self.UploadDebugTarball() # Upload debug/breakpad tarball. self.UploadDebugBreakpadTarball() # Upload them to crash server. if self._run.config.upload_symbols: self.UploadSymbols(buildroot, board)
def testGenerateSymbols(self): """Test GenerateBreakpadSymbols Command.""" commands.GenerateBreakpadSymbols(self.tempdir, self._board, False) self.assertCommandContains(['--board=%s' % self._board])