Bug 97796

Summary: [Perftest] PerfTestRunner exception when using nested git checkouts
Product: WebKit Reporter: Florin Malita <fmalita>
Component: Tools / TestsAssignee: Florin Malita <fmalita>
Status: RESOLVED FIXED    
Severity: Normal CC: abarth, dpranke, ojan, rniwa, webkit.review.bot
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: Unspecified   
OS: Unspecified   
Bug Depends on:    
Bug Blocks: 77037    
Attachments:
Description Flags
Patch none

Description Florin Malita 2012-09-27 09:23:44 PDT
I'm using separate Chromium and WebKit git trees, and run-perf-tests bombs when attempting to collect revision info:

Traceback (most recent call last):
  File "Tools/Scripts/run-perf-tests", line 40, in <module>
    sys.exit(PerfTestsRunner().run())
  File "/mnt/screamin/src/chromium/src/third_party/WebKit/Tools/Scripts/webkitpy/performance_tests/perftestsrunner.py", line 167, in run
    exit_code = self._generate_and_show_results()
  File "/mnt/screamin/src/chromium/src/third_party/WebKit/Tools/Scripts/webkitpy/performance_tests/perftestsrunner.py", line 182, in _generate_and_show_results
    output = self._generate_results_dict(self._timestamp, options.description, options.platform, options.builder_name, options.build_number)
  File "/mnt/screamin/src/chromium/src/third_party/WebKit/Tools/Scripts/webkitpy/performance_tests/perftestsrunner.py", line 208, in _generate_results_dict
    contents[name + '-revision'] = self._host.scm().svn_revision(path)
  File "/mnt/screamin/src/chromium/src/third_party/WebKit/Tools/Scripts/webkitpy/common/checkout/scm/git.py", line 255, in svn_revision
    git_log = self._run_git(['log', '-25', path])
  File "/mnt/screamin/src/chromium/src/third_party/WebKit/Tools/Scripts/webkitpy/common/checkout/scm/git.py", line 106, in _run_git
    return self.run(full_command_args, **full_kwargs)
  File "/mnt/screamin/src/chromium/src/third_party/WebKit/Tools/Scripts/webkitpy/common/checkout/scm/scm.py", line 76, in run
    decode_output=decode_output)
  File "/mnt/screamin/src/chromium/src/third_party/WebKit/Tools/Scripts/webkitpy/common/system/executive.py", line 423, in run_command
    (error_handler or self.default_error_handler)(script_error)
  File "/mnt/screamin/src/chromium/src/third_party/WebKit/Tools/Scripts/webkitpy/common/system/executive.py", line 340, in default_error_handler
    raise error
webkitpy.common.system.executive.ScriptError: Failed to run "[u'git', u'log', u'-25', u'/mnt/screamin/src/chromium/src/build']" exit_code: 128 cwd: /mnt/screamin/src/chromium/src/third_party/WebKit


It boils down to git not supporting querying resources outside its current tree:

fmalita@fmalita-linux2:~/wk$ git log /mnt/screamin/src/chromium/src/build
fatal: '/mnt/screamin/src/chromium/src/build' is outside repository
Comment 1 Florin Malita 2012-09-27 09:26:01 PDT
Created attachment 166018 [details]
Patch
Comment 2 Ryosuke Niwa 2012-09-27 10:13:47 PDT
Let me verify that it works correctly in svn checkouts.
Comment 3 WebKit Review Bot 2012-09-27 14:55:32 PDT
Comment on attachment 166018 [details]
Patch

Clearing flags on attachment: 166018

Committed r129804: <http://trac.webkit.org/changeset/129804>
Comment 4 WebKit Review Bot 2012-09-27 14:55:35 PDT
All reviewed patches have been landed.  Closing bug.