将 SDK 发布到 PIP | BSN 联盟链开发(四)
发布 ~
> **系列索引:** [上链与背后的流程 | 联盟链开发(一)](https://learnblockchain.cn/article/358) [动手编 SDK | 联盟链开发(二)](https://learnblockchain.cn/article/359) [SDK 1.0 版本的打造 | 联盟链开发(三)](https://learnblockchain.cn/article/380) [将 SDK 发布到 PIP | 联盟链开发(四)](https://learnblockchain.cn/article/385) [什么样的数据应该上链?| 联盟链开发 (五)](https://learnblockchain.cn/article/557) [BSN 相关问与答 | 联盟链开发(六)](https://learnblockchain.cn/article/683) [链上简历应用 — 设计 | 联盟链开发(七)](https://learnblockchain.cn/article/684) [FISCO BCOS 介绍 | 联盟链开发(八)](https://learnblockchain.cn/article/692) [WeIdentity 极速体验 | 联盟链开发(九)](https://learnblockchain.cn/article/1094) [给Remix升个级 | 联盟链开发(十)](https://learnblockchain.cn/article/984) [伪代码简述 ECDSA 签名过程 | 联盟链开发(十一)](https://learnblockchain.cn/article/1038) [WeIdentity 的多签及限量凭证的实现 | 联盟链开发(十二)](https://learnblockchain.cn/article/1285) --- 这次我们要做的事,是将写好的 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`,包含我们这个包中必要的信息: ```python 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`指定这个包又有哪些依赖。 ## 3 打包项目 ```python pip install wheel # 安装wheel模块 python setup.py sdist # 生成源码包 ``` 此时如果成功的话会在根目录下生产一个叫做`dist`的文件夹,里面包含生成的源码包: ![sdk.png](https://learnblockchain.cn/image/show/attachments-2020-01-wiATVrOl5e2a63435e958.png) ## 4 上传 在 PyPI 注册账户: https://pypi.org/account/register/ 安装上传所需模块: ```python pip3 install twine ``` 上传: ```python twine upload dist/bsn-sdk-0.1.3.tar.gz # 上传源码包 ``` 会提示你输入账户和密码,输入你在 PyPI 注册时填写的信息即可。 ## 5 查看 然后我们登陆 PyPI,就能看到我们发布的包啦。 ![sdk_pypi.png](https://learnblockchain.cn/image/show/attachments-2020-01-rKDorkbV5e2a63517fb84.png) 点击`View`: ![sdk_pypi_info.png](https://learnblockchain.cn/image/show/attachments-2020-01-Z2QZvRkU5e2a63596cd06.png) ## 6 测试与修正 接下来我们可以用`pip`来进行包的安装测试一下。 如果在这个过程中发现什么问题,那么修改版本号,按照 2-4 的步骤发布新的版本。 如果有必要,可以进 Manage 页面把以前的包删掉: ![sdk_pypi_manage.png](https://learnblockchain.cn/image/show/attachments-2020-01-tlx89l0g5e2a63660ff90.png) --- 发布 SDK 的流程到此就阐述完毕了。欢迎老铁 STAR 我的 REPO ━(*`∀´*)ノ: **仓库链接:** https://github.com/leeduckgo/bsn_py_sdk --- ![.jpeg](https://learnblockchain.cn/image/show/attachments-2020-01-9t2XfNKQ5e2a63801f570.jpeg)
系列索引: 上链与背后的流程 | 联盟链开发(一) 动手编 SDK | 联盟链开发(二) SDK 1.0 版本的打造 | 联盟链开发(三) 将 SDK 发布到 PIP | 联盟链开发(四) 什么样的数据应该上链?| 联盟链开发 (五) BSN 相关问与答 | 联盟链开发(六) 链上简历应用 — 设计 | 联盟链开发(七) FISCO BCOS 介绍 | 联盟链开发(八) WeIdentity 极速体验 | 联盟链开发(九) 给Remix升个级 | 联盟链开发(十) 伪代码简述 ECDSA 签名过程 | 联盟链开发(十一) WeIdentity 的多签及限量凭证的实现 | 联盟链开发(十二)
这次我们要做的事,是将写好的 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
重点是的package
和install_requires
两项——我们通过packages
指定具体有哪些文件/文件夹包含在这个包中,通过install_requires
指定这个包又有哪些依赖。
3 打包项目
pip install wheel # 安装wheel模块
python setup.py sdist # 生成源码包
此时如果成功的话会在根目录下生产一个叫做dist
的文件夹,里面包含生成的源码包:
4 上传
在 PyPI 注册账户:
https://pypi.org/account/register/
安装上传所需模块:
pip3 install twine
上传:
twine upload dist/bsn-sdk-0.1.3.tar.gz # 上传源码包
会提示你输入账户和密码,输入你在 PyPI 注册时填写的信息即可。
5 查看
然后我们登陆 PyPI,就能看到我们发布的包啦。
点击View
:
6 测试与修正
接下来我们可以用pip
来进行包的安装测试一下。
如果在这个过程中发现什么问题,那么修改版本号,按照 2-4 的步骤发布新的版本。
如果有必要,可以进 Manage 页面把以前的包删掉:
发布 SDK 的流程到此就阐述完毕了。欢迎老铁 STAR 我的 REPO ━(`∀´)ノ:
仓库链接: https://github.com/leeduckgo/bsn_py_sdk
区块链技术网。
- 发表于 2020-01-24 11:19
- 阅读 ( 1373 )
- 学分 ( 37 )
- 分类:BSN
评论