{"action":"created","comment":{"url":"https://api.github.com/repos/mozilla/treeherder/pulls/comments/85744354","pull_request_review_id":6441287,"id":85744354,"diff_hunk":"@@ -24,27 +63,39 @@ def authenticate(self, authorization=None, host=None, port=None):\n             })\n \n             if result[\"status\"] == \"auth-success\":\n-                username = result[\"clientId\"][-30:]\n-                email = result[\"clientId\"].split(\"/\")[1]\n+                email = self._get_email(result)\n+                username = self._get_scope_value(\n+                    result, \"assume:mozillians-user\") or email\n \n-                user = User.objects.filter(\n-                    Q(email=email) | Q(username=username)).first()\n+                user = User.objects.filter(email=email).first()\n \n                 if not user:\n                     # the user doesn't already exist, create it.\n                     logger.warning(\"Creating new user: {}\".format(email))\n                     sha = sha1()\n                     sha.update(email)\n                     user = User(email=email,\n-                                username=username,\n+                                username=username[:30],\n                                 password=sha.hexdigest()[25:]\n                                 )\n-                    user.save()\n \n+                # User's sheriff status is no longer fetched from the DB.  Now\n+                # it is determined solely by having the correct scope.\n+                user.is_staff = scope_match(\n+                    result[\"scopes\"], [[\"assume:project:treeherder:sheriff\"]])","path":"treeherder/auth/backends.py","position":null,"original_position":83,"commit_id":"4d0d7619cf57b549124f69d84565786f3a26eb43","original_commit_id":"4d0d7619cf57b549124f69d84565786f3a26eb43","user":{"login":"djmitche","id":28673,"avatar_url":"https://avatars.githubusercontent.com/u/28673?v=3","gravatar_id":"","url":"https://api.github.com/users/djmitche","html_url":"https://github.com/djmitche","followers_url":"https://api.github.com/users/djmitche/followers","following_url":"https://api.github.com/users/djmitche/following{/other_user}","gists_url":"https://api.github.com/users/djmitche/gists{/gist_id}","starred_url":"https://api.github.com/users/djmitche/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/djmitche/subscriptions","organizations_url":"https://api.github.com/users/djmitche/orgs","repos_url":"https://api.github.com/users/djmitche/repos","events_url":"https://api.github.com/users/djmitche/events{/privacy}","received_events_url":"https://api.github.com/users/djmitche/received_events","type":"User","site_admin":false},"body":":+1: ","created_at":"2016-10-31T14:06:46Z","updated_at":"2016-10-31T14:06:46Z","html_url":"https://github.com/mozilla/treeherder/pull/1922#discussion_r85744354","pull_request_url":"https://api.github.com/repos/mozilla/treeherder/pulls/1922","_links":{"self":{"href":"https://api.github.com/repos/mozilla/treeherder/pulls/comments/85744354"},"html":{"href":"https://github.com/mozilla/treeherder/pull/1922#discussion_r85744354"},"pull_request":{"href":"https://api.github.com/repos/mozilla/treeherder/pulls/1922"}}},"pull_request":{"url":"https://api.github.com/repos/mozilla/treeherder/pulls/1922","id":89262715,"html_url":"https://github.com/mozilla/treeherder/pull/1922","diff_url":"https://github.com/mozilla/treeherder/pull/1922.diff","patch_url":"https://github.com/mozilla/treeherder/pull/1922.patch","issue_url":"https://api.github.com/repos/mozilla/treeherder/issues/1922","number":1922,"state":"open","locked":false,"title":"Bug 1273034 - Transition to Taskcluster Auth from Persona","user":{"login":"camd","id":419924,"avatar_url":"https://avatars.githubusercontent.com/u/419924?v=3","gravatar_id":"","url":"https://api.github.com/users/camd","html_url":"https://github.com/camd","followers_url":"https://api.github.com/users/camd/followers","following_url":"https://api.github.com/users/camd/following{/other_user}","gists_url":"https://api.github.com/users/camd/gists{/gist_id}","starred_url":"https://api.github.com/users/camd/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/camd/subscriptions","organizations_url":"https://api.github.com/users/camd/orgs","repos_url":"https://api.github.com/users/camd/repos","events_url":"https://api.github.com/users/camd/events{/privacy}","received_events_url":"https://api.github.com/users/camd/received_events","type":"User","site_admin":false},"body":"This is a WIP\n\n<!-- Reviewable:start -->\n---\n\nThis change is [<img src=\"https://reviewable.io/review_button.svg\" height=\"34\" align=\"absmiddle\" alt=\"Reviewable\"/>](https://reviewable.io/reviews/mozilla/treeherder/1922)\n\n<!-- Reviewable:end -->\n","created_at":"2016-10-13T19:05:59Z","updated_at":"2016-10-31T14:08:11Z","closed_at":null,"merged_at":null,"merge_commit_sha":"13a965c89480a24aeeb2a015f43085e262345d09","assignee":{"login":"camd","id":419924,"avatar_url":"https://avatars.githubusercontent.com/u/419924?v=3","gravatar_id":"","url":"https://api.github.com/users/camd","html_url":"https://github.com/camd","followers_url":"https://api.github.com/users/camd/followers","following_url":"https://api.github.com/users/camd/following{/other_user}","gists_url":"https://api.github.com/users/camd/gists{/gist_id}","starred_url":"https://api.github.com/users/camd/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/camd/subscriptions","organizations_url":"https://api.github.com/users/camd/orgs","repos_url":"https://api.github.com/users/camd/repos","events_url":"https://api.github.com/users/camd/events{/privacy}","received_events_url":"https://api.github.com/users/camd/received_events","type":"User","site_admin":false},"assignees":[{"login":"camd","id":419924,"avatar_url":"https://avatars.githubusercontent.com/u/419924?v=3","gravatar_id":"","url":"https://api.github.com/users/camd","html_url":"https://github.com/camd","followers_url":"https://api.github.com/users/camd/followers","following_url":"https://api.github.com/users/camd/following{/other_user}","gists_url":"https://api.github.com/users/camd/gists{/gist_id}","starred_url":"https://api.github.com/users/camd/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/camd/subscriptions","organizations_url":"https://api.github.com/users/camd/orgs","repos_url":"https://api.github.com/users/camd/repos","events_url":"https://api.github.com/users/camd/events{/privacy}","received_events_url":"https://api.github.com/users/camd/received_events","type":"User","site_admin":false}],"milestone":null,"commits_url":"https://api.github.com/repos/mozilla/treeherder/pulls/1922/commits","review_comments_url":"https://api.github.com/repos/mozilla/treeherder/pulls/1922/comments","review_comment_url":"https://api.github.com/repos/mozilla/treeherder/pulls/comments{/number}","comments_url":"https://api.github.com/repos/mozilla/treeherder/issues/1922/comments","statuses_url":"https://api.github.com/repos/mozilla/treeherder/statuses/4d0d7619cf57b549124f69d84565786f3a26eb43","head":{"label":"mozilla:taskcluster-auth","ref":"taskcluster-auth","sha":"4d0d7619cf57b549124f69d84565786f3a26eb43","user":{"login":"mozilla","id":131524,"avatar_url":"https://avatars.githubusercontent.com/u/131524?v=3","gravatar_id":"","url":"https://api.github.com/users/mozilla","html_url":"https://github.com/mozilla","followers_url":"https://api.github.com/users/mozilla/followers","following_url":"https://api.github.com/users/mozilla/following{/other_user}","gists_url":"https://api.github.com/users/mozilla/gists{/gist_id}","starred_url":"https://api.github.com/users/mozilla/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mozilla/subscriptions","organizations_url":"https://api.github.com/users/mozilla/orgs","repos_url":"https://api.github.com/users/mozilla/repos","events_url":"https://api.github.com/users/mozilla/events{/privacy}","received_events_url":"https://api.github.com/users/mozilla/received_events","type":"Organization","site_admin":false},"repo":{"id":8463294,"name":"treeherder","full_name":"mozilla/treeherder","owner":{"login":"mozilla","id":131524,"avatar_url":"https://avatars.githubusercontent.com/u/131524?v=3","gravatar_id":"","url":"https://api.github.com/users/mozilla","html_url":"https://github.com/mozilla","followers_url":"https://api.github.com/users/mozilla/followers","following_url":"https://api.github.com/users/mozilla/following{/other_user}","gists_url":"https://api.github.com/users/mozilla/gists{/gist_id}","starred_url":"https://api.github.com/users/mozilla/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mozilla/subscriptions","organizations_url":"https://api.github.com/users/mozilla/orgs","repos_url":"https://api.github.com/users/mozilla/repos","events_url":"https://api.github.com/users/mozilla/events{/privacy}","received_events_url":"https://api.github.com/users/mozilla/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/mozilla/treeherder","description":"A system for managing CI data for Mozilla projects","fork":false,"url":"https://api.github.com/repos/mozilla/treeherder","forks_url":"https://api.github.com/repos/mozilla/treeherder/forks","keys_url":"https://api.github.com/repos/mozilla/treeherder/keys{/key_id}","collaborators_url":"https://api.github.com/repos/mozilla/treeherder/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/mozilla/treeherder/teams","hooks_url":"https://api.github.com/repos/mozilla/treeherder/hooks","issue_events_url":"https://api.github.com/repos/mozilla/treeherder/issues/events{/number}","events_url":"https://api.github.com/repos/mozilla/treeherder/events","assignees_url":"https://api.github.com/repos/mozilla/treeherder/assignees{/user}","branches_url":"https://api.github.com/repos/mozilla/treeherder/branches{/branch}","tags_url":"https://api.github.com/repos/mozilla/treeherder/tags","blobs_url":"https://api.github.com/repos/mozilla/treeherder/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/mozilla/treeherder/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/mozilla/treeherder/git/refs{/sha}","trees_url":"https://api.github.com/repos/mozilla/treeherder/git/trees{/sha}","statuses_url":"https://api.github.com/repos/mozilla/treeherder/statuses/{sha}","languages_url":"https://api.github.com/repos/mozilla/treeherder/languages","stargazers_url":"https://api.github.com/repos/mozilla/treeherder/stargazers","contributors_url":"https://api.github.com/repos/mozilla/treeherder/contributors","subscribers_url":"https://api.github.com/repos/mozilla/treeherder/subscribers","subscription_url":"https://api.github.com/repos/mozilla/treeherder/subscription","commits_url":"https://api.github.com/repos/mozilla/treeherder/commits{/sha}","git_commits_url":"https://api.github.com/repos/mozilla/treeherder/git/commits{/sha}","comments_url":"https://api.github.com/repos/mozilla/treeherder/comments{/number}","issue_comment_url":"https://api.github.com/repos/mozilla/treeherder/issues/comments{/number}","contents_url":"https://api.github.com/repos/mozilla/treeherder/contents/{+path}","compare_url":"https://api.github.com/repos/mozilla/treeherder/compare/{base}...{head}","merges_url":"https://api.github.com/repos/mozilla/treeherder/merges","archive_url":"https://api.github.com/repos/mozilla/treeherder/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/mozilla/treeherder/downloads","issues_url":"https://api.github.com/repos/mozilla/treeherder/issues{/number}","pulls_url":"https://api.github.com/repos/mozilla/treeherder/pulls{/number}","milestones_url":"https://api.github.com/repos/mozilla/treeherder/milestones{/number}","notifications_url":"https://api.github.com/repos/mozilla/treeherder/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/mozilla/treeherder/labels{/name}","releases_url":"https://api.github.com/repos/mozilla/treeherder/releases{/id}","deployments_url":"https://api.github.com/repos/mozilla/treeherder/deployments","created_at":"2013-02-27T19:17:37Z","updated_at":"2016-10-24T13:08:21Z","pushed_at":"2016-10-31T14:07:46Z","git_url":"git://github.com/mozilla/treeherder.git","ssh_url":"git@github.com:mozilla/treeherder.git","clone_url":"https://github.com/mozilla/treeherder.git","svn_url":"https://github.com/mozilla/treeherder","homepage":"https://wiki.mozilla.org/EngineeringProductivity/Projects/Treeherder","size":401478,"stargazers_count":67,"watchers_count":67,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":120,"mirror_url":null,"open_issues_count":33,"forks":120,"open_issues":33,"watchers":67,"default_branch":"master"}},"base":{"label":"mozilla:master","ref":"master","sha":"4acd66b06f8d634df78f731b59bd1aa03906db79","user":{"login":"mozilla","id":131524,"avatar_url":"https://avatars.githubusercontent.com/u/131524?v=3","gravatar_id":"","url":"https://api.github.com/users/mozilla","html_url":"https://github.com/mozilla","followers_url":"https://api.github.com/users/mozilla/followers","following_url":"https://api.github.com/users/mozilla/following{/other_user}","gists_url":"https://api.github.com/users/mozilla/gists{/gist_id}","starred_url":"https://api.github.com/users/mozilla/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mozilla/subscriptions","organizations_url":"https://api.github.com/users/mozilla/orgs","repos_url":"https://api.github.com/users/mozilla/repos","events_url":"https://api.github.com/users/mozilla/events{/privacy}","received_events_url":"https://api.github.com/users/mozilla/received_events","type":"Organization","site_admin":false},"repo":{"id":8463294,"name":"treeherder","full_name":"mozilla/treeherder","owner":{"login":"mozilla","id":131524,"avatar_url":"https://avatars.githubusercontent.com/u/131524?v=3","gravatar_id":"","url":"https://api.github.com/users/mozilla","html_url":"https://github.com/mozilla","followers_url":"https://api.github.com/users/mozilla/followers","following_url":"https://api.github.com/users/mozilla/following{/other_user}","gists_url":"https://api.github.com/users/mozilla/gists{/gist_id}","starred_url":"https://api.github.com/users/mozilla/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mozilla/subscriptions","organizations_url":"https://api.github.com/users/mozilla/orgs","repos_url":"https://api.github.com/users/mozilla/repos","events_url":"https://api.github.com/users/mozilla/events{/privacy}","received_events_url":"https://api.github.com/users/mozilla/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/mozilla/treeherder","description":"A system for managing CI data for Mozilla projects","fork":false,"url":"https://api.github.com/repos/mozilla/treeherder","forks_url":"https://api.github.com/repos/mozilla/treeherder/forks","keys_url":"https://api.github.com/repos/mozilla/treeherder/keys{/key_id}","collaborators_url":"https://api.github.com/repos/mozilla/treeherder/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/mozilla/treeherder/teams","hooks_url":"https://api.github.com/repos/mozilla/treeherder/hooks","issue_events_url":"https://api.github.com/repos/mozilla/treeherder/issues/events{/number}","events_url":"https://api.github.com/repos/mozilla/treeherder/events","assignees_url":"https://api.github.com/repos/mozilla/treeherder/assignees{/user}","branches_url":"https://api.github.com/repos/mozilla/treeherder/branches{/branch}","tags_url":"https://api.github.com/repos/mozilla/treeherder/tags","blobs_url":"https://api.github.com/repos/mozilla/treeherder/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/mozilla/treeherder/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/mozilla/treeherder/git/refs{/sha}","trees_url":"https://api.github.com/repos/mozilla/treeherder/git/trees{/sha}","statuses_url":"https://api.github.com/repos/mozilla/treeherder/statuses/{sha}","languages_url":"https://api.github.com/repos/mozilla/treeherder/languages","stargazers_url":"https://api.github.com/repos/mozilla/treeherder/stargazers","contributors_url":"https://api.github.com/repos/mozilla/treeherder/contributors","subscribers_url":"https://api.github.com/repos/mozilla/treeherder/subscribers","subscription_url":"https://api.github.com/repos/mozilla/treeherder/subscription","commits_url":"https://api.github.com/repos/mozilla/treeherder/commits{/sha}","git_commits_url":"https://api.github.com/repos/mozilla/treeherder/git/commits{/sha}","comments_url":"https://api.github.com/repos/mozilla/treeherder/comments{/number}","issue_comment_url":"https://api.github.com/repos/mozilla/treeherder/issues/comments{/number}","contents_url":"https://api.github.com/repos/mozilla/treeherder/contents/{+path}","compare_url":"https://api.github.com/repos/mozilla/treeherder/compare/{base}...{head}","merges_url":"https://api.github.com/repos/mozilla/treeherder/merges","archive_url":"https://api.github.com/repos/mozilla/treeherder/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/mozilla/treeherder/downloads","issues_url":"https://api.github.com/repos/mozilla/treeherder/issues{/number}","pulls_url":"https://api.github.com/repos/mozilla/treeherder/pulls{/number}","milestones_url":"https://api.github.com/repos/mozilla/treeherder/milestones{/number}","notifications_url":"https://api.github.com/repos/mozilla/treeherder/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/mozilla/treeherder/labels{/name}","releases_url":"https://api.github.com/repos/mozilla/treeherder/releases{/id}","deployments_url":"https://api.github.com/repos/mozilla/treeherder/deployments","created_at":"2013-02-27T19:17:37Z","updated_at":"2016-10-24T13:08:21Z","pushed_at":"2016-10-31T14:07:46Z","git_url":"git://github.com/mozilla/treeherder.git","ssh_url":"git@github.com:mozilla/treeherder.git","clone_url":"https://github.com/mozilla/treeherder.git","svn_url":"https://github.com/mozilla/treeherder","homepage":"https://wiki.mozilla.org/EngineeringProductivity/Projects/Treeherder","size":401478,"stargazers_count":67,"watchers_count":67,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":120,"mirror_url":null,"open_issues_count":33,"forks":120,"open_issues":33,"watchers":67,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/mozilla/treeherder/pulls/1922"},"html":{"href":"https://github.com/mozilla/treeherder/pull/1922"},"issue":{"href":"https://api.github.com/repos/mozilla/treeherder/issues/1922"},"comments":{"href":"https://api.github.com/repos/mozilla/treeherder/issues/1922/comments"},"review_comments":{"href":"https://api.github.com/repos/mozilla/treeherder/pulls/1922/comments"},"review_comment":{"href":"https://api.github.com/repos/mozilla/treeherder/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/mozilla/treeherder/pulls/1922/commits"},"statuses":{"href":"https://api.github.com/repos/mozilla/treeherder/statuses/4d0d7619cf57b549124f69d84565786f3a26eb43"}}}}
{"actor":{"display_login":"djmitche"}}