fix: s3 user annotations (#2541)

do _not_ attempt to create the user annotations directory if an s3 location is specified
This commit is contained in:
Andrew Tolopko
2022-07-28 20:00:15 +00:00
committed by GitHub
parent 69a6d52240
commit 4df50a7677
+6 -1
View File
@@ -4,6 +4,7 @@ from os.path import splitext, isdir
from server.common.annotations.local_file_csv import AnnotationsLocalFile from server.common.annotations.local_file_csv import AnnotationsLocalFile
from server.common.config.base_config import BaseConfig from server.common.config.base_config import BaseConfig
from server.common.errors import ConfigurationError, AnnotationsError from server.common.errors import ConfigurationError, AnnotationsError
from server.common.utils.data_locator import DataLocator
from server.data_common.matrix_loader import MatrixDataLoader from server.data_common.matrix_loader import MatrixDataLoader
@@ -127,7 +128,11 @@ class DatasetConfig(BaseConfig):
if lf_ext and lf_ext != ".csv": if lf_ext and lf_ext != ".csv":
raise ConfigurationError(f"genesets file type must be .csv: {genesets_filename}") raise ConfigurationError(f"genesets file type must be .csv: {genesets_filename}")
if dirname is not None and not isdir(dirname): if dirname is not None:
if not DataLocator(dirname).islocal():
# remote object stores only support objects but not directories, do nothing
pass
elif not isdir(dirname):
try: try:
os.mkdir(dirname) os.mkdir(dirname)
except OSError: except OSError: