فشل في GitHub Actions في خطوة "التحقق من قابلية التشغيل SKIP_DB_AND_REDIS"

واجهت مشكلة حيث فشلت خطوة “التحقق من قابلية التشغيل SKIP_DB_AND_REDIS” المضافة مؤخرًا لإحد الإضافات الخاصة بي.

فشل التشغيل مع SKIP_DB_AND_REDIS. تأكد من عدم الوصول إلى قاعدة البيانات أثناء عملية تشغيل Rails.

لإعادة إنتاج المشكلة محليًا، قم بتشغيل `SKIP_DB_AND_REDIS=1 RAILS_DB=‘nonexistent’ bin/rails runner “puts ‘booted successfully’”`.

لقد جربت ذلك، لكنني لم أستطع إعادة إنتاج المشكلة محليًا. لقد نجح الأمر ببساطة.

استطعت استخدام تتبع المكدس (stack trace) لخطوة عملية GitHub الفاشلة لتحديد الكود المسؤول عن المشكلة.

الكود المُشكّل في المشكلة

في أحد المتحكمات (controllers) الخاصة بي، أعلنت عن ثابت (constant) يسترجع قائمة سمات (attributes) لـ Active Record:

REWARD_FIELDS =  Reward.attribute_names.excluding("id", "created_at", "updated_at")

وهو ما لا ينبغي فعله كما يبدو.

لكن كان سيكون من الأفضل لو أمكنني محاكاة هذا الفحص محليًا، حتى لا أضطر إلى تجربة الأخطاء والأصناف عبر عمليات GitHub. إذن يجب أن يكون هناك شيء آخر غير مجرد تنفيذ الأمر:

SKIP_DB_AND_REDIS=1 RAILS_DB='nonexistent' bin/rails runner "puts 'booted successfully'"