CI で予期せぬエラーが発生しました

UPDATE: @NateDhaliwal が正しく指摘しているように、after_initializer で DB にアクセスするとルールに違反する可能性があります。長らく運が良かっただけでした。

いくつか変更を加えます。

以下のエラーが発生しています。

ActiveRecord::NoDatabaseError: データベースが見つかりません: discourse_test。利用可能なデータベース構成は config/database.yml にあります。(ActiveRecord::NoDatabaseError)
詳細
rake aborted!
ActiveRecord::NoDatabaseError: データベースが見つかりません: discourse_test。利用可能なデータベース構成は config/database.yml にあります。(ActiveRecord::NoDatabaseError)
このエラーを解決するには:
- データベースを作成しなかったか、削除しましたか?データベースを作成するには、以下を実行します:
    bin/rails db:create
- データベース名が変更されましたか? config/database.yml に正しいデータベース名が含まれていることを確認してください。
/__w/discourse-chatbot/discourse-chatbot/config/initializers/000-pg-connection-debug.rb:14:in `rescue in new_client'
/__w/discourse-chatbot/discourse-chatbot/config/initializers/000-pg-connection-debug.rb:4:in `new_client'

私の github ワークフロー で発生しています。

標準的なプラグイン CI ワークフローで何か変更があり、私が気づいていないことはありますか?

私はまだ以下に従っています:

そして v1 を使用しています。

(gem のインストール以外) ここまでの時点で私のコードは実行されていません。また、この PR はいずれにしてもマイナーな設定変更のみです。

PS 最近進化しているようです: History for .github/workflows/discourse-plugin.yml - discourse/.github · GitHub

「いいね!」 2

100%確実ではありませんが、on()やジョブ内ではなく、単にafter_initialize内でUserなどを介してActiveRecordを使用すると発生すると思います

私も最近これに遭遇しました… 記憶が正しければ、AIに尋ねたところ、コードをスケジュールされたジョブに移動したら問題が解決しました。

「いいね!」 2

申し訳ありません、再確認したところ、私のコードで失敗しているようです。ただし、after_initialize でアクセスしています。

ルールが変わったようです。

user_count = User.count

初期化子ではもう許可されないようです(おそらく常に悪い習慣だったのでしょう)。

提案ありがとうございます! :clap:

ジョブに移動して一度実行すべきだというご指摘は全く正しいと思います。 :+1:

「いいね!」 1

問題ありません。うまく動作したようでよかったです!

「いいね!」 1