pytest文档56-插件打包上传到 pypi 库
前言
pytest 的插件完成之后,可以上传到 github,方便其他小伙伴通过 pip 源码安装。如果我们想通过 pip install packages
这种方式安装的话,需上传到 pypi 仓库
pypi仓库
pip,全称是:python install packages,它是一个通用的 Python 包管理工具,是easy_install的替代品, 主要是用于安装 PyPI 上的软件包。
PyPI,全称是:Python Package Index,它是Python官方的第三方库的仓库,所有人都可以下载第三方库或上传自己开发的库到PyPI。
PyPI推荐使用pip包管理器来下载第三方库。
我们想把python包上传到pypi,需在 https://pypi.org/ 注册一个账号
整理项目结构
前面这篇https://www.cnblogs.com/yoyoketang/p/13638661.htmlpytest 插件的开发,就是一个半成品了
整个目录结构如下
pytest-change-report
├── LICENSE
├── README.rst
├── requirements.txt
├── setup.py
├── pytest_change_report.py
├── tests
│ ├──__init__.py
│ ├──conftest.py
│ └──test_change_report.py
- pytest-change-report 是项目的包名
- LICENSE LICENSE文件是授权文件,比如:MIT license, APACHE license
- requirements.txt 依赖包,比如这个插件依赖pytest模块,可以写pytest==4.5.0
- README.rst 其实就是项目介绍和使用说明帮助文档
- setup.py python模块安装所需要的文件
- tests 是测试的目录
- pytest_change_report.py 插件实现功能的核心模块
代码写完测试没问题后,上传到github仓库,并打个v1.0的标签
打完 tag 标签,push 到 github 仓库,这样在 tag 目录就能看到 release 的记录了
打包
cd到项目的根目录,执行
python setup.py sdist build
执行完成后,在dist目录,会生成一个.tar.gz的压缩包,这个压缩包就可以通过 pip 安装了
也可以打包一个wheels格式的包,需要安装wheel包:
pip install wheel
执行以下命令打包
python setup.py bdist_wheel --universal
这样在dist目录生成一个 pytest_change_report-1.0-py2.py3-none-any.whl 文件,.whl 后置的文件也可以通过 pip 直接安装
上传发布
使用twine上传,先安装twine
pip install twine
上传输入指令,接着会提示输入账号和密码
twine upload dist/*
>twine upload dist/*
Uploading distributions to https://upload.pypi.org/legacy/
Enter your username: yoyoketang
Enter your password:
Uploading pytest_change_report-1.0-py2.py3-none-any.whl
100%|█████████████████████████████████████████████████████████ ████████████████████| 5.56k/5.56k [00:00<00:00, 6.17kB/s]
Uploading pytest-change-report-1.0.tar.gz
100%|█████████████████████████████████████████████████████████ ████████████████████| 5.15k/5.15k [00:01<00:00, 4.71kB/s]View at:
https://pypi.org/project/pytest-change-report/1.0/
上传后访问地址 https://pypi.org/project/pytest-change-report/1.0/
查看pypi
打开上面的访问地址可以查看到已经上传成功
点 Homepage 可以跳转到 github 仓库去
这样小伙伴们就能直接使用 pip 安装了
pip install pytest-change-report
python 打包发布到 pypi 的就完成了,是不是很激动!
pytest文档56-插件打包上传到 pypi 库相关推荐
- uni-app uni-file-picker文件上传实现拍摄从相册选择获取图片上传文档服务器(H5上传-微信小程序上传)
前言 最近在使用uni-app写H5移动端,有一个从手机拍摄从相册选择获取图片上传到文档服务器功能. 查阅uni-app发现关于上传图片,uni-file-picker文件上传,uni.chooseI ...
- python打包上传至pypi —— 具有多个目录的项目工程快速打包上传
项目目录 项目目录说明: cqrcode:项目包(我的里面有多个目录) LINCENSE:许可证 MANIFEST.in:需要打包的项目文件说明 README.md:项目说明文档 requiremen ...
- 自动将*.md文档中的图片上传到Gitee(Typora+PicGo+Gitee)
1. 存在问题 很多刚接触markdown文档格式的友友们,在使用文档中的图片时还存在一些问题:直接将截图下来的图片或是本机图片粘贴在文档中,图片的地址还是本地文件的地址(如D:\xxx),这种情况下 ...
- 蒲公英 linux安装目录,蒲公英 - 文档中心 - 使用 Fastlane 上传 App 到蒲公英
Fastlane 简介 Fastlane 是一款为 iOS 和 Android 开发者提供的自动化构建工具,它可以帮助开发者将 App 打包.签名.测试.发布.信息整理.提交 App Store 等工 ...
- NodeMCU文档中文翻译 5 上传代码
一.译文 与烧写一样,这里有好几种方法来从计算机上传代码到设备当中. 注意NodeMCU串口接口在启动时使用115200波特率,为了在启动后改变速率,可以使用uart.setup(0,9600,8,0 ...
- PHP上传word文档并解析,PHP上传Word并读取显示
file("story_img");; // 4, 判断文件上传的结果 if($result) { // 上传成功 $imageUrl="./Public/Admin/i ...
- 自定义Gradle插件实现打包上传到蒲公英
上一篇文章提到了关于如何写Gradle自定义插件Plugin,本篇文件介绍下如何写gradle插件实现打包上传到pgy. 要实现打包上传到蒲公英必须要弄清楚以下问题: 1.什么时候打包完成?监听到打包 ...
- python模块打包上传pypi-演示pytest hook函数二次开发
python模块打包上传pypi pytest hook函数二次开发 修改默认编码 显示中文用例名称 官方文档 : https://packaging.python.org/en/latest/tut ...
- jquery.zSlide.js-基于CSS3/HTML5演示文档jQuery插件
一.卖的什么葫芦药? jquery.zSlide.js是我最近折腾的一个jQuery插件,借助于CSS3和HTML5的一些新特性,在浏览器中实现类似于powerpoint幻灯片展示. 如果你看到这段文 ...
最新文章
- ios -使用NSLayoutConstraint实现多个view等宽等高等间距
- BTC震荡调整后的新一轮爆发将要开启,BCH姿态逐渐明显
- VMware Workstation 与 Device/Credential Guard 不兼容。在禁用 Device/Credenti
- c语言两个字符串比较,将两个字符串s1和s2比较,如果s1s2,数组编程:将2个字符串s1和s2比较。若s1s2输出1;若s1=s2,输出0;若s1s2,输出-1(不能用strcmp函数)...
- android 休眠任务不执行_Springboot Scheduled任务为什么不执行?
- 10-20-000-简介-Thrift
- 利用Spring解耦VS的WebService
- java oracle分页查询语句_oracle分页查询语句,java得到分页查询语句的方法
- UnixVi命令详解
- 展望2025多媒体技术与应用趋势
- html如何改成花体英文字体,花体英文转换器可复制字体(附花体字发文技巧)...
- 【LeetCode】马三来刷题之Permutations
- javascript案例26——求100以内所有7倍数之和
- 手把手教你Python+selenium爬虫百度文库源码+解析
- Manjaro安装配置小记
- opencv简易数字识别
- 页面刷新指定到原先滚动条位置
- backpackII
- 打开相机拍照或从相册中选择照片
- FilterSecurityInterceptor源码解读