public
Description: Usefull scripts and Rake tasks
Clone URL: git://github.com/hipertracker/merb-scripts.git
Search Repo:
Making tasks compatible with Sake. See README.
JAZ (author)
Tue Mar 25 01:00:16 -0700 2008
commit  01fe913e6f436ed53f880010131d6ee65cf1bf91
tree    3adae7e37ca8e2cee46b74668c531696275a4556
parent  4037a6c31772651bf268bee09bd0c263247ab69f
0
...
1
2
3
4
5
6
7
...
9
10
11
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
...
1
2
 
 
3
4
5
...
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
0
@@ -1,7 +1,5 @@
0
 This project contains different usefull scripts and tasks for Merb framework.
0
 
0
-For the moment some taks are working only in POSIX systems.
0
-
0
 rake -T
0
 rake merb:install # Install all Merb gems and subgems
0
 rake merb:jinstall # Install all Merb gems and subgems for JRuby
0
@@ -9,4 +7,24 @@
0
 rake merb:pull # Pull merb-core, merb-more, merb-plugins
0
 rake merb:repackage # Repackage merb-<core|more|plugins> (with all subgems)
0
 rake merb:uninstall # Uninstall all Ruby merb* gems
0
+
0
+You can also use Sake (http://errtheblog.com/posts/60-sake-bomb).
0
+
0
+sudo gem install sake
0
+
0
+Check list of tasks:
0
+
0
+sake -T http://blog.zabiello.com/merb-scripts.sake
0
+
0
+Import remote tasks local Sake repository (~/.sake):
0
+
0
+sake -i http://blog.zabiello.com/merb-scripts.sake
0
+
0
+Show me code for specific task:
0
+
0
+sake -e merb:pull
0
+
0
+Pull edge Merb gems, create gem packages and install them for JRuby:
0
+
0
+sake merb:pull sake merb:repackage sake:jinstall
...
1
 
2
3
4
 
 
5
6
7
8
 
 
9
10
11
 
 
 
 
 
12
13
 
 
14
15
16
17
18
 
19
20
21
22
23
24
25
 
 
26
27
28
29
30
 
31
32
33
34
35
36
 
 
37
38
39
40
41
 
42
43
44
45
46
 
47
48
49
50
51
52
53
54
55
56
...
55
56
57
58
 
 
59
60
 
61
62
63
 
64
65
66
 
67
68
69
70
71
72
 
73
74
 
75
76
77
 
78
79
80
 
81
82
83
...
 
1
2
 
 
3
4
5
 
 
 
6
7
8
 
 
9
10
11
12
13
14
 
15
16
17
18
19
20
 
21
22
23
24
25
26
27
 
28
29
30
31
32
33
 
34
35
36
37
38
39
 
40
41
42
43
44
45
 
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
...
61
62
63
 
64
65
66
 
67
68
69
 
70
71
72
 
73
74
75
76
77
78
 
79
80
 
81
82
83
 
84
85
86
 
87
88
89
90
0
@@ -1,49 +1,55 @@
0
-git_fork = 'wycats' # original
0
+namespace :merb do
0
 
0
-windows = (PLATFORM =~ /win32|cygwin/) rescue nil
0
-SUDO = windows ? "" : "sudo "
0
+ task :init do
0
+ @git_fork = 'wycats' # original
0
 
0
-def filename_for(name)
0
- Dir.glob("#{name}/pkg/#{File.basename(name)}*.gem")[0]
0
-end
0
+ @windows = (PLATFORM =~ /win32|cygwin/) rescue nil
0
+ @sudo = @windows ? "" : "sudo "
0
 
0
-namespace :merb do
0
-
0
+ def filename_for(name)
0
+ Dir.glob("#{name}/pkg/#{File.basename(name)}*.gem")[0]
0
+ end
0
+ end
0
+
0
   desc "Pull merb-core, merb-more, merb-plugins"
0
- task :pull do
0
+ task :pull do
0
+ Rake::Task['merb:init'].invoke
0
     %w(merb-core merb-more merb-plugins).each do |dir|
0
       if File.exists? dir
0
         sh "cd #{dir}; git pull"
0
       else
0
- sh "git clone git://github.com/#{git_fork}/#{dir}.git"
0
+ sh "git clone git://github.com/#{@git_fork}/#{dir}.git"
0
       end
0
     end
0
   end
0
     
0
   desc "Uninstall all Ruby merb* gems"
0
   task :uninstall do
0
- if windows
0
+ Rake::Task['merb:init'].invoke
0
+ if @windows
0
       `gem.bat list`.split("\n").select{|x| x =~ /^merb/}.map{|x| x.split(' ')[0]}.each do |gem_name|
0
         system("gem.bat uninstall -a -i -x #{gem_name}")
0
       end
0
     else
0
- sh "#{SUDO} gem list merb | grep merb | awk '{ print $1}' | xargs #{SUDO} gem uninstall"
0
+ sh "#{@sudo} gem list merb | grep merb | awk '{ print $1}' | xargs #{@sudo} gem uninstall"
0
     end
0
   end
0
     
0
   desc "Uninstall all JRuby merb* gems"
0
   task :juninstall do
0
- if windows
0
+ Rake::Task['merb:init'].invoke
0
+ if @windows
0
       `gem.bat list`.split("\n").select{|x| x =~ /^merb/}.map{|x| x.split(' ')[0]}.each do |gem_name|
0
         system("jruby -S gem.bat uninstall -a -i -x #{gem_name}")
0
       end
0
     else
0
- sh "#{SUDO} jruby -S gem list merb | grep merb | awk '{ print $1}' | xargs #{SUDO} jruby -S gem uninstall"
0
+ sh "#{@sudo} jruby -S gem list merb | grep merb | awk '{ print $1}' | xargs #{@sudo} jruby -S gem uninstall"
0
     end
0
   end
0
     
0
   desc "Repackage merb-<core|more|plugins> (with all subgems)"
0
   task :repackage do
0
+ Rake::Task['merb:init'].invoke
0
     sh "cd merb-core; rake repackage"
0
     Dir.glob("merb-more/merb-*").each do |dir|
0
       sh "cd #{dir}; rake repackage"
0
0
0
0
0
0
0
0
@@ -55,29 +61,30 @@
0
     
0
   desc "Install all Merb gems and subgems"
0
   task :install do
0
- sh "#{SUDO} gem install -l -f #{Dir.glob("merb-core/pkg/merb*.gem")[0]}"
0
+ Rake::Task['merb:init'].invoke
0
+ sh "#{@sudo} gem install -l -f #{Dir.glob("merb-core/pkg/merb*.gem")[0]}"
0
     Dir.glob("merb-more/pkg/merb*.gem").each do |gem_name|
0
- sh "#{SUDO} gem install -l -f #{gem_name}"
0
+ sh "#{@sudo} gem install -l -f #{gem_name}"
0
     end
0
     Dir.glob("merb-more/merb-*").each do |dir|
0
- sh "#{SUDO} gem install -l -f #{filename_for(dir)}"
0
+ sh "#{@sudo} gem install -l -f #{filename_for(dir)}"
0
     end
0
     Dir.glob("merb-plugins/merb_*").each do |dir|
0
- sh "#{SUDO} gem install -l -f #{filename_for(dir)}"
0
+ sh "#{@sudo} gem install -l -f #{filename_for(dir)}"
0
     end
0
   end
0
   
0
   desc "Install all Merb gems and subgems for JRuby"
0
   task :jinstall do
0
- sh "#{SUDO} gem install -l -f #{Dir.glob("merb-core/pkg/merb*.gem")[0]}"
0
+ sh "#{@sudo} gem install -l -f #{Dir.glob("merb-core/pkg/merb*.gem")[0]}"
0
     Dir.glob("merb-more/pkg/merb*.gem").each do |gem_name|
0
- sh "#{SUDO} jruby -S gem install -l -f #{gem_name}"
0
+ sh "#{@sudo} jruby -S gem install -l -f #{gem_name}"
0
     end
0
     Dir.glob("merb-more/merb-*").each do |dir|
0
- sh "#{SUDO} jruby -S gem install -l -f #{filename_for(dir)}"
0
+ sh "#{@sudo} jruby -S gem install -l -f #{filename_for(dir)}"
0
     end
0
     Dir.glob("merb-plugins/merb_*").each do |dir|
0
- sh "#{SUDO} jruby -S gem install -l -f #{filename_for(dir)}"
0
+ sh "#{@sudo} jruby -S gem install -l -f #{filename_for(dir)}"
0
     end
0
   end
0
   

Comments

    No one has commented yet.