[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[kagemai-users:0470] Re: 「複数のBTS」のときのメールインタフェースの設定



福岡です。

FUKUOKA Tomoyuki san wrote:
 
| これは(config_fileが別のプロジェクトの) include で同じ
| mailif.rb を参照している、ということでいいでしょうか。
| 
| 確かに現在はそうなっていて、config_file を切り替えることが
| できていないので問題がありますね。

mailif.rb で外部から config_file を指定できるようしてみました。

diff -u -r1.3.2.8 mailif.rb
--- mailif.rb	15 Jan 2005 13:52:54 -0000	1.3.2.8
+++ mailif.rb	8 Feb 2005 14:16:07 -0000
@@ -30,12 +30,24 @@
 kagemai_root = File.dirname(File.dirname(File.expand_path(__FILE__))).untaint # setup
 config_file  = "#{kagemai_root}/kagemai.conf" # setup
 
-$LOGFILE = "/tmp/kagemai.log"  # setup
+if $0 == __FILE__ && ARGV.size == 3 then  
+  project_id =  ARGV.shift
+  opt = ARGV.shift
+  if opt == '-c' then
+    config_file = ARGV.shift
+  end
+  ARGV.unshift project_id
+end
 
 $:.unshift("#{kagemai_root}/lib")
 require 'kagemai/config'
 Kagemai::Config.initialize(kagemai_root, config_file)
 
+$LOGFILE = "/tmp/mailif.log"  # setup
+if File.exist?(config_file) then
+  $LOGFILE = "#{Kagemai::Config[:project_dir]}/mailif.log"
+end
+
 require 'tempfile'
 
 require 'rmail/parser'



また、config_file を指定した include を生成するためには、
bts.rb を以下のように修正する必要があります。

--- bts.rb.~1.2.2.4.~	2005-01-27 22:38:07.000000000 +0900
+++ bts.rb	2005-02-09 00:29:13.223106584 +0900
@@ -124,8 +124,10 @@
         
         # make include file for mail interface
         mail_include_file = "#{dir}/include"
+        mailif = "#{Config.root}/bin/mailif.rb"
+        mailif_opt = "#{id} -c #{Config.config_file}"
         File.open(mail_include_file, 'wb') do |file|
-          file.puts %Q!"|#{$RUBY_BINARY} #{Config.root}/bin/mailif.rb #{id}"!
+          file.puts %Q!"|#{$RUBY_BINARY} #{mailif} #{mailif_opt}"!
         end
         File.chmod2(0644, mail_include_file)


<BTS:284> にも、いちおうあげておきました。

  
| | ところで、config_fileについてですが
| | デフォルトではhtdocs以下に置かれるのがやや不安です。
| | 別のディレクトリにするのではまずいでしょうか。
| | # 途中で変えると互換性の問題が出てしまうというのはありますが。
| 
| 実は、私も少し気になっていました。
| 
| デフォルトで *.cgi と同じディレクトリにあると仮定すると
| 楽なのでそうしているんですが、別にプロジェクトのデータ
| を置くディレクトリでもいいかなと思っています。

こっちはまだパッチを作っていませんが、そのうち修正したい
と思います。とりあえず忘れないように <BTS:285> として
登録しておきました。

-- 
福岡ともゆき <fukuoka@xxxxxxxxxxxxx>
http://www.daifukuya.com/