Hi,
I am quite new to nextflow. I am trying to parse a list of outputs from other processes to a new process (basically recycling the process). I thought it would be possible to do it like this, however I keep getting errors. Can someone maybe help me further.
#!/usr/bin/env nextflow
process foo {
output:
path("foo.txt"), emit: foo
script:
"""
echo "foo" > foo.txt
"""
}
process bar {
output:
path("bar.txt"), emit: bar
script:
"""
echo "bar" > bar.txt
"""
}
process baz {
output:
path("baz.txt"), emit: baz
script:
"""
echo "baz" > baz.txt
"""
}
process add_some {
publishDir "/home/zeddafir/scripts/nextflow/test_next/", mode: 'copy', overwrite: true
input:
path(x)
output:
path("${x.baseName}_some.txt"), emit: some
script:
"""
echo "some" >> ${x}
cp ${x} ${x.baseName}_some.txt
"""
}
workflow {
// Run processes and collect their outputs
foo()
bar()
baz()
// Collect outputs from processes
all_ch = Channel.from(foo.out, bar.out, baz.out)
// Run process add_some on each output
add_some(all_ch)
}

