此工具为单个模块创建基于tar.gz的python轮存档
并允许安装它们。
(注:目前仅在Linux上测试)。
cloudify插件打包为一组python
Wheels
在tar.gz文件中,所以我们需要一个工具来创建这样的档案。因此,
惠勒。
用法
创建包wheelr create --help
示例# create an archive by retrieving the source from PyPI and keep the downloaded wheels (kept under /plugin)wheelr create -s cloudify-script-plugin==1.2 --keep-wheels -v
# create an archive package by retrieving the source from a URL and creates wheels from requirement files found within the archive.wheelr create -s http://github.com/cloudify-cosmo/cloudify-script-plugin/archive/1.2.tar.gz -r .
# create an archive package by retrieving the source from a local path and output the tar.gz file to /tmp/.tar.gz (defaults to /.tar.gz)wheelr create -s ~/modules/cloudify-script-plugin/ -o /tmp/
这三个命令的输出包应该类似于
cloudify_script_plugin-1.2-py27-none-any.tar.gz如果运行在
Python2.7.x.
安装软件包wheelr install --help
示例# install a packaged module from a local package tar file and upgrade if already installedwheelr install -s ~/tars/cloudify_script_plugin-1.2-py27-none-any.tar.gz --upgrade
# install a packaged module from a url into an existing virtualenvwheelr install -s http://me.com/cloudify_script_plugin-1.2-py27-none-any.tar.gz --virtualenv my_venv -v
命名和版本控制
资料来源:PYPI
当提供一个pypi源时,它必须作为
module_name==模块版本。惠勒然后应用正确的名称和
根据这两个参数将版本设置为存档。
来源:else
对于本地路径和url源,名称和版本将自动
从setup.py文件中提取。
注意:这意味着在提供本地路径时,必须提供
setup.py文件所在的根目录的路径。
元数据文件和控制盘
为存档生成了一个元数据文件,看起来有点像
这个:{
"archive_name": "cloudify_script_plugin-1.2-py27-none-any.tar.gz",
"supported_platform": "any",
"module_name": "cloudify-script-plugin",
"module_source": "cloudify-script-plugin==1.2",
"module_version": "1.2",
"wheels": [
"proxy_tools-0.1.0-py2-none-any.whl",
"bottle-0.12.7-py2-none-any.whl",
"networkx-1.8.1-py2-none-any.whl",
"pika-0.9.13-py2-none-any.whl",
"cloudify_plugins_common-3.2.1-py2-none-any.whl",
"requests-2.7.0-py2.py3-none-any.whl",
"cloudify_rest_client-3.2.1-py2-none-any.whl",
"cloudify_script_plugin-1.2-py2-none-any.whl"
]
}要安装的轮子位于tar.gz文件中
“车轮/*.whl”。
元数据文件位于“module.json”下的tar.gz文件中。
安装程序使用元数据文件检查平台是否适合
安装模块的机器。
存档命名约定和平台
gz存档文件是根据wheel命名约定命名的
描述于
PEP0427
除了两个字段之外:
示例:cloudify_fabric_plugin-1.2.1-py27-none-linux_x86_64.tar.gz{python tag}:python版本由运行
包装工艺。这意味着一个模块可能同时运行在
PY27和PY33(例如),因为包装过程发生了
使用Python2.7,只有Py27会附加到名称后面。注意
我们将为用户提供一种方法来提供
python版本显式地。
{platform tag}:平台(例如linux_x86_64,win32)
为特定车轮设置。要知道模块可以是哪个平台
安装在上,检查所有车轮。如果特定的车轮有
平台属性,而不是any,该平台将用作
包裹的平台。当然,我们认为
在特定的机器平台上下载或创建的轮子
属于两个不同的平台。
欢迎加入QQ群-->: 979659372
推荐PyPI第三方库