diff --git a/hive/conf.py b/hive/conf.py index 032afd4f2021a372f3e417a6fb7e955cf5cd51d4..a902e87091a5633e9904c519de5275d148d827a0 100644 --- a/hive/conf.py +++ b/hive/conf.py @@ -34,7 +34,7 @@ class Conf(): add('--database-url', env_var='DATABASE_URL', required=False, help='database connection url', default='') add('--steemd-url', env_var='STEEMD_URL', required=False, help='steemd/jussi endpoint', default='{"default" : "https://api.hive.blog"}') add('--muted-accounts-url', env_var='MUTED_ACCOUNTS_URL', required=False, help='url to flat list of muted accounts', default='https://raw.githubusercontent.com/hivevectordefense/irredeemables/master/full.txt') - + add('--blacklist-api-url', env_var='BLACKLIST_API_URL', required=False, help='url to acccess blacklist api', default='https://blacklist.usehive.com') # server add('--http-server-port', type=int, env_var='HTTP_SERVER_PORT', default=8080) diff --git a/hive/indexer/sync.py b/hive/indexer/sync.py index 68ef7752432dd4cb56f75ee8aaf019431b3004fb..729dcf5ad8e04b50896862a023ab66001ffe38ec 100644 --- a/hive/indexer/sync.py +++ b/hive/indexer/sync.py @@ -48,7 +48,9 @@ class Sync: Accounts.fetch_ranks() # load irredeemables - mutes = Mutes(self._conf.get('muted_accounts_url')) + mutes = Mutes( + self._conf.get('muted_accounts_url'), + self._conf.get('blacklist_api_url')) Mutes.set_shared_instance(mutes) # community stats diff --git a/hive/server/common/mutes.py b/hive/server/common/mutes.py index 468a94594e9295c80a10bcde44b9a645e43e632a..cb60af5ffe64f5908fddc8cac4e67fdc1fcb3c0e 100644 --- a/hive/server/common/mutes.py +++ b/hive/server/common/mutes.py @@ -32,16 +32,17 @@ class Mutes: """Set the global/shared instance.""" cls._instance = instance - def __init__(self, url): + def __init__(self, url, blacklist_api_url): """Initialize a muted account list by loading from URL""" self.url = url + self.blacklist_api_url = blacklist_api_url if url: self.load() def load(self): """Reload all accounts from irredeemables endpoint and global lists.""" self.accounts = set(_read_url(self.url).decode('utf8').split()) - jsn = _read_url('https://blacklist.usehive.com/blacklists') + jsn = _read_url(self.blacklist_api_url + "/blacklists") self.blist = set(json.loads(jsn)) self.blist_map = dict() log.warning("%d muted, %d blacklisted", len(self.accounts), len(self.blist)) @@ -65,7 +66,7 @@ class Mutes: if name not in inst.blist_map: out = [] if name in inst.blist: - url = 'https://blacklist.usehive.com/user/' + name + url = "%s/user/%s" % (inst.blacklist_api_url, name) lists = json.loads(_read_url(url)) out.extend(lists['blacklisted']) diff --git a/hive/server/serve.py b/hive/server/serve.py index 0d1013721d090e4d667c7340bd9774ae810e2545..a43c8e8da1ecb40a9c8b95be30038f3e9b9020e2 100644 --- a/hive/server/serve.py +++ b/hive/server/serve.py @@ -167,7 +167,7 @@ def run_server(conf): log = logging.getLogger(__name__) methods = build_methods() - mutes = Mutes(conf.get('muted_accounts_url')) + mutes = Mutes(conf.get('muted_accounts_url'), conf.get('blacklist_api_url')) Mutes.set_shared_instance(mutes) app = web.Application()