MRtrix3 / containers

Developer tools for generating minified containers for MRtrix3
0 stars 2 forks source link

neurodocker minify fails #22

Open drs-m opened 3 years ago

drs-m commented 3 years ago

Hey there,

I tried to reproduce the steps described here in order to adapt it to my needs by adding a command I need in docker (dtifit) so that I can use it in one image together with mrtrix3.

Unfortunately just cloning and reproducing the steps described in the README gave me the following error:

[NEURODOCKER 2021-10-18 16:36:33,328 INFO]: Configuration file written in /tmp/neurodocker-reprozip-trace/config.yml
Edit that file then run the packer -- use 'reprozip pack -h' for help
[NEURODOCKER 2021-10-18 16:36:33,328 INFO]: Uploading usage statistics is currently disabled
Please help us by providing anonymous usage statistics; you can enable this
by running:
    reprozip usage_report --enable
If you do not want to see this message again, you can run:
    reprozip usage_report --disable
Nothing will be uploaded before you opt in.
Traceback (most recent call last):
  File "/Users/nudelsalat/opt/anaconda3/bin/neurodocker-minify", line 8, in <module>
    sys.exit(main())
  File "/Users/nudelsalat/opt/anaconda3/lib/python3.8/site-packages/neurodocker/reprozip/gentle/trace.py", line 169, in main
    trace_and_prune(container=args.container, commands=args.commands, directories_to_prune=args.dirs_to_prune)
  File "/Users/nudelsalat/opt/anaconda3/lib/python3.8/site-packages/neurodocker/reprozip/gentle/trace.py", line 96, in trace_and_prune
    raise RuntimeError("Failed: {}".format(result))
RuntimeError: Failed: Traceback (most recent call last):
  File "/tmp/_prune.py", line 69, in <module>
    main(yaml_file=args.config_file, directories_to_prune=args.dirs_to_prune)
  File "/tmp/_prune.py", line 26, in main
    config = yaml.load(f)
TypeError: load() missing 1 required positional argument: 'Loader'

It looks like something related to the specific python version (2 vs 3) or a deprecated method in the yaml package. Have you had this issue before or know any way to solve it?

kaczmarj commented 3 years ago

hi @drs-m - that was a bug in neurodocker, which was fixed in https://github.com/ReproNim/neurodocker/pull/423/commits/a6631ba13fef7afbd8cffca488fa24be899f50e4. can you retry with the current master branch of neurodocker?

the error is that yaml.load now requires a Loader argument. that was not the case in earlier versions of pyyaml.