Compare commits

...

4 Commits

Author SHA1 Message Date
JonnyWong16
a7a9ed8628 v2.1.41 2019-12-30 14:33:10 -08:00
JonnyWong16
6af96332fa Use tar.extractall instead of tar.extract 2019-12-30 14:29:19 -08:00
JonnyWong16
e334a0fc8b Change GeoLite2 tar extraction 2019-12-30 14:19:12 -08:00
JonnyWong16
54bbbb36a6 Fix Geolite2 db extraction on Windows 2019-12-30 13:58:56 -08:00
3 changed files with 15 additions and 7 deletions

View File

@@ -1,5 +1,11 @@
# Changelog # Changelog
## v2.1.41 (2019-12-30)
* Other:
* Fix: Failing to extract the GeoLite2 database on Windows.
## v2.1.40 (2019-12-30) ## v2.1.40 (2019-12-30)
* UI: * UI:

View File

@@ -644,14 +644,16 @@ def install_geoip_db(update=False):
# Extract the GeoLite2 database file # Extract the GeoLite2 database file
logger.debug(u"Tautulli Helpers :: Extracting GeoLite2 database...") logger.debug(u"Tautulli Helpers :: Extracting GeoLite2 database...")
try: try:
mmdb = None
with tarfile.open(temp_gz, 'r:gz') as tar: with tarfile.open(temp_gz, 'r:gz') as tar:
for tarinfo in tar: for member in tar.getmembers():
if tarinfo.isdir(): if geolite2_db in member.name:
member = tar.getmember(os.path.join(tarinfo.name, geolite2_db)) member.name = os.path.basename(member.name)
mmdb = tar.extractfile(member) tar.extractall(path=os.path.dirname(geolite2_db_path), members=[member])
with open(geolite2_db_path, 'wb') as db: mmdb = True
db.write(mmdb.read())
break break
if not mmdb:
raise Exception("{} not found in gzip file.".format(geolite2_db))
except Exception as e: except Exception as e:
logger.error(u"Tautulli Helpers :: Failed to extract the GeoLite2 database: %s" % e) logger.error(u"Tautulli Helpers :: Failed to extract the GeoLite2 database: %s" % e)
return False return False

View File

@@ -1,2 +1,2 @@
PLEXPY_BRANCH = "master" PLEXPY_BRANCH = "master"
PLEXPY_RELEASE_VERSION = "v2.1.40" PLEXPY_RELEASE_VERSION = "v2.1.41"