Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/url/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sockets/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Snakemake规则中使用包装器的Github URL_Url_Wrapper_Rules_Snakemake - Fatal编程技术网

在Snakemake规则中使用包装器的Github URL

在Snakemake规则中使用包装器的Github URL,url,wrapper,rules,snakemake,Url,Wrapper,Rules,Snakemake,我知道在Snakefile中定义基于包装器的规则的三种工作方式: rule way1_wrapper_repository: wrapper: "0.0.8/bio/samtools_sort" rule way2_local_relative_directory: wrapper: "local_wrappers/dir/samtools_sort" rule way3_local_absolute_directory: wrapper:

我知道在Snakefile中定义基于包装器的规则的三种工作方式:

rule way1_wrapper_repository:
    wrapper:
        "0.0.8/bio/samtools_sort"
rule way2_local_relative_directory:
    wrapper:
        "local_wrappers/dir/samtools_sort"
rule way3_local_absolute_directory:
    wrapper:
        "file:///absolute/path/to/wrapper/samtools_sort"
文件规定:

或者,例如,对于开发,wrapper指令还可以指向完整的URL,包括指向具有绝对路径file://或相对路径file:。每个包装的示例可以在Snakemake包装库包装子目录中的自述文件中找到

但是,我还没有找到一种方法来使用指向github上的包装器目录的URL(注意,我想使用默认snakemake包装器存储库中没有托管的包装器)

请注意,这对我来说是一种挑战!实际上,我想定义一个相对于Snakefile的本地包装器,这只有在workdir与Snakefile位于同一目录时才可能:包装器的相对路径将始终相对于workdir进行计算,这使得很难包含snakemake项目或使用独立的workdir(在这种情况下,需要将包装器复制到替代workdir)。

我现在尝试使用“原始”github链接,它可以正常工作。因此,请尝试以下方法:

rule way4_remote_github_repository:
wrapper:
    "https://raw.gtihubusercontent.com/<githubuser>/<repository>/<branch>/path/to/wrapper/directory/"
rule way4\u remote\u github\u存储库:
包装器:
"https://raw.gtihubusercontent.com////path/to/wrapper/directory/"

在github中使用指向包装文件原始版本的url时是否会返回错误?我假设snakemake“知道”如何处理普通github链接,但事实并非如此(为什么会这样)。我在下面添加了一个答案。它们似乎不支持github repos。根据您引用的文档,只需要snakemake文件的完整url即可。