将 SDK 发布到 PIP | BSN 联盟链开发(四)

发布 ~

系列索引: 上链与背后的流程 | 联盟链开发(一) 动手编 SDK | 联盟链开发(二) SDK 1.0 版本的打造 | 联盟链开发(三) 将 SDK 发布到 PIP | 联盟链开发(四) 什么样的数据应该上链?| 联盟链开发 (五) BSN 相关问与答 | 联盟链开发(六) 链上简历应用 — 设计 | 联盟链开发(七) FISCO BCOS 介绍 | 联盟链开发(八) WeIdentity 极速体验 | 联盟链开发(九) 给Remix升个级 | 联盟链开发(十) 伪代码简述 ECDSA 签名过程 | 联盟链开发(十一)


这次我们要做的事,是将写好的 SDK 发布到 PyPI (PIP) 上,以便大家更好的使用。

有需要的同学可以通过pip进行 SDK 的安装:

pip3 install bsn-sdk

通过如下链接查看如何使用:

https://github.com/leeduckgo/bsn_py_sdk


1 README.md

首先我们需要一个帮助文档,里面包含几个要素:

  • 项目名称
  • 一段话简述功能
  • 安装指南
  • 一个简单的例子
  • 未来计划

Example:

https://github.com/leeduckgo/bsn_py_sdk/blob/master/README.md

2 setup.py

然后我们写一个setup.py,包含我们这个包中必要的信息:

from setuptools import setup, find_packages
# read the contents of your README file
from os import path
this_directory = path.abspath(path.dirname(__file__))
with open(path.join(this_directory, 'README.md'), encoding='utf-8') as f:
    long_description = f.read()
setup(
    # 以下为必需参数
    name='bsn-sdk',  # 模块名
    version='0.1.3',  # 当前版本
    description='SDK for BSN(Blockchain Service Network)',  # 简短描述
    packages=['bsn_sdk','bsn_sdk.common'], # 单文件模块写法
    install_requires=['certifi','requests', 'cryptography', 'fabric-sdk-py'],
    # ckages=find_packages(exclude=['contrib', 'docs', 'tests']),  # 多文件模块写法

    # 以下均为可选参数
    long_description=long_description,
    long_description_content_type="text/markdown",
    url='https://github.com/leeduckgo/bsn_py_sdk', # 主页链接
    author='李大狗Leeduckgo@SUIBE', # 作者名
    author_email='leeduckgo@gmail.com', # 作者邮箱
    classifiers=[
        'Intended Audience :: Developers', # 模块适用人群
        'License :: OSI Approved :: MIT License' # 模块的license
        ],
    keywords='blockchain bsn',  # 模块的关键词,使用空格分割
    )

文件见:

https://github.com/leeduckgo/bsn_py_sdk/blob/master/setup.py

重点是的packageinstall_requires两项——我们通过packages指定具体有哪些文件/文件夹包含在这个包中,通过install_requires指定这个包又有哪些依赖。

3 打包项目

pip install wheel # 安装wheel模块
python setup.py sdist  # 生成源码包

此时如果成功的话会在根目录下生产一个叫做dist的文件夹,里面包含生成的源码包:

sdk.png

4 上传

在 PyPI 注册账户:

https://pypi.org/account/register/

安装上传所需模块:

pip3 install twine

上传:

twine upload dist/bsn-sdk-0.1.3.tar.gz # 上传源码包

会提示你输入账户和密码,输入你在 PyPI 注册时填写的信息即可。

5 查看

然后我们登陆 PyPI,就能看到我们发布的包啦。

sdk_pypi.png

点击View

sdk_pypi_info.png

6 测试与修正

接下来我们可以用pip来进行包的安装测试一下。

如果在这个过程中发现什么问题,那么修改版本号,按照 2-4 的步骤发布新的版本。

如果有必要,可以进 Manage 页面把以前的包删掉:

sdk_pypi_manage.png


发布 SDK 的流程到此就阐述完毕了。欢迎老铁 STAR 我的 REPO ━(`∀´)ノ:

仓库链接: https://github.com/leeduckgo/bsn_py_sdk


.jpeg

本文参与登链社区写作激励计划 ,好文好收益,欢迎正在阅读的你也加入。

  • 发表于 2020-01-24 11:19
  • 阅读 ( 459 )
  • 学分 ( 32 )
  • 分类:BSN

0 条评论

请先 登录 后评论
李大狗
李大狗

上海对外经贸大学区块链研究中心副主任

19 篇文章, 3181 学分