= チケットデータのインポート = #Importingticketdata

== Bugzilla ==

[http://trac.edgewall.org/browser/trunk/contrib/bugzilla2trac.py bugzilla2trac.py] スクリプトを使用すると、チケットのデータを Bugzilla からインポートすることができます。 bugzilla2trac.py スクリプトは Trac の配布を展開した contrib/ ディレクトリにあります。

{{{
$ 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 ファイルに出力します)

bugzilla2trac.py スクリプトは変換を楽にする機能を数多く備えています。例えば:

  * PRODUCT_KEYWORDS:  Trac にはプロダクトという概念がありません。このため、プロダクトをチケットのキーワードとして紐づけられるようになっています。

  * IGNORE_COMMENTS:  特定の正規表現にマッチする Bugzilla コメントをインポートしないようにします。

  * STATUS_KEYWORDS:  Trac にない Bugzilla のステータスに対してチケットのキーワードを割り当てます。デフォルトでは、 Bugzilla のステータス 'VERIFIED' と 'RELEASED' は、 Trac のキーワードに変換されます。 

使用できるオプションについての更なる詳細についてはスクリプトの先頭にある configuration セクションを参照してください。

== Sourceforge ==

[http://trac.edgewall.org/browser/trunk/contrib/sourceforge2trac.py sourceforge2trac.py] スクリプトを使用すると、 Sourceforge からチケットのデータをインポートすることができます。 sourceforge2trac.py スクリプトも Trac 配布物を展開した contrib/ ディレクトリにあります。

[http://trac.edgewall.org/ticket/3521 #Trac3521] に sourceforge2trac スクリプトの更新版が添付されています。

== Mantis ==

mantis2trac は http://trac-hacks.org/wiki/MantisImportScript にあります。 http://trac-hacks.org/changeset/latest/mantisimportscript?old_path=/&filename=mantisimportscript&format=zip から最新版を得ることができます

Mantis バグトラッカからは (訳注: [http://trac.edgewall.org/attachment/wiki/TracImport 本家ページ] に) 添付されたスクリプトを使用してインポートすることができます。

現在、以下のデータが Mantis からインポートされます:
  * バグ
  * バグのコメント
  * バグの状態 (フィールドの変更)
  * アタッチメント (ファイルが、 filesystem になく mantis db にある場合) 

スクリプトを使用する場合、 NOTES セクション (ファイルの先頭) を読み、環境設定の config パラメータを調節します。

mantis2trac.py は bugzilla2trac.py スクリプトと同じパラメータを使用します:
{{{
mantis2trac - Imports a bug database from Mantis into Trac.

Usage: mantis2trac.py [options] 

Available Options:
  --db <MySQL dbname>              - Mantis database
  --tracenv /path/to/trac/env      - Full path to Trac db environment
  -h | --host <MySQL hostname>     - Mantis DNS host name
  -u | --user <MySQL username>     - Effective Mantis database user
  -p | --passwd <MySQL password>   - Mantis database 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.
}}} 

== Jira ==

[http://trac-hacks.org/wiki/JiraToTracIntegration Jira2Trac プラグイン] を使用すると Atlassian が開発している Jira のバックアップファイルから Trac にインポートが行えます。

このプラグインは Python 3.1 で書かれたコマンドラインツールで、下記の機能があります:

 - Jira のバックアップ XML ファイルを解析する
 - Jira のデータおよび添付ファイルを Trac の  [http://trac-hacks.org/wiki/XmlRpcPlugin XmlRpcPlugin] に送信する
 - Jira のユーザ情報と base64 エンコードされた SHA-512 パスワードから htpasswd ファイルを生成する

== その他 == #Other

Trac は データの保存に SQL データベースを使用しているので、データベースを調査することによって他のシステムからインポートすることができます。 [http://www.sqlite.org/sqlite.html sqlite] のコマンドラインで Trac データベースのテーブルを参照し、あなたが使用しているアプリケーションからデータベースのテーブルをインポートしてください。

=== カンマ区切りファイル - CSV ファイルの使用 === #Usingacommadelimitedfile-CSV
詳しくは [http://trac.edgewall.org/attachment/wiki/TracSynchronize/csv2trac.2.py] を参照して下さい。 この方法は手動でたくさんのチケットを登録するようなときにとても便利です。 (最近の Trac のリリースでは、このスクリプトを使用するのにチケットの分類のフィールド (task など) が必要です)
スクリプト上のコメント: スクリプトの 168 行目にエラーがあります。 ('Ticket' は 'ticket' としなければなりません )。また、重要度と優先度でリストされる値が逆になっています。

=== Excel ファイル (.xls) や カンマ区切りファイル (.csv) の使用 === #UsinganExcel.xlsorcommadelimitedfile.csv
[http://trac-hacks.org/wiki/TicketImportPlugin TicketImportPlugin] プラグインは、 CSV ファイルや ( xlrd ライブラリがインストールされているならば ) Excel ファイル から Trac にチケットをインポートするプラグインです。

また、チケットをバッチで修正するときに使うことができます。レポートを CSV ファイルとして保存し、その CSV ファイルを編集して、チケットを再インポートします。

このプラグインは新しいプロジェクトをたてたときにとても役に立ちます: 打ち合わせの議事録から作成した要件の一覧や、機能一覧、他のチケットシステムのチケットなどをインポートすることができます。チケットをオフラインでレビューできたり、チケットに大規模な変更を加えることもできるのもすばらしいです。

インポートするファイルにチケットの id ( または id が存在しないならば、概要) があるならば、チケットは作成または更新されます。


