summaryrefslogtreecommitdiffstats
path: root/chromium/third_party/skia/tools/retrieve_from_googlesource.py
diff options
context:
space:
mode:
Diffstat (limited to 'chromium/third_party/skia/tools/retrieve_from_googlesource.py')
-rw-r--r--chromium/third_party/skia/tools/retrieve_from_googlesource.py37
1 files changed, 37 insertions, 0 deletions
diff --git a/chromium/third_party/skia/tools/retrieve_from_googlesource.py b/chromium/third_party/skia/tools/retrieve_from_googlesource.py
new file mode 100644
index 00000000000..2f78ce03928
--- /dev/null
+++ b/chromium/third_party/skia/tools/retrieve_from_googlesource.py
@@ -0,0 +1,37 @@
+#!/usr/bin/python
+
+# Copyright (c) 2014 The Chromium Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+
+"""Retrieve the given file from googlesource.com."""
+
+
+from contextlib import closing
+
+import base64
+import sys
+import urllib2
+
+
+def get(repo_url, filepath):
+ """Retrieve the contents of the given file from the given googlesource repo.
+
+ Args:
+ repo_url: string; URL of the repository from which to retrieve the file.
+ filepath: string; path of the file within the repository.
+
+ Return:
+ string; the contents of the given file.
+ """
+ base64_url = '/'.join((repo_url, '+', 'master', filepath)) + '?format=TEXT'
+ with closing(urllib2.urlopen(base64_url)) as f:
+ return base64.b64decode(f.read())
+
+
+if __name__ == '__main__':
+ if len(sys.argv) != 3:
+ print >> sys.stderr, 'Usage: %s <repo_url> <filepath>' % sys.argv[0]
+ sys.exit(1)
+ sys.stdout.write(get(sys.argv[1], sys.argv[2]))