{"action":"created","comment":{"url":"https://api.github.com/repos/Shopify/shipit-engine/pulls/comments/33582175","id":33582175,"diff_hunk":"@@ -0,0 +1,92 @@\n+class CommitChecks\n+  OUTPUT_TTL = 10.minutes.to_i\n+  FINAL_STATUSES = %w(failed error success)\n+\n+  def initialize(commit)\n+    @commit = commit\n+  end\n+\n+  def run\n+    self.status = 'running'\n+    commands = StackCommands.new(stack)\n+    commands.with_temporary_working_directory(commit: commit) do |directory|\n+      deploy_spec = DeploySpec::FileSystem.new(directory, stack.environment)\n+      Bundler.with_clean_env do\n+        capture_all(build_commands(deploy_spec.dependencies_steps, chdir: directory))\n+        capture_all(build_commands(deploy_spec.review_checks, chdir: directory))\n+      end\n+    end\n+  rescue Command::Error\n+    self.status = 'failed'\n+  rescue\n+    self.status = 'error'\n+    raise\n+  else\n+    self.status = 'success'","path":"app/models/commit_checks.rb","position":25,"original_position":25,"commit_id":"5a7b782e45fa60aee1300b990dd1e09c866f6cfa","original_commit_id":"2c904b4b8372e21103e05b4c4a3ddf24886f15ee","user":{"login":"byroot","id":44640,"avatar_url":"https://avatars.githubusercontent.com/u/44640?v=3","gravatar_id":"","url":"https://api.github.com/users/byroot","html_url":"https://github.com/byroot","followers_url":"https://api.github.com/users/byroot/followers","following_url":"https://api.github.com/users/byroot/following{/other_user}","gists_url":"https://api.github.com/users/byroot/gists{/gist_id}","starred_url":"https://api.github.com/users/byroot/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/byroot/subscriptions","organizations_url":"https://api.github.com/users/byroot/orgs","repos_url":"https://api.github.com/users/byroot/repos","events_url":"https://api.github.com/users/byroot/events{/privacy}","received_events_url":"https://api.github.com/users/byroot/received_events","type":"User","site_admin":false},"body":"> It's just an `attr_accessor`\r\n\r\nIt's not :wink: ","created_at":"2015-06-30T15:00:57Z","updated_at":"2015-06-30T15:00:57Z","html_url":"https://github.com/Shopify/shipit-engine/pull/429#discussion_r33582175","pull_request_url":"https://api.github.com/repos/Shopify/shipit-engine/pulls/429","_links":{"self":{"href":"https://api.github.com/repos/Shopify/shipit-engine/pulls/comments/33582175"},"html":{"href":"https://github.com/Shopify/shipit-engine/pull/429#discussion_r33582175"},"pull_request":{"href":"https://api.github.com/repos/Shopify/shipit-engine/pulls/429"}}},"pull_request":{"url":"https://api.github.com/repos/Shopify/shipit-engine/pulls/429","id":37807279,"html_url":"https://github.com/Shopify/shipit-engine/pull/429","diff_url":"https://github.com/Shopify/shipit-engine/pull/429.diff","patch_url":"https://github.com/Shopify/shipit-engine/pull/429.patch","issue_url":"https://api.github.com/repos/Shopify/shipit-engine/issues/429","number":429,"state":"closed","locked":false,"title":"Dynamic confirm step","user":{"login":"byroot","id":44640,"avatar_url":"https://avatars.githubusercontent.com/u/44640?v=3","gravatar_id":"","url":"https://api.github.com/users/byroot","html_url":"https://github.com/byroot","followers_url":"https://api.github.com/users/byroot/followers","following_url":"https://api.github.com/users/byroot/following{/other_user}","gists_url":"https://api.github.com/users/byroot/gists{/gist_id}","starred_url":"https://api.github.com/users/byroot/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/byroot/subscriptions","organizations_url":"https://api.github.com/users/byroot/orgs","repos_url":"https://api.github.com/users/byroot/repos","events_url":"https://api.github.com/users/byroot/events{/privacy}","received_events_url":"https://api.github.com/users/byroot/received_events","type":"User","site_admin":false},"body":"Fixes: https://github.com/Shopify/shipit-engine/issues/426\r\n\r\nThis is still an heavy work in progress, but I think I solved the architectural issues. I'll continue the work on this tomorrow.\r\n\r\n@wvanbergen @dalehamel FYI.","created_at":"2015-06-16T15:23:46Z","updated_at":"2015-06-30T15:00:57Z","closed_at":"2015-06-30T14:45:48Z","merged_at":"2015-06-30T14:45:47Z","merge_commit_sha":"3aaa20ba2c432c5aa8260d81f4c1f5d2d8845ef7","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/Shopify/shipit-engine/pulls/429/commits","review_comments_url":"https://api.github.com/repos/Shopify/shipit-engine/pulls/429/comments","review_comment_url":"https://api.github.com/repos/Shopify/shipit-engine/pulls/comments{/number}","comments_url":"https://api.github.com/repos/Shopify/shipit-engine/issues/429/comments","statuses_url":"https://api.github.com/repos/Shopify/shipit-engine/statuses/5a7b782e45fa60aee1300b990dd1e09c866f6cfa","head":{"label":"Shopify:review-checks","ref":"review-checks","sha":"5a7b782e45fa60aee1300b990dd1e09c866f6cfa","user":{"login":"Shopify","id":8085,"avatar_url":"https://avatars.githubusercontent.com/u/8085?v=3","gravatar_id":"","url":"https://api.github.com/users/Shopify","html_url":"https://github.com/Shopify","followers_url":"https://api.github.com/users/Shopify/followers","following_url":"https://api.github.com/users/Shopify/following{/other_user}","gists_url":"https://api.github.com/users/Shopify/gists{/gist_id}","starred_url":"https://api.github.com/users/Shopify/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Shopify/subscriptions","organizations_url":"https://api.github.com/users/Shopify/orgs","repos_url":"https://api.github.com/users/Shopify/repos","events_url":"https://api.github.com/users/Shopify/events{/privacy}","received_events_url":"https://api.github.com/users/Shopify/received_events","type":"Organization","site_admin":false},"repo":{"id":17228890,"name":"shipit-engine","full_name":"Shopify/shipit-engine","owner":{"login":"Shopify","id":8085,"avatar_url":"https://avatars.githubusercontent.com/u/8085?v=3","gravatar_id":"","url":"https://api.github.com/users/Shopify","html_url":"https://github.com/Shopify","followers_url":"https://api.github.com/users/Shopify/followers","following_url":"https://api.github.com/users/Shopify/following{/other_user}","gists_url":"https://api.github.com/users/Shopify/gists{/gist_id}","starred_url":"https://api.github.com/users/Shopify/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Shopify/subscriptions","organizations_url":"https://api.github.com/users/Shopify/orgs","repos_url":"https://api.github.com/users/Shopify/repos","events_url":"https://api.github.com/users/Shopify/events{/privacy}","received_events_url":"https://api.github.com/users/Shopify/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/Shopify/shipit-engine","description":"Deployment coordination","fork":false,"url":"https://api.github.com/repos/Shopify/shipit-engine","forks_url":"https://api.github.com/repos/Shopify/shipit-engine/forks","keys_url":"https://api.github.com/repos/Shopify/shipit-engine/keys{/key_id}","collaborators_url":"https://api.github.com/repos/Shopify/shipit-engine/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/Shopify/shipit-engine/teams","hooks_url":"https://api.github.com/repos/Shopify/shipit-engine/hooks","issue_events_url":"https://api.github.com/repos/Shopify/shipit-engine/issues/events{/number}","events_url":"https://api.github.com/repos/Shopify/shipit-engine/events","assignees_url":"https://api.github.com/repos/Shopify/shipit-engine/assignees{/user}","branches_url":"https://api.github.com/repos/Shopify/shipit-engine/branches{/branch}","tags_url":"https://api.github.com/repos/Shopify/shipit-engine/tags","blobs_url":"https://api.github.com/repos/Shopify/shipit-engine/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/Shopify/shipit-engine/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/Shopify/shipit-engine/git/refs{/sha}","trees_url":"https://api.github.com/repos/Shopify/shipit-engine/git/trees{/sha}","statuses_url":"https://api.github.com/repos/Shopify/shipit-engine/statuses/{sha}","languages_url":"https://api.github.com/repos/Shopify/shipit-engine/languages","stargazers_url":"https://api.github.com/repos/Shopify/shipit-engine/stargazers","contributors_url":"https://api.github.com/repos/Shopify/shipit-engine/contributors","subscribers_url":"https://api.github.com/repos/Shopify/shipit-engine/subscribers","subscription_url":"https://api.github.com/repos/Shopify/shipit-engine/subscription","commits_url":"https://api.github.com/repos/Shopify/shipit-engine/commits{/sha}","git_commits_url":"https://api.github.com/repos/Shopify/shipit-engine/git/commits{/sha}","comments_url":"https://api.github.com/repos/Shopify/shipit-engine/comments{/number}","issue_comment_url":"https://api.github.com/repos/Shopify/shipit-engine/issues/comments{/number}","contents_url":"https://api.github.com/repos/Shopify/shipit-engine/contents/{+path}","compare_url":"https://api.github.com/repos/Shopify/shipit-engine/compare/{base}...{head}","merges_url":"https://api.github.com/repos/Shopify/shipit-engine/merges","archive_url":"https://api.github.com/repos/Shopify/shipit-engine/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/Shopify/shipit-engine/downloads","issues_url":"https://api.github.com/repos/Shopify/shipit-engine/issues{/number}","pulls_url":"https://api.github.com/repos/Shopify/shipit-engine/pulls{/number}","milestones_url":"https://api.github.com/repos/Shopify/shipit-engine/milestones{/number}","notifications_url":"https://api.github.com/repos/Shopify/shipit-engine/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/Shopify/shipit-engine/labels{/name}","releases_url":"https://api.github.com/repos/Shopify/shipit-engine/releases{/id}","created_at":"2014-02-26T22:59:57Z","updated_at":"2015-06-30T00:21:27Z","pushed_at":"2015-06-30T14:45:49Z","git_url":"git://github.com/Shopify/shipit-engine.git","ssh_url":"git@github.com:Shopify/shipit-engine.git","clone_url":"https://github.com/Shopify/shipit-engine.git","svn_url":"https://github.com/Shopify/shipit-engine","homepage":"https://www.shopify.com/technology/34281221-introducing-shipit","size":7240,"stargazers_count":208,"watchers_count":208,"language":"Ruby","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":6,"mirror_url":null,"open_issues_count":27,"forks":6,"open_issues":27,"watchers":208,"default_branch":"master"}},"base":{"label":"Shopify:master","ref":"master","sha":"0815aa634b10d045a47b808c600214cc933f55c2","user":{"login":"Shopify","id":8085,"avatar_url":"https://avatars.githubusercontent.com/u/8085?v=3","gravatar_id":"","url":"https://api.github.com/users/Shopify","html_url":"https://github.com/Shopify","followers_url":"https://api.github.com/users/Shopify/followers","following_url":"https://api.github.com/users/Shopify/following{/other_user}","gists_url":"https://api.github.com/users/Shopify/gists{/gist_id}","starred_url":"https://api.github.com/users/Shopify/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Shopify/subscriptions","organizations_url":"https://api.github.com/users/Shopify/orgs","repos_url":"https://api.github.com/users/Shopify/repos","events_url":"https://api.github.com/users/Shopify/events{/privacy}","received_events_url":"https://api.github.com/users/Shopify/received_events","type":"Organization","site_admin":false},"repo":{"id":17228890,"name":"shipit-engine","full_name":"Shopify/shipit-engine","owner":{"login":"Shopify","id":8085,"avatar_url":"https://avatars.githubusercontent.com/u/8085?v=3","gravatar_id":"","url":"https://api.github.com/users/Shopify","html_url":"https://github.com/Shopify","followers_url":"https://api.github.com/users/Shopify/followers","following_url":"https://api.github.com/users/Shopify/following{/other_user}","gists_url":"https://api.github.com/users/Shopify/gists{/gist_id}","starred_url":"https://api.github.com/users/Shopify/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Shopify/subscriptions","organizations_url":"https://api.github.com/users/Shopify/orgs","repos_url":"https://api.github.com/users/Shopify/repos","events_url":"https://api.github.com/users/Shopify/events{/privacy}","received_events_url":"https://api.github.com/users/Shopify/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/Shopify/shipit-engine","description":"Deployment coordination","fork":false,"url":"https://api.github.com/repos/Shopify/shipit-engine","forks_url":"https://api.github.com/repos/Shopify/shipit-engine/forks","keys_url":"https://api.github.com/repos/Shopify/shipit-engine/keys{/key_id}","collaborators_url":"https://api.github.com/repos/Shopify/shipit-engine/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/Shopify/shipit-engine/teams","hooks_url":"https://api.github.com/repos/Shopify/shipit-engine/hooks","issue_events_url":"https://api.github.com/repos/Shopify/shipit-engine/issues/events{/number}","events_url":"https://api.github.com/repos/Shopify/shipit-engine/events","assignees_url":"https://api.github.com/repos/Shopify/shipit-engine/assignees{/user}","branches_url":"https://api.github.com/repos/Shopify/shipit-engine/branches{/branch}","tags_url":"https://api.github.com/repos/Shopify/shipit-engine/tags","blobs_url":"https://api.github.com/repos/Shopify/shipit-engine/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/Shopify/shipit-engine/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/Shopify/shipit-engine/git/refs{/sha}","trees_url":"https://api.github.com/repos/Shopify/shipit-engine/git/trees{/sha}","statuses_url":"https://api.github.com/repos/Shopify/shipit-engine/statuses/{sha}","languages_url":"https://api.github.com/repos/Shopify/shipit-engine/languages","stargazers_url":"https://api.github.com/repos/Shopify/shipit-engine/stargazers","contributors_url":"https://api.github.com/repos/Shopify/shipit-engine/contributors","subscribers_url":"https://api.github.com/repos/Shopify/shipit-engine/subscribers","subscription_url":"https://api.github.com/repos/Shopify/shipit-engine/subscription","commits_url":"https://api.github.com/repos/Shopify/shipit-engine/commits{/sha}","git_commits_url":"https://api.github.com/repos/Shopify/shipit-engine/git/commits{/sha}","comments_url":"https://api.github.com/repos/Shopify/shipit-engine/comments{/number}","issue_comment_url":"https://api.github.com/repos/Shopify/shipit-engine/issues/comments{/number}","contents_url":"https://api.github.com/repos/Shopify/shipit-engine/contents/{+path}","compare_url":"https://api.github.com/repos/Shopify/shipit-engine/compare/{base}...{head}","merges_url":"https://api.github.com/repos/Shopify/shipit-engine/merges","archive_url":"https://api.github.com/repos/Shopify/shipit-engine/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/Shopify/shipit-engine/downloads","issues_url":"https://api.github.com/repos/Shopify/shipit-engine/issues{/number}","pulls_url":"https://api.github.com/repos/Shopify/shipit-engine/pulls{/number}","milestones_url":"https://api.github.com/repos/Shopify/shipit-engine/milestones{/number}","notifications_url":"https://api.github.com/repos/Shopify/shipit-engine/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/Shopify/shipit-engine/labels{/name}","releases_url":"https://api.github.com/repos/Shopify/shipit-engine/releases{/id}","created_at":"2014-02-26T22:59:57Z","updated_at":"2015-06-30T00:21:27Z","pushed_at":"2015-06-30T14:45:49Z","git_url":"git://github.com/Shopify/shipit-engine.git","ssh_url":"git@github.com:Shopify/shipit-engine.git","clone_url":"https://github.com/Shopify/shipit-engine.git","svn_url":"https://github.com/Shopify/shipit-engine","homepage":"https://www.shopify.com/technology/34281221-introducing-shipit","size":7240,"stargazers_count":208,"watchers_count":208,"language":"Ruby","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":6,"mirror_url":null,"open_issues_count":27,"forks":6,"open_issues":27,"watchers":208,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/Shopify/shipit-engine/pulls/429"},"html":{"href":"https://github.com/Shopify/shipit-engine/pull/429"},"issue":{"href":"https://api.github.com/repos/Shopify/shipit-engine/issues/429"},"comments":{"href":"https://api.github.com/repos/Shopify/shipit-engine/issues/429/comments"},"review_comments":{"href":"https://api.github.com/repos/Shopify/shipit-engine/pulls/429/comments"},"review_comment":{"href":"https://api.github.com/repos/Shopify/shipit-engine/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/Shopify/shipit-engine/pulls/429/commits"},"statuses":{"href":"https://api.github.com/repos/Shopify/shipit-engine/statuses/5a7b782e45fa60aee1300b990dd1e09c866f6cfa"}}}}