eth-cscs/pyfirecrest

`curl` dependency not documented

Opened this issue · 1 comments

Hey,

we're currently making use of pyfirecrest in a containerized application to upload files to a CSCS machine and it fails, whereas it works locally.

Apparently curl seems to be a dependency of the package, but this is not documented anywhere.

INFO:firecrest.ExternalStorage:Uploading the file to the staging area with the command: curl -f --show-error -s -i https://object.cscs.ch/v1/<path> -X POST -F max_file_size=1073741824000 -F max_file_count=1 -F expires=1709822431 -F signature=<signature> -F redirect= -F file=@/tmp/tmp4qb2emu1/compute-backend-config-unicore.yaml 
...
  File "/venv/lib/python3.9/site-packages/firecrest/ExternalStorage.py", line 175, in finish_upload
    command = subprocess.run(
  File "/usr/local/lib/python3.9/subprocess.py", line 505, in run
    with Popen(*popenargs, **kwargs) as process:
  File "/usr/local/lib/python3.9/subprocess.py", line 951, in __init__
    self._execute_child(args, executable, preexec_fn, close_fds,
  File "/usr/local/lib/python3.9/subprocess.py", line 1837, in _execute_child
    raise child_exception_type(errno_num, err_msg, err_filename)
FileNotFoundError: [Errno 2] No such file or directory: 'curl'

I suppose you add this to the README.md, or add a INSTALL.md.

If you're aware of any other dependency you should add them as well, of course.

Regards
Fabian from 4cast

Hi Fabian, thank for catching this. We will update the documentation or change the method of uploading the file.