warning-shot 0.9.0 → 0.9.1
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.
- data/History.txt +8 -0
- data/Manifest.txt +1 -0
- data/lib/warning_shot/dep_checker.rb +15 -16
- data/lib/warning_shot/gem_handler.rb +61 -41
- data/lib/warning_shot/logger.rb +17 -0
- data/lib/warning_shot/version.rb +1 -1
- data/website/index.html +1 -1
- metadata +2 -1
data/History.txt
CHANGED
data/Manifest.txt
CHANGED
@@ -25,6 +25,7 @@ lib/warning_shot/dep_checker.rb
|
|
25
25
|
lib/warning_shot/template_generator.rb
|
26
26
|
lib/warning_shot/base_extensions.rb
|
27
27
|
lib/warning_shot/gem_handler.rb
|
28
|
+
lib/warning_shot/logger.rb
|
28
29
|
lib/warning_shot/config_parser.rb
|
29
30
|
lib/warning_shot/test_script.rb
|
30
31
|
lib/warning_shot/version.rb
|
@@ -178,31 +178,30 @@ module RippleNetworks
|
|
178
178
|
|
179
179
|
section("Checking gem dependencies")
|
180
180
|
#Initialize gem handler
|
181
|
-
@gh = GemHandler.new(self.configs["gems"]
|
181
|
+
@gh = GemHandler.new(self.configs["gems"])
|
182
182
|
|
183
|
-
|
184
|
-
|
185
|
-
|
186
|
-
record "#{gem_errors} gems not found: "
|
187
|
-
@gh.missing_gems.each do |gem,version|
|
188
|
-
record "\t#{gem} : #{version}"
|
189
|
-
end
|
183
|
+
#List already installed gems
|
184
|
+
@gh.found_gems.each do |gem,version|
|
185
|
+
record("#{gem} v. #{version} was found!",:info)
|
190
186
|
end
|
191
187
|
|
192
|
-
|
193
|
-
|
194
|
-
record
|
195
|
-
@gh.
|
196
|
-
|
197
|
-
|
188
|
+
#install missing gems
|
189
|
+
@gh.missing_gems.each do |gem,version|
|
190
|
+
record("#{gem} v. #{version} was NOT found!",(self.options[:gems]) ? :warning : :error)
|
191
|
+
@gh.install(gem,version) if self.options[:gems]
|
192
|
+
end
|
193
|
+
|
194
|
+
#List failed gems
|
195
|
+
@gh.failed_gems.each do |gem,reason|
|
196
|
+
record("#{gem} failed to install! Reason: #{reason}",:error)
|
198
197
|
end
|
199
198
|
|
200
199
|
@gh.installed_gems.each do |gem|
|
201
200
|
record("#{gem.name} v. #{gem.version} was installed!",:info)
|
202
201
|
end
|
203
202
|
|
204
|
-
|
205
|
-
|
203
|
+
gem_errors = @gh.missing_gems.size - @gh.installed_gems.size
|
204
|
+
record("#{gem_errors} gems had errors", :info) if gem_errors > 0
|
206
205
|
|
207
206
|
section("Loading Ruby test scripts")
|
208
207
|
count = load_ruby_scripts
|
@@ -11,21 +11,22 @@ module RippleNetworks
|
|
11
11
|
CONDITIONAL_RGX = /[^\d]*/.freeze
|
12
12
|
VERSION_RGX = /[\d\.]+/.freeze
|
13
13
|
|
14
|
-
attr_reader :gems_to_install, :missing_gems, :
|
14
|
+
attr_reader :gems_to_install, :missing_gems, :failed_gems, :installed_gems, :found_gems
|
15
15
|
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
@install_dir ||= Gem.dir
|
16
|
+
def initialize(gem_list,install_all=false,install_dir=Gem.dir)
|
17
|
+
@install_dir = install_dir
|
20
18
|
|
21
|
-
@missing_gems = {}
|
22
|
-
@
|
19
|
+
@missing_gems = {} # gems that will attempted to be installed
|
20
|
+
@failed_gems = {} # gems taht failed installation
|
21
|
+
@installed_gems = [] # gems that were installed by this process
|
22
|
+
@found_gems = {} # gems that were already installed
|
23
|
+
|
23
24
|
@gems_to_install = split(gem_list)
|
24
|
-
|
25
|
-
|
26
|
-
check_gems
|
25
|
+
#TODO Create a Gem<Strunct(name,status,version,details) and get rid of all these
|
26
|
+
#different gem variables
|
27
27
|
|
28
|
-
|
28
|
+
check_gems
|
29
|
+
install! if install_all
|
29
30
|
end
|
30
31
|
|
31
32
|
|
@@ -51,39 +52,54 @@ module RippleNetworks
|
|
51
52
|
check_gems
|
52
53
|
end
|
53
54
|
|
55
|
+
def install(gem_name,gem_version)
|
56
|
+
begin
|
57
|
+
#RubyGems DependencyInstaller installs all dependencies, and the gem, woot!
|
58
|
+
dep_inst = Gem::DependencyInstaller.new(gem_name,gem_version,{:install_dir => @install_dir})
|
59
|
+
rescue Exception => e
|
60
|
+
#Invalid Gem Name / Version
|
61
|
+
@failed_gems[gem_name] = "Bad gem name or version #{gem_name} #{gem_version}"
|
62
|
+
return false
|
63
|
+
end
|
64
|
+
|
65
|
+
#Determine what dependencies are missing
|
66
|
+
dep_inst.gather_dependencies
|
67
|
+
|
68
|
+
begin
|
69
|
+
#Install the dependencies and the gem
|
70
|
+
dep_inst.install
|
71
|
+
|
72
|
+
#Add list of installed gems to @installed_gems
|
73
|
+
@installed_gems.push(*dep_inst.installed_gems)
|
74
|
+
|
75
|
+
#Remove any isntalled gems from failed list
|
76
|
+
dep_inst.installed_gems.each do |gem|
|
77
|
+
@failed_gems.delete(gem.name) if @failed_gems.has_key?(gem.name)
|
78
|
+
end
|
79
|
+
|
80
|
+
#Update the local gem cache
|
81
|
+
Gem::cache.refresh!
|
82
|
+
|
83
|
+
#Update missing gems
|
84
|
+
check_gems
|
85
|
+
return true
|
86
|
+
rescue Errno::EACCES => e
|
87
|
+
@failed_gems[gem_name] = "Invalid permissions . . . try running w/ su"
|
88
|
+
rescue Gem::FilePermissionError => e
|
89
|
+
@failed_gems[gem_name] = "Invalid permissions . . . try running w/ su"
|
90
|
+
rescue Exception => e
|
91
|
+
@failed_gems[gem_name] = e.message
|
92
|
+
end
|
93
|
+
|
94
|
+
return false
|
95
|
+
end
|
54
96
|
|
55
|
-
def install!
|
56
|
-
@failed_installs = {}
|
57
|
-
|
58
|
-
#RubyGems DependencyInstaller installs all dependencies, and the gem, woot!
|
97
|
+
def install!
|
59
98
|
@missing_gems.each do |gem_name,gem_version|
|
60
|
-
|
61
|
-
dep_inst = Gem::DependencyInstaller.new(gem_name,gem_version,{:install_dir => @install_dir})
|
62
|
-
rescue Exception => e
|
63
|
-
#Invalid Gem Name / Version
|
64
|
-
@failed_installs[gem_name] = "Bad gem name or version #{gem_name} #{gem_version}"
|
65
|
-
end
|
66
|
-
|
67
|
-
#Determine what dependencies are missing
|
68
|
-
dep_inst.gather_dependencies
|
69
|
-
|
70
|
-
#Install missing dependencies
|
71
|
-
begin
|
72
|
-
dep_inst.install
|
73
|
-
@installed_gems.push(*dep_inst.installed_gems)
|
74
|
-
rescue Errno::EACCES => e
|
75
|
-
@failed_installs[gem_name] = "Invalid permissions . . . try running w/ sudo"
|
76
|
-
rescue Gem::FilePermissionError => e
|
77
|
-
@failed_installs[gem_name] = "Invalid permissions . . . try running w/ sudo"
|
78
|
-
rescue Exception => e
|
79
|
-
@failed_installs[gem_name] = e.message
|
80
|
-
end
|
99
|
+
install(gem_name,gem_version)
|
81
100
|
end
|
82
101
|
|
83
|
-
|
84
|
-
check_gems
|
85
|
-
|
86
|
-
return @failed_installs.length == 0
|
102
|
+
return @failed_gems.length == 0
|
87
103
|
end
|
88
104
|
|
89
105
|
|
@@ -167,7 +183,11 @@ module RippleNetworks
|
|
167
183
|
|
168
184
|
@gems_to_install.each do |gem_name,gem_version|
|
169
185
|
gem_info = installed?(gem_name,gem_version)
|
170
|
-
|
186
|
+
if gem_info[:installed]
|
187
|
+
@found_gems[gem_name] = gem_version
|
188
|
+
else
|
189
|
+
@missing_gems[gem_name] = gem_version
|
190
|
+
end
|
171
191
|
end
|
172
192
|
end
|
173
193
|
|
@@ -0,0 +1,17 @@
|
|
1
|
+
|
2
|
+
module RippleNetworks
|
3
|
+
module WarningShot
|
4
|
+
class Logger
|
5
|
+
|
6
|
+
def initialize(path,verbose=false);end;
|
7
|
+
|
8
|
+
def info();end;
|
9
|
+
def debug();end;
|
10
|
+
def error();end;
|
11
|
+
def warning();end;
|
12
|
+
def fatal();end;
|
13
|
+
|
14
|
+
def close();end;
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
data/lib/warning_shot/version.rb
CHANGED
data/website/index.html
CHANGED
@@ -33,7 +33,7 @@
|
|
33
33
|
<h1>warning_shot</h1>
|
34
34
|
<div id="version" class="clickable" onclick='document.location = "http://rubyforge.org/projects/warning_shot"; return false'>
|
35
35
|
<p>Get Version</p>
|
36
|
-
<a href="http://rubyforge.org/projects/warning_shot" class="numbers">0.
|
36
|
+
<a href="http://rubyforge.org/projects/warning_shot" class="numbers">0.9.1</a>
|
37
37
|
</div>
|
38
38
|
<h1>→ ‘warning_shot’</h1>
|
39
39
|
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: warning-shot
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.9.
|
4
|
+
version: 0.9.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Cory O'Daniel
|
@@ -53,6 +53,7 @@ files:
|
|
53
53
|
- lib/warning_shot/template_generator.rb
|
54
54
|
- lib/warning_shot/base_extensions.rb
|
55
55
|
- lib/warning_shot/gem_handler.rb
|
56
|
+
- lib/warning_shot/logger.rb
|
56
57
|
- lib/warning_shot/config_parser.rb
|
57
58
|
- lib/warning_shot/test_script.rb
|
58
59
|
- lib/warning_shot/version.rb
|