【注記】
以下の情報は2011年当時の古い情報です。
開発環境のセットアップ
Sahana EDENの開発に参加する場合、以下の手順に従って、Launchpad上の日本版ブランチを基にした構築を行ってください。
Pythonのモジュールなどは、安定版のインストール手順を参照してインストールします。
Launchpad/bzrについての参考サイト
Sahana EDEN日本語版の開発は、Launchpad、およびBazaarで行っています。
LaunchpadとBazaarについては、以下を参考にしてください。
補足情報として、以下もたいへん有用です。
bazaar/sshまわりのインストールと設定
まずはLinux Boxに、Bazzarをインストールします。
$ sudo aptitude install bzr bzrtools
Bazaarで使用する名前と、メールアドレスを登録します。
$ bzr whoami "Foo Example <fooexample@example.com>"
Launchpadとの間でセキュアな通信を行うため、SSH鍵を作成します。(SSHの鍵を登録しないと後述のLaunchpadは使えません)
$ ssh-keygen -f ~/.ssh/launchpad
~/.ssh/config に以下のように記載します。(Launchpadのアカウント名については登録し終わってから)
$ cat ~/.ssh/config
Compression yes
CompressionLevel 9
ForwardX11 yes
Host bazaar.launchpad.net
IdentityFile ~/.ssh/launchpad
User (launchpadアカウント名)
Launchpadにアカウントを作成
Sahana EDEN日本語版のTrunk、および、web2pyのTrunkは、Launchpadで管理されています。
Launchpadからソースコードをダウンロードする必要があるので、まずはLaunchpadのアカウントを作成します。
https://launchpad.net/
アカウント作成後、アカウントページから、SSH鍵を登録します。
- https://launchpad.net/people/+me/+editsshkeys にアクセスします。
- 「Add an SSH key」のテキストフィールドに、~/.ssh/launchpad.pub の中身をコピペしてください。
ローカルのBazaarにLaunchpadアカウントを登録
bzrコマンドを使い、launchpadアカウントを登録します。
$ bzr lp-login [Launchpadアカウント名]
Launchpadにある web2pyブランチを、ローカルにコピーします。
$ mkdir -p ~/src/sahana/
$ cd ~/src/sahana/
$ bzr branch lp:~mdipierro/web2py/devel
同様に、Sahana Japan Teamのブランチをローカルにコピーします。
$ bzr branch lp:~sahana-eden-jp/sahana-eden/japan
自分の作業ブランチを作る
コピーしたブランチから自分の作業ブランチを作成します。
japan.sahanafoundation.orgはweb2pyリビジョン3089でセットアップしていますので、「-r 3089」を指定します。(日本ブランチはweb2pyは固定、Sahana Edenは日本ブランチの最新版をを使っています)
$ cd ~/
$ bzr branch -r 3089 ~/src/sahana/devel/ web2py
$ cd ~/web2py/applications/
$ bzr branch ~/src/sahana/japan/
この状態でjapan.sahanafoundation.orgと同じ環境になります。
開発用ディレクトリ(上記設定のとおりであれば ~/src/sahana/japan)に配置されているファイルを更新し、開発を行ってください。
Sahana Eden開発版初回起動時の注意
web2pyを起動し、Sahana Eden開発版にアクセスすると、以下のメッセージが表示され、models/000_config.pyと cronの設定を促されます。
The following files were copied from templates and should be edited: models/000_config.py, cron/crontab
ローカルで動かす場合、cronは必要ないので、models/000_config.pyを編集します。
最低限動かすだけなら15行目にある FINISHED_EDITING_CONFIG_FILE
を False
から True
にします。
変更前
FINISHED_EDITING_CONFIG_FILE = False # change to True after you finish editing this file
変更後
FINISHED_EDITING_CONFIG_FILE = True # change to True after you finish editing this file
修正したコードをLaunchpadへ送信する
ローカルブランチでの基本作業
$ cd [自分の作業用ブランチディレクトリ(~/src/sahana/japan/ など)]
Launchpad上の日本ブランチで行われたアップデートをローカルへ取り込む。
上のように日本ブランチを手元に用意して、さらにブランチを切った場合は、手元のブランチをpullして、さらに作業ブランチをpullする。
変更部分を確認
問題がなければaddとcommit
$ bzr add .
$ bzr commit
(修正した部分のコメントを書く)
コミッターの場合
そのままpushできます。
$ bzr push lp:~sahana-eden-jp/sahana-eden/japan
launchpadにブランチを作成する場合
launchpadに自分の修正したブランチをpushします。
~USER_NAME
とBRANCH_NAME
は、それぞれlaunchpadユーザー名とブランチ名に置き換えてください。
$ bzr push lp:~USER_NAME/sahana-eden/BRANCH_NAME
パッチを作成する場合
修正部を送るためのパッチを作るには以下のコマンドで作成することができます。
$ bzr send -o (ファイル名).patch
できたパッチをMLまで投げてください。