【问题标题】:snakemake envvars are not passed to cluster execution (snakemake throws an error)snakemake envvars 未传递给集群执行(snakemake 抛出错误)
【发布时间】:2020-07-29 12:22:46
【问题描述】:

我将envvars 定义为传递给shell 脚本。

envvars:
    "PASS"

如果我忘记在 shell 中指定它们,使用snakemake -n 的试运行会提醒我设置它。执行在我的本地机器上运行良好,但我无法将 envvars 传递给我的集群环境。尽管我设置了环境变量,但在集群执行后我遇到了以下 snakemake 错误。由于 snakemake 错误,该作业永远不会启动。

WorkflowError in line 10 of /home/workflows/Snakefile:
The following environment variables are requested by the workflow but undefined. Please make sure that they are correctly defined before running Snakemake:
PASS
  File "/home/workflows/Snakefile", line 11, in <module>

使用snakemake --jobs 2 --latency-wait 30 --cluster "qsub ..." 执行snakemake 之后。明确指定环境变量没有帮助:snakemake --jobs 2 --latency-wait 30 --cluster "qsub ..." --envvars PASS

snakemake 是否在最初的snakemake 客户端shell 之外的另一个shell 中再次执行?

【问题讨论】:

  • ClusterExecutor 表示再次调用了snakemake,但随后没有来自主进程的envvars

标签: python snakemake


【解决方案1】:

看来您需要添加 flag -V to qsub 以使环境变量可用于 qsub 作业。

-V    Declares that all environment variables in the qsub commands environment are to be exported to the batch job.

【讨论】:

  • 非常感谢!我不知道那个选项...
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-07-05
相关资源
最近更新 更多