wiki:TracImport

チケットデータのインポート

Bugzilla

 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

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

 #Trac3521 に sourceforge2trac スクリプトの更新版が添付されています。

Mantis

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

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

現在、以下のデータが 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

 Jira2Trac プラグイン を使用すると Atlassian が開発している Jira のバックアップファイルから Trac にインポートが行えます。

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

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

その他

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

カンマ区切りファイル - CSV ファイルの使用

詳しくは  http://trac.edgewall.org/attachment/wiki/TracSynchronize/csv2trac.2.py を参照して下さい。 この方法は手動でたくさんのチケットを登録するようなときにとても便利です。 (最近の Trac のリリースでは、このスクリプトを使用するのにチケットの分類のフィールド (task など) が必要です)