From afae2a016e75abe9a6493f353474655eee5757f1 Mon Sep 17 00:00:00 2001 From: Tim Abbott Date: Mon, 26 Nov 2012 10:45:11 -0500 Subject: [PATCH] api: Read the API key from ~/.humbug-api-key by default. (imported from commit 309469a0955969eafd78fbdf89d9651cb530010d) --- common.py | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/common.py b/common.py index 8bfc0e7..61a7668 100644 --- a/common.py +++ b/common.py @@ -6,14 +6,24 @@ import time import traceback import urlparse import sys +import os # Check that we have a recent enough version # Older versions don't provide the 'json' attribute on responses. assert(requests.__version__ > '0.12') class HumbugAPI(): - def __init__(self, email, api_key, verbose=False, retry_on_errors=True, + def __init__(self, email, api_key=None, api_key_file=None, + verbose=False, retry_on_errors=True, site="https://humbughq.com", client="API"): + if api_key is None: + if api_key_file is None: + api_key_file = os.path.join(os.environ["HOME"], ".humbug-api-key") + if not os.path.exists(api_key_file): + raise RuntimeError("api_key not specified and %s does not exist" + % (api_key_file,)) + api_key = file(api_key_file).read().strip() + self.api_key = api_key self.email = email self.verbose = verbose