runserverのIP変更方法


Djangoを使ってアプリを作る際、実行状況をチョコッと確かめるのに便利なのが

python manage.py runserver &


デフォルトの設定だとhttp://127.0.0.1:8000/とかになってしまう。私のテスト環境は、colinuxでNAT接続してるのでこれだと少々問題があった為、
django/core/management.pyの

addr = '127.0.0.1'

addr = '192.168.***.***'

のように変更した。これで、もう一度、runserverすると指定のIPで環境を確認できる。ポートも8000から変更できるよう。

TurboGears インスト


先ず、最初に Python をインストールする必要あり

$ wget http://www.python.jp/pub/ftp.python.org/python/2.4.3/Python-2.4.3.tar.bz2
$ tar jxf Python-2.4.3.tar.bz2
$ cd Python-2.4.3/
$ ./configure --prefix=/usr
$ make
# make install


python2.4は不要なので削除する

$ cd /usr/bin/
$ ls -lt | head
$ rm python2.4
$ strip -p python


そして、TurboGears のインストール

# easy_install TurboGears


TurboGears 管理ツールを確認する
TurboGears をインストールした後、管理ツール tg-admin を使えるようにパスを設定します。コマンドラインで tg-admin とタイプして確認します。


TurboGears 最新版へのアップデート

easy_install -Uf http://www.turbogears.org/preview/download/index.html TurboGears

debian環境下でのtracのインストールと設定


debianなんでメッサ簡単!

apt-getでインスト

# apt-get install trac
# mkdir /var/www/trac
# cd /var/www/trac


日本語化

# wget http://www.i-act.co.jp/project/products/downloads/trac-0.8.4-ja-2.zip
# unzip trac-0.8.4-ja-2.zip
# cd trac-0.8.4-ja-2
# mv /usr/share/trac/templates /usr/share/trac/templates.bk
# mv /usr/share/trac/wiki-default /usr/share/trac/wiki-default.bk
# mv templates/ /usr/share/trac/templates
# mv wiki-default/ /usr/share/trac/wiki-default
# cd ../
# rm -rf  trac-0.8.4-ja-2*

# trac-admin proj initenv
    Project Name        => proj
    Path to repository  => /var/www/trac
    Templates directory => /usr/share/trac/templates

    .
    .
    .
    Congratulations!


mod_python で動くように設定(高速化)

# apt-get install libapache2-mod-python


ブラウザで閲覧できるようにapache2の設定と基本認証を施す

# chown -R www-data ../trac
# vi /etc/apache2/sites-available/trac

    Alias /trac "/usr/share/trac/htdocs/"
    ScriptAlias /proj /usr/share/trac/cgi-bin/trac.cgi
    
        SetHandler mod_python
        PythonHandler trac.ModPythonHandler
        PythonOption TracUriRoot "/proj"
        PythonOption TracEnvParentDir /var/www/trac
        SetEnv TRAC_ENV "/var/www/trac/proj"
        AuthType Basic
        AuthName "Trac Project"
        AuthUserFile /var/www/.htpasswd
        Require valid-user
    

# a2ensite trac
# /etc/init.d/apache2 reload


あとは、お好みで既存のアクセス権限とマイルストーンコンポーネントを削除したり適当に追加
削除

# trac-admin /var/www/trac/proj permission remove ****
# trac-admin /var/www/trac/proj milestone remove ****
# trac-admin /var/www/trac/proj component remove ****


追加

# trac-admin /var/www/trac/proj permission add admin ****
# trac-admin /var/www/trac/proj milestone add **** "Nov 30, 2006"
# trac-admin /var/www/trac/proj component add hirose ****

サブバージョン コミットメールの配信方法


* /var/subversion/svn/hooks/post-commit スクリプトを作成し、(コミット直後にSubversionにより実行される)
* post-commit スクリプトから/usr/lib/subversion/hook-scripts/commit-email.rb を呼ぶ
* スクリプトには実行権限を付けておく


post-commitを書き換える

#!/bin/sh

REPOS="$1"
REV="$2"

export LANG=japanese

/usr/lib/subversion/hook-scripts/commit-email.rb "$REPOS" "$REV"

cd /var/www/htdocs
umask 002
svn update `svnlook dirs-changed $REPOS | sed -e 's,htdocs/,,'` &


commit-email.rbは下記のように記述する

#!/usr/bin/ruby -Ke

require 'net/smtp'
require 'kconv'

REPOS=ARGV[0]
REV=ARGV[1].to_i

svnauthor=%x{svnlook author #{REPOS} -r #{REV}}.chomp
svndate=%x{svnlook date #{REPOS} -r #{REV}}.chomp
svnchanged=%x{svnlook changed #{REPOS} -r #{REV}}.chomp
svnlog=%x{svnlook log #{REPOS} -r #{REV}}.chomp
svndiff=%x{svnlook diff #{REPOS} -r #{REV}}.chomp

toaddr  =['info1@hoge.co.jp', 'info2@hoge.co.jp', 'info3@hoge.co.jp', 'info4@hoge.co.jp']
fromaddr=['Subversion@localhost.localdomain']


svnlog=svnlog.kconv(Kconv::EUC,  Kconv::ASCII)

body = <
                                                                                                              • -
#{svnlog} Changed: [U:修正,A:追加,D:削除]
                                                                                                              • -
#{svnchanged} Diff:
                                                                                                              • -
#{svndiff} END_OF_BODY message = < To: Subversion committers:; Subject: [コミットメール svn-#{REV}] commit MIME-Version: 1.0 Content-Type: text/plain; charset = ISO-2022-JP X-Mailer: Subversion email-send.rb #{body.tojis} END_OF_MESSAGE Net::SMTP.start('localhost', 25) { |smtp| smtp.send_mail(message, fromaddr, *toaddr) }


実行権限とか

# chmod 755 commit-email.rb
# chown www-data.www-data commit-email.rb


※ /usr/lib/subversion/hook-scripts/commit-email.pl を用いる方法で日本語文字化けが解決できなかったのでrubyスクリプトを用いた方法で代替しました。キッーーー!!
※ 参照:http://f29.aaa.livedoor.jp/~yamakan/index.php?SVN(Subversion)%20%A5%B3%A5%DF%A5%C3%A5%C8%A5%E1%A1%BC%A5%EB%C0%DF%C4%EA


ちなみに、rubydebian環境なので

# apt-get install ruby

で簡単にインストできました。

FedoraCore3 に yum package インストール


【キー取得】
Fedora core 3のyumではデフォルトでGPG(GNU Privacy Guard)キーチャックを行うので、GPGキーをインストールします。

# rpm --import /usr/share/doc/fedora-release-*/RPM-GPG-KEY*


リポジトリ変更】

 # vi /etc/yum.repos.d/fedora.repo
[base]
    name=Fedora Core $releasever - $basearch - Base
    #baseurl=http://download.fedora.redhat.com/pub/fedora/linux/core/$releasever/$basearch/os/
    baseurl=ftp://ftp.riken.go.jp/pub/Linux/fedora/core/updates/$releasever/$basearch
    #mirrorlist=http://fedora.redhat.com/download/mirrors/fedora-core-$releasever
    enabled=1
    gpgcheck=1
# vi /etc/yum.repos.d/fedora-updates.repo
[updates-released]
    name=Fedora Core $releasever - $basearch - Released Updates
    #baseurl=http://download.fedora.redhat.com/pub/fedora/linux/core/updates/$releasever/$basearch/
    baseurl=ftp://ftp.riken.go.jp/pub/Linux/fedora/core/updates/$releasever/$basearch
    #mirrorlist=http://fedora.redhat.com/download/mirrors/updates-released-fc$releasever
    enabled=1
    gpgcheck=1


自動起動

# chkconfig --level 35 yum on


yum リポジトリ更新】

# yum check-update


【利用可能なパッケージを更新】

# yum -y update


yum Service起動】

# service yum start