Fix importBundle
Avoid using SiteManager as initializing it out of order breaks things
This commit is contained in:
parent
9444e097a6
commit
2b51e23650
1 changed files with 11 additions and 4 deletions
15
src/main.py
15
src/main.py
|
@ -37,8 +37,14 @@ load_config()
|
||||||
def importBundle(bundle):
|
def importBundle(bundle):
|
||||||
from zipfile import ZipFile
|
from zipfile import ZipFile
|
||||||
from Crypt.CryptBitcoin import isValidAddress
|
from Crypt.CryptBitcoin import isValidAddress
|
||||||
from Site import SiteManager
|
import json
|
||||||
SiteManager.site_manager.load()
|
|
||||||
|
sites_json_path = f"{config.data_dir}/sites.json"
|
||||||
|
try:
|
||||||
|
with open(sites_json_path) as f:
|
||||||
|
sites = json.load(f)
|
||||||
|
except Exception as err:
|
||||||
|
sites = {}
|
||||||
|
|
||||||
with ZipFile(bundle) as zf:
|
with ZipFile(bundle) as zf:
|
||||||
all_files = zf.namelist()
|
all_files = zf.namelist()
|
||||||
|
@ -59,10 +65,11 @@ def importBundle(bundle):
|
||||||
info.filename = tgt
|
info.filename = tgt
|
||||||
zf.extract(info)
|
zf.extract(info)
|
||||||
logging.info(f'add site {d}')
|
logging.info(f'add site {d}')
|
||||||
SiteManager.site_manager.add(d, noload=True)
|
sites[d] = {}
|
||||||
else:
|
else:
|
||||||
logging.info(f'Warning: unknown file in a bundle: {prefix+d}')
|
logging.info(f'Warning: unknown file in a bundle: {prefix+d}')
|
||||||
SiteManager.site_manager.save()
|
with open(sites_json_path, 'w') as f:
|
||||||
|
json.dump(sites, f)
|
||||||
|
|
||||||
def init_dirs():
|
def init_dirs():
|
||||||
data_dir = config.data_dir
|
data_dir = config.data_dir
|
||||||
|
|
Loading…
Reference in a new issue