如何在1分钟内在PyPI上发布控制台实用程序


开发了控制台实用程序后,您决定将其发布在PyPI上。 好吧,真的,有什么比通过pip install使其更好的呢? 仔细搜索所需的内容,您可能会发现我发现的关于该主题的唯一一则帖子 ,不仅是从2014年开始,还要求您创建一堆文件夹和文件来处理完全不必要的(您)事情。


如何在2019年解决这个问题而不会太头疼? 我已经问过这个问题,因此,在阅读了大量文档之后,我为您创建了本教程。 这是分步指南。


1.在PyPI上创建一个帐户( 注册链接


2.创建应用程序的入口点(例如,具有以下内容的entry.py文件)


def main(): print("It's alive!") 

3.装


 curl -sSL https://raw.githubusercontent.com/sdispater/poetry/master/get-poetry.py | python source $HOME/.poetry/env 

(您可以以其他方式安装 诗歌 ,例如pip install --user poetry-大约翻译。)


4.创建环境


 cd myproject #    ,    poetry init 

5.配置控制台命令(为此, 将以下行添加到出现pyproject.toml文件中)


 [tool.poetry.scripts] APPLICATION-NAME = 'entry:main' 

应用名称   必须更改为console命令的名称。


6.发布实用程序! (使用步骤1中的用户名和密码)


 poetry publish --username PYPI_USERNAME --password PYPI_PASS --build 

做完了! 现在,其他人仅需要两个命令即可安装:


 $ sudo pip install PROJECT-NAME $ APPLICATION-NAME 

其中PROJECT-NAME是您在第4步中为项目指定的名称, APPLICATION-NAME 第5步中团队的名称。




版本更新


每当您想更新模块时,只需在pyproject.toml文件中更改版本号即可


 version = "0.1.0" 

并重复步骤6:


 poetry publish --username PYPI_USERNAME --password PYPI_PASS --build 



奖励:自定义Travis以自动发布


将以下行添加到.travis.yml文件中


 language: python dist: xenial before_install: - curl -sSL https://raw.githubusercontent.com/sdispater/poetry/master/get-poetry.py | python - source $HOME/.poetry/env install: - poetry install script: - poetry build deploy: - provider: script skip_cleanup: true script: poetry publish --username $PYPI_USER --password $PYPI_PASS on: branch: master python: '3.7' tags: true 

并将环境变量PYPI_USER和PYPI_PASS设置为travis-ci.com 。 之后,您可以使用以下命令发布软件包:


 git tag -a v1.2 # Replace version number with yours git push --tags 

Source: https://habr.com/ru/post/zh-CN456304/


All Articles