更新时间:2021-03-18 GMT+08:00
分享

快速开始

基因容器SDK简介

基因容器服务软件开发工具包(GCS SDK,Gene Container Service Software Development Kit)对GCS服务提供的REST API接口进行封装,以简化您的开发工作。当前仅支持Python3语言的SDK,您可以使用GCS SDK提供的接口进行开发。当前SDK版本支持基于GCS环境和Cromwell环境两种任务运行方式,请根据需要进行选择。

在开始SDK开发前,请确保您已了解基因容器的基本概念,详细请参见基本概念

SDK的版本迭代记录,请参见修订记录

环境准备

在安装使用SDK前,请确保已完成必要的环境准备。

  • 已注册华为云帐号,并已开通基因容器服务。基因容器在控制台的访问链接为https://console.huaweicloud.com/gcs
  • 已完成开发环境准备,包括:
    • 根据操作系统从Python官网下载并安装Python版本。

      当前SDK包仅支持python3。

      安装完成后请输入如下命令,查看是否安装成功。

      python3 -V
      Python 3.6.8
    • 已获取项目名称(project_name),若未获取请参见API凭证。如未自定义项目名称,无需关注此参数
    • 已有可用的AK/SK,若未创建请参见访问密钥

安装SDK

  1. 获取GCS SDK安装包 cloud-sdk-python3-gcs-x.x.x.zip。

    登录GCS控制台,下载基因容器Python SDK开发包,如下图所示。
    图1 Python SDK开发包下载地址

  2. 解压SDK安装包。

    目录结构如下:

    |-- cloud-sdk-python-gcs-x.x.x.zip
      |-- gcs-sdk-x.x.x.tar.gz            python3 SDK
      |-- cromwell-demo.zip  
        |-- cromwell_demo
          |-- cromwell_demo.py            Cromwell引擎接口使用示例
          |-- example.inputs              输入文件
          |-- example.options             options文件
          |-- example.wdl                 WDL描述文件
      |-- gcs-demo.zip  
        |-- gcs_demo
          |-- gcs-grammr.yaml             GCS流程语法文件
          |-- gcs_demo.py                 GCS接口使用示例  
      |-- README.md 

  3. 下载安装包管理工具pip,并更新到最新版本。
  4. 安装SDK。

    pip3 install gcs-sdk-x.x.x.tar.gz

    如果由于pip版本过低安装失败,请使用如下命令更新pip到最新版本之后再重新安装。

    python3 -m pip install --upgrade pip

    在Ubuntu中,升级了pip,如果版本跨度较大,再次使用pip 安装相关的python包的时候可能会出现以下错误

    ImportError: cannot import name main

    解决方法:pip3文件在usr/bin目录下,cd进去,进行以下修改

    把下面的三行

    1
    2
    3
    from pip import main
    if __name__ == '__main__':
        sys.exit(main())
    

    换成下面的三行

    1
    2
    3
    from pip import __main__
    if __name__ == '__main__':
        sys.exit(__main__._main())
    

    安装完成后,您就可以参考示例代码说明使用。

示例代码说明

  1. 编辑XXX_demo.py文件,配置认证信息(ak/sk或username/password),以gcs_demo.py为例。

     1
     2
     3
     4
     5
     6
     7
     8
     9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    # -*- coding: UTF-8 -*-
    import requests
    from gcs import GCSClient
    # 初始化gcs客户端
    gcs = GCSClient()
    # [二选一]设置用户名密码,默认region='cn-north-4',如在北京四运行无需设置,
    # 默认project_name=region,无需指定
    username="XXXXX"
    password="XXXXX"
    project_id="XXXXX"
    gcs.set_user_auth_param(username, password, project_id)
    
    # [二选一]
    # 设置AK,SK 默认region='cn-north-4',如在北京四运行无需设置,
    # 默认project_name=region,无需指定
    # ak="xxxxx"
    # sk="xxxxx"
    # project_id="XXXXX"
    # gcs.set_aksk_auth_param(ak, sk, project_id)
    

  2. 执行demo文件

    $ python3 gcs_demo.py

    SDK接口使用方法请参见接口列表

    使用GCS客户端调用成功后均会返回 python对象requests.Response,关于Response的使用方法,请参见Response对象使用方法

相关文档