From fc76ff1051681a7cabc1203043217b617e85f068 Mon Sep 17 00:00:00 2001 From: Robert Speicher Date: Thu, 13 Jul 2017 16:51:37 +0200 Subject: [PATCH] Disable Rails logging in CI test environments See https://jtway.co/speed-up-your-rails-test-suite-by-6-in-1-line-13fedb869ec4 --- config/environments/test.rb | 5 +++++ doc/development/testing.md | 5 +++++ 2 files changed, 10 insertions(+) diff --git a/config/environments/test.rb b/config/environments/test.rb index c3b788c038e..986107150cf 100644 --- a/config/environments/test.rb +++ b/config/environments/test.rb @@ -43,4 +43,9 @@ Rails.application.configure do config.cache_store = :null_store config.active_job.queue_adapter = :test + + if ENV['CI'] && !ENV['RAILS_ENABLE_TEST_LOG'] + config.logger = Logger.new(nil) + config.log_level = :fatal + end end diff --git a/doc/development/testing.md b/doc/development/testing.md index cf3ea2ccfc2..fc84932354b 100644 --- a/doc/development/testing.md +++ b/doc/development/testing.md @@ -479,6 +479,11 @@ slowest test files and try to improve them. run the suite against MySQL for tags, `master`, and any branch that includes `mysql` in the name. - On EE, the test suite always runs both PostgreSQL and MySQL. +- Rails logging to `log/test.log` is disabled by default in CI [for + performance reasons][logging]. To override this setting, provide the + `RAILS_ENABLE_TEST_LOG` environment variable. + +[logging]: https://jtway.co/speed-up-your-rails-test-suite-by-6-in-1-line-13fedb869ec4 ## Spinach (feature) tests