linux 弃用用法:不支持将SINGULARITYENV_TMP作为环境变量转发(Nextflow)

gopyfrb3  于 2022-12-03  发布在  Linux
关注(0)|答案(1)|浏览(197)

我有一个Nextflow工作流,其中一个流程使用singularity.sif文件。
运行工作流后,我在日志中看到以下消息:

WARNING: DEPRECATED USAGE: Forwarding SINGULARITYENV_TMP as environment variable will not be supported in the future, use APPTAINERENV_TMP instead 
WARNING: DEPRECATED USAGE: Forwarding SINGULARITYENV_TMPDIR as environment variable will not be supported in the future, use APPTAINERENV_TMPDIR instead 
WARNING: DEPRECATED USAGE: Forwarding SINGULARITYENV_NXF_DEBUG as environment variable will not be supported in the future, use APPTAINERENV_NXF_DEBUG instead

我的nextflow.config如下所示

singularity {
    enabled = true
    autoMounts = true
}

conda {
    conda = './env.yml'
    enabled = true
}

//Wynton process Config
process {
    executor = "sge"
    scratch = true
    stageInMode = "copy"
    stageOUtMode="move"
    errorStrategy = "retry"
    clusterOptions = "-S /bin/bash -o job.log -e job.err"

    withName: PROCESS_1 {
        conda = './env.yml'

    withName: SINGULARITY_PROGRAM {
        container = 'program.sif'
    }
    ...
}
dddzy1tm

dddzy1tm1#

当项目移到Linux Foundation时,Singularity被重命名为Apptainer。所有的$SINGULARITYENV_*环境变量都已被弃用,并将在Apptainer的后续版本中删除。请注意,当Apptainer看到SINGULARITYENV环境变量时,它会警告您。我怀疑您收到这些警告是因为您的singularity可能是apptainer的符号链接,例如当安装版本1.1.3时就是这种情况。
六天前,22.11.0-edge版本中添加了对Apptainer容器引擎的Nextflow支持。此边缘版本现在具有以下命令行选项:

-with-apptainer
       Enable process execution in a Apptainer container

要在Nextflow配置中启用它,请向Nextflow config添加以下内容(或将singularity块替换为):

apptainer {
    enabled = true
    autoMounts = true
}

并使用最新版本运行您的工作流:

NXF_VER=22.11.0-edge nextflow run

相关问题