bjpop/rubra

example doesn't run out of the box

AMChalkie opened this issue · 1 comments

example doesn't run out of the box

Running in examples directory gives missing utils module error

rubra example_pipeline.py --config example_config.py --style run

[achalk@merri examples]$ ../rubra/rubra.py example_pipeline.py --config example_config.py --style run
Traceback (most recent call last):
File "../rubra/rubra.py", line 86, in
main()
File "../rubra/rubra.py", line 35, in main
import(drop_py_suffix(args.pipeline))
File "example_pipeline.py", line 15, in
from rubra.utils import (runStageCheck)
ImportError: No module named utils

copying the example_pipeline.p, example_config.py and examples/test to rubra directory fixes this

But there is an error in the pipeline.

[achalk@merri rubra]$ rubra/rubra.py example_pipeline.py --config example_config.py --style run
Traceback (most recent call last):
File "rubra/rubra.py", line 86, in
main()
File "rubra/rubra.py", line 66, in main
gnu_make_maximal_rebuild_mode=rebuildMode)
File "build/bdist.linux-x86_64/egg/ruffus/task.py", line 2680, in pipeline_run
ruffus.ruffus_exceptions.RethrownJobError:

Exceptions running jobs for

'def example_pipeline.countLines(...):'

Original exceptions:

Exception #1
exceptions.AttributeError('NoneType' object has no attribute 'stages'):
for example_pipeline.countLines.Job = [test/data2.txt -> [test/data2.count, test/data2.count.Success]]

Traceback (most recent call last):
  File "build/bdist.linux-x86_64/egg/ruffus/task.py", line 517, in run_pooled_job_without_exceptions
    return_value =  job_wrapper(param, user_defined_work_func, register_cleanup, touch_files_only)
  File "build/bdist.linux-x86_64/egg/ruffus/task.py", line 447, in job_wrapper_io_files
    ret_val = user_defined_work_func(*param)
  File "example_pipeline.py", line 25, in countLines
    runStageCheck('countLines', flagFile, file, output)
  File "rubra/utils.py", line 132, in runStageCheck
    status = runStage(stage, *args)
  File "rubra/utils.py", line 143, in runStage
    command = getCommand(stage, pipeline_options)
  File "rubra/utils.py", line 175, in getCommand
    commandStr = getStageOptions(options, name, 'command')
  File "rubra/utils.py", line 104, in getStageOptions
    return options.stages[stage][optionName]
AttributeError: 'NoneType' object has no attribute 'stages'


Exception #2
exceptions.AttributeError('NoneType' object has no attribute 'stages'):
for example_pipeline.countLines.Job = [test/data1.txt -> [test/data1.count, test/data1.count.Success]]

Traceback (most recent call last):
  File "build/bdist.linux-x86_64/egg/ruffus/task.py", line 517, in run_pooled_job_without_exceptions
    return_value =  job_wrapper(param, user_defined_work_func, register_cleanup, touch_files_only)
  File "build/bdist.linux-x86_64/egg/ruffus/task.py", line 447, in job_wrapper_io_files
    ret_val = user_defined_work_func(*param)
  File "example_pipeline.py", line 25, in countLines
    runStageCheck('countLines', flagFile, file, output)
  File "rubra/utils.py", line 132, in runStageCheck
    status = runStage(stage, *args)
  File "rubra/utils.py", line 143, in runStage
    command = getCommand(stage, pipeline_options)
  File "rubra/utils.py", line 175, in getCommand
    commandStr = getStageOptions(options, name, 'command')
  File "rubra/utils.py", line 104, in getStageOptions
    return options.stages[stage][optionName]
AttributeError: 'NoneType' object has no attribute 'stages'

This runs on merri currently, so likely to be an installation issue. We probably need to add better installation instructions.