Browse Source

WIP

pull/3322/head
eribeiro 5 years ago
parent
commit
04e0b6ba8a
  1. 18
      docker/solr_api.py

18
docker/solr_api.py

@ -5,6 +5,7 @@ import requests
import subprocess import subprocess
import sys import sys
import zipfile import zipfile
from pathlib import Path
## ##
## Este módulo deve ser executado na raiz do projeto ## Este módulo deve ser executado na raiz do projeto
@ -29,7 +30,7 @@ class SolrClient:
CONFIGSET_NAME = "sapl_configset" CONFIGSET_NAME = "sapl_configset"
CONFIGSET_PATH = "../solr/sapl_configset/conf/" CONFIGSET_PATH = "../solr/sapl_configset/conf"
def __init__(self, url): def __init__(self, url):
self.url = url self.url = url
@ -64,20 +65,13 @@ class SolrClient:
def zip_configset(self): def zip_configset(self):
try: try:
# get configset files base_path = Path(self.CONFIGSET_PATH).expanduser().resolve(strict=True)
configset_files = []
for root, d, files in os.walk(self.CONFIGSET_PATH):
for f in files:
configset_files.append(os.path.join(root, f))
# zip files in memory # zip files in memory
_zipfile = BytesIO() _zipfile = BytesIO()
with zipfile.ZipFile(_zipfile, 'w') as zipf: with zipfile.ZipFile(_zipfile, 'w', zipfile.ZIP_DEFLATED) as zipf:
for f in configset_files: for file in base_path.rglob('*'):
# pega nome a partir de conf/ sem perder nomes de subdiretório zipf.write(file, file.relative_to(base_path))
filename = f[f.index('conf/')+5:]
print(filename)
zipf.write(f, filename, compress_type=zipfile.ZIP_DEFLATED)
return _zipfile return _zipfile
except Exception as e: except Exception as e:
print(e) print(e)

Loading…
Cancel
Save