トップ | バージョン2 最新版 | バージョン3 β版

Trac 設定ファイル

Trac の設定は <projectenv>/conf/ にある trac.ini というファイルを編集して行います。変更した内容は通常、即座に反映されますが、 [components] セクションや [logging] セクションへの変更では Web サーバを再起動する必要があります。また、グローバルな設定ファイルを新しく作成した直後も Web サーバを再起動しなければなりません。

グローバルな設定

0.11 より前のバージョンでは、グローバルな設定は $prefix/share/trac/conf/trac.ini か、ディストリビューションによっては /etc/trac/trac.ini がデフォルトの位置として配置されていました。アップグレードする場合は、設定を継承するファイルを明示しなければなりません。 以前のバージョンから 0.11 にアップグレードした場合、プロジェクトの trac.ini ファイルに inherit セクションを追加しなければなりません。カスタマイズしたテンプレートや画像のファイルは $prefix/share/trac/... から他の場所に移動することもできます。

グローバルな設定は Environment 固有の設定とマージされます。ローカルの設定はグローバルの設定を上書きます。グローバルな設定ファイルは以下のように指定します:

[inherit]
file = /usr/share/trac/conf/trac.ini

Note: 新しいプロジェクトを作る時に trac-admininitenv コマンドに --inherit=/path/to/global/options オプションを追加することで、グローバル設定ファイルを指定することができます。 オプションを追加せずにプロジェクトを作成した場合でも、新しい Environment でグローバル設定ファイルを使用することができます。 新しく作成された conf/trac.ini ファイルを編集して、グローバルファイルの設定で上書きしたいエントリを削除すれば、 新しい Environment でグローバル設定ファイルを使用することができます。

リファレンス

現在利用できる設定項目のリファレンスです。

[attachment]

max_sizeチケットと Wiki の添付ファイルの最大サイズをバイト数で 指定します。
render_unsafe_content添付ファイルをブラウザ上に表示するか、 単にダウンロード可能にしておくかどうかを設定します。 ブラウザがほとんどのファイルを HTML として解釈することがあるため、 悪意のあるユーザにクロスサイトスクリプティング攻撃を可能にするファイル の添付を許すことになります。 誰でもファイルを添付できるような公開サイトでは、このオプションを無効に 設定しておくことを推奨します (デフォルトは、無効に設定されています)。

[browser]

color_scaleage 列に色付けされます。 ソースコード注釈と同じカラースケールが使用されます: 青が古く、赤が新しいものを指します。 (0.11 以降)
downloadable_pathsダウンロード可能なリポジトリのパスをリストします。 このオプションに何も設定しない場合、全てのダウンロードを禁止されます。 部分的に許可する場合は、カンマ区切りでダウンロードを許可するパスを設定します (パスには "*" をワイルドカードとして扱うような glob パターンを使用できます) (0.10 以降)
hide_propertiesカンマ区切りでバージョン管理の属性を設定すると、その属性は リポジトリブラウザで表示されなくなります。 (0.9 以降)
intermediate_color(r,g,b) の 3 色で指定します。この色は中間を指す 色として、 2 色の間のカラースケールとして使用されます (intermediate_point 参照)。 intermediate color をセットしない場合、 oldest_colornewest_color の中間の色が使用されます。 (0.11 以降)
intermediate_point0 から 1 (最大) の間で値を設定します。 この値は intermediate_color に設定したポイントへの補間に 使用されます。 (0.11 以降)
newest_color(r,g,b) の 3 色で指定します。この色は新しいものを指す 色として 注釈 (blame) や、 color_scale が有効に設定されていれば ブラウザの age 列のカラースケールに使用されます。 (0.11 以降)
oldest_color(r,g,b) の 3 色で指定します。この色は古いものを指す 色として 注釈 (blame) や、 color_scale が有効に設定されていれば ブラウザの age 列のカラースケールに使用されます。 (0.11 以降)
oneliner_propertiesカンマ区切りでバージョン管理の属性を設定すると、その属性は リポジトリブラウザ上で 1 行スタイルの Wiki コンテンツとして表示されます。 (0.11 以降)
render_unsafe_contentファイルをブラウザ上に表示するか、単にダウンロード可能にしておくか を設定します。 この設定を有効にすると、ブラウザがほとんどのファイルを HTML として解釈 するため、悪意のあるユーザにクロスサイトスクリプティング攻撃を含む ファイルの添付を許すことになります。 誰でもファイルを添付できるような公開サイトでは、このオプションを無効に 設定しておくことを推奨します (デフォルトは無効に設定されています)。
wiki_propertiesカンマ区切りでバージョン管理の属性を設定すると、その属性は リポジトリブラウザ上で Wiki コンテンツとして表示されます。 (0.11 以降)

[changeset]

max_diff_bytes更新したファイル (旧ファイルのサイズと新ファイルのサイズを足したもの) のサイズの最大をバイト単位で指定します。チェンジセットビューの diff で 直接表示するサイズを制限します (0.10 以降)。
max_diff_filesチェンジセットビューの diff で直接表示する 更新ファイルの最大数を設定します。(0.10 以降)。
wiki_format_messagesWiki フォーマットをチェンジセットのログメッセージに適用するかどうかを設定します。 このオプションが無効になっている場合、チェンジセットのログメッセージは 整形済みテキストとして表示されます。

[header_logo]

altヘッダロゴに使用する alt テキストを設定します。
heightヘッダロゴの高さを pixel で設定します。
linkヘッダロゴがリンクする URL を設定します。
srcヘッダロゴに使用するイメージファイルの URL を設定します。
widthヘッダロゴの幅を pixel で設定します。

[inherit]

plugins_dir共有するプラグインをおくディレクトリのパスを指定します。 このディレクトリに配置されたプラグインは、 Environemnt の plugins ディレクトリのプラグインに加えて、 優先してロードされます。 (0.11 以降)
templates_dir共有するテンプレートディレクトリのパスを指定します。 指定したパスは環境の templates ディレクトリに加えてロードされますが、 templates ディレクトリが優先となります。 (0.11 以降)

[logging]

log_filelog_typefile のときのログファイルへのパスを設定します。
log_formatログのフォーマットをカスタマイズします。 デフォルトでは以下のフォーマットが使用されます : Trac[$(module)s] $(levelname)s: $(message)s Python のロガーライブラリがサポートしている標準のキー (http://docs.python.org/lib/node422.html 参照) に加えて、以下のキーを使用することができます : - $(path)s 現在の環境へのパス - $(basename)s 現在の環境のパスの一番最後の部分 - $(project)s プロジェクト名 %(...)s を使用すると ConfigParser が解釈し展開してしまうので、 $(...)s を使用することを覚えておいて下さい。 例: ($(thread)d) Trac[$(basename)s:$(module)s] $(levelname)s: $(message)s (0.10.5 以降)
log_levelログレベルを設定します。 値は (CRITICAL, ERROR, WARN, INFO, DEBUG) の、どれかでなければなりません。
log_type出力するログの種類を設定します。 値は (none, file, stderr, syslog, winlog) の、どれかでなければなりません。

[milestone]

stats_providerITicketGroupStatsProvider を implement するコンポーネントの名前を設定します。 ロードマップビューの表示で使用する、チケットのグループでの統計情報を収集する ために使用されます。

[mimeviewer]

enscript_modesEnscript が処理できる MIME タイプを追加します。 それぞれのエントリは mimetype:mode:quality というタプルで 設定しなければなりません。 mimetype には MIME タイプを、 mode には変換に使用する Enscript のモードを、 quality には変換に関連する quality ratio を 設定します。 quality で設定した値で、 Enscript のデフォルトの quality ratio を上書きします。デフォルトは 2 です (0.10 以降)。
enscript_pathEnscript プログラムへのパスを設定します。
max_preview_sizeHTML プレビューでのファイルの最大サイズを設定します (0.9 以降)。
mime_map追加の MIME タイプとキーワードのマッピングのリストを設定します。 マッピングリストはそれぞれの MIME タイプごとにカンマ区切りで指定します。 MIME タイプと関連するキーワードもしくはファイルの拡張子をコロン (":") 区切りで記述します (0.10 以降)。
php_pathPHP コマンドへのパスを設定します (0.9 以降) 。
tab_widthファイルをプレビューするときのタブの表示幅を設定します (0.9 以降)。

[notification]

admit_domainsメールアドレスとして有効とするドメインをカンマ区切りで設定します。 (localdomain など)
always_notify_ownerチケットの担当者 (owner) に常に通知メールを送信するかを設定します (0.9 以降) 。
always_notify_reporter報告者 (reporter) フィールドにあるアドレスに常に通知メールを 送信するかを設定します。
always_notify_updaterチケットの属性の変更者に常に通知メールを 送信するかを設定します。
ignore_domainsメールアドレスの一部として有効としないドメインをカンマ区切りで設定します。 (ユーザ名に Kerberos ドメインが付いている場合などの対策)
mime_encodingメールのエンコード方法を設定します。 有効なオプションとして、Base64 エンコーディングの 'base64', Quoted-Printable の 'qp', エンコードなしの 'none' があります。 エンコードをしないと、テキスト中の 非 ASCII 文字が、メール通知で 問題を引き起こすかもしれません (0.10 以降)。
smtp_always_bcc常に通知メールを送るメールアドレスを設定します。 設定したアドレスを受信者は見ることができません(Bcc:)。(0.10 以降 )。
smtp_always_cc常に通知メールを送るメールアドレスを設定します。 設定したアドレスは、すべての受信者がみることができます (Cc:)。
smtp_default_domainアドレスにホスト名/ドメインが指定されていなかったときに、付与する文字列を設定します。
smtp_enabledメール通知を有効にするかどうかを設定します。
smtp_from通知メールに使用する送信者アドレスを設定します。
smtp_from_name通知メールに使用する送信者名を設定します。
smtp_passwordSMTP サーバの認証パスワードを設定します (0.9 以降)。
smtp_portメール通知で使用する SMTP サーバのポート番号を設定します。
smtp_replyto通知メールに使用する返信アドレスを設定します。
smtp_serverメール通知で使用する SMTP サーバのホスト名を設定します。
smtp_subject_prefix通知メールの件名の頭に追加するプレフィックスを設定します。 オプションが定義されていない場合、[$project_name] (訳注: trac.ini の project セクションの name) が設定されます。 プレフィックスが必要ない場合は、オプションに空の値を設定することで、 無効化できます (0.10.1 以降)。
smtp_userSMTP サーバの認証ユーザ名を設定します (0.9 以降)。
ticket_subject_template通知の件名 (Subject) に使用する Genshi のテキストテンプレートの一部を設定する。 (0.11 以降)
use_public_cc通知メールの受信者が、 CC された他の受信者のメールアドレスを見ることができるかを設定します。 このオプションが無効になっている場合 (デフォルト)、受信者のメールアドレスは BCC フィールドに設定されます (0.10 以降)。
use_short_addrホスト名やドメインがないメールアドレスを許容するかを設定します (ユーザ名のみの場合など)。 SMTP サーバはホスト名やドメインがないメールアドレスも受け入れるべきで、 FQDN を追加するか、ローカル配送を使うべきです (0.10 以降)。
use_tlsメール通知に SSL/TLS を使用するかどうかを設定します (0.10 以降)。

[project]

adminプロジェクトの管理者のメールアドレスを設定します。
descrプロジェクトの概要を設定します。
footerページのフッタに表示するテキストを指定します (右詰めで表示されます)。
iconプロジェクトのアイコンの URL を指定します。
nameプロジェクトの名前を設定します。
urlプロジェクトのメインとなる Web サイトの URL を設定します。 通常、 base_url が示すウェブサイトを指定します。

[query]

default_anonymous_query認証されていないユーザへのデフォルトのクエリ。このクエリは クエリ言語 のシンタックスか、 query:Trac リンク でも使われる ? で始まる URL クエリ文字列で記述します (0.11.2 以降)。
default_query認証されたユーザへのデフォルトのクエリ。このクエリは クエリ言語 のシンタックスか、 query:Trac リンク でも使われる ? で始まる URL クエリ文字列で記述します (0.11.2 以降)。
items_per_pageカスタムクエリの検索結果で 1 ページあたり表示するチケット数の デフォルト値 (0.11 以降)

[report]

items_per_pageレポートの検索結果ページで 1 ページに表示するチケット数の デフォルト値 (0.11 以降)
items_per_page_rssレポートの RSS フィードに掲載するチケット数 (0.11 以降)

[revisionlog]

default_log_limitTracRevisionLog での最大表示数のデフォルト値 (0.11 以降)。

[roadmap]

stats_providerITicketGroupStatsProvider を implement するコンポーネントの名前を設定します。 ロードマップビューの表示で使用する、チケットのグループでの統計情報を収集する ために使用されます。

[search]

min_query_length検索を実行するときに許容するクエリ文字列の最短の長さを設定します。

[svn]

branchesブランチ として分類されたパスのリスト。 パスが '*' で終わっている場合、そのパスに含まれる全ての ディレクトリエントリが含まれます。
tagsタグ として分類されたパスのリスト。 パスが '*' で終わっている場合、そのパスに含まれる全ての ディレクトリエントリが含まれます。

[ticket]

default_cc新規登録チケットにデフォルトで設定する関係者リスト。
default_component新規登録チケットにデフォルトで設定するコンポーネント。
default_description新規登録チケットにデフォルトで設定する説明。
default_keywords新規登録チケットにデフォルトで設定するキーワード。
default_milestone新規登録チケットにデフォルトで設定するマイルストーン。
default_owner新規登録チケットにデフォルトで設定する担当者。
default_priority新規登録チケットにデフォルトで設定する優先度。
default_resolutionチケットを解決にする (閉じる) ときに、デフォルトで設定する解決方法 (0.11 以降)。
default_severity新規登録チケットにデフォルトで設定する重要度。
default_summary新規登録チケットにデフォルトで設定する概要 (タイトル)。
default_type新規登録チケットにデフォルトで設定するチケット分類 (0.9 以降)。
default_version新規登録チケットにデフォルトで設定するバージョン。
max_comment_sizeチケットのコメント (comment) の最大サイズを設定します (0.11.2 以降)。
max_description_sizeチケットの記述 (description) の最大サイズを設定します (0.11 以降)。
preserve_newlinesWiki フォーマッタが Wiki テキスト中の改行を文字を考慮するかを 設定します。 'default' に設定されている場合、新規作成した Environment では 'yes' と同じ意味になりますが、 アップグレードした Environemnt では、以前のふるまいを踏襲します ('no' に相当) (0.11 以降)。
restrict_ownerチケットの担当者のフィールドでドロップダウンメニューを使用するかを設定します。 担当者をドロップダウンリストにする を参照して下さい (0.9 以降)。
workflowチケットのアクションに使用するワークフローコントローラを順にリスト形式で設定します。 (0.11 以降)。

[timeline]

abbreviated_messagesWikiFormatting で書かれたメッセージを切り詰めるかどうかを設定します。 このオプションは default のレンダリングでのみ有効です。 特定のイベントプロバイダによって、 設定が上書きされることがあります。詳しくは、イベントプロバイダのドキュメントを参照して下さい (0.11 以降)。
changeset_collapse_events全く同じログメッセージで、同一編集者による連続したチェンジセットを 1 つのイベントとして扱います。 この場合、ログビューでは範囲を持つチェンジセットとしてリンクされます。 (0.11 以降)
changeset_long_messagesWiki フォーマットのチェンジセットのログメッセージを複数行表示するかどうかを設定します。 このオプションが設定されないか、 false である場合、かつ wiki_format_messages が true に設定されている場合、チェンジセットのログメッセージは、1 行のみ 表示され、いくつかのフォーマット (中点 (bullet points) など) は無視されます。
changeset_show_filesタイムラインに表示するファイル数を設定します (-1: 無制限, 0: 表示しない)。 また、変更のあったファイルに共通するプレフィックスを 位置 として 表示します (0.11 以降)。
default_daysbackタイムラインに表示する日数にデフォルト値を設定します (0.9 以降)。
max_daysbackタイムラインで表示可能な日数の最大値 (-1 は無制限を意味する) (0.11 以降)。
newticket_formatter新規登録チケットの記述 (description) を表示するときに使用する フォーマッタの flavor (例えば 'html' や 'oneliner')を設定します。 'oneliner' を設定した場合、 [timeline] の abbreviated_messages オプションが適用されます (0.11 以降)。
ticket_show_detailsタイムラインにすべてのチケットの変更を表示するかを設定します (0.9 以降)。

[trac]

authz_fileSubversion の 認証 (authz) ファイル へのパスを設定します。
authz_module_nameauthz_file で使用されるモジュールのプレフィックスを設定します。
auto_reload変更があった後、テンプレートファイルを自動的に再読込するかを設定します。
base_urlTrac がデプロイされている URL を設定します。 ドキュメントを生成するときに使用される base URL です。 Web でブラウズできるコンテキスト外で利用されます。たとえば、 通知メールで Trac のリソースを指す URL を挿入する場合 などです。
check_auth_ip認証時に、ユーザの IP アドレスをチェックするかどうかを 設定します (0.9 以降) 。
databaseこのプロジェクトのデータベースに接続する 文字列 を設定します。
default_charset文字コードが設定されていないときのデフォルト値を設定します。
default_handlerベース URL へのリクエストを処理するコンポーネント名を設定します。 オプションには TimelineModule, RoadmapModule, BrowserModule, QueryModule, ReportModule, TicketModule などが使用できます (0.9 以降)。
default_timezoneデフォルトのタイムゾーンを指定します。
htdocs_location静的なリソースへアクセスするためのベース URL を指定します。
ignore_auth_caseログイン名をすべて小文字に変換してから使用するかを設定します (0.9 以降) 。
mainnavナビゲーションバーの mainnav に表示する項目の順序を ID のリストで設定します。詳しくは TracNavigation を参照してください。
metanavナビゲーションバーの metanav に表示する項目の順序を ID のリストで設定します。詳しくは TracNavigation を参照してください。
permission_policiesIPermissionPolicy を実装するコンポーネントのリストを設定します。設定されている 順に適用されます。これらのコンポーネントは、 Trac リソースへの細かい アクセスコントロールを行います。 デフォルトは DefaultPermissionPolicy (0.11 より前のふるまい) と LegacyAttachmentPolicy (ATTACHMENT_* パーミッションをレルム固有にパーミッションに マップします) です。
permission_storeIPermissionStore を実装しているコンポーネント名を設定します。 ユーザとグループのパーミッションの管理のために使用されます。
repository_dirローカルリポジトリへのパスを指定します。相対パスを使用できます (0.11 以降)。
repository_typeリポジトリの種類を指定します。(0.10 以降)
request_filtersすべてのリクエストに適用するフィルタの適用順を設定します (0.10 以降)。
secure_cookiesCookie を HTTPS 接続で使用します。 True に設定された場合、すべての Cookie に secure フラグを付与 することで、 HTTPS 接続でサーバに送信されるようにします。このオ プションは Trac への接続に HTTPS が使える場合だけ、使用するよう にしてください。 (since 0.11.2 以降)
show_email_addressesユーザ名の代わりにメールアドレスを表示します。 false の場合、 メールアドレスはわかりづらくなります (0.11 以降)。
timeoutデータベース接続のタイムアウト秒数を設定します。 '0' を指定すると、 タイムアウトなし になります。 (0.11 以降)
use_base_url_for_redirect[trac] base_url をリダイレクトにも使用するか設定します。 Trac を HTTP プロキシの背後で動作させる設定下では、 自動ではアクセスに使用された URL を再構成できないため、 このオプションを使って、強制的に base_url の設定先にリダイレクトするよう Trac を設定する必要があります。この使用で制限事項が追加されます。 その Environment はリダイレクト先として使用される URL からアクセスしないと 使いづらくなります。 (0.10.5 以降)

[wiki]

ignore_missing_pages存在しないページへの CamelCase リンクをハイライトするかどうかを設定します (0.9 以降).
max_sizeWiki ページで許容する最大のページサイズを設定します。 (0.11.2 以降)
render_unsafe_content<script><embed> のようなセキュリティ上安全とはいえない HTML タグを HTML Wiki プロセッサ で使用可能にするかどうかを設定します。 (0.10.4 以降). 誰でも Wiki を編集できるような公開サイトでは、このオプションを無効に 設定しておくことを推奨します。 (デフォルトは、無効に設定されています)。
split_page_namesスペースで WikiPageNames を区切るのを可能にするかどうかを設定します (0.10 以降).

[components]

このセクションは Trac 本体も含めて、プラグインによって提供されるコンポーネントの有効/無効を設定するために使います。有効/無効を設定するコンポーネントは、オプションの名前 (name) を使って特定します。コンポーネントが有効かどうかはオプションの値 (value) によって決定されます; コンポーネントを有効にするには、値を enabled または on に設定します。他の値 (一般的には disabled または off) の場合、コンポーネントは無効になります。

オプションの名前はコンポーネントの完全修飾名、もしくは、コンポーネントのモジュール/パッケージ プレフィックスとなっています。前者は 特定のコンポーネントの有効/無効を設定し、後者は特定のパッケージ/モジュール内のコンポーネントの有効/無効を設定します。

以下の設定ファイルの抜粋を見てください:

[components]
trac.ticket.report.ReportModule = disabled
webadmin.* = enabled

最初のオプションは レポートモジュール を使用しないように Trac を設定しています。二つ目のオプションは webadmin パッケージのすべてのコンポーネントを使用できるように設定しています。末尾のワイルドカードはモジュール/パッケージのマッチを行う場合、必須です。

アクティブなコンポーネントの一覧を取得するには、 Trac について (訳注: 英語版では About Trac) の Plugins ページを参照してください。 (CONFIG_VIEW パーミッション が必要となります。)

See also: TracPlugins

[ticket-custom]

このセクションでは、チケットに追加フィールドを定義することができます。詳しくは TracTicketsCustomFields を参照してください。

[ticket-workflow]

(0.11 以降)

チケットのワークフローはプラグインで制御します。 デフォルトでは ConfigurableTicketWorkflow コンポーネントが制御を行います。 このコンポーネントでは、 trac.ini ファイルのこのセクションでワークフローを設定することが可能です。 詳細は TracWorkflow を参照してください。

[milestone-groups]

(0.11 以降)

今やチケットのワークフローは変更可能です。チケットステータスを数多く持つことができます。 単に解決した (closed) チケットと、その他のチケットを対比して表示することが、すべてのケースで 適切とは言えなくなりました。このセクションでは、簡単にステータスの グループ を作成ができます。 グループはマイルストーンのプログレスバーで異なった色で表示させることができます。

設定の例 (closed と active しか持たない場合):

closed = closed
closed.order = 0                     # プログレスバーでの表示順序
closed.query_args = group=resolution # カスタムクエリへのリンクに渡すパラメータ (非必須)
closed.overall_completion = true     # このグループのチケット数をマイルストーンの完了パーセンテージに計上する

new = new
new.order = 1
new.css_class = new
new.label = new

active = *                           # キャッチオールグループを 1 つ許容
active.order = 1
active.css_class = open              # このグループに付与する CSS のクラス
active.label = in progress           # このグループを表示するときに使用するラベル

グループの定義は、含めるステータスをカンマ区切りのリストにして構成します。 また、 '*' はあらゆるステータスを意味し、残りのすべてのステータスをキャッチオールグループに 関連付けます。

CSS クラスは次のいずれかを設定します: new (黄色), open (無色), closed (緑色)。 新しくスタイルを追加するには、以下のセレクタを使用します: table.progress td.<class>

[svn:externals]

(0.11 以降)

Subversion 向けの TracBrowser は、フォルダの svn:externals 属性を解釈できます。 しかしながら、外部リソースが http: プロトコルを使用して いない 場合や、リンクを異なるリポジトリブラウザ (別の Trac や ViewVC のような) に向けたい場合、 Trac に external のプレフィックスと外部の URL のマップを設定しなければなりません。

このマッピングは TracIni[svn:externals] セクションで設定します。

例:

[svn:externals]
1 = svn://server/repos1 http://trac/proj1/browser/$path?rev=$rev
2 = svn://server/repos2 http://trac/proj2/browser/$path?rev=$rev
3 = http://theirserver.org/svn/eng-soft       http://ourserver/viewvc/svn/$path/?pathrev=25914
4 = svn://anotherserver.com/tools_repository  http://ourserver/trac/support/browser/$path?rev=$rev

上記では、 svn://anotherserver.com/tools_repository/tags/1.1/tools という external は http://ourserver/trac/support/browser/tags/1.1/tools?rev= にマップされます (rev は、 external にリビジョンが指定された場合、適切なリビジョン番号に設定されます。詳細は SVN Book の externals を参照してください) 。

Note: 番号はセクション内でのキー項目としてだけ使用されます。 URL 自身はキー項目として扱うことが出来ないという、設定ファイルのパーサの制限事項を回避するためです。


See also: TracGuide, TracAdmin, TracEnvironment