Skip to content

newspaper gem置き換え - その他システム通知 #9153

@machida

Description

@machida

概要

newspaper gemによるその他のシステム通知をRailsの標準的な仕組みに置き換えます。

詳細は下記を参照してください。
newspaper廃止 · fjordllc/bootcamp Wiki

対象イベント

  • :training_completion_create'training_completion.create'
  • :check_create'check.create'
  • :check_cancel'check.cancel'
  • :came_comment_in_talk'talk_comment.create'

:check_create:check_cancelについて。
9a365a1 でPublisherのみ追加していて正しく動作していないように見えます。
不要であれば該当のPublisherの箇所を削除、必要であればnewspaper gemの置き換えと同時にモデルとSubscriberを追加する対応が必要です。

こちらについて @komagata さんと相談しながら進めてください。
詳細について知りたい場合は、 @ryufuta さんに質問をしてみてください。

対象ファイル

Publisher(イベント発行側)

  • app/controllers/training_completion_controller.rb:18
  • app/controllers/checks_controller.rb:18,35
  • app/controllers/admin/users_controller.rb:38(retirement_create)
  • app/controllers/scheduler/daily/auto_retire_controller.rb:18(retirement_create)
  • app/models/comment/after_create_callback.rb:77

Subscriber(イベント購読側)

  • app/models/times_channel_destroyer.rb(training_completion_create, retirement_create購読)
  • app/models/comment_notifier_for_admin.rb

チェックリスト

  • TimesChannelDestroyerクラスのインターフェース確認
  • CommentNotifierForAdminクラスのインターフェース確認
  • training_completion.create通知の置き換え実装
  • check.create/check.cancel通知の置き換え実装
  • talk_comment.create通知の置き換え実装
  • 管理者・スケジューラーによるretirement_create処理の統合
  • システム通知関連テストの修正
  • 動作確認(研修完了・チェック・トークコメント

注意点

  • TimesChannelDestroyerは複数イベントで使用される
  • スケジューラーによる自動退会処理の動作確認
  • トークコメントの管理者通知が正常に動作するか確認

最終作業

もし、PRを出す時点で newspaper に関する Issue が全てマージされていた場合は、

  • newspaper gem削除(Gemfile, Gemfile.lock)
  • config/initializers/newspaper.rb削除
  • 全体の動作確認・回帰テスト

を行う。

ただし、現在作業中のIssueが長引く可能性もある(実際:answer_save:answer_destroyは元々バグがあってそちらの対応中のため現在PR保留中)。

その場合、最終作業を別Issueとして登録をする。

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

Status

完成

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions