Changes between Version 2 and Version 3 of TracImport
- Timestamp:
- Jun 2, 2023 10:32:55 AM (19 months ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
TracImport
v2 v3 1 = Importing ticket data =1 = Importing ticket data 2 2 3 == Bugzilla == 3 [[PageOutline(2-5,Contents,pullout)]] 4 4 5 T icket data can be imported from Bugzilla using the [http://trac.edgewall.org/browser/trunk/contrib/bugzilla2trac.py bugzilla2trac.py] script, available in the contrib/ directory of the Trac distribution.5 To migrate issue tickets from other issue-tracking systems into Trac or perform housekeeping actions on tickets or simply synchronize different databases, there are some tools, plugins and scripts available. 6 6 7 {{{ 7 == !TicketImportPlugin 8 9 [https://trac-hacks.org/wiki/TicketImportPlugin TicketImportPlugin]: a plugin that lets you import or update into Trac a series of tickets from a '''CSV file''' or (if the [https://pypi.python.org/pypi/xlrd xlrd library] is installed) from an '''Excel spreadsheet'''. 10 11 == !ExportImportXlsPlugin 12 13 [https://trac-hacks.org/wiki/ExportImportXlsPlugin ExportImportXlsPlugin]: a plugin that adds an admin panel for exporting and importing tickets via '''XLS file'''. Requires the python packages xlwt/rxld. 14 15 == Bugzilla 16 17 [https://trac-hacks.org/wiki/BugzillaIssueTrackingPlugin BugzillaIssueTrackingPlugin]: a plugin that integrates Bugzilla issue data into Trac keeping TracLinks. Ticket data can be imported from Bugzilla using the [trac:browser:branches/1.4-stable/contrib/bugzilla2trac.py bugzilla2trac.py] script, available in the `contrib/` directory of the Trac distribution. 18 19 {{{#!python 8 20 $ bugzilla2trac.py 9 21 bugzilla2trac - Imports a bug database from Bugzilla into Trac. … … 24 36 25 37 Currently, the following data is imported from Bugzilla: 26 27 * bugs 28 * bug activity (field changes) 29 * bug attachments 30 * user names and passwords (put into a htpasswd file) 38 * bugs 39 * bug activity (field changes) 40 * bug attachments 41 * user names and passwords (put into an htpasswd file) 31 42 32 43 The script provides a number of features to ease the conversion, such as: 33 34 * PRODUCT_KEYWORDS: Trac doesn't have the concept of products, so the script provides the ability to attach a ticket keyword instead. 35 36 * IGNORE_COMMENTS: Don't import Bugzilla comments that match a certain regexp. 37 38 * STATUS_KEYWORDS: Attach ticket keywords for the Bugzilla statuses not available in Trac. By default, the 'VERIFIED' and 'RELEASED' Bugzilla statuses are translated into Trac keywords. 44 * PRODUCT_KEYWORDS: Trac has no concept of products, so the script provides the ability to attach a ticket keyword instead. 45 * IGNORE_COMMENTS: Don't import Bugzilla comments that match a certain regexp. 46 * STATUS_KEYWORDS: Attach ticket keywords for the Bugzilla statuses not available in Trac. By default, the `VERIFIED` and `RELEASED` Bugzilla statuses are translated into Trac keywords. 39 47 40 48 For more details on the available options, see the configuration section at the top of the script. 41 49 42 == Sourceforge ==50 == Jira 43 51 44 Ticket data can be imported from Sourceforge using the [http://trac.edgewall.org/browser/trunk/contrib/sourceforge2trac.py sourceforge2trac.py] script, available in the contrib/ directory of the Trac distribution. 52 [https://trac-hacks.org/wiki/JiraToTracIntegration JiraToTracIntegration]: a plugin that provides tools to import Atlassian Jira backup files into Trac. The plugin consists of a Python 3.1 commandline tool that: 53 - Parses the Jira backup XML file. 54 - Sends the imported Jira data and attachments to Trac using the [https://trac-hacks.org/wiki/XmlRpcPlugin XmlRpcPlugin]. 55 - Generates a htpasswd file containing the imported Jira users and their SHA-512 base64 encoded passwords. 45 56 46 See #Trac3521 for an updated sourceforge2trac script. 57 == Mantis 47 58 48 == Mantis == 59 [https://trac-hacks.org/wiki/MantisImportScript MantisImportScript]: a script to import the following type of data from Mantis into Trac: 60 * bugs 61 * bug comments 62 * bug activity (field changes) 63 * attachments (as long as the files live in the mantis database, not on the filesystem). 49 64 50 The mantis2trac script now lives at http://trac-hacks.org/wiki/MantisImportScript. You can always get the latest version from http://trac-hacks.org/changeset/latest/mantisimportscript?old_path=/&filename=mantisimportscript&format=zip 65 == !PlanetForge 51 66 52 Mantis bugs can be imported using the attached script.67 [https://trac-hacks.org/wiki/PlanetForgeImportExportPlugin PlanetForgeImportExportPlugin]: this plugin exports Trac data (wiki, tickets, compoments, permissions, repositories, etc.) using the open format designed by the [https://gforge.inria.fr/projects/coclico/ COCLICO] project. It extends the webadmin panel and the 'trac admin ...' command. Has no 'import' feature. 53 68 54 Currently, the following data is imported from Mantis: 55 * bugs 56 * bug comments 57 * bug activity (field changes) 58 * attachments (as long as the files live in the mantis db, not on the filesystem) 69 == Scarab 59 70 60 If you use the script, please read the NOTES section (at the top of the file) and make sure you adjust the config parameters for your environment.71 [https://trac-hacks.org/wiki/ScarabToTracScript ScarabToTracScript]: a script that migrates Scarab issues to Trac tickets. Requires [https://trac-hacks.org/wiki/XmlRpcPlugin XmlRpcPlugin]. 61 72 62 mantis2trac.py has the same parameters as the bugzilla2trac.py script: 63 {{{ 64 mantis2trac - Imports a bug database from Mantis into Trac. 73 == Sourceforge 65 74 66 Usage: mantis2trac.py [options] 75 [https://trac-hacks.org/wiki/SfnToTracScript SfnToTracScript]: importer of !SourceForge's new backup file (originated from #Trac3521). 76 Also, ticket data can be imported from Sourceforge using the [trac:browser:branches/1.4-stable/contrib/sourceforge2trac.py sourceforge2trac.py] script, available in the contrib/ directory of the Trac distribution. 67 77 68 Available Options: 69 --db <MySQL dbname> - Mantis database 70 --tracenv /path/to/trac/env - Full path to Trac db environment 71 -h | --host <MySQL hostname> - Mantis DNS host name 72 -u | --user <MySQL username> - Effective Mantis database user 73 -p | --passwd <MySQL password> - Mantis database user password 74 -c | --clean - Remove current Trac tickets before importing 75 --help | help - This help info 78 == Other 76 79 77 Additional configuration options can be defined directly in the script. 78 }}} 80 Since Trac uses a SQL database to store the data, you can also custom-import from other systems by examining the database tables. Just go into [https://www.sqlite.org/sqlite.html sqlite] command line to look at the tables and import them from your application. 79 81 80 == Jira ==82 === Comma delimited file - CSV 81 83 82 The [http://trac-hacks.org/wiki/JiraToTracIntegration Jira2Trac plugin] provides you with tools to import Atlassian Jira backup files into Trac.84 See [trac:attachment:csv2trac.2.py:wiki:TracSynchronize csv2trac.2.py] for details. This approach is particularly useful if you need to enter a large number of tickets by hand. Note that the ticket type type field, (task etc.) is also needed for this script to work with more recent Trac releases. 83 85 84 The plugin consists of a Python 3.1 commandline tool that: 86 Comments on script: The script has an error on line 168: 'Ticket' needs to be 'ticket'. Also, the listed values for severity and priority are swapped. 85 87 86 - Parses the Jira backup XML file 87 - Sends the imported Jira data and attachments to Trac using the [http://trac-hacks.org/wiki/XmlRpcPlugin XmlRpcPlugin] 88 - Generates a htpasswd file containing the imported Jira users and their SHA-512 base64 encoded passwords 89 90 == Other == 91 92 Since trac uses a SQL database to store the data, you can import from other systems by examining the database tables. Just go into [http://www.sqlite.org/sqlite.html sqlite] command line to look at the tables and import into them from your application. 93 94 === Using a comma delimited file - CSV === 95 See [http://trac.edgewall.org/attachment/wiki/TracSynchronize/csv2trac.2.py] for details. This approach is particularly useful if one needs to enter a large number of tickets by hand. (note that the ticket type type field, (task etc...) is also needed for this script to work with more recent Trac releases) 96 Comments on script: The script has an error on line 168, ('Ticket' needs to be 'ticket'). Also, the listed values for severity and priority are swapped. 97 98 === Using an Excel (.xls) or comma delimited file (.csv) === 99 This plugin http://trac-hacks.org/wiki/TicketImportPlugin lets you import into Trac a series of tickets from a CSV file or (if the xlrd library is installed) from an Excel file. 100 101 You can also use it to modify tickets in batch, by saving a report as CSV, editing the CSV file, and re-importing the tickets. 102 103 This plugin is very useful when starting a new project: you can import a list of requirements that may have come from meeting notes, list of features, other ticketing systems... It's also great to review the tickets off-line, or to do massive changes to tickets. 104 105 Based on the ticket id (or, if no id exists, on the summary) in the imported file, tickets are either created or updated. 106 107 88 ---- 89 See also: 90 * to import/export wiki pages: TracAdmin, 91 * to export tickets: TracTickets, TracQuery