Trac Lightningセットアップガイド

ここでは、Trac Lightningのセットアップ方法について解説します。なお、Trac Lightningを初期インストールするとSampleProjectという名前でサンプルのプロジェクトが生成されます。まずは、こちらのプロジェクトで色々試してみることをお勧めします。デフォルトのユーザとしては、下記の3ユーザが設定されています(1.8.xから変更にされているのでご注意ください)。

ユーザ名名前パスワードグループ説明
admin管理太郎adminadmin管理者権限。Tracの管理を含めた全ての操作が可能
leader頭春蔵leaderleaderリーダ権限。開発者権限に加え、マイルストーンの操作が可能
gusti客人開発者guestdeveloper開発者権限。チケット、Wikiの操作が可能

プロジェクトの作成

新しいプロジェクトで利用する場合、Trac Lightningプロジェクトを作成しましょう。デフォルトからあるSampleProjectを変更しながら利用することもできますが、正直カッコ悪いです:p プロジェクトを作成するには、スタートメニューから「Trac」→「コマンドプロンプト」を選択して、コマンドプロンプトを起動します。次にcreate-projectコマンドを実行しプロジェクトを作成します。例えば、TracLightningという名前でプロジェクトを作成するには、コマンドプロンプトで次のように実行します。

> create-project TracLightning

create-projectコマンドを実行すると下記の場所にTracプロジェクトとSVNのリポジトリが生成されます。

項目URL
Tracプロジェクトhttp://ホスト名/trac/プロジェクト名
Subversion(以下SVNと記す)のリポジトリhttp://ホスト名/svn/プロジェクト名

TracLightningをインストールしたサーバ上では、TracLightningのインストールディレクトリ\projectsにTracのプロジェクトディレクトリとSVNのリポジトリ格納ディレクトリがあります。TL_PROJECT_HOME環境設定変数を設定した場合、環境変数で設定したディレクトリにプロジェクト情報が格納されます。

ユーザの追加

ユーザの追加は、各プロジェクト毎に「管理」メニューを利用して行います。管理者権限を持つsuzukiユーザでログインするとメニューバーに「管理」というメニューが表示されます。

「管理」メニューから、「Accounts」の「Users」をクリックするとユーザ管理画面に遷移します。External Users欄の「Add External User」をクリックするとユーザ作成画面になります(注:必ずExternal Userを利用してください。「Add User」ボタンがありますが、「Add User」を利用するとパスワードが設定されません)。ここで下記の項目を入力すると、ユーザが作成されます。

項目名内容入力例
Usernameユーザアカウント名okamototk
Name名前岡本隆史
Emailメールアドレスokamototk@example.com
Role役割admin
Passwordパスワード<パスワード>
Confirm Passwordパスワードの確認Password欄に入れた値と同じ値

なお、ユーザのパスワードは右上の「ユーザ設定」メニューから「Account」タブを選択することにより変更することができます。デフォルトで用意されているユーザadmin,leader,guestについては、そのままにしておくと不正操作される可能性がありますので本格運用前にはパスワードは変更しておいた方がよいでしょう。

アクセス権の設定

各ユーザのアクセス権の設定は、「管理」画面の「一般」→「パーミッション」から行います。

画面右のパーミッションの付与とグループに対象を追加の2つの方法でパーミッションを追加します。

グループに対象を追加

グループを定義し、ユーザをそのグループに追加します。通常、こちらの方法でユーザを追加していきます。Trac Lightningインストール時には、次の5つのグループが利用できます。

グループ名説明
anonymous認証なしユーザが持つアクセス権。Wiki、チケットの閲覧のみ可能
autenticatedTracにログインした認証済みユーザが持つアクセス権。anonymousに加えWiki、チケットの編集が可能
developer開発者権限を持つ。デフォルトの設定ではautenticatedと同じ
leaderリーダ権限を持つ。developer権限に加えマイルストーンの編集が可能
admin管理者権限を持つ。Tracの「管理」を含めた全ての操作が可能。

通常の開発者をdeveloperとし、Tracの管理者をadmin権限にすると良いでしょう。プロジェクトによっては、lリーダにリーダ権限を付与しマイルストーンの編集をできなくすると良いでしょう。

非認証ユーザのアクセスを禁止したい場合は、anonymousグループをカスタマイズすることでアクセスを禁止することができますが、Apacheの設定を書き換え、非認証ユーザのアクセスを禁止するのが確実です。非認証ユーザのアクセスを禁止するには、Trac LightningのインストールディレクトリのCollabNetSVN\httpd\conf\httpd.confファイルの下記の部分

<LocationMatch "/[^/]+/login">
  AuthType Digest
  AuthName trac
  AuthUserFile "c:\TracLight\projects\trac.htdigest"
  Require valid-user
</LocationMatch>

を次のように書き換えます。

<LocationMatch "/">
  AuthType Digest
  AuthName trac
  AuthUserFile "c:\TracLight\projects\trac.htdigest"
  Require valid-user
</LocationMatch>

グループ設定

グループを追加したり、グループのパーミッションを変更するには、「管理」メニューから、「一般設定」の「パーミッション」を選択します。右上の「パーミッション」の付与で対象欄にグループ名を入力し、アクションで付与したいアクセス権を設定します。

ユーザをグループに追加するには、右下のグループに対象を追加で、対象にユーザアカウント名を、グループ名にユーザを追加するグループ名を入力します。

追加したグループへのアクセス権の設定は、上記の設定と同じです。

ワークフローの設定

Trac Lightning 2.0ではワークフローのカスタマイズを行うことができます。ここでは、ワークフローをカスタマイズして、リーダしかチケットをクローズできないようにしましょう。リーダにはTICKET_ADMIN権限を与えられていますので、trac.iniの下記の部分

resolve = new,assigned,accepted,reopened -> closed
resolve.name = 解決にする
resolve.operations = set_resolution
resolve.permissions = TICKET_MODIFY

を次のように変更します。

resolve = new,assigned,accepted,reopened -> closed
resolve.name = 解決にする
resolve.operations = set_resolution
resolve.permissions = TICKET_ADMIN

これで、leader権限を持つユーザしかチケットをクローズできなくなります。ワークフローの詳細については、Tracのチケットワークフローシステムをご覧ください。