{"action":"created","issue":{"url":"https://api.github.com/repos/crosswalk-project/crosswalk/issues/3779","repository_url":"https://api.github.com/repos/crosswalk-project/crosswalk","labels_url":"https://api.github.com/repos/crosswalk-project/crosswalk/issues/3779/labels{/name}","comments_url":"https://api.github.com/repos/crosswalk-project/crosswalk/issues/3779/comments","events_url":"https://api.github.com/repos/crosswalk-project/crosswalk/issues/3779/events","html_url":"https://github.com/crosswalk-project/crosswalk/pull/3779","id":163845049,"number":3779,"title":"Start fetching a copy of src/buildtools.git into src/xwalk/buildtools.","user":{"login":"rakuco","id":36417,"avatar_url":"https://avatars.githubusercontent.com/u/36417?v=3","gravatar_id":"","url":"https://api.github.com/users/rakuco","html_url":"https://github.com/rakuco","followers_url":"https://api.github.com/users/rakuco/followers","following_url":"https://api.github.com/users/rakuco/following{/other_user}","gists_url":"https://api.github.com/users/rakuco/gists{/gist_id}","starred_url":"https://api.github.com/users/rakuco/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rakuco/subscriptions","organizations_url":"https://api.github.com/users/rakuco/orgs","repos_url":"https://api.github.com/users/rakuco/repos","events_url":"https://api.github.com/users/rakuco/events{/privacy}","received_events_url":"https://api.github.com/users/rakuco/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":3,"created_at":"2016-07-05T13:00:58Z","updated_at":"2016-07-06T02:21:17Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/crosswalk-project/crosswalk/pulls/3779","html_url":"https://github.com/crosswalk-project/crosswalk/pull/3779","diff_url":"https://github.com/crosswalk-project/crosswalk/pull/3779.diff","patch_url":"https://github.com/crosswalk-project/crosswalk/pull/3779.patch"},"body":"This is the easiest solution the problem of getting depot_tools to find\n`clang-format` and `gn`: our checkout process is structured in such a\nway that `gclient_utils.GetBuildtoolsPath()` fails to find the binaries\nin `src/buildtools` since `src` is actually checked out via\n`.gclient-xwalk`, not `.gclient`.\n\nThis was causing our bots to fail on presubmit checks such as\n`CheckGNFormatted` and `CheckPatchFormatted` because the binaries which\nactually perform those checks were not being found correctly: the\ndetection only worked if the commands were invoked from `src`.\n\nWhile we could set the `CHROMIUM_BUILDTOOLS_PATH` environment variable\nin the bots, the problem would resurface locally for any developer who\ntried to run the presubmit checks (or the binaries directly to format\ntheir patches prior to submitting them). Conversely, changing the\ndirectory from which the commands are run in the bots would also lead to\nconfusion for developers, who would never know that running `gn` or\n`clang-format` would only work from certain directories.\n\nInstead, we just check out `src/buildtools` into `src/xwalk/buildtools`\nand fetch the binaries as hooks, which is what several other projects\nalso do (v8, pdfium, NaCl, ANGLE etc).\n\nThose binaries are preferred over the Chromium ones if one calls them\nfrom the directory above `src` (such as the bots) or from `src/xwalk`.\nWhile it could in theory lead to incompatibilities, `clang-format` is\nnot changed very frequently upstream and the `gn` binary is normally\ninvoked from `src` anyway so I do not expect any issues to come up."},"comment":{"url":"https://api.github.com/repos/crosswalk-project/crosswalk/issues/comments/230655401","html_url":"https://github.com/crosswalk-project/crosswalk/pull/3779#issuecomment-230655401","issue_url":"https://api.github.com/repos/crosswalk-project/crosswalk/issues/3779","id":230655401,"user":{"login":"heke123","id":3487569,"avatar_url":"https://avatars.githubusercontent.com/u/3487569?v=3","gravatar_id":"","url":"https://api.github.com/users/heke123","html_url":"https://github.com/heke123","followers_url":"https://api.github.com/users/heke123/followers","following_url":"https://api.github.com/users/heke123/following{/other_user}","gists_url":"https://api.github.com/users/heke123/gists{/gist_id}","starred_url":"https://api.github.com/users/heke123/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/heke123/subscriptions","organizations_url":"https://api.github.com/users/heke123/orgs","repos_url":"https://api.github.com/users/heke123/repos","events_url":"https://api.github.com/users/heke123/events{/privacy}","received_events_url":"https://api.github.com/users/heke123/received_events","type":"User","site_admin":false},"created_at":"2016-07-06T02:21:16Z","updated_at":"2016-07-06T02:21:16Z","body":"LGTM,  thanks."}}
{"actor":{"display_login":"heke123"}}