Restructured for better debugging
This commit is contained in:
parent
feddcc546b
commit
4d2d39c5fa
2 changed files with 34 additions and 38 deletions
|
|
@ -15,7 +15,12 @@ from flask_cors import CORS, cross_origin
|
||||||
from openflexure_microscope.api.utilities import list_routes, init_default_extensions
|
from openflexure_microscope.api.utilities import list_routes, init_default_extensions
|
||||||
|
|
||||||
from openflexure_microscope.config import JSONEncoder
|
from openflexure_microscope.config import JSONEncoder
|
||||||
from openflexure_microscope.paths import EXTENSIONS_PATH, settings_file_path
|
from openflexure_microscope.paths import (
|
||||||
|
OPENFLEXURE_ETC_PATH,
|
||||||
|
OPENFLEXURE_VAR_PATH,
|
||||||
|
OPENFLEXURE_EXTENSIONS_PATH,
|
||||||
|
settings_file_path,
|
||||||
|
)
|
||||||
|
|
||||||
from openflexure_microscope.common.flask_labthings.quick import create_app
|
from openflexure_microscope.common.flask_labthings.quick import create_app
|
||||||
from openflexure_microscope.common.flask_labthings.extensions import find_extensions
|
from openflexure_microscope.common.flask_labthings.extensions import find_extensions
|
||||||
|
|
@ -53,6 +58,10 @@ else:
|
||||||
logger.setLevel(logging.getLogger("gunicorn.error").level)
|
logger.setLevel(logging.getLogger("gunicorn.error").level)
|
||||||
|
|
||||||
|
|
||||||
|
# Log server paths being used
|
||||||
|
logging.info(f"Running with data path {OPENFLEXURE_VAR_PATH}")
|
||||||
|
logging.info(f"Running with server path {OPENFLEXURE_ETC_PATH}")
|
||||||
|
|
||||||
# Create flask app
|
# Create flask app
|
||||||
app, labthing = create_app(
|
app, labthing = create_app(
|
||||||
__name__,
|
__name__,
|
||||||
|
|
@ -72,9 +81,9 @@ app.json_encoder = JSONEncoder
|
||||||
labthing.add_component(api_microscope, "org.openflexure.microscope")
|
labthing.add_component(api_microscope, "org.openflexure.microscope")
|
||||||
|
|
||||||
# Attach extensions
|
# Attach extensions
|
||||||
if not os.path.isfile(EXTENSIONS_PATH):
|
if not os.path.isfile(OPENFLEXURE_EXTENSIONS_PATH):
|
||||||
init_default_extensions(EXTENSIONS_PATH)
|
init_default_extensions(OPENFLEXURE_EXTENSIONS_PATH)
|
||||||
for extension in find_extensions(EXTENSIONS_PATH):
|
for extension in find_extensions(OPENFLEXURE_EXTENSIONS_PATH):
|
||||||
labthing.register_extension(extension)
|
labthing.register_extension(extension)
|
||||||
|
|
||||||
# Attach captures resources
|
# Attach captures resources
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,23 @@
|
||||||
import os
|
import os
|
||||||
import logging
|
import logging
|
||||||
|
|
||||||
|
# UTILITIES
|
||||||
|
|
||||||
|
|
||||||
|
def check_rw(path):
|
||||||
|
return os.access(path, os.W_OK) and os.access(path, os.R_OK)
|
||||||
|
|
||||||
|
|
||||||
|
def settings_file_path(filename: str):
|
||||||
|
"""Generate a full file path for a filename to be stored in server settings folder"""
|
||||||
|
return os.path.join(OPENFLEXURE_ETC_PATH, filename)
|
||||||
|
|
||||||
|
|
||||||
|
def data_file_path(filename: str):
|
||||||
|
"""Generate a full file path for a filename to be stored in server data folder"""
|
||||||
|
return os.path.join(OPENFLEXURE_VAR_PATH, filename)
|
||||||
|
|
||||||
|
|
||||||
# HANDLE DEFAULTS FILES STORED IN THIS APPLICATION
|
# HANDLE DEFAULTS FILES STORED IN THIS APPLICATION
|
||||||
|
|
||||||
HERE = os.path.abspath(os.path.dirname(__file__))
|
HERE = os.path.abspath(os.path.dirname(__file__))
|
||||||
|
|
@ -9,24 +26,6 @@ HERE = os.path.abspath(os.path.dirname(__file__))
|
||||||
DEFAULT_CONFIG_FILE_PATH = os.path.join(HERE, "microscope_settings.default.json")
|
DEFAULT_CONFIG_FILE_PATH = os.path.join(HERE, "microscope_settings.default.json")
|
||||||
|
|
||||||
|
|
||||||
# HANDLE WINDOWS BASE PATHS
|
|
||||||
"""
|
|
||||||
if os.name == "nt":
|
|
||||||
VAR_PATH = os.getenv("PROGRAMDATA") or "C:\\ProgramData"
|
|
||||||
else:
|
|
||||||
if os.access("/var", os.W_OK) and os.access("/var", os.R_OK):
|
|
||||||
VAR_PATH = "/var"
|
|
||||||
else:
|
|
||||||
VAR_PATH = os.path.expanduser("~")
|
|
||||||
OPENFLEXURE_VAR_PATH = os.path.join(VAR_PATH, "openflexure")
|
|
||||||
print(f"Running with server settings directory {OPENFLEXURE_VAR_PATH}")
|
|
||||||
"""
|
|
||||||
|
|
||||||
|
|
||||||
def check_rw(path):
|
|
||||||
return os.access(path, os.W_OK) and os.access(path, os.R_OK)
|
|
||||||
|
|
||||||
|
|
||||||
# DATA BASE PATHS
|
# DATA BASE PATHS
|
||||||
|
|
||||||
if os.name == "nt":
|
if os.name == "nt":
|
||||||
|
|
@ -48,7 +47,7 @@ else:
|
||||||
if not os.path.exists(FALLBACK_OPENFLEXURE_VAR_PATH):
|
if not os.path.exists(FALLBACK_OPENFLEXURE_VAR_PATH):
|
||||||
os.makedirs(FALLBACK_OPENFLEXURE_VAR_PATH)
|
os.makedirs(FALLBACK_OPENFLEXURE_VAR_PATH)
|
||||||
OPENFLEXURE_VAR_PATH = FALLBACK_OPENFLEXURE_VAR_PATH
|
OPENFLEXURE_VAR_PATH = FALLBACK_OPENFLEXURE_VAR_PATH
|
||||||
print(f"Running with data path {OPENFLEXURE_VAR_PATH}")
|
|
||||||
|
|
||||||
# SERVER BASE PATHS
|
# SERVER BASE PATHS
|
||||||
|
|
||||||
|
|
@ -71,7 +70,6 @@ else:
|
||||||
if not os.path.exists(FALLBACK_OPENFLEXURE_ETC_PATH):
|
if not os.path.exists(FALLBACK_OPENFLEXURE_ETC_PATH):
|
||||||
os.makedirs(FALLBACK_OPENFLEXURE_ETC_PATH)
|
os.makedirs(FALLBACK_OPENFLEXURE_ETC_PATH)
|
||||||
OPENFLEXURE_ETC_PATH = FALLBACK_OPENFLEXURE_ETC_PATH
|
OPENFLEXURE_ETC_PATH = FALLBACK_OPENFLEXURE_ETC_PATH
|
||||||
print(f"Running with server path {OPENFLEXURE_ETC_PATH}")
|
|
||||||
|
|
||||||
|
|
||||||
# SERVER PATHS
|
# SERVER PATHS
|
||||||
|
|
@ -79,20 +77,9 @@ print(f"Running with server path {OPENFLEXURE_ETC_PATH}")
|
||||||
#: Path of microscope settings directory
|
#: Path of microscope settings directory
|
||||||
CONFIG_FILE_PATH = os.path.join(OPENFLEXURE_ETC_PATH, "microscope_settings.json")
|
CONFIG_FILE_PATH = os.path.join(OPENFLEXURE_ETC_PATH, "microscope_settings.json")
|
||||||
#: Path of microscope extensions directory
|
#: Path of microscope extensions directory
|
||||||
EXTENSIONS_PATH = os.path.join(OPENFLEXURE_ETC_PATH, "microscope_extensions")
|
OPENFLEXURE_EXTENSIONS_PATH = os.path.join(
|
||||||
|
OPENFLEXURE_ETC_PATH, "microscope_extensions"
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
# DATA PATHS
|
# DATA PATHS
|
||||||
|
|
||||||
|
|
||||||
# UTILITIES
|
|
||||||
|
|
||||||
|
|
||||||
def settings_file_path(filename: str):
|
|
||||||
"""Generate a full file path for a filename to be stored in server settings folder"""
|
|
||||||
return os.path.join(OPENFLEXURE_ETC_PATH, filename)
|
|
||||||
|
|
||||||
|
|
||||||
def data_file_path(filename: str):
|
|
||||||
"""Generate a full file path for a filename to be stored in server data folder"""
|
|
||||||
return os.path.join(OPENFLEXURE_VAR_PATH, filename)
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue