【发布时间】:2019-02-19 15:06:39
【问题描述】:
我知道在 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"
文档说明:
或者,例如,对于开发,包装器指令也可以指向完整的 URL,包括指向具有绝对路径 file:// 或相对路径 file: 的本地文件的 URL。可以在 Snakemake Wrapper Repository 的 wrapper 子目录中的 README 中找到每个 wrapper 的示例。
但是,例如,我还没有找到一种方法来使用指向 github 上包装器目录的 URL(请注意,我想使用未托管在默认 snakemake 包装器存储库上的包装器)。
请注意,这对我来说有点像XY problem!我实际上想定义一个相对于 Snakefile 的本地包装器,只有当 workdir 与 Snakefile 位于同一目录时才有可能:包装器的相对路径将始终相对于 workdir 进行评估,这使得很难包含蛇形项目或使用独立的工作目录(在这种情况下,需要将包装器复制到替代工作目录)。
【问题讨论】:
-
当你在github中使用指向原始版本的包装文件的url时是否返回错误?
-
我认为 snakemake 会“知道”如何处理普通的 github 链接,但事实并非如此(为什么会这样)。我在下面添加了一个答案。
-
看起来他们不支持 GitHub 存储库。只是 Snakefiles 的完整网址,基于您引用的他们的文档。
标签: url wrapper rules snakemake