使用
Snakemake
选项时,是否可以在 --slurm
工作流程完成后发送电子邮件?
像这样的东西:
onsuccess:
email([email protected], title="Snakemake job xxx finished successfully")
onerror:
email([email protected], title="Snakemake job xxx failed")
SLURM 脚本有此选项:
#!/bin/bash
#SBATCH --mail-type=END,FAIL
我不希望在每条规则完成后收到电子邮件,而是在整个工作流程完成后收到电子邮件。
这可以使用snakemake的
shell
函数来实现。规则如下:
EMAIL = "[email protected]"
onsuccess:
shell("mail -s 'DONE' {EMAIL} < {log}")
onerror:
shell("mail -s 'ERROR' {EMAIL} < {log}")
请注意,
{log}
也是snakemake内置的,因此它将附加日志内容作为电子邮件的正文。