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

Unified Diff: tools/telemetry/telemetry/page/page_set.py

Issue 324503002: Add optional cloud bucket permission property to page and page_set (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: addressing review comments Created 6 years, 6 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: tools/telemetry/telemetry/page/page_set.py
diff --git a/tools/telemetry/telemetry/page/page_set.py b/tools/telemetry/telemetry/page/page_set.py
index 234e7b1a8e29655934c755707c93162c7c1aaed9..08009e821e852c4ca0b186b58d910073a93fb133 100644
--- a/tools/telemetry/telemetry/page/page_set.py
+++ b/tools/telemetry/telemetry/page/page_set.py
@@ -9,6 +9,13 @@ import os
from telemetry.core import util
from telemetry.page import page as page_module
from telemetry.page import page_set_archive_info
+from telemetry.page import cloud_storage
+
+
+PUBLIC_BUCKET = cloud_storage.PUBLIC_BUCKET
+PARTNER_BUCKET = cloud_storage.PARTNER_BUCKET
+INTERNAL_BUCKET = cloud_storage.INTERNAL_BUCKET
+
class PageSetError(Exception):
pass
@@ -18,7 +25,7 @@ class PageSet(object):
def __init__(self, file_path=None, archive_data_file='',
credentials_path=None, user_agent_type=None,
make_javascript_deterministic=True, startup_url='',
- serving_dirs=None):
+ serving_dirs=None, privacy_bucket=None):
# The default value of file_path is location of the file that define this
# page set instance's class.
if file_path is None:
@@ -44,6 +51,11 @@ class PageSet(object):
self.serving_dirs.add(os.path.realpath(sd))
else:
self.serving_dirs.add(os.path.realpath(os.path.join(self.base_dir, sd)))
+ if self._IsValidPrivacyBucket(privacy_bucket):
+ self._privacy_bucket = privacy_bucket
+ else:
+ raise ValueError("Pageset privacy bucket %s is invalid"
+ % privacy_bucket)
tonyg 2014/06/09 22:02:37 nit: indentation is 2 spaces too deep. This may al
@classmethod
def Name(cls):
@@ -99,6 +111,14 @@ pages in %s must be in the form of def Run<...>(self, action_runner):"""
% file_path)
return page_set
+ @staticmethod
+ def _IsValidPrivacyBucket(bucket_name):
+ if not bucket_name:
+ return True
+ if (bucket_name in [PUBLIC_BUCKET, PARTNER_BUCKET, INTERNAL_BUCKET]):
+ return True
+ return False
+
@property
def base_dir(self):
if os.path.isfile(self.file_path):
@@ -115,6 +135,10 @@ pages in %s must be in the form of def Run<...>(self, action_runner):"""
os.path.join(self.base_dir, self.archive_data_file)))
return self._wpr_archive_info
+ @property
+ def privacy_bucket(self):
+ return self._privacy_bucket
+
@wpr_archive_info.setter
def wpr_archive_info(self, value): # pylint: disable=E0202
self._wpr_archive_info = value
« no previous file with comments | « no previous file | tools/telemetry/telemetry/page/page_set_unittest.py » ('j') | tools/telemetry/unittest_data/test_page_set.py » ('J')

Powered by Google App Engine
This is Rietveld 408576698