一、Twine是什么? 首先,需要解释一下,Twine这个网站到底是干什么的。这并不是一件很容易的事情,因为它的构思有点复杂。 虽然不太确切,但是可以简单理解,Twine是一个加强型的美味书签del.icio.us。 del.icio.us的所有功能,Twine都提供,而且还有更多。 二、Twine的信息管理方式 无论是书签,还是上传的文件,Twine都要求使用者为它们加上summary(总结)和tag(标签)。 Twine会自动分析这些文字中的名词,然后提取出其中的人名、地名和组织名。接着,通过这些标志性词语,Twine就会知道你的兴趣,会自动为你提供相关内容和组织管理信息。 四、对Twine的简评 从上面的介绍可以看到,Twine的构思还是很不错的。但是,经过我的实际使用,我发现它有一个重大的缺点:那就是对用户的要求太高。
他们还利用Twine来帮助提高服务器利用率。数据中心操作员使用Twine在我们的数据中心中合理地分散容器,并在维护事件期间停止或移动容器。 Twine结构 ? Twine结构 PRN是我们的数据中心区域之一。 一个区域由彼此相邻的多个数据中心建筑物(PRN1和PRN2)组成。 Twine负责容器分配和容器生命周期管理。它由以下组成部分组成: Twine前端为UI,CLI和其他自动化工具提供API,以便与Twine交互。它向作业所有者隐藏了Twine的内部细节。 Twine调度器代理隐藏了调度器分片的内部细节,它为Twine用户提供了单个控制平台的抽象性和可用性。 Twine分配器负责将容器分配给服务器。调度器负责容器启动,停止,更新和故障转移的编排。 由于Twine作业不再局限于单个集群,Twine用户可以表明他们的意图,即容器应该如何跨故障域传播。
而Twine就是为了解决这个问题而生的,它让发布过程变得简单又安全。作为一个经常开发Python库的人,我不得不说:Twine绝对是每个Python开发者工具箱中必不可少的一部分! (真的超级好用)Twine是什么?简单来说,Twine是一个用于发布Python包的实用工具。 它允许你在上传前验证你的包它支持上传到PyPI和其他包索引最重要的是,Twine让整个发布流程变得简单直观,大大降低了新手的入门门槛。为什么要使用Twine? 安装Twine安装Twine非常简单,只需一行命令:pip install twine如果你想要最新版本,也可以使用:pip install --upgrade twine安装完成后,你可以通过以下命令验证安装是否成功 :twine --version准备你的Python包在使用Twine上传之前,你需要准备好你的Python包。
local [local] repository: http://localhost:2233 username: admin password: 123456 然后使用sdist命令创建源分发,使用twine 上传 release:clean_pyc python setup.py sdist bdist_wheel twine upload -r local . -iname "__pycache__" | xargs rm -rf {} \; 在用Jenkins做持续集成的时候,twine有概率出现找不到配置文件的情况,这时候通过 --config-file 参数指定你机器上.pypirc的路径即可: twine upload --config-file .pypirc -r local .
上传 我们使用 twine 包来上传到私服,官网地址: https://pypi.org/project/twine/ 执行: pip install twine twine upload —repository-url 参考资料 https://pypi.org/project/twine/ https://packaging.python.org/tutorials/packaging-projects/#setup-py
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
1.你需要的工具 pycharm setuptools库 twine库 2.详细步骤 首先,打开pycharm,新建一个项目 然后选择编译器Virtualenv,新建一个虚拟环境 等待虚拟环境创建完成 ,取名为你要上传的库的名字 创建后,文件夹中默认有__init__.py,不用编辑它,紧接着新建一个py文件,名叫say_hello,我们先在里面写一个用于测试的函数 最后,我们需要去下载twine :research”,再选择“Python Interpreter”,应该会出现类似于下面这样的界面: 我们注意到,由于在创建虚拟环境时,系统自动下载了setuptools库,所以我们只需要安装twine 库便可 单击最右面的小加号,将会弹出搜索界面,在里面搜索“twine” 单击“Install Packgae”,等待twine下载完成,然后回到主界面,准备下一步工作 现在,在与testcase
支持 pip # bdist_egg: 生成类似 *.egg,支持 easy_install 4、注册(如果没有pypi账号,请自己先注册一个,官网https://pypi.python.org/) twine register dist/cutImages-0.61.tar.gz 5、上传 twine upload dist/cutImages-0.61.tar.gz 注:如果没有安装twine,请先安装: pip install twine
现在您已注册,您可以使用 twine 上传分发包。 你需要安装 Twine: python3 -m pip install --user --upgrade twine python3 -m pip install --upgrade twine # 虚拟环境不用 --user 安装完成后,运行 Twine 以上传所有存档 dist: python3 -m twine upload --repository-url https://test.pypi.org twine upload dist/* Uploading distributions to https://upload.pypi.org/legacy/ Uploading slm-0.0.1-py3 python3 setup.py sdist bdist_wheel twine upload dist/* 命令完成后,您应该看到与此类似的输出: Uploading distributions to
环境和依赖 •pyenv•python3•setuptools•wheel•twine 需要的操作 pyenv install 3.7.2 cd demohello pyenv shell 3.7.2 python -m pip install setuptools wheel twine 上传实践 这一步你也可以借助~/.pypirc搭配twine实现更精简的方式操作,具体看你个人喜好而定。 # 打包 python setup.py sdist bdist_wheel # 上传 python -m twine upload --repository-url http://127.0.0.1
上传包接下来,我们需要安装上传工具 twine,然后使用 twine 命令来上传我们的包。 # 安装上传 PyPI 的工具 twinepython3 -m pip install --upgrade twine# 上传python3 -m twine upload --repository testpypi
Django App #0 GitHub https://github.com/Coxhuang/DjangoApp-commit-PyPI #1 环境 Python3.6 #2 开始 #2.1 安装twine pip3 install twine #2.2 新建包(我的包名叫django-google-auth) .django-google-auth ├── LICENSE ├── MANIFEST.in 'Programming Language :: Python :: 3.6', ], ) #3 发布 回到包的目录下 # 打包 python3 setup.py sdist # 发布 twine
2、接下来就是上传你的包了,这里使用twine上传。 需要先安装twine(用 twine上传分发包,并且只有 twine> = 1.11.0 才能将元数据正确发送到 Pypi上) pip install twine 3、安装完之后,运行下面的命令将库上传 ,上传包,期间会让你输入注册的用户名和密码 twine upload dist/* 输入 PyPI注册的用户名和密码。 命令完成后,您应该看到与此类似的输出: ➜ twine upload dist/* Uploading distributions to https://upload.pypi.org/legacy/
os.system("pip install -U setuptools twine wheel") os.system("rm -rf build/ dist/ Flask_PluginKit.egg-info os.system("python setup.py sdist bdist_wheel") if self.test: os.system("twine repository-url https://test.pypi.org/legacy/ dist/*") elif self.release: os.system("twine
首先到项目的 Secrets 中添加自己想要添加的信息,然后就可以按照如下使用方式: - name: Build and publish env: TWINE_USERNAME: ${{ secrets.PYPI_USERNAME }} TWINE_PASSWORD: ${{ secrets.PYPI_PASSWORD }} 上面这个例子是我将自己 pypi 的账号和密码设置成了 Secrets,然后将信息添加到环境变量 "$MATRIX_CONTEXT" 比如,在我的项目中,我要根据当前的 tag 版本号去推送到 pypi 中,我是这样写的: - name: Build and publish env: TWINE_USERNAME : ${{ secrets.PYPI_USERNAME }} TWINE_PASSWORD: ${{ secrets.PYPI_PASSWORD }} TAG_REF: ${{ github.ref }'` sed -i "/VERSION =/c VERSION = '${tag}'" setup.py python setup.py sdist bdist_wheel twine
其他经验 1、twine upload 命令参数使用 使用 twine upload -h 命令可以查看一些可选参数。 testpypi_password 信息比较清楚,不做解释,但是我发现网上关于这两个 repository 的地址有差异,但是我想到了一个办法,那就是不用记住这两个地址(我猜是因为换过),而是通过 twine 来查,具体方法如下: from twine.utils import DEFAULT_REPOSITORY,TEST_REPOSITORY print(DEFAULT_REPOSITORY,TEST_REPOSITORY 使用上传命令的时候就可以切换 pypi 和 testpypi 了,建议每次上传包先上传到 testpypi 然后本地安装验证之后再传到 pypi,上传命令分别是: # 上传到 pypi,-r 的默认参数也是 pypi twine upload -r pypi dist/* # 上传到 testpypi,也就是 .pypirc 中配置的别名 twine upload -r testpypi dist/* 参考资料 https:/
生成包 先确保已经安装了最新版本的 setuptools, wheel, twine pip install --user --upgrade setuptools wheel twine 生成项目包: 上传包到 PyPI 6.1 注册 PyPI 测试账号 注册地址:https://test.pypi.org/account/register/ 6.2 使用 twine 上传 dist 目录下的存档 python -m twine upload --repository-url https://test.pypi.org/legacy/ dist/* ? 正试和测试是独立的系统,因此,还需要注册一个账号, 注册地址:https://pypi.org 使用 twine 发布: python -m twine upload dist/* 安装: pip install
安装上传工具 twine 用来上传你的包到 PyPi : python -m pip install --user --upgrade twine 3. (真6) 检查是否符合pypi要求 twine upload dist/* 上传 twine upload dist/* 报错:ImportError: cannot import name ) 第三步:使用以下指令更新包体 python setup.py sdist bdist_wheel 第四步:使用以下指令把新包体上传到pypi服务器上(记得需要先把dist文件夹下的内容删干净) twine ==37.3 requests==2.30.0 requests-toolbelt==1.0.0 rfc3986==2.0.0 rich==13.3.5 rsa==4.7.2 six==1.16.0 twine
如果没有就运行以下命令安装: $ pip3 install setuptools wheel twine 配置项目 目录结构可参考: https://github.com/Hootrix/text-box-wrapper , ) 构建 $ python3 setup.py sdist bdist_wheel 说明: 将在dist的新文件夹中生成源代码和二进制分发文件 上传到Pypi 确保已经注册了PyPI账户 $ twine pypirc文件中,如果没有就自己新建 [pypi] username = __token__ password = pypi-A1************bQ 执行推送后类似下面内容,就是完成了 $ twine
安装 twine 包 python3 -m pip install --upgrade twine。 通过 python3 -m twine upload --repository testpypi dist/* 上传发行版包,然后你就可以检查你的包了。 通过 python3 -m twine upload dist/* 上传发行版归档文件。 然后你就可以正式使用 pip 安装它了 pip install biliupload。