我正在使用py2app / setuptools构建应用程序,所以一旦创建应用程序包,我想对dist文件夹采取一些操作,例如创建安装程序/上传它。
有办法吗?我找到了一些安装后的解决方案但没有后期构建
或者我可以从我自己的脚本中调用'python setup.py py2app'并执行此操作,但如果可以在setup.py中完成它会更好
答案 0 :(得分:4)
我responded to a similar question yesterday关于 distutils.core.Command 的子类化。
它的核心是,通过这样做,您可以精确控制准备过程的每个阶段的行为,并能够创建自己的命令,可以做任何你能想到的事情。
请查看该回复,因为我认为它会帮助您。
答案 1 :(得分:0)
使用setuptools或distutils可能有办法做到这一点,但它们很可能是非常hackish。如果您想要执行以下操作,我强烈建议您使用以下工具之一:
Paver可能是最容易移动的,因为您可能可以使用所有现有的setup.py文件。
答案 2 :(得分:0)
你能说清楚你想做什么吗?
对dist文件夹采取一些操作,例如创建安装程序/上传它。
当您说创建安装程序时,您的意思是为程序包构建分发版吗? 当你说上传时,你的意思是上传到pypi?或其他地方?
我找到了一些安装后的解决方案,但没有发布后期
这些是py2app挂钩/回调吗?
python setup.py py2app
这不是如何使用distutils的惯例。通常是python setup.py install
。
答案:
py2app target是一个dist文件夹,我想用我的安装脚本打包并上传到我的网站
编辑:
因此,您创建了一个使用distutils和setup.py的包。
当你运行setup.py时,它会为这个文件创建发行版,然后将它们放在/ dist文件夹中。
现在您要将构建的文件上传到您的网站。
为此,您需要一个不同的工具。类似于fabric。
您可以使用fabric创建一个脚本来执行build命令,然后将构建的文件上传到您的服务器。