from ruffus import *
#---------------------------------------------------------------
# Create input files
#
first_task_params = [
'job1.input',
'job2.input',
'job3.input'
]
for input_file in first_task_params:
open(input_file, "w")
#---------------------------------------------------------------
#
# first task
#
@transform(first_task_params, suffix(".input"), ".output1",
"some_extra.string.for_example", 14)
def first_task(input_file, output_file,
extra_parameter_str, extra_parameter_num):
# make output file
open(output_file, "w")
#---------------------------------------------------------------
#
# second task
#
@transform(first_task, suffix(".output1"), ".output2")
def second_task(input_file, output_file):
# make output file
open(output_file, "w")
#---------------------------------------------------------------
#
# Run
#
pipeline_run([second_task])