From 61f135944d2c5d05488d7180f3b012b01b79407b Mon Sep 17 00:00:00 2001 From: Ned Batchelder Date: Fri, 17 May 2013 14:56:44 -0400 Subject: [PATCH 1/2] Print a message if the requirements files haven't changed. --- rakefiles/helpers.rb | 4 +++- rakefiles/prereqs.rake | 7 ++++--- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/rakefiles/helpers.rb b/rakefiles/helpers.rb index be5929d805..4c4d400b8a 100644 --- a/rakefiles/helpers.rb +++ b/rakefiles/helpers.rb @@ -14,7 +14,7 @@ def report_dir_path(dir) return File.join(REPORT_DIR, dir.to_s) end -def when_changed(*files) +def when_changed(unchanged_message, *files) Rake::Task[PREREQS_MD5_DIR].invoke cache_file = File.join(PREREQS_MD5_DIR, files.join('-').gsub(/\W+/, '-')) + '.md5' digest = Digest::MD5.new() @@ -24,6 +24,8 @@ def when_changed(*files) if !File.exists?(cache_file) or digest.hexdigest != File.read(cache_file) yield File.write(cache_file, digest.hexdigest) + elsif !unchanged_message.empty? + puts unchanged_message end end diff --git a/rakefiles/prereqs.rake b/rakefiles/prereqs.rake index f463d8cf54..2dcd793ff7 100644 --- a/rakefiles/prereqs.rake +++ b/rakefiles/prereqs.rake @@ -12,21 +12,22 @@ task :install_prereqs => [:install_node_prereqs, :install_ruby_prereqs, :install desc "Install all node prerequisites for the lms and cms" task :install_node_prereqs => "ws:migrate" do - when_changed('package.json') do + when_changed('', 'package.json') do sh('npm install') end unless ENV['NO_PREREQ_INSTALL'] end desc "Install all ruby prerequisites for the lms and cms" task :install_ruby_prereqs => "ws:migrate" do - when_changed('Gemfile') do + when_changed('', 'Gemfile') do sh('bundle install') end unless ENV['NO_PREREQ_INSTALL'] end desc "Install all python prerequisites for the lms and cms" task :install_python_prereqs => "ws:migrate" do - when_changed('requirements/**/*') do + unchanged = 'Requirements files unchanged, nothing to install' + when_changed(unchanged, 'requirements/**/*') do ENV['PIP_DOWNLOAD_CACHE'] ||= '.pip_download_cache' sh('pip install --exists-action w -r requirements/edx/base.txt') sh('pip install --exists-action w -r requirements/edx/post.txt') From 5555d41d807fff17f59896894d3b481ce47bd826 Mon Sep 17 00:00:00 2001 From: Ned Batchelder Date: Fri, 17 May 2013 16:04:24 -0400 Subject: [PATCH 2/2] OK, all the phases should have messages. --- rakefiles/prereqs.rake | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/rakefiles/prereqs.rake b/rakefiles/prereqs.rake index 2dcd793ff7..ef4958e9d7 100644 --- a/rakefiles/prereqs.rake +++ b/rakefiles/prereqs.rake @@ -12,21 +12,23 @@ task :install_prereqs => [:install_node_prereqs, :install_ruby_prereqs, :install desc "Install all node prerequisites for the lms and cms" task :install_node_prereqs => "ws:migrate" do - when_changed('', 'package.json') do + unchanged = 'Node requirements unchanged, nothing to install' + when_changed(unchanged, 'package.json') do sh('npm install') end unless ENV['NO_PREREQ_INSTALL'] end desc "Install all ruby prerequisites for the lms and cms" task :install_ruby_prereqs => "ws:migrate" do - when_changed('', 'Gemfile') do + unchanged = 'Ruby requirements unchanged, nothing to install' + when_changed(unchanged, 'Gemfile') do sh('bundle install') end unless ENV['NO_PREREQ_INSTALL'] end desc "Install all python prerequisites for the lms and cms" task :install_python_prereqs => "ws:migrate" do - unchanged = 'Requirements files unchanged, nothing to install' + unchanged = 'Python requirements unchanged, nothing to install' when_changed(unchanged, 'requirements/**/*') do ENV['PIP_DOWNLOAD_CACHE'] ||= '.pip_download_cache' sh('pip install --exists-action w -r requirements/edx/base.txt')