如何安装Trac插件和什么是Python egg?

4
在Trac的管理界面中,有一个名为“插件”的选项,可以安装插件。然而,这个选项需要你上传Python蛋(egg)文件。
虽然如此,我发现所有我找到的Trac插件都是纯Python文件或zip文件,并且与上传功能不兼容(我已经尝试过了)。
这给了我一堆问题:
- 是否有任何以Python蛋形式提供的Trac插件? - 什么是(Trac兼容的)Python蛋? - 将.py文件重新打包成Trac兼容的Python蛋难吗? - 如果不难:如何操作?
2个回答

4
一年没用trac了,但我记得大多数插件都可以通过subversion获取,并且已经被打包成egg(这在python世界中是一种安装程序,但我对这个概念不是很熟悉)。
大多数插件都可以在http://trac-hacks.org/上获取,最简单的安装插件的方法是:
easy_install http://svn.domain.tdl/path/to/plugin/

文件夹应包含setup.py和setup.cfg文件。easy_install从svn检出文件并安装插件。您可以在此处找到详细信息:http://trac.edgewall.org/wiki/TracPlugins

如果插件进行数据库更改,则必须调用

trac-admin upgrade

来自控制台。

http://trac.edgewall.org/wiki/TracAdmin

如果我没记错,通过Web界面安装会在本地(实例)安装插件,而easy_install会在全局范围内(对所有运行的trac站点)安装它,并且是安装插件的常用方式。

提示:每次安装插件后,您都必须重新启动trac 提示2:大多数插件不告诉您如何安装,只提供指向其svn根目录的链接。您只需浏览svn文件夹并找到包含setup.py的文件夹即可。 剩下的工作由easy_install完成。

示例:

插件:http://trac-hacks.org/wiki/GoogleChartPlugin

维基页面告诉您: 您可以使用Subversion从此处检出GoogleChartPlugin,或使用Trac浏览源代码。

其中here链接到http://trac-hacks.org/svn/googlechartplugin/

svn包含两个版本。浏览到http://trac-hacks.org/svn/googlechartplugin/0.11/trunk/并复制路径。

然后执行

easy_install http://trac-hacks.org/svn/googlechartplugin/0.11/trunk/

我明白了。基本上你需要控制台访问权限来安装插件。而我没有这个权限。 - Martin
如果您有控制台访问权限,easy_install 是安装插件的首选方式。如果没有,则可以通过 Web 接口进行安装(我相信您甚至不需要重新启动 trac)。然而,根据我的经验,在没有完全访问服务器的情况下维护 trac 安装并不是一个理想的情况。您偶尔需要 trac 管理员,并且经常需要更改 trac.ini 中的值(但这也可以使用插件完成)。 - Jürgen Steinblock

3

按顺序回答您的问题。

  • Python eggs是包含应用程序代码和一些元数据的二进制包。在这个意义上,它们与deb或rpm没有太大区别。蛋本身基本上只是一个zip文件,其中包含所有上述文件,具有特定的名称和布局。有关蛋(格式及如何创建它们)的更多信息,请参见http://www.ibm.com/developerworks/library/l-cppeak3.html。由于python打包的未来(和现在)有点模糊,因此该文可能有点过时。
  • Trac插件是使用Trac插件API扩展trac功能的Python程序。它可以作为一个蛋进行打包。
  • 如果您的软件包布局正确并包含setuptools/distribute的setup.py文件,则发出命令python setup.py bdist_egg将为您创建.egg文件。有关详细信息,请参见此处(有点过时但完整)此处(更新但仍在进行中)Trac Growl插件在其文档页面上提到了这一点。
  • 请参见上面的观点。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接