跳转到主要内容

生物黑客马拉松序列上传器

项目描述

COVID-19 PubSeq:公共序列上传器

Join the chat at https://gitter.im/arvados/pubseq

该仓库为COVID-19虚拟生物黑客马拉松的公共序列资源项目提供了一个序列上传器。有两个版本,一个在命令行上运行,另一个作为Web界面。您可以使用它上传SARS-CoV-2样本的基因组,使其对其他研究人员公开和免费。更多信息请参阅论文

alt text

要开始使用,首先安装上传器,然后使用bh20-seq-uploader命令上传您的数据

安装

安装上传器有多种方式。最便携的方式是使用virtualenv

使用virtualenv安装

  1. 准备您的系统。 您需要确保您有Python,并且能够安装如pycurlpyopenssl等模块。在Ubuntu 18.04上,您可以运行
sudo apt update
sudo apt install -y virtualenv git libcurl4-openssl-dev build-essential python3-dev libssl-dev
  1. 创建并进入您的virtualenv。 前往某个易于记住的目录,创建并进入一个virtualenv
virtualenv --python python3 venv
. venv/bin/activate

请注意,您需要从这个目录重复执行. venv/bin/activate步骤以进入您的virtualenv,每次您想使用已安装的工具时。

  1. 安装工具。 一旦进入您的virtualenv,安装此项目

从PyPi安装

pip3 bh20-seq-uploader

从git安装

pip3 install git+https://github.com/arvados/bh20-seq-resource.git@master
  1. 测试工具。 尝试运行
bh20-seq-uploader --help

它应该打印一些有关如何使用上传器的说明。

确保您在运行工具时处于您的virtualenv中! 如果您无法运行工具,并且提示符中没有显示(venv),请尝试转到您放置virtualenv的目录并运行. venv/bin/activate。它仅在当前终端窗口中起作用;如果您打开新的终端,您需要再次运行它。

使用pip3 --user安装

如果您不想每次使用上传器时都进入virtualenv,您可以使用pip3--user功能为您的用户安装工具。

  1. 准备您的系统。virtualenv方法一样,您需要安装一些依赖项。在Ubuntu 18.04上,您可以运行
sudo apt update
sudo apt install -y virtualenv git libcurl4-openssl-dev build-essential python3-dev libssl-dev
  1. 安装工具。您可以运行
pip3 install --user git+https://github.com/arvados/bh20-seq-resource.git@master
  1. 确保工具在您的PATH中。 pip3命令将在您的家目录中的.local/bin内安装上传器。默认情况下,您的shell可能不知道在那里查找命令。为了修复目前打开的终端,请运行
export PATH=$PATH:$HOME/.local/bin

要使此更改永久生效,假设您的shell是Bash,请运行

echo 'export PATH=$PATH:$HOME/.local/bin' >>~/.bashrc
  1. 测试工具。 尝试运行
bh20-seq-uploader --help

它应该打印一些有关如何使用上传器的说明。

开发源代码安装

如果您计划为项目做出贡献,您可能想从源代码安装可编辑的副本。使用此方法,源代码的更改将自动反映在安装的工具副本中。

  1. 准备您的系统。在Ubuntu 18.04上,您可以运行
sudo apt update
sudo apt install -y virtualenv git libcurl4-openssl-dev build-essential python3-dev libssl-dev
  1. 克隆并进入存储库。您可以运行
git clone https://github.com/arvados/bh20-seq-resource.git
cd bh20-seq-resource
  1. 创建并进入虚拟环境。前往某个记忆性的目录并创建并进入一个虚拟环境
virtualenv --python python3 venv
. venv/bin/activate

请注意,您需要从这个目录重复执行. venv/bin/activate步骤以进入您的virtualenv,每次您想使用已安装的工具时。

  1. 以可编辑模式安装签出的存储库。一旦进入您的虚拟环境,请使用此特殊的pip命令进行安装
pip3 install -e .
  1. 测试工具。 尝试运行
bh20-seq-uploader --help

它应该打印一些有关如何使用上传器的说明。

使用GNU Guix安装

有关使用GNU Guix运行/开发上传器的信息,请参阅INSTALL.md

使用方法

使用FASTA或FASTQ文件以及JSON或YAML格式的伴随元数据文件运行上传器

bh20-seq-uploader example/sequence.fasta example/metadata.yaml

生成全基因组的工作流程

所有这些上传的序列都正在被输入到一个工作流程中,以生成病毒的全基因组。您可以自己复制此工作流程。

例如,从GenBank获取您的SARS-CoV-2序列到seqs.fa,然后运行一系列命令

minimap2 -cx asm20 -X seqs.fa seqs.fa >seqs.paf
seqwish -s seqs.fa -p seqs.paf -g seqs.gfa
odgi build -g seqs.gfa -s -o seqs.odgi
odgi viz -i seqs.odgi -o seqs.png -x 4000 -y 500 -R -P 5

我们将此管道转换为通用工作流程语言(CWL),源代码可在此处找到。

有关构建全基因组模型更多信息,请参阅此维基页面

Web界面

该项目附带一个简单的Web服务器,允许您从浏览器使用序列上传器。只要您使用带有web额外功能的打包器安装它,它就会正常工作。

要本地运行它

virtualenv --python python3 venv
. venv/bin/activate
pip install -e ".[web]"
env FLASK_APP=bh20simplewebuploader/main.py flask run

然后访问http://127.0.0.1:5000/

生产

对于生产部署,您可以使用gunicorn

pip3 install gunicorn
gunicorn bh20simplewebuploader.main:app

默认情况下,它在http://127.0.0.1:8000/上运行,但可以使用各种gunicorn选项进行调整。

项目详情


下载文件

下载适合您平台文件的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。

源代码分发

bh20-seq-uploader-1.0.20200703212028.tar.gz (32.7 kB 查看哈希值)

上传时间 源代码

构建分发

bh20_seq_uploader-1.0.20200703212028-py3-none-any.whl (38.5 kB 查看哈希值)

上传时间 Python 3

支持