制作自解压虚拟环境
项目描述
从目录或包的URL生成自解压虚拟环境
例如,要将虚拟环境源目录中的所有文件打包(例如)
python path/to/carton.py myproject project/src/*
这将创建一个自解压文件,myproject.py,它将展开一个带有指定设置的开发虚拟环境
源可以是目录、本地或HTTP可访问的tar包,或普通文件。在提取后的`src`目录中找到的`setup.py`将被按提供顺序运行(通过`python setup.py develop`)。这可以通过正确指定源顺序来拥有完全本地依赖(不接触网络)。如果`setup.py`被后续源覆盖,则不会重新运行(已知限制)。
提取的虚拟环境将创建在当前目录中,并将具有最初提供的名称(例如,myproject),除非指定了`–env`。
通常,源目录的全部内容被压缩并按原样打包。当使用`–package`标志运行时,如果目录包含顶层`setup.py`,则通过`python setup.py sdist`生成源tar包。
由于目录按原样压缩,因此便携式基于文件的VCS存储库(如mercurial和git)可以通过这种方式carton(尽管请注意,较新的存储库可能无法与较旧的客户端向后兼容)。