From a6679f0fba1bd26cae96696af1b8060686f98c59 Mon Sep 17 00:00:00 2001 From: Ethan Vizitei Date: Fri, 29 Oct 2021 14:41:53 -0500 Subject: [PATCH] enviornment-based enablement of zeitwerk closes FOO-2440 flag=none TEST PLAN: 1) specs pass Change-Id: I10afd058843a42ce7a89d1a99fca63029c07c09e Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/277154 Tested-by: Service Cloud Jenkins Reviewed-by: Jacob Burroughs QA-Review: Ethan Vizitei Product-Review: Ethan Vizitei --- config/application.rb | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/config/application.rb b/config/application.rb index 73d6e19e18a..075be88f4d4 100644 --- a/config/application.rb +++ b/config/application.rb @@ -43,7 +43,16 @@ Bundler.require(*Rails.groups) # ... # CANVAS_ZEITWERK: 1 unless defined?(CANVAS_ZEITWERK) - CANVAS_ZEITWERK = (ENV['CANVAS_ZEITWERK'] == '1') + CANVAS_ZEITWERK = if ENV['CANVAS_ZEITWERK'] + (ENV['CANVAS_ZEITWERK'] == '1') + elsif Rails.root && (zw_settings = ConfigFile.load("zeitwerk")) + zw_settings["enabled"] + else + # choose to force zeitwerk on in dev/test + # environments unless they override with + # an env var or file + !Rails.env.production? + end end module CanvasRails