• 追加された行はこの色です。
  • 削除された行はこの色です。
RIGHT:&tag(Trac,さくらインターネット);
#contentsx

* さくらインターネットでインストール [#ya4ecbe3]
さくらインターネットにSubversionとTracの環境を構築します。
構築手順は、[[WeekbuildのHack倉庫 - Trac:http://weekbuild.sakura.ne.jp/trac/wiki/TracDoc/SakuraInternet]]を参考にしています。※ほとんど、そのまんまですが・・・

|~svnのリポジトリ| ~/var/svn/repo|
|~TracEnv| ~/var/trac/repo|
|~Trac公開フォルダ| ~/www/dev|
|~Trac公開URL|http://dev.tank.jp|
|~Tracにアクセスできるユーザー|admin=管理者、guest=閲覧のみ|

※もし、ファイルがダウンロードできなくなってしまった場合(バージョンが古くなって)は、
http://www.opaken.jp/download/trac/
からダウロードできるようにしておきます。


** 環境設定 [#w1ff399a]
 mkdir -p $HOME/local/src
 cd $HOME/local/src
 mkdir -p $HOME/local/lib/python2.4/site-packages
 ln -s ~/local/lib/python2.4 ~/local/lib/python
 
 vi ~/.cshrc
 ※最終行に追加
 setenv PYTHONPATH $HOME/local/lib/python:$HOME/local/lib/python/site-packages
 setenv PATH $HOME/local/bin:$PATH
 setenv LD_LIBRARY_PATH $HOME/local/lib
一旦telnetをログアウトします。

** swig [#jdf0b8e4]
 cd $HOME/local/src
 wget http://jaist.dl.sourceforge.net/sourceforge/swig/swig-1.3.21.tar.gz
 gunzip swig-1.3.21.tar.gz
 tar xvf swig-1.3.21.tar
 cd SWIG-1.3.21
 ./configure  --prefix=$HOME/local 
 make
 make runtime
 make install
 make install-runtime
 cd ..

** Subversion [#tb0305a8]
 wget http://subversion.tigris.org/downloads/subversion-1.2.3.tar.bz2
 tar jxf subversion-1.2.3.tar.bz2
 cd subversion-1.2.3
 ./configure --prefix=$HOME/local --with-neon=$HOME/local --without-berkeley-db --enable-swig-bindings=python --with-swig=$HOME/local/bin/swig --disable-static
 make
 make install
 make swig-py
 make install-swig-py
 
 ln -s $HOME/local/lib/svn-python $HOME/local/lib/python/site-packages/svn-python
 ln -s $HOME/local/lib/svn-python/svn $HOME/local/lib/python/site-packages/svn
 ln -s $HOME/local/lib/svn-python/libsvn $HOME/local/lib/python/site-packages/libsvn
 
 cd ..

** sqlite [#nd3ef571]
特にインストールしなかった。
※さくらインターネットに標準でインストールされているから?

** pysqlite [#d4532ff6]
 cd $HOME/local/src
 wget http://initd.org/pub/software/pysqlite/releases/1.1/1.1.7/pysqlite-1.1.7.tar.gz
 gunzip pysqlite-1.1.7.tar.gz
 tar -xvf pysqlite-1.1.7.tar
 cd pysqlite
 setenv LOCALBASE $HOME/local
 python setup.py build
 python setup.py install --prefix=$HOME/local

** clearsilver [#ybc0b876]
 wget http://www.clearsilver.net/downloads/clearsilver-0.9.14.tar.gz
 gunzip clearsilver-0.9.14.tar.gz
 tar -xvf clearsilver-0.9.14.tar
 cd clearsilver-0.9.14
 ./configure --prefix=$HOME/local --oldincludedir=$HOME/local/include --disable-ruby --disable-java --disable-perl --disable-csharp --disable-python --disable-static
 gmake
 gmake install
 
 cd python
 python setup.py build
 python setup.py install --prefix=$HOME/local

** docutils [#i2e5e4b7]
 cd $HOME/local/src
 wget http://jaist.dl.sourceforge.net/sourceforge/docutils/docutils-0.4.tar.gz
 gunzip docutils-0.4.tar.gz
 tar -xvf docutils-0.4.tar
 cd docutils-0.4
 python setup.py install --home=$HOME/local

** Trac [#aec61548]
Tracは、[[インターアクト株式会社:http://www.i-act.co.jp/project/products/products.html]]さんが提供している日本語版0.10.3を使います
 cd $HOME/local/src
 wget http://www.i-act.co.jp/project/products/downloads/trac-0.10.3-ja-1.zip
 unzip trac-0.10.3-ja-1
 cd $HOME/local/src/trac-0.10.3-ja-1
 python ./setup.py install --prefix=$HOME/local
 cp $HOME/local/share/trac/cgi-bin/trac.cgi $HOME/www

** Subversionのリポジトリ作成 [#pdc43fa4]
 mkdir -p $HOME/var/svn
 svnadmin create --fs-type=fsfs $HOME/var/svn/repo
リポジトリ内にフォルダを作る
 mkdir $HOME/tmp
 cd $HOME/tmp
 mkdir proj
 cd proj
 mkdir trunk branches tags
 cd ..
 svn import proj file:///$HOME/var/svn/repo -m "Import First"
 rm -r proj

** trac の環境を設定 [#a14fb863]
 mkdir -p $HOME/var/trac
 trac-admin $HOME/var/trac/repo initenv
リポジトリフォルダは~とか使わずに/home/XXXという形で全部入力すること。
(XXXはさくらインターネットのユーザーID)
 Project Name [My Project]>;
 Database connection string [sqlite:db/trac.db]>;
 Path to repository [/var/svn/test]>; /home/XXX/var/svn/repo
 Templates directory [/home/XXX/local/share/trac/templates]>;

** trac.cgiの作成 [#h90798ba]
Tracを公開するフォルダを用意します。
 mkdir $HOME/www/dev
次に、$HOME/www/trac.cgiを$HOME/www/dev/trac_.cgiという名前で移動します。
 mv $HOME/www/trac.cgi $HOME/www/dev/trac_.cgi
CGIに環境変数を渡すために、新たな$HOME/www/dev/trac.cgiを作成します。 ブラウザからリクエストがくると、これがまず呼ばれることになります。 
(XXXはさくらインターネットのユーザーID)
 vi $HOME/www/dev/trac.cgi
 
 #!/bin/sh
 LD_LIBRARY_PATH=/home/XXX/local/lib;export LD_LIBRARY_PATH
 TRAC_ENV=/home/XXX/var/trac/repo;export TRAC_ENV
 PYTHONPATH=/home/XXX/local/lib/python:/home/XXX/local/lib/python/site-packages;export PYTHONPATH
 /usr/local/bin/python /home/XXX/www/dev/trac_.cgi
trac.cgiのパーミッション変更
 chmod 755 $HOME/www/dev/trac.cgi

** URLのRewrite設定とベーシック認証の設定 [#nc0e3b86]
$HOME/www/dev/.htaccessに以下を記載
 vi $HOME/www/dev/.htaccess

 RewriteEngine On
 RewriteBase /
 RewriteRule ^$ /trac/ [R=301,L]
 RewriteRule ^/trac/(.*)$ /trac.cgi/$1 [L]
 
 AuthUserFile       /home/XXX/.tracpasswd
 AuthGroupFile     /dev/null
 AuthName          "Type your password please."
 AuthType           Basic
 require valid-user

** パスワードファイルの作成 [#z1c0a12e]
Tracのページにログインするためのユーザーadminのパスワードを設定します。
 htpasswd -c $HOME/.tracpasswd admin
 New password: adminのパスワード
 Re-type new password: adminのパスワード
Tracのゲスト用のユーザーも設定しておきます。
 htpasswd $HOME/.tracpasswd guest
 New password: guest
 Re-type new password: guest 

** ドメインの設定 [#o75e5848]
さくらインターネットのサブドメインを使って公開します。
さくらインターネットのコントロールパネルのドメイン設定で、ドメイン名を指定し、エイリアスのフォルダを /home/XXX/www/dev にします。
今回は、http://dev.tank.jp という名前でサブドメインを登録しました。

** setuptoolsのインストール [#a11d9a9e]
 mkdir $HOME/local/src/setuptools
 cd $HOME/local/src/setuptools
 wget http://peak.telecommunity.com/dist/ez_setup.py
 python ez_setup.py --prefix=$HOME/local http://cheeseshop.python.org/packages/2.4/s/setuptools/setu
ptools-0.6c3-py2.4.egg
 python ez_setup.py --prefix=$HOME/local -U setuptools

** WebAdminのインストール [#ma46edc8]
TracのWebAdminを
http://svn.edgewall.com/repos/trac/sandbox/webadmin/
からSVNでダウンロードしたファイルを用意しておきました。
 cd $HOME/local/src 
 wget http://www.opaken.jp/download/trac/webadmin.zip
 unzip webadmin.zip
 cd WebAdmin
 python setup.py egg_info
 python setup.py bdist_egg
 cp dist/TracWebAdmin-0.1.2dev-py2.4.egg $HOME/var/trac/repo/plugins/

** AccountManagerPlugin [#ube91a84]
インストールしましたが、エラーになるため諦めました。。。

** trac.iniの編集 [#xa6b41b1]
 vi $HOME/var/trac/repo/conf/trac.ini
 
 [components]
 webadmin.* = enabled

 [trac]
 default_charset = euc_jp
※ソースの文字コードをEUCで管理する場合

** Tracの管理者権限 [#j367349c]
adminユーザーにTRAC_ADMIN権限を付与します。
 trac-admin $HOME/var/trac/repo/ permission add admin TRAC_ADMIN

** Tracのページにアクセス [#wf9e49e2]
Tracのページにアクセスします。
さくらインターネットのサブドメインで設定したURLにアクセス。
今回は、http://dev.tank.jp/ にアクセスする。
BASIC認証する必要がありますので、adminでログインします。
リダイレクトされて、http://dev.tank.jp/trac/ が表示されます。

** Adminページでの設定 [#vcbfeab0]
TRAC_ADMIN権限でアクセスすると、TracのメニューにAdminが表示されています。
(WebAdminをインストールしていると表示される)
Adminをクリックして、Permissionsを選びます。

anonymousに与えている権限全てを削除します。
Subjectが、anonumousとなっている行にチェックして、「Remove selected items」ボタンをクリックします。

guestにVIEW権限を与えます。
Grant Permission:のSubjectにguestと入力し、Actionに下記のものを順に設定して「Add」ボタンをクリックしていきます。
 WIKI_VIEW 
 TICKET_VIEW 
 TIMELINE_VIEW 
 REPORT_VIEW 
 ROADMAP_VIEW 
 MILESTONE_VIEW 
 BROWSER_VIEW 
 FILE_VIEW 
 CHANGESET_VIEW 
 LOG_VIEW 

** ToritoiseSVNでsvn+sshを使って接続する [#id37788e]

*** PuTTYgenを使い鍵を作成する [#o640d416]
+[[PuTTY Download Page>http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html]]よりputtygen.exeをダウンロードしてください。 
+puttygen.exeを起動して、Generateボタンを押してください(空白エリアの中でマウスを動かせと表示されます。グリグリ動かしましょう)。 
+表示されるテキストエリア(Puglib key for pasting into OpenSSH authorized_keys file)の中身をコピーし、メモ帳でテキストファイルに保存してください。そのファイルをauthorized_keysというファイル名(拡張子な し)に変更してください。 
+そのままSave private keyボタンを押して秘密鍵を適当なフォルダに適当な名前で保存してください(私は忘れないようにToritoiseSVNのインストールフォルダ/binにおきました)。 
+authorized_keysをFTPで$HOME/.ssh/に置いてください。 
+さくらインターネットにTelnetで接続して、パーミッションを変更してください。

*** ToritoiseSVNの設定 [#ge357380]
+ToritoiseSVNの設定画面を開いてください(エクスプローラで適当なフォルダを選び右クリック→ToriseSVN→setting(または設定))。 
+画面左のツリーからNetwork(またはネットワーク)を選び、SSHクライアント欄にTortoiseSVNのインストールディレクトリ\binにあるTortoisePlink.exeのフルパスを指定してください。引数は 「-l アカウント名」と「-i 作成した秘密鍵のパス」を指定してください。

例:秘密鍵id_rsa.ppkをTortoisePlink.exeと同じフォルダに置いた場合。XXXはさくらインターネットのユーザID 
 "C:\Program Files\TortoiseSVN\bin\TortoisePlink.exe" -l XXX -i "C:\Program Files\TortoiseSVN\bin\id_rsa.ppk"

*** つないでみる [#h60a1ac5]
+適当なフォルダで右クリック→TortoiseSVN→RepositoryBrowser(またはリポジトリブラウザ) 
+URLを入力("svn+ssh" + "://さくらサーバのアドレス" + レポジトリの絶対パス)。 
例:$HOME/var/svn/repoにレポジトリを作った場合。XXXはさくらインターネットのユーザID 
 svn+ssh://XXX.sakura.ne.jp/home/XXX/var/svn/repo
+なんかキャッシュに入れていいかというメッセージが出る。アドレスが正しければ「はい」をクリック。 
+パスワードを聞かれたら、さくらインターネットのパスワードを入力。 
+リポジトリが見えて、ツリーを開くことが出来ればOK 

** 関連ページ [#d7c2551d]
#lsx

#newpage_subdir()

** コメント [#ldd3810b]
#comment


    ホーム 一覧 単語検索 最終更新 バックアップ リンク元   ヘルプ   最終更新のRSS