DodontoF icon indicating copy to clipboard operation
DodontoF copied to clipboard

Create removeOldPlayRoom.rb

Open daicyan opened this issue 8 years ago • 1 comments

拡張機能→古いプレイルームを削除のUI操作をcronなどで自動化するために公式鯖に導入しているバッチ

daicyan avatar May 08 '16 11:05 daicyan

shebangはもちろん環境に依存しますが、ほとんどの環境で動く

#!/usr/bin/env ruby -Ku

の方が良いかもしれません。また、-Ku はRuby 1.9以降では省略できますが(むしろ外すべき)、1.8.7でこのスクリプトを動かす人がどのくらいいるかに依存するため、悩ましいところです。

最新版ではここまで短くできます。

#!/usr/env/ruby -Ku
# -*- coding:utf-8 -*-

# src_ruby/config.rbまたは、src_ruby/config_local.rb内の
# $removeOldPlayRoomLimitDays で指定された期間を経過した部屋を自動削除
# 拡張機能→古いプレイルームを削除のUI操作をcronなどで自動化したい人向け

require './DodontoFServer'
DodontoFServer.new(SaveDirInfo.new, {}).removeOldPlayRoom

ところで、メンテナンススクリプトを入れる場合は、ディレクトリを区切って整理するのが良いように思います。例えばWikipedia等で使われているMediaWikiでは「maintenance」ディレクトリに入っています。その場合はディレクトリ移動が必要になるため、以下のようになるでしょう。

#!/usr/env/ruby -Ku
# -*- coding:utf-8 -*-

# src_ruby/config.rbまたは、src_ruby/config_local.rb内の
# $removeOldPlayRoomLimitDays で指定された期間を経過した部屋を自動削除
# 拡張機能→古いプレイルームを削除のUI操作をcronなどで自動化したい人向け

Dir.chdir(File.expand_path('..', File.dirname(__FILE__)) do
  require './DodontoFServer'
  DodontoFServer.new(SaveDirInfo.new, {}).removeOldPlayRoom
end

ochaochaocha3 avatar Jul 23 '16 01:07 ochaochaocha3