古いチケットの自動削除の方法について

433 views
Skip to first unread message

yanda

unread,
Apr 21, 2015, 7:17:00 AM4/21/15
to redmine-...@googlegroups.com
お世話になっております。
お尋ねしたいことがありトピックを立てさせていただきます。

作成日が古いチケットを自動削除させたいと考えています。
例えば、「created_on」の日付が180日以前のチケットは削除するといったものです。

これを実現する方法として、次の処理を行うスクリプトを書いているのですが、
何か他に良い方法はございませんでしょうか。

1、次のRESTAPIコマンドを送り、削除対象チケットの一覧を取得する。
 「GET /issues.xml?created_on=%3C%3D<180日前の日付>」
2、削除対象チケットの数だけ次のRESTAPIコマンドを送り、チケットを削除する。
 「DELETE /issues/<削除対象チケットのID>.xml」

ご存知の方いらっしゃいましたら、ご教示いただければ幸いです。

どうぞよろしくお願いします。

nobu_toyofuku

unread,
Apr 24, 2015, 6:30:45 AM4/24/15
to redmine-...@googlegroups.com

2015年4月21日火曜日 20時17分00秒 UTC+9 yanda:
作成日が古いチケットを自動削除させたいと考えています。
例えば、「created_on」の日付が180日以前のチケットは削除するといったものです。

lib/tasks/ の下に

  namespace :redmine do
  task :delete_old_issues => :environment do
     issues_to_delete = Issue.find(:all, :conditions => 「created_on」の日付が180日以前の条件を書く)
     issues_to_delete.each do |issue| issue.destory end
  end

のような内容の rakeファイルを作っておき

rake redmine:delete_old_issues RAILS_ENV=“production”
(必要なら bundle exec を前置して)

で実行すればできそうに思います。
最近 redmine をいじってなく自信がないのでどなたか詳しい方、フォローお願いします。
---
 

yanda

unread,
May 19, 2015, 9:30:21 AM5/19/15
to redmine-...@googlegroups.com
nobu_toyofuku様


すみません。回答をいただいたことに気付かず 返信が遅れてしまいました。

私はrailsやrakeタスクの使い方の知識がないため、
教えていただいたスクリプトの内容がいまいち理解できてないのですが、
少し勉強した上で試してみます。

ありがとうございました。
Reply all
Reply to author
Forward
0 new messages