From 3d0f4b275fdaa4688773920a642ca8e8f9bf3a28 Mon Sep 17 00:00:00 2001 From: "Nicholas St. Germain" Date: Fri, 11 Jan 2019 23:27:06 -0600 Subject: [PATCH] added ssl/verify_ssl for influx as options --- data/varken.example.ini | 2 ++ varken/dbmanager.py | 5 +++-- varken/iniparser.py | 8 +++++--- varken/structures.py | 2 ++ 4 files changed, 12 insertions(+), 5 deletions(-) diff --git a/data/varken.example.ini b/data/varken.example.ini index 26c60b1..472fc11 100644 --- a/data/varken.example.ini +++ b/data/varken.example.ini @@ -9,6 +9,8 @@ unifi_server_ids = false [influxdb] url = influxdb.domain.tld port = 8086 +ssl = false +verify_ssl = false username = root password = root diff --git a/varken/dbmanager.py b/varken/dbmanager.py index 9035db2..486d8aa 100644 --- a/varken/dbmanager.py +++ b/varken/dbmanager.py @@ -5,8 +5,9 @@ from influxdb import InfluxDBClient class DBManager(object): def __init__(self, server): self.server = server - self.influx = InfluxDBClient(self.server.url, self.server.port, self.server.username, self.server.password, - 'varken') + self.influx = InfluxDBClient(host=self.server.url, port=self.server.port, username=self.server.username, + password=self.server.password, ssl=self.server.ssl, database='varken', + verify_ssl=self.server.verify_ssl) databases = [db['name'] for db in self.influx.get_list_database()] self.logger = getLogger() diff --git a/varken/iniparser.py b/varken/iniparser.py index 3c6ea3f..3e7d2ec 100644 --- a/varken/iniparser.py +++ b/varken/iniparser.py @@ -141,13 +141,15 @@ class INIParser(object): self.config_blacklist() # Parse InfluxDB options url = self.url_check(self.config.get('influxdb', 'url'), include_port=False, section='influxdb') - port = self.config.getint('influxdb', 'port') + ssl = self.config.getboolean('influxdb', 'ssl') + verify_ssl = self.config.getboolean('influxdb', 'verify_ssl') username = self.config.get('influxdb', 'username') - password = self.config.get('influxdb', 'password') - self.influx_server = InfluxServer(url=url, port=port, username=username, password=password) + + self.influx_server = InfluxServer(url=url, port=port, username=username, password=password, ssl=ssl, + verify_ssl=verify_ssl) # Check for all enabled services for service in self.services: diff --git a/varken/structures.py b/varken/structures.py index 648db91..9c081da 100644 --- a/varken/structures.py +++ b/varken/structures.py @@ -14,8 +14,10 @@ if version_info < (3, 6, 2): class InfluxServer(NamedTuple): password: str = 'root' port: int = 8086 + ssl: bool = False url: str = 'localhost' username: str = 'root' + verify_ssl: bool = False class SonarrServer(NamedTuple):