gap 0.0.7 → 0.0.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (4) hide show
  1. data/lib/gap/patch.rb +2 -2
  2. data/lib/gap/tasks.rb +64 -26
  3. data/lib/gap.rb +1 -1
  4. metadata +1 -1
data/lib/gap/patch.rb CHANGED
@@ -54,14 +54,14 @@ module Capistrano
54
54
  value["task"].each do |app, commands|
55
55
  task(app) do
56
56
  commands.each { |name, command|
57
- task(name) { exec(command) }}
57
+ task(name) { system(command) }}
58
58
  end
59
59
  end
60
60
  end
61
61
  else
62
62
  task(env) do
63
- define_bulk_tasks value
64
63
  define_config_tasks value
64
+ define_bulk_tasks value
65
65
  end
66
66
  end
67
67
 
data/lib/gap/tasks.rb CHANGED
@@ -2,19 +2,20 @@ module Gap
2
2
  module Tasks
3
3
  def define_bulk_tasks value
4
4
  #gap dev start,restart,god
5
+ %w(role set task).each {|key| value.delete(key)}
5
6
  %w(start reload).each do |com|
6
7
  task(com) do
7
- value["task"].each do |app, commands|
8
+ value.each do |app, commands|
8
9
  send(app)
9
- send(com) if commands[com]
10
+ send(com) if commands["task"][com]
10
11
  end
11
12
  end
12
13
  end
13
14
 
14
15
  task(:stop) do
15
- value["task"].reverse.each do |app, commands|
16
+ value.reverse.each do |app, commands|
16
17
  send(app)
17
- send(commands["stop"])
18
+ send(commands["task"]["stop"])
18
19
  end
19
20
  end
20
21
 
@@ -24,7 +25,7 @@ module Gap
24
25
  end
25
26
 
26
27
  task(:god) do
27
- value["task"].each do |app,commands|
28
+ value.each do |app,commands|
28
29
  send(app)
29
30
  send(:god)
30
31
  end
@@ -32,34 +33,71 @@ module Gap
32
33
  end
33
34
 
34
35
  def define_config_tasks value
35
- value["role"].each { |attr, val| role attr.to_sym, val }
36
- #value["set"].each { |attr, val| set attr, val }
37
- value["task"].each do |app, commands|
36
+ value.each do |attr,val|
38
37
 
39
- if value["god"]
40
- task(app) do
41
- task(:god) do
42
- god_config_path = File.join( deploy_to, "config/god_#{application}_#{app}.rb")
43
- god_config = Gap::GodErb.new("./gap/tmpl.erb",application, app, commands)
44
- upload( god_config.render, god_config_path, :via => :scp)
45
- sudo "god load #{god_config_path}"
46
- end
38
+ case attr
39
+ when "role"
40
+ val.each { |attr, val| role attr.to_sym, val } if val
41
+ when "set"
42
+ val.each { |attr, val| set attr, val } if val
43
+ else
44
+
45
+
46
+ val.each do |a, v|
47
+
48
+ case a
49
+ when "role"
50
+ v.each { |attr, val| role attr.to_sym, val } if v
51
+ when "set"
52
+ v.each { |attr, val| set attr, val } if v
53
+ when "task"
54
+ if god
55
+ task(attr) do
56
+ task(:god) do
57
+ god_config_path = File.join( deploy_to, "config/god_#{application}_#{attr}.rb")
58
+ tmpl_path = File.expand_path 'tmpl.erb', File.dirname(__FILE__)
59
+ god_config = Gap::GodErb.new(tmpl_path,application, attr, v)
60
+ upload( god_config.render, god_config_path, :via => :scp)
61
+ use_god_rvm do
62
+ sudo "god load #{god_config_path}"
63
+ end
64
+ end
65
+
66
+ v.each do |name, command|
67
+ if ["start","stop","restart"].include?(name)
68
+ task(name) do
69
+ use_god_rvm do
70
+ sudo "god #{name} #{attr}_#{application}"
71
+ end
72
+ end
73
+ else
74
+ task(name) do
75
+ sudo_run command
76
+ end
77
+ end
78
+ end
79
+
80
+ end
81
+ else
47
82
 
48
- commands.each do |name, command|
49
- task(name) do
50
- sudo "god #{name} #{app}_#{application}"
83
+ task(attr) do
84
+ v.each do |name, command|
85
+ task(name) { sudo_run command }
86
+ end
87
+ end
51
88
  end
89
+ else
52
90
  end
53
91
  end
54
- else
55
-
56
- task(app) do
57
- commands.each { |name, command|
58
- task(name) { sudo_run command }}
59
- end
60
-
61
92
  end
62
93
  end
63
94
  end
95
+
96
+ def use_god_rvm
97
+ ruby_string_tmp = rvm_ruby_string
98
+ set :rvm_ruby_string, rvm_god_string
99
+ yield
100
+ set :rvm_ruby_string, ruby_string_tmp
101
+ end
64
102
  end
65
103
  end
data/lib/gap.rb CHANGED
@@ -2,5 +2,5 @@ $:.unshift(File.dirname(__FILE__)) unless
2
2
  $:.include?(File.dirname(__FILE__)) || $:.include?(File.expand_path(File.dirname(__FILE__)))
3
3
 
4
4
  module Gap
5
- VERSION = '0.0.7'
5
+ VERSION = '0.0.8'
6
6
  end
metadata CHANGED
@@ -2,7 +2,7 @@
2
2
  name: gap
3
3
  version: !ruby/object:Gem::Version
4
4
  prerelease:
5
- version: 0.0.7
5
+ version: 0.0.8
6
6
  platform: ruby
7
7
  authors:
8
8
  - Takashi Yaguchi