导入工单数据
目录
要将工单从其他问题跟踪系统迁移到 Trac,或对工单执行维护操作,或仅仅是同步不同的数据库,都有一些可用的工具、插件和脚本。
TicketImportPlugin
TicketImportPlugin:一个插件,允许您从 CSV 文件或(如果安装了 xlrd 库)从 Excel 电子表格中导入或更新一系列工单到 Trac。
ExportImportXlsPlugin
ExportImportXlsPlugin:一个插件,添加了一个管理面板,用于通过 XLS 文件导出和导入工单。需要 Python 包 xlwt/rxld。
Bugzilla
BugzillaIssueTrackingPlugin:一个插件,将 Bugzilla 问题数据集成到 Trac 中,并保留 TracLinks。可以使用 Trac 发行版 contrib/
目录中的 bugzilla2trac.py 脚本从 Bugzilla 导入工单数据。
$ bugzilla2trac.py bugzilla2trac - Imports a bug database from Bugzilla into Trac. Usage: bugzilla2trac.py [options] Available Options: --db <MySQL dbname> - Bugzilla's database --tracenv /path/to/trac/env - full path to Trac db environment -h | --host <MySQL hostname> - Bugzilla's DNS host name -u | --user <MySQL username> - effective Bugzilla's database user -p | --passwd <MySQL password> - Bugzilla's user password -c | --clean - remove current Trac tickets before importing --help | help - this help info Additional configuration options can be defined directly in the script.
目前,从 Bugzilla 导入以下数据:
- 错误
- 错误活动(字段更改)
- 错误附件
- 用户名和密码(放入 htpasswd 文件)
该脚本提供了多项功能以简化转换,例如:
- PRODUCT_KEYWORDS:Trac 没有产品的概念,因此脚本提供了附加工单关键字的功能。
- IGNORE_COMMENTS:不导入与特定正则表达式匹配的 Bugzilla 评论。
- STATUS_KEYWORDS:为 Trac 中不可用的 Bugzilla 状态附加工单关键字。默认情况下,
VERIFIED
和RELEASED
的 Bugzilla 状态被转换为 Trac 关键字。
有关可用选项的更多详细信息,请参阅脚本顶部的配置部分。
Jira
JiraToTracIntegration:一个插件,提供工具将 Atlassian Jira 备份文件导入 Trac。该插件包含一个 Python 3.1 命令行工具,它能:
- 解析 Jira 备份 XML 文件。
- 使用 XmlRpcPlugin 将导入的 Jira 数据和附件发送到 Trac。
- 生成一个 htpasswd 文件,其中包含导入的 Jira 用户及其 SHA-512 base64 编码的密码。
Mantis
MantisImportScript:一个脚本,用于将以下类型的数据从 Mantis 导入 Trac:
- 错误
- 错误评论
- 错误活动(字段更改)
- 附件(只要文件位于 Mantis 数据库中,而不是文件系统上)。
PlanetForge
PlanetForgeImportExportPlugin:此插件使用 COCLICO 项目设计的开放格式导出 Trac 数据(wiki、工单、组件、权限、存储库等)。它扩展了 webadmin 面板和“trac admin ...”命令。没有“导入”功能。
Scarab
ScarabToTracScript:一个脚本,将 Scarab 问题迁移到 Trac 工单。需要 XmlRpcPlugin。
Sourceforge
SfnToTracScript:SourceForge 新备份文件的导入器(源自 #Trac3521)。此外,可以使用 Trac 发行版 contrib/ 目录中的 sourceforge2trac.py 脚本从 Sourceforge 导入工单数据。
其他
由于 Trac 使用 SQL 数据库存储数据,您还可以通过检查数据库表来自定义导入其他系统的数据。只需进入 sqlite 命令行查看表并从您的应用程序导入即可。
逗号分隔文件 - CSV
有关详细信息,请参阅 csv2trac.2.py。如果您需要手动输入大量工单,此方法特别有用。请注意,为了使此脚本在较新的 Trac 版本中正常工作,还需要工单类型字段(例如任务等)。
脚本评论:脚本在第 168 行有一个错误:'Ticket' 需要是 'ticket'。此外,严重性和优先级列出的值是交换的。
另请参阅
- 导入/导出 wiki 页面:TracAdmin,
- 导出工单:TracTickets, TracQuery