[メモ] tracからBitBucketへのチケット移行

Trac 0.10.4 で動いている古い課題管理を、BitBucketへ移行する作業を行いました。以下記録。

チケットデータの入っているDBを用意

Trac リポジトリ中の db/trac.db にチケットが入ってます。

trac.db が sqlite version 2 形式なので、まずこれを 3にコンバートします。

sqlite2, 3 の両方を入れてコマンドラインでコンバートもできます。Windows でツールを入れてたので、SQLiteStudio(3.1.0)にて、sqlite2で開いて、[Database]-[Convert Database Type]で3に変換することでコンバート完了。

Bitbucket形式へ変換

以下のスクリプトが使えます。

https://bitbucket.org/secdev/trac2bitbucket

./hoge/db/trac.db がある状態で、

$ python ticket.py -o exported_issues.zip --tracdir hoge

もし次のエラーが出たら、日本語を含むせいなので(たぶん)

TypeError: write() argument must be str, not bytes

ソース中の open(… “w”)を”wb”に変更してもう一度。

Bitbucketへのインポート

Bitbucket上で新しいリポジトリを作成、課題管理を on に。設定メニューから上記の exported_issues_zip をインポートすると、trac にあったチケットがすべて入ります。

既存のリポジトリにインポートすると既存のチケットは全部消えてしまうので注意。この場合は一旦エクスポートし、二つのzip中の.json の内容をマージして差し戻す。issue ID等が衝突するのでマージはスクリプトを書いての作業が必要。

それから、trac上のユーザー名とBitbucket上のユーザー名が違う場合、各ユーザーについて zip 内 db-1.0.json のユーザー名を置換する必要がある。(やっておかないとどこかの他人にチケットをアサインしてしまう)

Windows 10 + Vagrant + Virtualbox の最新版の組み合わせの問題

アップグレードして Windows 10 に上げたPCで、Vagrant の開発環境を更新した際になんかエラーが出るようになりました。

それぞれのツールを最新版にしたのですが、

  • Vagrant 1.8.1
  • Oracle Virtual Box 5.0.16

次のようなエラーが出てしまいます。


VBoxManage.exe: error: Failed to attach the network LUN (VERR_INTNET_FLT_IF_NOT_FOUND)

一つの解決法は Virtual Box を5.0.10に戻すことらしいのですが、古いバージョンに戻すのも(他の修正で直っている箇所もあるだろうから)あまりいい感じがしません。

こちらに載っているやり方で、[コントロール パネル]-[ネットワークとインターネット]-[ネットワーク接続]から、Virtualbox host only network のプロパティを開き、NDIS6 Bridge をオンに。(オフなら問題なく動いてるはず、ということですが、オフにしてオンでも)

すると、理由は良く分からないけど動くようになる、ということです。自分の環境もこれで直りました。

レディーJavaのミュージックビデオ

9月に開催されるJavaのカンファレンスJavaZone 2010用に作られた「レディー・ジャバ」のミュージックビデオです。良くできてる!

レディー・ガガの変なファッションを、キーボードやCDなどを散りばめた服装でうまくもじってると思いましたがどうでしょう。

Sunが無くなったり、買収したOracleはJavaとAndroidを巡ってGoogleを訴えたり、いろいろとたいへんなJava界隈ですが。ちゃんとオラクルのネタも入ってます。

後ろはハードディスクをイメージしたので有名なオラクル本社ビルですね。

JavaZoneといえば、ちょっと前に出ていた、Java4ever(Javaフォーエバー)というJava映画の予告編(本編は存在しません!)も面白いですよ。