zoukankan      html  css  js  c++  java
  • 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 的就完成了,是不是很激动!

  • 相关阅读:
    js工具库
    细说log4j之log4j 1.x
    细说log4j之概述
    细说RESTful API安全之概述
    【转】javascript代码混淆和压缩
    细说RESTful API之入门介绍
    j2ee应用开发调试工具
    java定时器实现总结
    浏览器书签同步工具
    简单备份mysql数据库策略及实现方式
  • 原文地址:https://www.cnblogs.com/yoyoketang/p/13665907.html
Copyright © 2011-2022 走看看