| #!/usr/bin/python |
| |
| # Copyright (c) 2013 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. |
| |
| """ |
| Provides read access to buildbot's global_variables.json . |
| """ |
| |
| import json |
| import svn |
| |
| _global_vars = None |
| |
| class NoSuchGlobalVariable(KeyError): |
| pass |
| |
| def Get(var_name): |
| '''Return the value associated with this name in global_variables.json. |
| Raises NoSuchGlobalVariable if there is no variable with that name.''' |
| global _global_vars |
| if not _global_vars: |
| _global_vars = json.loads(svn.Cat('http://skia.googlecode.com/svn/' |
| 'buildbot/site_config/' |
| 'global_variables.json')) |
| try: |
| return _global_vars[var_name]['value'] |
| except KeyError: |
| raise NoSuchGlobalVariable(var_name) |