项目简介
nf-tencentcloud是一个nextflow插件,旨在为nextflow工作流引擎添加腾讯云COS对象存储和腾讯健康组学平台执行器适配支持,通过该组件,还能实现平台所需的一些细节功能适配,例如metadata文件生成等,确保工作流的高效运行与管理。它的设计目标是扩展腾讯云对nextflow工作流的原生支持,使得用户能通过简单易用的方式调用腾讯云资源运行nextflow工作流。
nextflow是一个用于创建可扩展、可移植和可重现工作流的工作流系统。它基于数据流编程模型,极大地简化了并行和分布式管道的编写,使您可以专注于数据流和计算。
功能介绍
● 支持对接腾讯云COS对象存储,可以直接在文件和配置中依赖腾讯云文件。
● 支持腾讯健康组学平台对接,快速获得高性能弹性计算能力。
(了解腾讯健康组学平台的更多内容,可参考:腾讯健康组学平台https://cloud.tencent.com/product/omics)
适用场景
调用云资源运行nextflow工作流
安装
● 确保您的系统中已经安装好了nextflow。
● 执行以下命令安装nf-tencentcloud。
nextflow plugin install nf-tencentcloud
可以安装到符合您当前环境的nf-tencentcloud插件。
● 您也可以在配置文件中指定插件从而进行安装。
plugins {
id 'nf-tencentcloud@1.1.0'
}
● 也可以使用-plugins命令行参数来指定工具。
nextflow run <pipeline> -plugins nf-tencentcloud@1.1.0
使用腾讯云对象储存
本插件集成了COS对象存储支持,您可以在腾讯云完成对象存储相关服务开通后,方便地在nextflow中集成使用腾讯云对象存储。
在腾讯云访问管理,api密钥管理页面中获取密钥,然后按照以下步骤进行操作:
● 在nextflow配置文件中对密钥进行配置。
tencentcloud {
secretId = "your_secret_id"
secretKey = "your_secret_key"
}
● 您如果使用临时密钥授权,可以配置accessToken以启用临时密钥。
tencentcloud {
secretId = "your_secret_id"
secretKey = "your_secret_key"
accessToken = "your_access_token"
}
● 配置完成后,您可以在流程,配置中任意使用cos存储,例如:
workDir = "cos://test-bucket-1258888888/nextflow/workdir"
使用腾讯健康组学平台
本插件集成了腾讯健康组学平台执行器,您可以在组学平台中开启 sandbox以进行调试,也可以等待后续开放外网访问终端接口后,在您自己的电脑上进行相应配置后,使用腾讯组学平台提供的弹性计算资源。
为了使用腾讯健康组学平台执行器,您需要在腾讯云上开通并使用腾讯健康组学平台,然后按照以下步骤进行操作:
● 您需要在组学平台获取请求endpoint和accessToken,用于接口调用和鉴权,并在nextflow配置文件中进行如下配置:
tencentcloud {
omics {
endpoint = "http://your_endpoint/api"
accessToken = "your_access_token"
}
}
请注意:这里的 accessToken 用于腾讯健康组学平台 oauth 鉴权,与上文中提到的腾讯云 cam 临时授权 accessToken 不同,不可混用。
● 完成相关配置后,设置执行器为tencentcloud-omics,即可使用腾讯健康组学平台弹性计算能力。
process {
executor = 'tencentcloud-omics'
}
项目地址
Github地址:https://github.com/Tencent/nf-tencentcloud
请给项目 一个 Star !
欢迎提出你的 issue 和 PR!
关注腾讯开源公众号
获取更多最新腾讯官方开源信息!