move config to data folder, fixes #171
This commit is contained in:
parent
0e87b10079
commit
b05618f50a
7 changed files with 61 additions and 43 deletions
15
ctl
15
ctl
|
@ -10,9 +10,18 @@ BASE=`pwd`
|
||||||
SYSTEM=`uname -s`
|
SYSTEM=`uname -s`
|
||||||
PLATFORM=`uname -m`
|
PLATFORM=`uname -m`
|
||||||
|
|
||||||
|
DATA="$BASE/data"
|
||||||
|
if [ ! -e "$DATA" ] && [ -e "$BASE/config" ]; then
|
||||||
|
#mv "$BASE/config" "$DATA"
|
||||||
|
DATA="$BASE/config"
|
||||||
|
else
|
||||||
|
if [ ! -e "$BASE/data/release.json" ] && [ -e "$BASE/config/release.json" ]; then
|
||||||
|
mv "$BASE/config/release.json" "$BASE/data/release.json"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
if [ ! -e $PID ]; then
|
if [ ! -e $PID ]; then
|
||||||
if [ -e "$BASE/config/tor/hostname" ]; then
|
if [ -e "$DATA/tor/hostname" ]; then
|
||||||
onion=$(cat "$BASE/config/tor/hostname")
|
onion=$(cat "$DATA/tor/hostname")
|
||||||
id=${onion/.onion/}
|
id=${onion/.onion/}
|
||||||
PID="/tmp/$NAME.$USER.$id.pid"
|
PID="/tmp/$NAME.$USER.$id.pid"
|
||||||
fi
|
fi
|
||||||
|
@ -44,7 +53,7 @@ fi
|
||||||
PYTHONPATH="$PLATFORM_ENV/lib/python3.4/site-packages:$SHARED_ENV/lib/python3.4/site-packages:$BASE/$NAME"
|
PYTHONPATH="$PLATFORM_ENV/lib/python3.4/site-packages:$SHARED_ENV/lib/python3.4/site-packages:$BASE/$NAME"
|
||||||
export PYTHONPATH
|
export PYTHONPATH
|
||||||
|
|
||||||
oxCACHE="$BASE/config/ox"
|
oxCACHE="$DATA/ox"
|
||||||
export oxCACHE
|
export oxCACHE
|
||||||
|
|
||||||
#must be called to update commands in $PATH
|
#must be called to update commands in $PATH
|
||||||
|
|
22
install
22
install
|
@ -20,8 +20,10 @@ class Install(Thread):
|
||||||
status = {}
|
status = {}
|
||||||
failed = False
|
failed = False
|
||||||
|
|
||||||
def __init__(self, target):
|
def __init__(self, target, base_url=None):
|
||||||
self.target = target
|
self.target = target
|
||||||
|
if base_url:
|
||||||
|
self.base_url = base_url
|
||||||
Thread.__init__(self)
|
Thread.__init__(self)
|
||||||
self.daemon = True
|
self.daemon = True
|
||||||
self.start()
|
self.start()
|
||||||
|
@ -90,18 +92,19 @@ class Install(Thread):
|
||||||
self.failed = True
|
self.failed = True
|
||||||
return
|
return
|
||||||
target = self.target
|
target = self.target
|
||||||
target = os.path.normpath(os.path.join(os.path.abspath(target)))
|
target = os.path.normpath(os.path.abspath(target))
|
||||||
makedirs(target)
|
makedirs(target)
|
||||||
os.chdir(target)
|
os.chdir(target)
|
||||||
release = self.get_release()
|
release = self.get_release()
|
||||||
self.status['release'] = release
|
self.status['release'] = release
|
||||||
for module in release['modules']:
|
print("Installing Open Media Library:")
|
||||||
|
for module in sorted(release['modules']):
|
||||||
self.status['installing'] = module
|
self.status['installing'] = module
|
||||||
self.status['progress'] = 0
|
self.status['progress'] = 0
|
||||||
self.status['size'] = 0
|
self.status['size'] = 0
|
||||||
package_tar = release['modules'][module]['name']
|
package_tar = release['modules'][module]['name']
|
||||||
url = self.url(package_tar)
|
url = self.url(package_tar)
|
||||||
package_tar = os.path.join(self.target, package_tar)
|
package_tar = os.path.join(target, package_tar)
|
||||||
self.download(url, package_tar)
|
self.download(url, package_tar)
|
||||||
tar = tarfile.open(package_tar)
|
tar = tarfile.open(package_tar)
|
||||||
tar.extractall()
|
tar.extractall()
|
||||||
|
@ -110,13 +113,14 @@ class Install(Thread):
|
||||||
os.symlink('openmedialibrary/ctl', 'ctl')
|
os.symlink('openmedialibrary/ctl', 'ctl')
|
||||||
self.status['progress'] = 0
|
self.status['progress'] = 0
|
||||||
self.status['installing'] = 'setup'
|
self.status['installing'] = 'setup'
|
||||||
if sys.platform.startswith('linux'):
|
|
||||||
os.system('./ctl install_launcher')
|
|
||||||
makedirs('config')
|
|
||||||
with open('config/release.json', 'w') as fd:
|
|
||||||
json.dump(release, fd, indent=2)
|
|
||||||
makedirs('updates')
|
makedirs('updates')
|
||||||
os.system('./ctl setup')
|
os.system('./ctl setup')
|
||||||
|
release_path = 'data/release.json'
|
||||||
|
makedirs('data')
|
||||||
|
with open(release_path, 'w') as fd:
|
||||||
|
json.dump(release, fd, indent=2)
|
||||||
|
if sys.platform.startswith('linux'):
|
||||||
|
os.system('./ctl install_launcher')
|
||||||
self.status['progress'] = 1
|
self.status['progress'] = 1
|
||||||
self.status['done'] = True
|
self.status['done'] = True
|
||||||
|
|
||||||
|
|
|
@ -12,30 +12,35 @@ base_dir = os.path.normpath(os.path.join(os.path.abspath(os.path.dirname(__file_
|
||||||
static_path = os.path.join(base_dir, 'static')
|
static_path = os.path.join(base_dir, 'static')
|
||||||
updates_path = os.path.normpath(os.path.join(base_dir, '..', 'updates'))
|
updates_path = os.path.normpath(os.path.join(base_dir, '..', 'updates'))
|
||||||
|
|
||||||
oml_config_path = os.path.join(base_dir, 'config.json')
|
oml_data_path = os.path.join(base_dir, 'config.json')
|
||||||
|
|
||||||
|
|
||||||
|
data_path = os.path.normpath(os.path.join(base_dir, '..', 'data'))
|
||||||
|
if not os.path.exists(data_path):
|
||||||
config_path = os.path.normpath(os.path.join(base_dir, '..', 'config'))
|
config_path = os.path.normpath(os.path.join(base_dir, '..', 'config'))
|
||||||
if not os.path.exists(config_path):
|
if os.path.exists(config_path):
|
||||||
os.makedirs(config_path)
|
data_path = config_path
|
||||||
|
else:
|
||||||
|
os.makedirs(data_path)
|
||||||
|
|
||||||
db_path = os.path.join(config_path, 'data.db')
|
db_path = os.path.join(data_path, 'data.db')
|
||||||
log_path = os.path.join(config_path, 'debug.log')
|
log_path = os.path.join(data_path, 'debug.log')
|
||||||
icons_db_path = os.path.join(config_path, 'icons.db')
|
icons_db_path = os.path.join(data_path, 'icons.db')
|
||||||
key_path = os.path.join(config_path, 'node.key')
|
key_path = os.path.join(data_path, 'node.key')
|
||||||
ssl_cert_path = os.path.join(config_path, 'node.ssl.crt')
|
ssl_cert_path = os.path.join(data_path, 'node.ssl.crt')
|
||||||
ssl_key_path = os.path.join(config_path, 'tor', 'private_key')
|
ssl_key_path = os.path.join(data_path, 'tor', 'private_key')
|
||||||
|
|
||||||
|
|
||||||
if os.path.exists(oml_config_path):
|
if os.path.exists(oml_data_path):
|
||||||
with open(oml_config_path) as fd:
|
with open(oml_data_path) as fd:
|
||||||
config = json.load(fd)
|
config = json.load(fd)
|
||||||
else:
|
else:
|
||||||
config = {}
|
config = {}
|
||||||
|
|
||||||
preferences = pdict(os.path.join(config_path, 'preferences.json'), config['user']['preferences'])
|
preferences = pdict(os.path.join(data_path, 'preferences.json'), config['user']['preferences'])
|
||||||
ui = pdict(os.path.join(config_path, 'ui.json'), config['user']['ui'])
|
ui = pdict(os.path.join(data_path, 'ui.json'), config['user']['ui'])
|
||||||
|
|
||||||
server = pdict(os.path.join(config_path, 'server.json'))
|
server = pdict(os.path.join(data_path, 'server.json'))
|
||||||
server_defaults = {
|
server_defaults = {
|
||||||
'port': 9842,
|
'port': 9842,
|
||||||
'address': '127.0.0.1',
|
'address': '127.0.0.1',
|
||||||
|
@ -52,7 +57,7 @@ for key in server_defaults:
|
||||||
if key not in server:
|
if key not in server:
|
||||||
server[key] = server_defaults[key]
|
server[key] = server_defaults[key]
|
||||||
|
|
||||||
release = pdict(os.path.join(config_path, 'release.json'))
|
release = pdict(os.path.join(data_path, 'release.json'))
|
||||||
|
|
||||||
if os.path.exists(key_path):
|
if os.path.exists(key_path):
|
||||||
with open(key_path, 'rb') as fd:
|
with open(key_path, 'rb') as fd:
|
||||||
|
|
|
@ -362,7 +362,7 @@ def upgrade_db(old, new=None):
|
||||||
)''')
|
)''')
|
||||||
run_sql('CREATE INDEX idx_scrape_added ON scrape (added)')
|
run_sql('CREATE INDEX idx_scrape_added ON scrape (added)')
|
||||||
if old <= '20151118-346-7e86e68':
|
if old <= '20151118-346-7e86e68':
|
||||||
old_key = os.path.join(settings.config_path, 'node.ssl.key')
|
old_key = os.path.join(settings.data_path, 'node.ssl.key')
|
||||||
if os.path.exists(old_key):
|
if os.path.exists(old_key):
|
||||||
os.unlink(old_key)
|
os.unlink(old_key)
|
||||||
if settings.OLD_USER_ID:
|
if settings.OLD_USER_ID:
|
||||||
|
|
|
@ -26,8 +26,8 @@ class TorDaemon(Thread):
|
||||||
self.start()
|
self.start()
|
||||||
|
|
||||||
def create_torrc(self):
|
def create_torrc(self):
|
||||||
defaults = os.path.join(settings.config_path, 'torrc-defaults')
|
defaults = os.path.join(settings.data_path, 'torrc-defaults')
|
||||||
torrc = os.path.join(settings.config_path, 'torrc')
|
torrc = os.path.join(settings.data_path, 'torrc')
|
||||||
if not os.path.exists(defaults):
|
if not os.path.exists(defaults):
|
||||||
with open(defaults, 'w') as fd:
|
with open(defaults, 'w') as fd:
|
||||||
fd.write('''
|
fd.write('''
|
||||||
|
@ -44,7 +44,7 @@ CookieAuthentication 1
|
||||||
fd.write('''
|
fd.write('''
|
||||||
DataDirectory {base}/TorData
|
DataDirectory {base}/TorData
|
||||||
DirReqStatistics 0
|
DirReqStatistics 0
|
||||||
'''.strip().format(base=settings.config_path))
|
'''.strip().format(base=settings.data_path))
|
||||||
return defaults, torrc
|
return defaults, torrc
|
||||||
|
|
||||||
def run(self):
|
def run(self):
|
||||||
|
@ -85,7 +85,7 @@ class Tor(object):
|
||||||
|
|
||||||
def connect(self):
|
def connect(self):
|
||||||
self.connected = False
|
self.connected = False
|
||||||
self.dir = os.path.join(settings.config_path, 'tor')
|
self.dir = os.path.join(settings.data_path, 'tor')
|
||||||
connected = False
|
connected = False
|
||||||
for port in (9831, 9151):
|
for port in (9831, 9151):
|
||||||
try:
|
try:
|
||||||
|
|
|
@ -88,7 +88,7 @@ def get_latest_release():
|
||||||
return release
|
return release
|
||||||
|
|
||||||
def download():
|
def download():
|
||||||
if not os.path.exists(os.path.join(settings.config_path, 'release.json')):
|
if not os.path.exists(os.path.join(settings.data_path, 'release.json')):
|
||||||
return True
|
return True
|
||||||
release = get_latest_release()
|
release = get_latest_release()
|
||||||
if release:
|
if release:
|
||||||
|
@ -116,7 +116,7 @@ def download():
|
||||||
def install(stop=True):
|
def install(stop=True):
|
||||||
if not os.path.exists(os.path.join(settings.updates_path, 'release.json')):
|
if not os.path.exists(os.path.join(settings.updates_path, 'release.json')):
|
||||||
return True
|
return True
|
||||||
if not os.path.exists(os.path.join(settings.config_path, 'release.json')):
|
if not os.path.exists(os.path.join(settings.data_path, 'release.json')):
|
||||||
return True
|
return True
|
||||||
with open(os.path.join(settings.updates_path, 'release.json')) as fd:
|
with open(os.path.join(settings.updates_path, 'release.json')) as fd:
|
||||||
release = json.load(fd)
|
release = json.load(fd)
|
||||||
|
@ -147,7 +147,7 @@ def install(stop=True):
|
||||||
if os.path.exists(module_tar):
|
if os.path.exists(module_tar):
|
||||||
os.unlink(module_tar)
|
os.unlink(module_tar)
|
||||||
return False
|
return False
|
||||||
shutil.copy(os.path.join(settings.updates_path, 'release.json'), os.path.join(settings.config_path, 'release.json'))
|
shutil.copy(os.path.join(settings.updates_path, 'release.json'), os.path.join(settings.data_path, 'release.json'))
|
||||||
if stop:
|
if stop:
|
||||||
subprocess.call(['./ctl', 'stop'])
|
subprocess.call(['./ctl', 'stop'])
|
||||||
subprocess.call(['./ctl', 'postupdate', '-o', old_version, '-n', new_version])
|
subprocess.call(['./ctl', 'postupdate', '-o', old_version, '-n', new_version])
|
||||||
|
@ -161,7 +161,7 @@ def update_available():
|
||||||
return True
|
return True
|
||||||
if not os.path.exists(os.path.join(settings.updates_path, 'release.json')):
|
if not os.path.exists(os.path.join(settings.updates_path, 'release.json')):
|
||||||
return False
|
return False
|
||||||
if not os.path.exists(os.path.join(settings.config_path, 'release.json')):
|
if not os.path.exists(os.path.join(settings.data_path, 'release.json')):
|
||||||
return False
|
return False
|
||||||
with open(os.path.join(settings.updates_path, 'release.json')) as fd:
|
with open(os.path.join(settings.updates_path, 'release.json')) as fd:
|
||||||
release = json.load(fd)
|
release = json.load(fd)
|
||||||
|
@ -221,7 +221,7 @@ def getVersion(data):
|
||||||
get_latest_release()
|
get_latest_release()
|
||||||
if not os.path.exists(os.path.join(settings.updates_path, 'release.json')):
|
if not os.path.exists(os.path.join(settings.updates_path, 'release.json')):
|
||||||
return response
|
return response
|
||||||
if not os.path.exists(os.path.join(settings.config_path, 'release.json')):
|
if not os.path.exists(os.path.join(settings.data_path, 'release.json')):
|
||||||
return response
|
return response
|
||||||
with open(os.path.join(settings.updates_path, 'release.json')) as fd:
|
with open(os.path.join(settings.updates_path, 'release.json')) as fd:
|
||||||
release = json.load(fd)
|
release = json.load(fd)
|
||||||
|
|
|
@ -32,8 +32,8 @@ def init(data):
|
||||||
}
|
}
|
||||||
'''
|
'''
|
||||||
response = {}
|
response = {}
|
||||||
if os.path.exists(settings.oml_config_path):
|
if os.path.exists(settings.oml_data_path):
|
||||||
with open(settings.oml_config_path) as fd:
|
with open(settings.oml_data_path) as fd:
|
||||||
config = json.load(fd)
|
config = json.load(fd)
|
||||||
else:
|
else:
|
||||||
config = {}
|
config = {}
|
||||||
|
@ -74,7 +74,7 @@ def resetUI(data):
|
||||||
takes {
|
takes {
|
||||||
}
|
}
|
||||||
'''
|
'''
|
||||||
ui_json = os.path.join(settings.config_path, 'ui.json')
|
ui_json = os.path.join(settings.data_path, 'ui.json')
|
||||||
if os.path.exists(ui_json):
|
if os.path.exists(ui_json):
|
||||||
os.unlink(ui_json)
|
os.unlink(ui_json)
|
||||||
settings.ui = settings.pdict(ui_json, settings.config['user']['ui'])
|
settings.ui = settings.pdict(ui_json, settings.config['user']['ui'])
|
||||||
|
|
Loading…
Reference in a new issue