Snakemake找不到GS远程文件

时间:2019-12-13 05:08:04

标签: google-kubernetes-engine snakemake

我正在尝试使用snakemake和kubernetes在Google Cloud上运行DNA序列分析。 Snakemake抱怨找不到我的GCP存储桶中的文件。

这是我运行的命令(仅供参考,我用“ bucketname”交换实际的存储桶路径):

snakemake --kubernetes --use-conda --container-image 'https://hub.docker.com/r/mmyint93/snakemake_wes' --default-remote-provider GS --default-remote-prefix bucketname --debug

结果是我收到此错误消息:

FileNotFoundError in line 8 of /path/to/snakefile/rules/common.smk:
[Errno 2] No such file or directory: 'bucketname/LCC_one_lane_test.txt'
  File "/path/to/snakefile/Snakefile", line 1, in <module>
  File "/path/to/snakefile/rules/common.smk", line 8, in <module>

我尝试在本地复制有问题的文件LCC_one_lane_test.txt并指向该文件而不是GS.remote("gs://bucketname/LCC_one_lane_test.txt")。虽然可以解决该文件的问题,但会导致后续的远程文件抛出错误:

Building DAG of jobs...
MissingInputException in line 1 of /path/to/snakefile/rules/mapping.smk:
Missing input files for rule bwaMEM:
bucketname/fastq/H1213_L1_2.fq.gz
bucketname/fastq/H1213_L1_1.fq.gz

我还尝试使用--latency-wait 50 --wait-for-files 50来查看是否是我的机器与遥控器之间的延迟引起的,但是返回了相同的错误。

作为参考,这是我的.smk规则文件中的一些示例代码:

from snakemake.remote.GS import RemoteProvider as GSRemoteProvider
GS = GSRemoteProvider()
import os 
import re
from itertools import chain, combinations

SAMPLE_FILE = GS.remote("gs://bucketname/LCC_one_lane_test.txt")

我也尝试将gs://bucketname放在路径中,但是它只是返回相同的错误而没有存储桶名称。我在俯视什么吗?

其他信息,我的snakemake版本是5.4.3

0 个答案:

没有答案