pepkit / looper

A job submitter for Portable Encapsulated Projects
http://looper.databio.org
BSD 2-Clause "Simplified" License
20 stars 7 forks source link

Command template variables error during render when using `runp` #428

Closed donaldcampbelljr closed 6 months ago

donaldcampbelljr commented 7 months ago

Issues with rendering command templates when using looper runp when the pipeline interface contains, for example: {looper.output_dir}

Related to: https://github.com/databio/pepatac/issues/259

donaldcampbelljr commented 7 months ago

Interesting, able to reproduce this in hello_looper by changing the pipeline_interface to be a 'project':

config file:

pep_config: ./project/project_config.yaml # pephub registry path or local path
output_dir: ./results
pipeline_interfaces:
  sample:  ./pipeline_pipestat/pipeline_interface_shell.yaml
  project:  ./pipeline_pipestat/pipeline_interface_shell.yaml
pipestat:
  results_file_path: results.yaml

Interface

pipeline_name: example_pipestat_pipeline
pipeline_type: project
output_schema: pipestat_output_schema.yaml
command_template: >
  {looper.piface_dir}/count_lines_pipestat.sh

command: (venv) drc@databio:~/GITHUB/hello_looper/hello_looper$ looper runp --looper-config .looper_pipestat_shell.yaml

Error:

Error populating command template: 'dict object' has no attribute 'looper'
> Not submitted: 'dict object' has no attribute 'looper'