发布 ~
系列索引: 上链与背后的流程 | 联盟链开发(一) 动手编 SDK | 联盟链开发(二) SDK 1.0 版本的打造 | 联盟链开发(三) 将 SDK 发布到 PIP | 联盟链开发(四) 什么样的数据应该上链?| 联盟链开发 (五) BSN 相关问与答 | 联盟链开发(六) 链上简历应用 — 设计 | 联盟链开发(七) FISCO BCOS 介绍 | 联盟链开发(八) WeIdentity 极速体验 | 联盟链开发(九) 给Remix升个级 | 联盟链开发(十) 伪代码简述 ECDSA 签名过程 | 联盟链开发(十一) WeIdentity 的多签及限量凭证的实现 | 联盟链开发(十二)
这次我们要做的事,是将写好的 SDK 发布到 PyPI (PIP) 上,以便大家更好的使用。
有需要的同学可以通过pip
进行 SDK 的安装:
pip3 install bsn-sdk
通过如下链接查看如何使用:
首先我们需要一个帮助文档,里面包含几个要素:
Example:
https://github.com/leeduckgo/bsn_py_sdk/blob/master/README.md
然后我们写一个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
重点是的package
和install_requires
两项——我们通过packages
指定具体有哪些文件/文件夹包含在这个包中,通过install_requires
指定这个包又有哪些依赖。
pip install wheel # 安装wheel模块
python setup.py sdist # 生成源码包
此时如果成功的话会在根目录下生产一个叫做dist
的文件夹,里面包含生成的源码包:
在 PyPI 注册账户:
https://pypi.org/account/register/
安装上传所需模块:
pip3 install twine
上传:
twine upload dist/bsn-sdk-0.1.3.tar.gz # 上传源码包
会提示你输入账户和密码,输入你在 PyPI 注册时填写的信息即可。
然后我们登陆 PyPI,就能看到我们发布的包啦。
点击View
:
接下来我们可以用pip
来进行包的安装测试一下。
如果在这个过程中发现什么问题,那么修改版本号,按照 2-4 的步骤发布新的版本。
如果有必要,可以进 Manage 页面把以前的包删掉:
发布 SDK 的流程到此就阐述完毕了。欢迎老铁 STAR 我的 REPO ━(`∀´)ノ:
仓库链接: https://github.com/leeduckgo/bsn_py_sdk
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!