scriptcwl
scriptcwl copied to clipboard
Create a conda package for scriptcwl
I looked into this and got it to work, partially. It failed on setting requirements for the package dependencies. For win64 there are no conda packages for cwltool and ruamel.yaml. When I leave those dependencies out (and leave out the tests when I have not installed cwltool and ruaml.yaml with pip), I am able to make a package that could be uploaded to anaconda.
The package properties and dependencies are indicated in a meta.yml file. Then you run conda build scriptcwl
to generate a package to later upload to anaconda. The meta.yml file can be inspected in the "ben_make_conda_install" branch of NLeSC/scriptcwl.
Can someone test how it works on a linux/mac system? The ruamel.yml and cwltool packages are available for those systems.
Thanks @bldevries-escience. I will test on Linux/Mac.
Tested on Linux/python 2.7.13
BUILD START: scriptcwl-0.5.1-py36_0
(actual version deferred until further download or env creation)
Can't build /home/arni/gitrepos/scriptcwl due to unsatisfiable dependencies:
The following specifications were found to be in conflict:
- cwltool -> python 2.7*
- python 3.6*
Use "conda info <package>" to see the dependencies for each package.
Typically if a conflict is with the Python or R
packages, the other package needs to be rebuilt
(e.g., a conflict with 'python 3.5*' and 'x' means
'x' isn't build for Python 3.5 and needs to be rebuilt.
the solutions is to specify the python version for the conda-build
conda-build --python 2.7 .
Maybe we should postpone this issue and first file an issue with cwltool an ruaml.yml to make them implement python 3+ and conda?
on Mac OS X got the following error:
Traceback (most recent call last):
File "/Users/arni/miniconda3/bin/conda-build", line 11, in <module>
sys.exit(main())
File "/Users/arni/miniconda3/lib/python3.6/site-packages/conda_build/cli/main_build.py", line 388, in main
execute(sys.argv[1:])
File "/Users/arni/miniconda3/lib/python3.6/site-packages/conda_build/cli/main_build.py", line 379, in execute
verify=args.verify)
File "/Users/arni/miniconda3/lib/python3.6/site-packages/conda_build/api.py", line 187, in build
need_source_download=need_source_download, config=config, variants=variants)
File "/Users/arni/miniconda3/lib/python3.6/site-packages/conda_build/build.py", line 1782, in build_tree
bypass_env_check=True)
File "/Users/arni/miniconda3/lib/python3.6/site-packages/conda_build/render.py", line 621, in render_recipe
m = MetaData(recipe_dir, config=config)
File "/Users/arni/miniconda3/lib/python3.6/site-packages/conda_build/metadata.py", line 727, in __init__
self.parse_again(permit_undefined_jinja=True, allow_no_other_outputs=True)
File "/Users/arni/miniconda3/lib/python3.6/site-packages/conda_build/metadata.py", line 792, in parse_again
run_requirements = specs_from_url(self.requirements_path)
File "/Users/arni/miniconda3/lib/python3.6/site-packages/conda/cli/common.py", line 564, in specs_from_url
(line, url))
conda.exceptions.CondaValueError: could not parse '--index-url https://pypi.python.org/simple/' in: /Users/arni/Downloads/gitrepos/scriptcwl/requirements.txt