16169: Monkey patch load_tool.resolve_and_validate_document to fix bug
authorPeter Amstutz <peter.amstutz@curii.com>
Fri, 28 Feb 2020 17:07:35 +0000 (12:07 -0500)
committerPeter Amstutz <peter.amstutz@curii.com>
Mon, 2 Mar 2020 22:31:42 +0000 (17:31 -0500)
commit85cbbadc846bca172398a8be42f49ff8de91d2e9
tree1a1f76b83ff840d08187c84735541759baa1cfbf
parentb6ad6faad9a0750538cdd6ed68862d6c7d772b2d
16169: Monkey patch load_tool.resolve_and_validate_document to fix bug

There is a bug in upstream cwltool where the version updater needs to
replace the document fragments in the loader index with the updated
ones, but actually it only does it for the root document.  Normally we
just fix the bug in upstream but that's challenging because current
cwltool dropped support for Python 2.7 and we're still supporting py2
in Arvados 2.0 (although py2 support will most likely be dropped in
Arvados 2.1).  Making a bugfix fork comes with its own
complications (it would need to be added to PyPi) so monkey patching
is the least disruptive fix (and is relatively safe because our
cwltool dependency is pinned to a specific version).  This
should be removed as soon as a bugfix goes into upstream cwltool and
we upgrade to it.
sdk/cwl/arvados_cwl/__init__.py
sdk/cwl/tests/wf/16169-step.cwl
sdk/python/arvados/commands/keepdocker.py