Tracではリポジトリは1つしか扱えない。例えば【1つのリポジトリを複数のTracで利用する】の事は出来るようだが、逆に【複数リポジトリを1つのTracで動かす】のは色々検索したが見つからなかった。
例えば、社内に複数のリポジトリがあってそれを1つのTracで管理したい場合。こんなのありそうだが・・・Trac 0.10xとかで機能追加されるのかな(?)。これがまた私の方でこのようなケースを自分で作り出してしまって困ったので…。無理やりではあるがSubversionのリポジトリ側で統合をしてみた。クレバーじゃぁないが、忘れそうなのでメモ。ちなみに、外部からのアクセスに関してはsvnserve、Tracで使うWebサーバはApacheだった場合を想定です。
なんかクレバーな方法あったら教えてください。m(_ _)m
下記にあるシェルスクリプトをcronで回す。流れは以下。
Trac! Trac! すげ~! と言ってたら・・・。今月号のWebDB+Press誌の特集は、Eclipse + Subversion + Tracの特集が載ってる!やっぱりソフトウェア開発の方々とか使ってるのねぇ~~。なんだか一人で興奮してるんじゃないのは良かったけど、自分がアホっぽく思えて恥ずかしくなってきた…w
内容はざっくりとしか読んでないけど、「Tracを使ってプロジェクト内のワークフローを作ろう」っぽい。Eclipseとかは自分で使わないのが残念。
前のエントリでTracをインストールしたので、その時のメモを追加エントリー。ちなみに、Debianにいれた場合です。tracのバックグラウンドDBはsqliteを、シンタックスハイライトはEnscriptを利用した。
Trac実は結構他に依存しているモジュールが多いのでそちらを先にインストールしておく。
さて、実際のtracモジュールのインストールですが、インタアクト株式会社さんが日本語化を行っているモジュールがあるのでそちらをダウンロードしてきてそれを解凍。解凍したフォルダ内で以下を行えばtrac自体のセットアップは完了。
まずはsubversionのリポジトリを作成。元々リポジトリがある場合はここは飛ばしておくれやす。
tracは出来たので今度はtrac-adminというツールがtrac側で用意されているので、このコマンドをtracのプロジェクトファイルの場所とinitenvオプションを付けて実行する。
そうすると、入力を促すプロンプトが出てくるので【プロジェクト名】【レポジトリパス】を設定する。それ以外はデフォルトでOKなのでそのままEnter。そうするとCongratulations!と表示される。また以下のコマンドを実行するとtrac独自のスタンドアロンサーバが起動するので動作確認をする事ができる(以下の例はport 8000番で起動)。
次はWebサーバの設定。tracはmod_pythonでの動作を推奨しているが、実は私の環境では動かなかった。
そのためFastCGIを使う事にした。また以下はVirtualHostを利用しての設定。
Basic認証用のファイルを作って、Apacheを再起動して終了!