Beispiel #1
0
def run(argv):
    opts = util.parse_docopt(__doc__, argv, False)
    image       = opts['<image>']
    fastq_file  = opts['--input']
    contig_file = opts['--output']
    task        = opts['--task']

    if not ctn.image_available(image):
        util.err_exit('unknown_image', {'image': image})

    cntr_src_dir = "/fastq"
    biobox_yaml = fle.generate([
        fle.fastq_arguments(cntr_src_dir, [fastq_file, "paired"])])

    host_src_dir = os.path.abspath(os.path.dirname(fastq_file))
    host_dst_dir = tmp.mkdtemp()

    mount_strings = [
        ctn.mount_string(host_src_dir, cntr_src_dir),
        ctn.biobox_file_mount_string(fle.create_biobox_directory(biobox_yaml)),
        ctn.output_directory_mount_string(host_dst_dir)]

    ctn.run(ctn.create(image, task, mount_strings))
    biobox_output = fle.parse(host_dst_dir)
    copy_contigs_file(host_dst_dir, biobox_output, contig_file)
Beispiel #2
0
def run(argv):
    opts = util.parse_docopt(__doc__, argv, False)
    image = opts['<image>']
    fastq_file = opts['--input']
    contig_file = opts['--output']
    task = opts['--task']

    if not ctn.image_available(image):
        util.err_exit('unknown_image', {'image': image})

    cntr_src_dir = "/fastq"
    biobox_yaml = fle.generate(
        [fle.fastq_arguments(cntr_src_dir, [fastq_file, "paired"])])

    host_src_dir = os.path.abspath(os.path.dirname(fastq_file))
    host_dst_dir = tmp.mkdtemp()

    mount_strings = [
        ctn.mount_string(host_src_dir, cntr_src_dir),
        ctn.biobox_file_mount_string(fle.create_biobox_directory(biobox_yaml)),
        ctn.output_directory_mount_string(host_dst_dir)
    ]

    ctn.run(ctn.create(image, task, mount_strings))
    biobox_output = fle.parse(host_dst_dir)
    copy_contigs_file(host_dst_dir, biobox_output, contig_file)
Beispiel #3
0
def test_create_mount_string_with_absolute_dir():
    expected = "/tmp:/tmp:ro"
    nose.assert_equal(ctn.mount_string("/tmp", "/tmp"), expected)
Beispiel #4
0
def test_create_mount_string_with_relative_dir():
    expected = "{}/tmp:/tmp:ro".format(hlpr.project_root())
    nose.assert_equal(ctn.mount_string("tmp", "/tmp"), expected)
Beispiel #5
0
def test_create_mount_string_with_absolute_dir():
    expected = "/tmp:/tmp:ro"
    nose.assert_equal(ctn.mount_string("/tmp", "/tmp"), expected)
Beispiel #6
0
def test_create_mount_string_with_relative_dir():
    expected = "{}/tmp:/tmp:ro".format(hlpr.project_root())
    nose.assert_equal(ctn.mount_string("tmp", "/tmp"), expected)