require 'date' require 'rake/packagetask' Rake::PackageTask.new("comp-268-2", DateTime.now.strftime("%y%m").to_i) do |package| package.need_tar_gz = true package.package_files.add([ 'README.pdf', 'src/**/*', 'tmp/.keep', ]) end def run_cli(selection = nil) sh "java -cp target/assignment2*.jar ca.mokhan.comp268.App #{selection}" end task(:pdf) do Dir["src/**/*.md"].each do |file| sh "node ./node_modules/.bin/mdpdf #{file}" end sh 'node ./node_modules/.bin/mdpdf README.md' end task(:clean) { sh 'rm -fr pkg target' } task(:test) { sh 'mvn test' } task(doc: [:pdf]) { sh 'mvn javadoc:javadoc' } task publish: [:clean, :test, :doc, :repackage] task(:build) { sh "mvn package" } task(run: :build) { run_cli } 1.upto(10) { |n| task("run#{n}": :build) { run_cli(n) } } task default: [:publish]