未验证 提交 366f0945 编写于 作者: R Rafael Mendonça França

Merge pull request #26443 from y-yagi/clear_all_environments_log_by_default

clear all environments log files by default
* The `log:clear` task clear all environments log files by default.
*Yuji Yaginuma*
* Add Webpack support in new apps via the --webpack option, which will delegate to the rails/webpacker gem. * Add Webpack support in new apps via the --webpack option, which will delegate to the rails/webpacker gem.
To generate a new app that has Webpack dependencies configured and binstubs for webpack and webpack-watcher: To generate a new app that has Webpack dependencies configured and binstubs for webpack and webpack-watcher:
......
...@@ -3,7 +3,7 @@ namespace :log do ...@@ -3,7 +3,7 @@ namespace :log do
## ##
# Truncates all/specified log files # Truncates all/specified log files
# ENV['LOGS'] # ENV['LOGS']
# - defaults to standard environment log files i.e. 'development,test,production' # - defaults to all environments log files i.e. 'development,test,production'
# - ENV['LOGS']=all truncates all files i.e. log/*.log # - ENV['LOGS']=all truncates all files i.e. log/*.log
# - ENV['LOGS']='test,development' truncates only specified files # - ENV['LOGS']='test,development' truncates only specified files
desc "Truncates all/specified *.log files in log/ to zero bytes (specify which logs with LOGS=test,development)" desc "Truncates all/specified *.log files in log/ to zero bytes (specify which logs with LOGS=test,development)"
...@@ -19,7 +19,7 @@ namespace :log do ...@@ -19,7 +19,7 @@ namespace :log do
elsif ENV["LOGS"] elsif ENV["LOGS"]
log_files_to_truncate(ENV["LOGS"]) log_files_to_truncate(ENV["LOGS"])
else else
log_files_to_truncate("development,test,production") log_files_to_truncate(all_environments.join(","))
end end
end end
...@@ -33,4 +33,8 @@ namespace :log do ...@@ -33,4 +33,8 @@ namespace :log do
f = File.open(file, "w") f = File.open(file, "w")
f.close f.close
end end
def all_environments
Dir["config/environments/*.rb"].map { |fname| File.basename(fname, ".*") }
end
end end
require "isolation/abstract_unit"
module ApplicationTests
module RakeTests
class LogTest < ActiveSupport::TestCase
include ActiveSupport::Testing::Isolation
def setup
build_app
end
def teardown
teardown_app
end
test "log:clear clear all environments log files by default" do
Dir.chdir(app_path) do
File.open("config/environments/staging.rb", "w")
File.write("log/staging.log", "staging")
File.write("log/test.log", "test")
File.write("log/dummy.log", "dummy")
`rails log:clear`
assert_equal 0, File.size("log/test.log")
assert_equal 0, File.size("log/staging.log")
assert_equal 5, File.size("log/dummy.log")
end
end
end
end
end
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册