jmettraux / ruote

a ruby workflow engine

This URL has Read+Write access

ruote / Rakefile
cb19b3f7 » jmettraux 2008-04-09 first git commit 1 require 'rubygems'
2
3 require 'fileutils'
4
5 require 'rake'
6 require 'rake/clean'
7 require 'rake/packagetask'
8 require 'rubygems/package_task'
5348d684 » jmettraux 2009-06-14 slowly upgrading rake tests 9 #require 'rake/gempackagetask'
10 require 'rake/testtask'
cb19b3f7 » jmettraux 2008-04-09 first git commit 11
12 #require 'rake/rdoctask'
386cda00 » jmettraux 2009-02-28 Switched to Mislav's Hanna ... 13 require 'hanna/rdoctask'
14
15
cb19b3f7 » jmettraux 2008-04-09 first git commit 16 gemspec = File.read('ruote.gemspec')
c1b45780 » jmettraux 2009-03-28 moved gemspec out of Rakefile 17 eval "gemspec = #{gemspec}"
18
cb19b3f7 » jmettraux 2008-04-09 first git commit 19
20 CLEAN.include('pkg', 'rdoc', 'work', 'logs')
c8264615 » jmettraux 2009-03-15 enhanced tests about undo/r... 21
22 task :default => [ :clean, :repackage ]
cb19b3f7 » jmettraux 2008-04-09 first git commit 23
24 #
25 # Create a task for generating RDOC
26 #
27 Rake::RDocTask.new do |rd|
28
29 rd.main = 'README.txt'
c750fed7 » jmettraux 2008-10-28 {ruby|rogue}_parser require... 30 rd.rdoc_dir = 'rdoc'
31 rd.rdoc_files.include('README.txt', 'RELEASE.txt', 'lib/**/*.rb')
32 rd.title = 'ruote (OpenWFEru) rdoc'
882c90ba » jmettraux 2009-04-17 one-liner for ensure_for_fi... 33 rd.options << '-N' # line numbers
cf56243e » jmettraux 2008-08-09 indent=2 for the Rakefile a... 34 rd.options << '-S' # inline source
35
36 #rd.template = "../rubytools/allison/allison.rb" \
37 # if File.exist?("../rubytools/allison")
38 #
39 # just keeping it as a reference for rdoc templating
40 # Allison is nice but classes names plus namespaces are too long
41 # for it :(
42 end
cb19b3f7 » jmettraux 2008-04-09 first git commit 43
44 task :rrdoc => :rdoc do
91f23b03 » jmettraux 2009-03-11 todo #24470 : re-wired curs... 45 FileUtils.cp('doc/rdoc-style.css', 'rdoc/')
46 end
47
48 task :upload_rdoc => :rrdoc do
49 sh %{
2ffa7e4f » jmettraux 2009-02-05 upload_rdoc is back 50 rsync -azv -e ssh \
51 rdoc \
52 jmettraux@rubyforge.org:/var/www/gforge-projects/openwferu/
53 }
54 end
55
56 #
cb19b3f7 » jmettraux 2008-04-09 first git commit 57 # Create the various ruote[-.*] gems
e06f932f » jmettraux 2009-01-08 cosmetic Comment 58 #
cb19b3f7 » jmettraux 2008-04-09 first git commit 59 Gem::PackageTask.new(gemspec) do |pkg|
5348d684 » jmettraux 2009-06-14 slowly upgrading rake tests 60 #pkg.need_tar = true
cf56243e » jmettraux 2008-08-09 indent=2 for the Rakefile a... 61 end
cb19b3f7 » jmettraux 2008-04-09 first git commit 62
63
c1b45780 » jmettraux 2009-03-28 moved gemspec out of Rakefile 64 #
65 # changing the version
66
67 task :change_version do
68
69 version = ARGV.pop
70 `sedip "s/VERSION = '.*'/VERSION = '#{version}'/" lib/openwfe/version.rb`
71 `sedip "s/s.version = '.*'/s.version = '#{version}'/" ruote.gemspec`
72 exit 0 # prevent rake from triggering other tasks
73 end
74
75
76 #
cb19b3f7 » jmettraux 2008-04-09 first git commit 77 # Packaging the source
78 #
79 Rake::PackageTask.new('ruote', gemspec.version) do |pkg|
c1b45780 » jmettraux 2009-03-28 moved gemspec out of Rakefile 80
cb19b3f7 » jmettraux 2008-04-09 first git commit 81 pkg.need_zip = true
cf56243e » jmettraux 2008-08-09 indent=2 for the Rakefile a... 82 pkg.package_files = FileList[
83 'Rakefile',
c750fed7 » jmettraux 2008-10-28 {ruby|rogue}_parser require... 84 '*.txt',
85 'bin/**/*',
86 'doc/**/*',
87 'examples/**/*',
88 'lib/**/*',
89 'test/**/*'
90 ].to_a
cf56243e » jmettraux 2008-08-09 indent=2 for the Rakefile a... 91 pkg.package_files.delete('rc.txt')
c750fed7 » jmettraux 2008-10-28 {ruby|rogue}_parser require... 92 pkg.package_files.delete('MISC.txt')
93 class << pkg
cf56243e » jmettraux 2008-08-09 indent=2 for the Rakefile a... 94 def package_name
95 "#{@name}-#{@version}-src"
96 end
cb19b3f7 » jmettraux 2008-04-09 first git commit 97 end
cf56243e » jmettraux 2008-08-09 indent=2 for the Rakefile a... 98 end
cb19b3f7 » jmettraux 2008-04-09 first git commit 99
100
101 #
102 # TEST TASKS
103
104 task :clean_work_dir do
105 FileUtils.rm_rf('work') if File.exist?('work')
c750fed7 » jmettraux 2008-10-28 {ruby|rogue}_parser require... 106 FileUtils.rm_rf('logs') if File.exist?('logs')
107 FileUtils.rm_rf('target') if File.exist?('target')
108 end
cb19b3f7 » jmettraux 2008-04-09 first git commit 109
110 #
111 # Create a task for handling "quick unit tests"
112 #
113 # is triggered by "rake qtest"
114 # whereas "rake test" will trigger all the tests.
115 #
116 Rake::TestTask.new(:test => :clean_work_dir) do |t|
e8253079 » jmettraux 2009-01-23 moved the first two unit tests 117 t.libs << 'test'
c750fed7 » jmettraux 2008-10-28 {ruby|rogue}_parser require... 118 t.test_files = FileList['test/test.rb']
e8253079 » jmettraux 2009-01-23 moved the first two unit tests 119 t.verbose = true
cf56243e » jmettraux 2008-08-09 indent=2 for the Rakefile a... 120 end
cb19b3f7 » jmettraux 2008-04-09 first git commit 121
122