make login optional, support passing config dict

This commit is contained in:
j 2010-11-18 15:34:34 +01:00
parent c9eccc6aaa
commit e44dad7dec
2 changed files with 20 additions and 8 deletions

View file

@ -47,9 +47,14 @@ def encode(filename, profile):
class Client(object): class Client(object):
def __init__(self, config): def __init__(self, config):
if isinstance(config, basestring):
with open(config) as f: with open(config) as f:
self._config = json.loads(f.read()) self._config = json.loads(f.read())
else:
self.config = config
self.api = API(self._config['url']) self.api = API(self._config['url'])
if 'username' in self._config:
r = self.api.login({'username':self._config['username'], 'password':self._config['password']}) r = self.api.login({'username':self._config['username'], 'password':self._config['password']})
if r['status']['code'] == 200: if r['status']['code'] == 200:
self.user = r['data']['user'] self.user = r['data']['user']

View file

@ -3,9 +3,16 @@
# encoding: utf-8 # encoding: utf-8
from distutils.core import setup from distutils.core import setup
def get_bzr_version():
import os
rev = int(os.popen('bzr revno').read())
if rev:
return u'%s' % rev
return u'unknown'
setup( setup(
name="pandora_client", name="pandora_client",
version="1.0", version="1.0.%s" % get_bzr_version() ,
description='''pandora_client - headless archive client for pan.do/ra description='''pandora_client - headless archive client for pan.do/ra
can be used instead of OxFF to keep archive and pan.do/ra instance in sync. can be used instead of OxFF to keep archive and pan.do/ra instance in sync.