Skip to content

Commit d443844

Browse files
committed
Add --no-doc-cache option
1 parent 227f35a commit d443844

File tree

4 files changed

+17
-4
lines changed

4 files changed

+17
-4
lines changed

cwltool/argparser.py

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -340,6 +340,14 @@ def arg_parser() -> argparse.ArgumentParser:
340340
dest="skip_schemas",
341341
)
342342

343+
parser.add_argument(
344+
"--no-doc-cache",
345+
action="store_false",
346+
help="Disable disk cache for documents loaded over HTTP",
347+
default=True,
348+
dest="doc_cache",
349+
)
350+
343351
exgroup = parser.add_mutually_exclusive_group()
344352
exgroup.add_argument("--verbose", action="store_true", help="Default logging")
345353
exgroup.add_argument(

cwltool/context.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -71,6 +71,7 @@ def __init__(self, kwargs: Optional[Dict[str, Any]] = None) -> None:
7171
self.prov_obj = None # type: Optional[ProvenanceProfile]
7272
self.do_update = None # type: Optional[bool]
7373
self.jobdefaults = None # type: Optional[CommentedMap]
74+
self.doc_cache = True # type: bool
7475

7576
super(LoadingContext, self).__init__(kwargs)
7677

cwltool/load_tool.py

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -64,12 +64,13 @@
6464
ResolverType = Callable[[Loader, Union[str, Dict[str, Any]]], str]
6565

6666

67-
def default_loader(fetcher_constructor=None, enable_dev=False):
68-
# type: (Optional[FetcherConstructorType], bool) -> Loader
67+
def default_loader(fetcher_constructor=None, enable_dev=False, doc_cache=True):
68+
# type: (Optional[FetcherConstructorType], bool, bool) -> Loader
6969
return Loader(
7070
jobloaderctx,
7171
fetcher_constructor=fetcher_constructor,
7272
allow_attachments=lambda r: enable_dev,
73+
doc_cache=doc_cache
7374
)
7475

7576

@@ -113,7 +114,9 @@ def fetch_document(
113114
else:
114115
loadingContext = loadingContext.copy()
115116
if loadingContext.loader is None:
116-
loadingContext.loader = default_loader(loadingContext.fetcher_constructor)
117+
loadingContext.loader = default_loader(loadingContext.fetcher_constructor,
118+
enable_dev=loadingContext.enable_dev,
119+
doc_cache=loadingContext.doc_cache)
117120

118121
if isinstance(argsworkflow, str):
119122
uri, fileuri = resolve_tool_uri(
@@ -321,6 +324,7 @@ def resolve_and_validate_document(
321324
cache=sch_document_loader.cache,
322325
fetcher_constructor=loadingContext.fetcher_constructor,
323326
skip_schemas=skip_schemas,
327+
doc_cache=loadingContext.doc_cache
324328
)
325329

326330
if cwlVersion == "v1.0":

cwltool/main.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -667,7 +667,7 @@ def setup_loadingContext(
667667
else:
668668
loadingContext = loadingContext.copy()
669669
loadingContext.loader = default_loader(
670-
loadingContext.fetcher_constructor, enable_dev=args.enable_dev
670+
loadingContext.fetcher_constructor, enable_dev=args.enable_dev, doc_cache=args.doc_cache
671671
)
672672
loadingContext.research_obj = runtimeContext.research_obj
673673
loadingContext.disable_js_validation = args.disable_js_validation or (

0 commit comments

Comments
 (0)