Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1866)

Unified Diff: appengine/findit/handlers/crash/fracas_crash.py

Issue 1940843003: [Findit] Use PubSub built-in authentication for push endpoint. (Closed) Base URL: https://chromium.googlesource.com/infra/infra.git@master
Patch Set: fix nit. Created 4 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: appengine/findit/handlers/crash/fracas_crash.py
diff --git a/appengine/findit/handlers/crash/fracas_crash.py b/appengine/findit/handlers/crash/fracas_crash.py
index 5112bfcc940670a40cb8e4608a9641c1a2fc51d0..d4d9f777f92fa73c4e3ce7b44bc61da3a4c85633 100644
--- a/appengine/findit/handlers/crash/fracas_crash.py
+++ b/appengine/findit/handlers/crash/fracas_crash.py
@@ -10,14 +10,10 @@ from common import constants
from common.base_handler import BaseHandler
from common.base_handler import Permission
from crash import fracas_crash_pipeline
-from model.crash.crash_config import CrashConfig
-
-
-FRACAS_ANALYSIS_QUEUE = 'fracas-crash-queue'
class FracasCrash(BaseHandler):
- PERMISSION_LEVEL = Permission.ANYONE
+ PERMISSION_LEVEL = Permission.ADMIN
def HandlePost(self):
"""Handles push delivery from Pub/Sub for crash data.
@@ -35,13 +31,6 @@ class FracasCrash(BaseHandler):
},
}
"""
- token = self.request.get('token', '').strip()
- crash_config = CrashConfig.Get()
- if token != crash_config.fracas.get('crash_data_push_token'):
- logging.warning('Unauthorized access.')
- return self.CreateError(
- 'Unauthorized access: invalid token "%s"' % token, 403)
-
received_message = json.loads(self.request.body)
pubsub_message = received_message['message']
crash_data = json.loads(base64.b64decode(pubsub_message['data']))
@@ -49,8 +38,12 @@ class FracasCrash(BaseHandler):
logging.info('Processing message %s from subscription %s.',
pubsub_message['message_id'], received_message['subscription'])
- fracas_crash_pipeline.ScheduleNewAnalysisForCrash(
- crash_data['channel'], crash_data['platform'], crash_data['signature'],
- crash_data['stack_trace'], crash_data['chrome_version'],
- crash_data['versions_to_cpm'],
- queue_name=constants.CRASH_ANALYSIS_FRACAS_QUEUE)
+ try:
+ fracas_crash_pipeline.ScheduleNewAnalysisForCrash(
+ crash_data['channel'], crash_data['platform'],
+ crash_data['signature'], crash_data['stack_trace'],
+ crash_data['chrome_version'], crash_data['versions_to_cpm'],
+ queue_name=constants.CRASH_ANALYSIS_FRACAS_QUEUE)
+ except KeyError: # pragma: no cover.
+ # TODO: save exception in datastore and create a page to show them.
+ logging.exception('Failed to process fracas message')
« no previous file with comments | « appengine/findit/crash/test/crash_testcase.py ('k') | appengine/findit/handlers/crash/test/fracas_crash_test.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698