Hi @rrrrrok Thank you for the hints. I have applied them. Nothing changed.
My set up:
renku --version
1.11.2
workflow.yml file
name: data-pipeline
steps:
filter:
command: python src/filter.py data/input/flights.csv data/output/filtered.csv
inputs:
- src/filter.py
- data/input/flights.csv
outputs:
- data/output/filtered.csv
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
The python scrip filter.py
#!/usr/bin/env python
#coding: utf-8
#Usage: python flights.py
import pandas as pd
import sys
#It would be more robust to use argparse or click, but we want this to be simple
if len(sys.argv) < 3:
sys.exit(“Please invoke with two arguments: input and output paths”)
input_path = sys.argv[1]
output_path = sys.argv[2]
#Read in the data
df = pd.read_csv(input_path)
#Select only flights to Austin (AUS)
df = df[df[‘DEST’] == ‘AUS’]
#Save the result
df.to_csv(output_path, index=False)
after running: renku run ./workflow.yml
the output of print:
Renku version: 1.11.2
OS: Linux (#58-Ubuntu SMP Thu Oct 13 08:03:55 UTC 2022)
Python: 3.9.12
###Traceback
Traceback (most recent call last):
File "[...]/site-packages/renku/ui/cli/exception_handler.py", line 133, in main
return super().main(*args, **kwargs)
File "[...]/site-packages/renku/ui/cli/exception_handler.py", line 92, in main
return super().main(*args, **kwargs)
File "[...]/site-packages/click/core.py", line 1055, in main
rv = self.invoke(ctx)
File "[...]/site-packages/click/core.py", line 1657, in invoke
return _process_result(sub_ctx.command.invoke(sub_ctx))
File "[...]/site-packages/click/core.py", line 1404, in invoke
return ctx.invoke(self.callback, **ctx.params)
File "[...]/site-packages/click/core.py", line 760, in invoke
return __callback(*args, **kwargs)
File "[...]/site-packages/renku/ui/cli/run.py", line 641, in run
command.with_communicator(communicator)
File "[...]/site-packages/renku/command/command_builder/command.py", line 252, in execute
output = self._operation(*args, **kwargs) # type: ignore
File "[...]/site-packages/inject/__init__.py", line 342, in injection_wrapper
return sync_func(*args, **kwargs)
File "pydantic/decorator.py", line 40, in pydantic.decorator.validate_arguments.validate.wrapper_function
File "pydantic/decorator.py", line 134, in pydantic.decorator.ValidatedFunction.call
File "pydantic/decorator.py", line 206, in pydantic.decorator.ValidatedFunction.execute
File "[...]/site-packages/renku/core/workflow/run.py", line 298, in run_command_line
return_code = call(
File "[...]/subprocess.py", line 349, in call
with Popen(*popenargs, **kwargs) as p:
File "[...]/subprocess.py", line 951, in __init__
self._execute_child(args, executable, preexec_fn, close_fds,
File "[...]/subprocess.py", line 1821, in _execute_child
raise child_exception_type(errno_num, err_msg, err_filename)
OSError: [Errno 8] Exec format error: './workflow.yml'
##Additional context
Add any other context about the problem.
I hope you find this info useful.
Best.
Rostyslav