示例#1
0
    def command_collect_logs(self):
        self.import_utils()
        comment_path = os.path.join(self.regression_root, self.comment)
        if not os.path.exists(comment_path):
            self.log('Comment file "%s" not found; creating default comment.' %
                     comment_path)
            f = open(comment_path, 'w')
            f.write('<p>Tests are run on %s platform.</p>' %
                    self.platform_name())
            f.close()

        source = 'tarball'
        revision = ''
        svn_root_file = os.path.join(self.boost_root, '.svn')
        svn_info_file = os.path.join(self.boost_root, 'svn_info.txt')
        if os.path.exists(svn_root_file):
            source = 'SVN'
            self.svn_command('info --xml "%s" >"%s"' %
                             (self.boost_root, svn_info_file))

        if os.path.exists(svn_info_file):
            f = open(svn_info_file, 'r')
            svn_info = f.read()
            f.close()
            i = svn_info.find('Revision:')
            if i < 0: i = svn_info.find('revision=')  # --xml format
            if i >= 0:
                i += 10
                while svn_info[i] >= '0' and svn_info[i] <= '9':
                    revision += svn_info[i]
                    i += 1

        if self.pjl_toolset != 'python':
            from collect_and_upload_logs import collect_logs
            if self.incremental:
                run_type = 'incremental'
            else:
                run_type = 'full'
            collect_logs(self.regression_results, self.runner, self.tag,
                         self.platform, comment_path, self.timestamp_path,
                         self.user, source, run_type, self.dart_server,
                         self.proxy, revision)
        else:
            from process_jam_log import BJamLog2Results
            if self.incremental:
                run_type = '--incremental'
            else:
                run_type = ''
            BJamLog2Results([
                '--output=' +
                os.path.join(self.regression_results, self.runner + '.xml'),
                '--runner=' + self.runner, '--comment=' + comment_path,
                '--tag=' + self.tag, '--platform=' + self.platform,
                '--source=' + source, '--revision=' + revision, run_type,
                self.regression_log
            ])
            self.compress_file(
                os.path.join(self.regression_results, self.runner + '.xml'),
                os.path.join(self.regression_results, self.runner + '.zip'))
示例#2
0
    def command_collect_logs(self):
        self.import_utils()
        comment_path = os.path.join(self.regression_root, self.comment)
        if not os.path.exists(comment_path):
            self.log('Comment file "%s" not found; creating default comment.' % comment_path)
            f = open(comment_path, "w")
            f.write("<p>Tests are run on %s platform.</p>" % self.platform_name())
            f.close()

        source = "tarball"
        revision = ""
        svn_root_file = os.path.join(self.boost_root, ".svn")
        svn_info_file = os.path.join(self.boost_root, "svn_info.txt")
        if os.path.exists(svn_root_file):
            source = "SVN"
            self.svn_command('info --xml "%s" >"%s"' % (self.boost_root, svn_info_file))

        if os.path.exists(svn_info_file):
            f = open(svn_info_file, "r")
            svn_info = f.read()
            f.close()
            i = svn_info.find("Revision:")
            if i < 0:
                i = svn_info.find("revision=")  # --xml format
            if i >= 0:
                i += 10
                while svn_info[i] >= "0" and svn_info[i] <= "9":
                    revision += svn_info[i]
                    i += 1

        if self.pjl_toolset != "python":
            from collect_and_upload_logs import collect_logs

            if self.incremental:
                run_type = "incremental"
            else:
                run_type = "full"
            collect_logs(
                self.regression_results,
                self.runner,
                self.tag,
                self.platform,
                comment_path,
                self.timestamp_path,
                self.user,
                source,
                run_type,
                self.dart_server,
                self.proxy,
                revision,
            )
        else:
            from process_jam_log import BJamLog2Results

            if self.incremental:
                run_type = "--incremental"
            else:
                run_type = ""
            BJamLog2Results(
                [
                    "--output=" + os.path.join(self.regression_results, self.runner + ".xml"),
                    "--runner=" + self.runner,
                    "--comment=" + comment_path,
                    "--tag=" + self.tag,
                    "--platform=" + self.platform,
                    "--source=" + source,
                    "--revision=" + revision,
                    run_type,
                    self.regression_log,
                ]
            )
            self.compress_file(
                os.path.join(self.regression_results, self.runner + ".xml"),
                os.path.join(self.regression_results, self.runner + ".zip"),
            )
示例#3
0
    def command_collect_logs(self):
        self.import_utils()
        comment_path = os.path.join( self.regression_root, self.comment )
        if not os.path.exists( comment_path ):
            self.log( 'Comment file "%s" not found; creating default comment.' % comment_path )
            f = open( comment_path, 'w' )
            f.write( '<p>Tests are run on %s platform.</p>' % self.platform_name() )
            f.close()

        source = 'tarball'
        revision = ''
        svn_root_file = os.path.join( self.boost_root, '.svn' )
        svn_info_file = os.path.join( self.boost_root, 'svn_info.txt' )
        if os.path.exists( svn_root_file ):
            source = 'SVN'
            self.svn_command( 'info --xml "%s" >"%s"' % (self.boost_root,svn_info_file) )

        if os.path.exists( svn_info_file ):
            f = open( svn_info_file, 'r' )
            svn_info = f.read()
            f.close()
            i = svn_info.find( 'Revision:' )
            if i < 0: i = svn_info.find( 'revision=' )  # --xml format
            if i >= 0:
                i += 10
                while svn_info[i] >= '0' and svn_info[i] <= '9':
                  revision += svn_info[i]
                  i += 1

        if self.pjl_toolset != 'python':
            from collect_and_upload_logs import collect_logs
            if self.incremental:
                run_type = 'incremental'
            else:
                run_type = 'full'
            collect_logs(
                self.regression_results,
                self.runner, self.tag, self.platform, comment_path,
                self.timestamp_path,
                self.user,
                source, run_type,
                self.dart_server, self.proxy,
                revision )
        else:
            from process_jam_log import BJamLog2Results
            if self.incremental:
                run_type = '--incremental'
            else:
                run_type = ''
            BJamLog2Results([
                '--output='+os.path.join(self.regression_results,self.runner+'.xml'),
                '--runner='+self.runner,
                '--comment='+comment_path,
                '--tag='+self.tag,
                '--platform='+self.platform,
                '--source='+source,
                '--revision='+revision,
                run_type,
                self.regression_log
                ])
            self.compress_file(
                os.path.join(self.regression_results,self.runner+'.xml'),
                os.path.join(self.regression_results,self.runner+'.zip')
                )
示例#4
0
    def command_collect_logs(self):
        comment_path = os.path.join(self.regression_root, self.comment)
        if not os.path.exists(comment_path):
            self.log('Comment file "%s" not found; creating default comment.' %
                     comment_path)
            f = open(comment_path, 'w')
            f.write('<p>Tests are run on %s platform.</p>' %
                    self.platform_name())
            f.close()

        source = 'tarball'
        revision = self.git_revision(self.boost_root)

        # Generate expanded comment file that has extra status
        # information. In particular the revisions of all the git
        # repos in the test tree.
        base_comment_path = comment_path
        comment_path = os.path.join(
            os.path.dirname(base_comment_path),
            'full-' + os.path.basename(base_comment_path))
        comment_file = open(comment_path, 'w')
        try:
            comment_file.write("\n")
            base_comment_file = open(base_comment_path, 'r')
            try:
                comment_file.write(base_comment_file.read())
            finally:
                base_comment_file.close()
            comment_file.write("<hr>\n")
            comment_file.write(
                "<table><tr><th>Repo</th><th>Revision</th></tr>\n")
            for dir_root, dir_names, file_names in os.walk(
                    self.regression_root):
                for dir_name in dir_names:
                    if dir_name == '.git':
                        repo_dir = dir_root.replace(self.regression_root, '')
                        repo_revision = self.git_revision(dir_root)
                        comment_file.write(
                            "<tr><td><pre>%s</pre></td><td><pre>%s</pre></td></tr>\n"
                            % (repo_dir, repo_revision))
                for file_name in file_names:
                    if file_name == '.git':
                        repo_dir = dir_root.replace(self.regression_root, '')
                        repo_revision = self.git_revision(dir_root)
                        comment_file.write(
                            "<tr><td><pre>%s</pre></td><td><pre>%s</pre></td></tr>\n"
                            % (repo_dir, repo_revision))
            comment_file.write("</table>\n")
        finally:
            comment_file.close()

        if self.pjl_toolset != 'python':
            from collect_and_upload_logs import collect_logs
            if self.incremental:
                run_type = 'incremental'
            else:
                run_type = 'full'
            collect_logs(self.regression_results, self.runner, self.tag,
                         self.platform, comment_path, self.timestamp_path, "",
                         source, run_type, self.dart_server, self.proxy,
                         revision)
        else:
            from process_jam_log import BJamLog2Results
            if self.incremental:
                run_type = '--incremental'
            else:
                run_type = ''
            BJamLog2Results([
                '--output=' +
                os.path.join(self.regression_results, self.runner + '.xml'),
                '--runner=' + self.runner, '--comment=' + comment_path,
                '--tag=' + self.tag, '--platform=' + self.platform,
                '--source=' + source, '--revision=' + revision, run_type,
                self.regression_log
            ])
            self.compress_file(
                os.path.join(self.regression_results, self.runner + '.xml'),
                os.path.join(self.regression_results, self.runner + '.zip'))