Rakefile in increments-schedule-0.3.0 vs Rakefile in increments-schedule-0.4.0
- old
+ new
@@ -6,6 +6,39 @@
task.verbose = false
end
RuboCop::RakeTask.new
-task ci: [:spec, :rubocop]
+desc 'Generate README.md from README.md.erb'
+task :readme do
+ puts 'Generating README.md...'
+ File.write('README.md', generate_readme)
+ puts 'Done.'
+end
+
+namespace :readme do
+ task :validate do
+ puts 'Validating README.md...'
+
+ unless File.read('README.md') == generate_readme
+ fail <<-END.gsub(/^\s+\|/, '').chomp
+ |README.md and README.md.erb are out of sync!
+ |If you need to modify the content of README.md:
+ | * Edit README.md.erb.
+ | * Run `bundle exec rake readme`.
+ | * Commit both files.
+ END
+ end
+
+ puts 'Done.'
+ end
+end
+
+def generate_readme
+ require 'erb'
+ require 'increments/schedule'
+ readme = File.read('README.md.erb')
+ erb = ERB.new(readme, nil, '-')
+ erb.result(binding)
+end
+
+task ci: %w(spec rubocop readme:validate)