Changes between Version 1 and Version 2 of TracUpgrade
- Timestamp:
- Oct 12, 2010, 8:57:27 PM (14 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
TracUpgrade
v1 v2 2 2 [[TracGuideToc]] 3 3 4 [TracEnvironment Trac Environment] をアップグレードする前に Trac-0.11 が使用可能になっている必要があります。このドキュメントでは TracEnvironment をアップグレードするのに必要な手順を説明します。5 6 特に指示がない限り、マイナーバージョンのリリース時には TracEnvironment のアップグレードは必要ありません。7 8 4 == 一般的な手順 == #Instructions 9 5 10 通常、 Trac を新しいバージョンにアップグレードするときに、 4 ステップを踏まなければなりません:6 通常、 Trac を新しいバージョンにアップグレードするときに、 7 ステップを踏まなければなりません: 11 7 12 === Trac のコードを更新する === #UpdatetheTracCode8 === 1. Trac のコードを更新する === #UpdatetheTracCode 13 9 14 10 TracInstall または、あなたの OS に合った方法で新しいバージョンの Trac を取得してください。 15 11 16 手で (OS 特有でない) アップグレードをするのであれば、インストールを実行する前に起動中の Trac サーバを停止してください。 "ホット" アップグレードは問題を生じることが多いです。特に Windows では出来ないと考えてください ([http://trac.edgewall.org/ticket/7265 #7265])。 12 `easy_install` を使って、 0.11 のバージョンの Trac をインストールしていた場合は、最も簡単に Trac をアップグレードできます。 13 14 {{{ 15 # easy_install --upgrade Trac==0.12b1 16 }}} 17 (これは、 0.12 のベータ 1 がリリースされたときのものです) 18 19 手で (OS 特有でない) アップグレードをするのであれば、インストールを実行する前に起動中の Trac サーバを停止してください。 "ホット" アップグレードは問題を生じることが多いです。特に Windows では出来ないと考えてください ([trac:ticket:7625 #7265])。 17 20 18 21 すでに存在する Trac のコードを削除するには、 Python の `lib/site-packages` ディレクトリから `trac` ディレクトリか、 Trac の .egg の古いバージョンを削除します。 19 22 site-packages ディレクトリの位置は OS のシステム、および Python のインストールパスにより異なりますが、一般的には以下の位置にあります: 20 * Linux を使用している場合: /usr/lib/python2.X/site-packages21 * Windows を使用している場合: C:\Python2.X\lib\site-packages22 * MacOSX を使用している場合: /Library/Python2.X/site-packages23 * Linux の場合: `/usr/lib/python2.X/site-packages` 24 * Windows の場合: `C:\Python2.X\lib\site-packages` 25 * MacOSX の場合: `/Library/Python/2.X/site-packages` 23 26 24 27 また、 `share/trac` (正確な位置はプラットフォームに依存しますが一般的にはこの位置です。) ディレクトリ内の `cgi-bin`, `htdocs`, `templates`, `wiki-default` といったディレクトリを削除してもかまいません。 (訳注: 0.11 では、これらのディレクトリは `site-packages/trac` の配下に移動しています) … … 26 29 このクリーンアップは必須ではありませんが、あとでトラブルシュートを行う場合の切り分けが容易になります。すでに使われていない前のリリースのコードやテンプレートを見るなどという時間の浪費をしたくないのであれば、削除しておく方が楽です。もちろん、ファイルを削除する前にバックアップを作成する方が良いでしょう。 27 30 28 webadmin plugin をインストールしていた場合は、アンインストールしてください。今や webadmin plugin は Trac コードベースの一部です。 31 === 2. TracEnvironment をアップグレードする === #UpgradetheTracEnvironment 29 32 30 === TracEnvironment をアップグレードする === #UpgradetheTracEnvironment 33 Environment のアップグレードは、マイナーバージョンアップに特別な注意書きがない限り、不要です。 31 34 32 35 アップグレードした Trac がロードされると、アップグレードする必要があるインスタンスが表示されます。アップグレードはオートメーションされたスクリプトを手で実行します。これらのスクリプトでは [TracAdmin trac-admin] を使用します。 … … 37 40 このコマンドはもし TracEnvironment がすでに最新の状態になっているときは、何もしません。 38 41 39 Note: PostgreSQL データベース (訳注: MySQL も) を使用している場合、このコマンドは「 Environment のバックアップは SQLite を使っているときしか出来ない」というメッセージを出力して失敗します。リポジトリとデータベースのバックアップは手動で行う必要があります。その後、アップグレードを行うために次のコマンドを実行してください: 42 Note: データベースのバックアップはアップグレード時に自動で行われます。 43 この機能は最近の更新で、データベースバックエンドに PostgreSQL や MySQL を使用している場合にも対応しましたが、失敗してしまう場合は手動でバックアップしてください。その後、バックアップをスキップしてアップグレードを行うために、下記のコマンドを実行してください: 40 44 {{{ 41 45 trac-admin /path/to/projenv upgrade --no-backup 42 46 }}} 43 47 44 カスタム CSS スタイルを使用していたり、 TracEnvironment の templates ディレクトリテンプレートを変更している場合、 Genshi のやり方にコンバートする必要があります。スタイルシートを使用し続けたい場合、 TracInterfaceCustomization#SiteAppearance の手順を読んでください。 45 46 === Trac ドキュメントを更新する === #UpdatetheTracDocumentation 48 === 3. Trac ドキュメントを更新する === #UpdatetheTracDocumentation 47 49 48 50 すべての [TracEnvironment Trac Environment] で、インストールされたバージョンの Trac ドキュメントのコピーを含んでいます。新しくインストールした Trac のドキュメントと同期を取りたいでしょう。 [TracAdmin trac-admin] がドキュメントを更新するコマンドを提供しています: … … 53 55 当然このプロシージャはあなたの `WikiStart` ページ (訳注: `InterMapText` も) をまったく変更せず、そのままに残しておきます。 54 56 55 === サイトテンプレート === #SiteTemplates 56 0.11 でテンプレートエンジンが変更されました。 TracInterfaceCustomization を参照してください。 57 === 4. Trac Environment とソースコードリポジトリの再同期 === #a4.ResynchronizetheTracEnvironmentAgainsttheSourceCodeRepository 57 58 58 === Trac マクロプラグイン === #TracMacrosPlugins 59 !ClearSilver と HDF が使用されなくなったことで、古いスタイルの Wiki マクロ は使用できなくなります。そのため Trac マクロを適応させる必要があるでしょう; 新しいスタイルのマクロに変更する必要があれば WikiMacros を参照してください。新しいスタイルにコンバートした後、配置するディレクトリは wiki-macros ではなく、 plugins を使用してください。 wiki-macros ディレクトリからマクロやプラグインを探すことはもうありません。 59 Trac でソースコードをブラウズしているときに "[http://trac.edgewall.org/ticket/6120 リポジトリにチェンジセット ??? が存在しません]" のようなエラーが出る場合は、それぞれの [TracEnvironment Trac environment] のソースコードリポジトリと再同期をする必要があります。 60 60 61 === CGI 利用者向けの注意 === #ForCGIusers 61 {{{ 62 trac-admin /path/to/projenv repository resync '*' 63 }}} 62 64 63 CGI で Trac を起動している場合、以下のコマンドを実行して trac.cgi ファイルを取得してください: 65 === 5. 静的リソースをリフレッシュする === #a5.Refreshstaticresources 66 67 もし、静的リソースを直接配布できる ( URL /chrome/ を使用してアクセス) ようにウェブサーバをセットアップしていたら、同じくコマンドを使用してそれらをリフレッシュする必要があります: 68 {{{ 69 trac-admin /path/to/env deploy /deploy/path 70 }}} 71 このコマンドは、新しい Trac のバージョンとそのプラグインから `/deploy/path` に静的リソースと CGI スクリプト (trac.wsgi, など) を抽出します。 72 73 いくつかのウェブブラウザは CSS や Javascript のファイルを強力な方法でキャッシュします。したがって、強制的にブラウザのキャッシュをリフレッシュする必要があります ( あなたの Trac ユーザにもそう伝えてください !)。 74 75 === 6. 特定の Trac バージョンでの特記事項 === #a6.StepsspecifictoagivenTracversion 76 ==== Trac 0.11 から Trac 0.12 にアップグレードする ==== #UpgradingfromTrac0.11toTrac0.12 77 ===== Python 2.3 サポート ===== #Python2.3nolongersupported 78 現在 Python 2.4 以降 をサポートします。 79 80 ===== SQLite v3.x ===== #SQLitev3.xrequired 81 SQLite v2.x のサポートは終了しました。もしいまだに Trac で SQLite v2.x のデータベースを使用しているようならば、まず最初に SQLite v3.x に変換する必要があります。詳細は [trac:PySqlite#UpgradingSQLitefrom2.xto3.x] を参照して下さい。 82 83 ===== 複数のリポジトリのサポート===== #MultipleRepositorySupport 84 Trac に複数のリポジトリを追加する予定であるならば、今では複数のリポジトリを扱えるようになっています。詳細については、 [TracRepositoryAdmin#Migration 単一リポジトリからの移行手順] を参照して下さい。 85 86 もし単一のリポジトリでの運用を行なっていたとしてもこの手順は興味深いものとなりえます。なぜなら、この方法によってリクエスト毎に発生する潜在的に負荷の高い再同期のチェックを避けることができるからです。 87 88 ===== 向上したリポジトリの再同期 ===== #Improvedrepositorysynchronization 89 複数のリポジトリをサポートするのに加えて、 Trac と リポジトリの同期をより効果的に行なう新しい方法が実装されました。 90 91 バージョン 0.11 と同様に post-comit フックを使用した同期方法を続けることもできますが、[TracRepositoryAdmin#Synchronization リポジトリの同期方法] や [TracRepositoryAdmin#ExplicitSync 明示的な同期] に書かれている方法の方が、より効果的な同期を行なうことができ、多かれ少なかれ、複数のリポジトリを扱う際に必須となります。 92 93 Note: もし、 `trac-post-commit-hook` を使用していたならば、上記を参照して、新しいフックに ''アップグレードすることを強くお勧めします'' 。なぜなら、古いフックはデフォルトのリポジトリ以外では動きません。そしてこの場合、適切な通知のトリガーとなりません。 94 95 ==== Trac 0.10 から Trac 0.11 へのアップグレード ==== #UpgradingfromTrac0.10toTrac0.11 96 ===== テンプレート と スタイルシート ===== #SiteTemplatesandStyles 97 テンプレートエンジンが Trac 0.11 から Genshi に変わりました。詳細については、 TracInterfaceCustomization を参照して下さい。 98 99 もし、TracEnvironment の `templates` ディレクトリの中のカスタマイズされた CSS や 修正したテンプレートを使用しているならば、 Genshi のスタイルに変換する必要があります。カスタマイズしたスタイルシートを使い続けるためには、[TracInterfaceCustomization#SiteAppearance サイトの外観] の手順に従ってください。 100 101 ===== Trac マクロプラグイン ===== #TracMacrosPlugins 102 [trac:ClearSilver ClearSilver] と HDF が使用されなくなったことで、古いスタイルの Wiki マクロ は使用できなくなります。そのため Trac マクロを適応させる必要があるでしょう; 新しいスタイルのマクロに変更する必要があれば WikiMacros を参照してください。新しいスタイルにコンバートした後、配置するディレクトリは wiki-macros ではなく、 plugins を使用してください。 wiki-macros ディレクトリからマクロやプラグインを探すことはもうありません。 103 104 ===== FCGI/WSGI/CGI を使用する場合 ===== #ForFCGIWSGICGIusers 105 CGI で Trac を起動している場合、以下のコマンドを実行して trac.*gi ファイルを取得してください: 64 106 {{{ 65 107 trac-admin /path/to/env deploy /deploy/directory/path 66 108 }}} 67 109 68 このコマンドでは、デプロイ用ディレクトリを作成します。デプロイ用ディレクトリには `cgi-bin` と `htdocs` の二つのサブディレクトリが含まれています。 これらのディレクトリを Environment のディレクトリに移動させ、 Apache の `httpd.conf` を新しい `trac.cgi` の場所に更新してください。110 このコマンドでは、デプロイ用ディレクトリを作成します。デプロイ用ディレクトリには `cgi-bin` と `htdocs` の二つのサブディレクトリが含まれています。 Apache の `httpd.conf` を新しい `trac.cgi` と `htdocs` の場所に更新してください。 69 111 70 === Web サーバを再起動する === #RestarttheWebServer 112 ===== Web アドミンプラグインのインテグレーション ===== 113 もし、 Web アドミンプラグインをインストールしていたら、 Trac 0.11 以降より、 Trac のコードベースの一部となっているのでアンインストールできます。 114 115 === 7. Web サーバを再起動する === #RestarttheWebServer 116 71 117 [wiki:TracCgi CGI] 以外で起動している場合は、 Web サーバを再起動して、新しい Trac コードをリロードしてください。 72 118 119 == 既知の問題 == #KnownIssues 73 120 74 == 既知の問題 == #KnownIssues75 121 === 複数プロジェクトのホストに関して === #parentdir 76 122 複数のプロジェクトをホストした場合に、配下のプロジェクトのうち一つのプロジェクトで、プラグインの一つが動作していないとき、配下のすべてのプロジェクトではそのプラグインは動作していません。 77 === コアモジュールがロードされない === #somecoremoduleswontload 78 Windows で Python 2.3 を使用している場合、最初にアンインストールを行わずにアップグレードすると時々発生します。 79 いくつかのモジュールは、以前はキャピタライズされていましたが、小文字のみに変更されました (例えば、 trac/About.py が trac/about.py に変更されるなど)。以下のようなメッセージが Trac のログに出てくる場合: 80 {{{ 81 ERROR: Skipping "trac.about = trac.about": (can't import "No module named about") 82 }}} 83 `Lib/site-packages/trac` ディレクトリを削除してから、再インストールしてください。 84 === Wiki Upgrade === WikiUpgrade 85 `trac-admin` はページを削除しません。バージョン 0.10 では存在し、バージョン 0.11 では存在しないページはそのまま残ります。 (0.11 開発中に存在した !TracWikiMacros など) 123 124 === Wiki のアップグレード === 125 `trac-admin` は新しいバージョンでは存在しない以前のバージョンの Wiki ページを削除や移動しません。 126 86 127 87 128 == データベースの変更 == #ChangingDatabaseBackend … … 92 133 == より古いバージョン == #OlderVersions 93 134 94 さらに前のバージョンからのアップグレードについては [http://trac.edgewall.org/wiki/0.10/TracUpgrade 0.10/TracUpgrade] をまずは参照してください。 95 96 Note: Trac 0.11 から Trac 0.10.4 や 0.10.5 にダウングレードするには、手作業が必要になります: 97 {{{ 98 $ sqlite3 db/trac.db "update system set value=20 where name='database_version'" 99 }}} 100 (あとで再度、正常にアップグレードすることができます) 135 さらに前のバージョンからのアップグレードについては [trac:wiki:0.10/TracUpgrade#SpecificVersions] を最初に参照してください。 101 136 102 137 -----