タグ : Rails

Redmine 導入

うちの大学にはサーバ班というものが存在していて、サーバ班メンバーが大学のインフラを支えている。
で、そのサーバ班内部でのタスク管理はメールによる報告しかなく、”誰が”「なにをやるべきか」「どこまでやってるか」といったものが全く見えない。結果、働く/働かない人、できる/できない人が明確に分かれる。で、プロジェクト管理必要でしょ!ということで、オープンソースのプロジェクト管理ツールを探してみることに。

で、見つけたのが

TracRedmine

結局「Redmineを試してみよう」ってことになった。なぜかって?Railsだからさ。 #マジか。
まぁ、とりあえず試してみようってことで、あとでTracも試すと思うけど。

Redmineのインストール

最近CentOS5.3にしたばかりのサーバにインストールすることに。
Rails、、そもそもgemからのインストールになるな。

gem の インストール

rubyforgeから、最新版のgemをチェック。

SHINYA% wget http://rubyforge.org/frs/download.php/60718/rubygems-1.3.5.tgz
SHINYA% tar xzvf phpMyAdmin-3.2.1-all-languages.tar.gz
SHINYA% cd rubygems-1.3.5
SHINYA% ruby setup.rb
RubyGems 1.3.5 installed
SHINYA% gem -v
1.3.5

#関係ないけど、GEMって宝石の意味?

Railsのインストール

SHINYA% gem install rails
Successfully installed rake-0.8.7
Successfully installed activesupport-2.3.4
Successfully installed activerecord-2.3.4
Successfully installed rack-1.0.0
Successfully installed actionpack-2.3.4
Successfully installed actionmailer-2.3.4
Successfully installed activeresource-2.3.4
Successfully installed rails-2.3.4
8 gems installed
ERROR:  While executing gem ... (Gem::DocumentError)
    ERROR: RDoc documentation generator not installed: no such file to load -- rdoc/rdoc

RDocのエラーはおいといて:-) とりあえず、railsインストール完了

SHINYA% rails -v
Rails 2.3.4

でRedmine

Redmine本家サイトさんから安定版をチェックアウト。

svn co http://redmine.rubyforge.org/svn/branches/0.8-stable redmine-0.8

展開したredmine-0.8ディレクトリをredmineにリネームして、データベースの設定。
設定だけ記述すれば、rakeでデータベースまで作ってくれるから楽といえばかなり楽。
以下のように、redmineディレクトリの config/database.yml.exampleをconfig/database.ymlにコピーして、userとパスワードを設定。いちおう、testとして実行。

test:
  adapter: mysql
  database: redmine_test
  host: localhost
  username: root
  password: ryu-wp-me
  encoding: utf8
  socket: /var/lib/mysql/mysql.sock
SHINYA% rake db:migrate
(in /usr/share/redmine)
Missing the Rails 2.1.2 gem. Please `gem install -v=2.1.2 rails`, update your RAILS_GEM_VERSION setting in config/environment.rb for the Rails version you do have installed, or comment out RAILS_GEM_VERSION to use the latest version installed.

エラーが。config/enviroment.rb内のRAILS_GEM_VERSIONを、現在のRailsのバージョンにあわせれば良いのかな?

SHINYA% rails -v
Rails 2.3.4
SHINYA% grep -n -i rails_gem_version config/environment.rb
8:RAILS_GEM_VERSION = '2.1.2' unless defined? RAILS_GEM_VERSION
SHINYA% emacs +8 config/environment.rb
SHINYA% grep -n -i rails_gem_version config/environment.rb
8:#RAILS_GEM_VERSION = '2.1.2' unless defined? RAILS_GEM_VERSION
9:RAILS_GEM_VERSION = '2.3.4' unless defined? RAILS_GEM_VERSION

コメントアウトで対応、で、再度挑戦。

SHINYA% rake db:migrate
(in /usr/share/redmine)
rake aborted!uninitialized constant ActionController::Session::PStore

(See full trace by running task with --trace)

う〜ん。エラーが。調べてみると、Redmine 0.8はRails 2.1.2じゃなきゃダメみたい。

結局,gemの入れ直し

上記のサイトを参考に、Rails 2.3.4をアンインストール。2.1.2をいれることに。まだ、他にシステムが動いていない若いサーバだから、ここらへんアグレッシブに行けるね。

SHINYA% gem uninstall rails
Remove executables:
        rails

in addition to the gem? [Yn]  Y
Removing rails
Successfully uninstalled rails-2.3.4
SHINYA% sudo gem install rails -v=2.1.2
Successfully installed activesupport-2.1.2
Successfully installed activerecord-2.1.2
Successfully installed actionpack-2.1.2
Successfully installed actionmailer-2.1.2
Successfully installed activeresource-2.1.2
Successfully installed rails-2.1.2
6 gems installed

で、先ほどコメントアウトしたconfig/enviroment.rbの設定を元にもどして、再度実行。(こんどこそ >< )

SHINYA% rake db:create
(in /usr/share/redmine)
SHINYA% rake db:migrate
(in /usr/share/redmine)
== 1 Setup: migrating =========================================================
-- create_table("attachments", {:force=>true})
   -> 0.0475s
 ・
 ・
 ・
== 101 PopulateChangesetsUserId: migrating ====================================
== 101 PopulateChangesetsUserId: migrated (0.0038s) ===========================
SHINYA%

うわー、色々やってくれてるな。と思いながらログを見てたら、上手くいったらしい。

で、初期データ読み込み。ここで”ja”を選んで日本語インターフェースに。

SHINYA% rake redmine:load_default_data RAILS_ENV="test"
(in /usr/share/redmine)

Select language: bg, ca, cs, da, de, en, es, fi, fr, he, hu, it, ja, ko, lt, nl, no, pl, pt, pt-br, ro, ru, sk, sr, sv, th, tr, uk, vn, zh, zh-tw [en] ja
====================================
DEPRECATION WARNING: You're using the Ruby-based MySQL library that ships with Rails. This library will be REMOVED FROM RAILS 2.2. Please switch to the offical mysql gem: `gem install mysql`  See http://www.rubyonrails.org/deprecation for details. (called from mysql_connection at /usr/lib/ruby/gems/1.8/gems/activerecord-2.1.2/lib/active_record/connection_adapters/mysql_adapter.rb:81)
Error: #42000Unknown database 'redmine_test'
Default configuration data was not loaded.
Loaded suite /usr/bin/rake
Started

Finished in 0.001942 seconds.

0 tests, 0 assertions, 0 failures, 0 errors

「0 tests, 0 assertions, 0 failures, 0 errors」素晴らしい。#当然?

長かったー。ようやくredmineを動かせる。

Redmineを動かしてみる。- on Rails

rails付属のWebサーバーである”WEBric”でrailsを動かして、Redmineにアクセス。

SHINYA% ruby script/server -d
=> Booting WEBrick...
GLoc v1.1 running in development mode. Strings can be modified at runtime.
=> Rails 2.1.2 application started on http://0.0.0.0:3000
[2009-09-11 15:10:31] INFO  WEBrick 1.3.1
[2009-09-11 15:10:31] INFO  ruby 1.8.5 (2006-08-25) [i386-linux]

で、サーバの3000番ポートにhttpアクセス。。。できた!!userとpassはadmin:adminで。
プロジェクトがないのは当然にしても、ものすっごい簡素なhomeだな。welcomeぐらいあっても。。
SNAP 216

で、ここで “?”。 jaを選択したのに日本語じゃない! #=> My AccountでLaungageをjapaneseに選択でおk。

とりあえず

Redmineのインストールはこれで完了。設置で異様に疲れたので、

  • プロジェクト/ユーザの作成
  • 本環境 = apache での稼働
  • mercurialとの連携

は明日以降やる!あ、その前にサーバ班で導入の話を切り出さないと OTL。。

Ruby on Rails インストール & emacs-railsの設定

アルバイト先の出勤表 作成/管理を行なうページを作成することに。

Railsで作成しよう!とのことで、Railsの開発環境を整えてみた。

Railsのインストール

と思ったら、すでにRailsは入っていた。

SHINYA% which rails
/usr/bin/rails
SHINYA% rails -v
Rails 2.3.2

とりあえず、RailsはOK。

emacs-railsの設定

開発マシンは、先輩がたてているサーバで行なうことに。端末上での開発がメインとなるので、emacs-railsはかなり便利とのことで設定。

http://d.hatena.ne.jp/higepon/20061222/1166774270を参考に、必要な.el一式をそろえて、emacsに読み込ませる。

これで、モデル-ビュー-コントローラ間の対応/関連するファイル移動がかなり楽に。(これは便利)

ちょっと問題が

Rails 2.0からだと、ビューの定義ファイル拡張子が*.html.erbになっているため、コントローラ-ビュー間の移動で対応するビューが検出されない。(*.html.erbには未対応)

自分の落としてきたのemacs-rails(0.5.99.5)では*.html.erb形式に対応していない様子。

対応していないといっても、emacs-rails/rails.elに*.html.erbをテンプレート拡張子として追加するだけでOKだった。

emacs-rails/rails.elの149行めの

(defvar rails-templates-list '("erb" "rhtml" "rxml" "rjs" "haml" "liquid"))

にhtml.erbを追加↓すればOK

(defvar rails-templates-list '("html.erb" "erb" "rhtml" "rxml" "rjs" "haml" "liquid"))

Railsでちょっと開発してみた

Railsに詳しい先輩と、ペアプログラミングで開発をちょっと進めてみた。

出勤表の管理ということで、とりあえずメンバーのモデルとスケジュールのモデルを作成。

scaffold,CRUDってなんぞ?って感じだったけど、実際に開発を進めていくともの凄く簡単に日程管理の下地が出来た。SQLとか意識しなくても、簡単にデータベース/モデルが定義できるって素敵。

また、ペアプログラミングはサーバ上で同一アカウントでログインしている先輩と、screenを共有して開発した。曰く、「screen と skypeがあればどこでも勉強会できる」とのこと^^

これから

とりあえず、大学図書館でRails関連の本を借りてきた。

開発メインでRailsを勉強していこう。


(defvar rails-templates-list ‘(“html.erb” “erb” “rhtml” “rxml” “rjs” “haml” “liquid”))↓
 
Better Tag Cloud