summaryrefslogtreecommitdiff
path: root/Rakefile
diff options
context:
space:
mode:
authormo <mo.khan@gmail.com>2019-05-25 15:27:51 -0600
committermo <mo.khan@gmail.com>2019-05-25 15:27:51 -0600
commit856c35dbc7080922bfff7c10a7a844a9d0a1cd65 (patch)
tree739b413bc2a29adc35229ef2fd9b30581601a206 /Rakefile
parent46f68298527e0c59b9f34003b687259477093fde (diff)
start assignment 2
Diffstat (limited to 'Rakefile')
-rw-r--r--Rakefile50
1 files changed, 20 insertions, 30 deletions
diff --git a/Rakefile b/Rakefile
index 4bdfa9b..bfbe395 100644
--- a/Rakefile
+++ b/Rakefile
@@ -1,39 +1,29 @@
-desc "Generate documentation"
-task :doc do
- sh 'mvn javadoc:javadoc'
- Dir["src/**/*.md"].each do |file|
- sh "mdpdf #{file}"
- end
- sh "mdpdf README.md"
-end
+require 'date'
+require 'rake/packagetask'
-desc "Run tests"
-task :test do
- sh 'mvn test'
+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
-desc "Package assignment"
-task package: [:test, :doc] do
- sh 'rm -fr tmp/assignment1/'
- sh 'mkdir -p tmp/assignment1/'
- sh 'cp -r README.* tmp/assignment1/'
- sh 'cp -r src/ tmp/assignment1'
- sh 'rm tmp/assignment1/App*.java'
- sh 'rm tmp/assignment1/README.*'
- sh 'cp tmp/assignment1/Q1/AddressBook.java tmp/assignment1/Q4/'
- sh 'cp tmp/assignment1/Q1/AddressBook.java tmp/assignment1/Q5/'
- sh 'cp tmp/assignment1/Q1/AddressBook.java tmp/assignment1/Q8/'
- sh 'cp -r doc/ tmp/assignment1/doc'
- sh 'cp -r target/site/apidocs/ tmp/assignment1/doc'
- sh "sed -i '' '/package Q.*;/d' tmp/assignment1/Q*/*.java"
- sh "sed -i '' '/import Q.*;/d' tmp/assignment1/Q*/*.java"
- sh 'cd tmp/ && zip -r assignment1.zip assignment1'
+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
-desc "Run the program"
+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 :run do
sh "mvn package"
- sh "java -cp target/assignment1*.jar ca.mokhan.comp268.App"
+ sh "java -cp target/assignment2*.jar ca.mokhan.comp268.App"
end
-task default: [:test]
+task default: [:publish]