Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Docker image missing mosdepth, despite presence in conda env.yaml #177

Open
bricoletc opened this issue Jun 16, 2023 · 4 comments
Open

Docker image missing mosdepth, despite presence in conda env.yaml #177

bricoletc opened this issue Jun 16, 2023 · 4 comments
Assignees

Comments

@bricoletc
Copy link

Hello,

I'm deploying this pipeline on my host institute's slurm cluster. I could run it all using the docker image at genomehubs/blobtoolkit:4.1.7, except for the cov_stats.smk sub-pipeline, which requires mosdepth, which is absent in $PATH of this image.

This is surprising since AFAICT this line in Dockerfile should install env.yaml from this repo which includes mosdepth

Thanks,
Brice

@sujaikumar sujaikumar transferred this issue from blobtoolkit/pipeline Jun 23, 2023
@blobtoolkit blobtoolkit deleted a comment from github-actions bot Jun 23, 2023
@sujaikumar
Copy link
Contributor

Hi Brice

Thanks for spotting this. If I look in https://github.com/blobtoolkit/blobtoolkit/blob/4.1.7/src/docker/env.yaml (the code that corresponds to this docker release), I can see that there is no mosdepth.

However, there is blobtk - which @rjchallis wrote as a replacement for the coverage calculations provided by mosdepth.

We'll look into this.

@rjchallis
Copy link
Contributor

Hi Brice

That Docker file is from the blobtoolkit-docker repo, which has now been merged into blobtoolkit/blobtoolkit and now archived. If you grab a v3.x docker image, that should have mosdepth but more recent images have replaced this with blobtk depth as we found that mosdepth did not perform well on fragmented assemblies. To run blobtk in place of mosdepth, you can use a command like:

blobtk depth -b test/test.bam -s 0 -O test/test.bed

to get a single coverage value per contig or

blobtk depth -b test/test.bam -s 1000 -O test/test.1000.bed

to get values in 1kb bins

Could you point us to the instructions you were following as were still trying to make sure the docs are up to date and we need to make sure we include this change.

@bricoletc
Copy link
Author

Hi @sujaikumar @rjchallis,

Thanks for getting back on this. The way I was doing it was using the latest (v4.1.7) docker image and running the blobtoolkit-pipeline snakemake workflow from a git clone. I didn't realise the pipeline could be run directly from the docker image itself

Doing the latter I could run the pipeline successfully and of course that pipeline uses blobtk not mosdepth

I would say documenting that the pipeline can be run from the docker image (as $ blobtoolkit-pipeline) in this repo's README would be a good start :))

@rjchallis
Copy link
Contributor

Glad it is working for you now and thanks for the very obvious but genuinely useful suggestion - we'll add some more info to the README

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants