runcoderun-gem_sync 1.1.6 → 1.2.0
Sign up to get free protection for your applications and to get access to all the features.
- data/VERSION +1 -1
- data/examples/rcr/gem_parser_example.rb +8 -0
- data/examples/rcr/gem_sync_example.rb +9 -1
- data/examples/rcr/option_parsing_example.rb +12 -0
- data/gem_sync.gemspec +2 -2
- data/lib/rcr/gem_sync.rb +16 -10
- data/lib/rcr/option_parsing.rb +4 -0
- data/lib/runcoderun_gems.txt +16 -23
- metadata +3 -4
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
1.
|
1
|
+
1.2.0
|
@@ -38,6 +38,14 @@ ZenTest (3.10.0, 3.9.2, 3.9.1, 3.8.0, 3.6.0)]
|
|
38
38
|
gems = Rcr::GemParser.convert_gem_list(list)
|
39
39
|
gems.first.version.should == '<= 0.9.8'
|
40
40
|
end
|
41
|
+
|
42
|
+
it "parses gem list" do
|
43
|
+
list = %[wirble (0.1.2) +ruby_186 # here is a gem]
|
44
|
+
gem = Rcr::GemParser.convert_gem_list(list).first
|
45
|
+
gem.name.should == "wirble"
|
46
|
+
gem.version.should == "0.1.2"
|
47
|
+
gem.platforms.should == ["ruby_186"]
|
48
|
+
end
|
41
49
|
end
|
42
50
|
|
43
51
|
describe "parsing platforms" do
|
@@ -5,6 +5,14 @@ describe Rcr::GemSync do
|
|
5
5
|
def fake_gem(name, version)
|
6
6
|
OpenStruct.new(:name => name, :version => version)
|
7
7
|
end
|
8
|
+
|
9
|
+
describe "init" do
|
10
|
+
before { Rcr::GemSync.any_instance.stubs(:system) }
|
11
|
+
it "inits with options from opt parser" do
|
12
|
+
gem_sync = Rcr::GemSync.new(["--verbose"])
|
13
|
+
gem_sync.should be_verbose
|
14
|
+
end
|
15
|
+
end
|
8
16
|
|
9
17
|
describe "sync" do
|
10
18
|
it "should read gem list, install each gem, ..." do
|
@@ -88,7 +96,7 @@ EOL
|
|
88
96
|
it "should attempt to install if there are dashes in the name" do
|
89
97
|
gem = fake_gem("user-gem", '1.0.0')
|
90
98
|
gem_sync = Rcr::GemSync.new
|
91
|
-
gem_sync.expects(:run).
|
99
|
+
gem_sync.expects(:run).with(includes("user-gem")).once
|
92
100
|
gem_sync.install_from_github(gem)
|
93
101
|
end
|
94
102
|
end
|
@@ -19,4 +19,16 @@ describe Rcr::OptionParsing do
|
|
19
19
|
end
|
20
20
|
end
|
21
21
|
|
22
|
+
describe "verbose" do
|
23
|
+
it "can be extra verbose" do
|
24
|
+
opts = Rcr::OptionParsing.parse(["--verbose-gem"])
|
25
|
+
opts[:verbose_gem].should be_true
|
26
|
+
end
|
27
|
+
|
28
|
+
it "can be verbose" do
|
29
|
+
opts = Rcr::OptionParsing.parse(["-v"])
|
30
|
+
opts[:verbose].should be_true
|
31
|
+
end
|
32
|
+
end
|
33
|
+
|
22
34
|
end
|
data/gem_sync.gemspec
CHANGED
@@ -5,11 +5,11 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = %q{gem_sync}
|
8
|
-
s.version = "1.
|
8
|
+
s.version = "1.2.0"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = ["Rob Sanheim"]
|
12
|
-
s.date = %q{2009-09-
|
12
|
+
s.date = %q{2009-09-09}
|
13
13
|
s.default_executable = %q{gem_sync}
|
14
14
|
s.description = %q{Tool to install rubygems for RunCodeRun, though it could be used to bootstrap your own machines as well.}
|
15
15
|
s.email = %q{rob@runcoderun.com}
|
data/lib/rcr/gem_sync.rb
CHANGED
@@ -9,12 +9,12 @@ module Rcr
|
|
9
9
|
RCR_GITHUB_GEM_LIST = "http://github.com/runcoderun/gem_sync/raw/master/lib/runcoderun_gems.txt"
|
10
10
|
RCR_GITHUB_GEM_BLACKLIST = "http://github.com/runcoderun/gem_sync/raw/master/lib/gem_blacklist.txt"
|
11
11
|
|
12
|
+
attr_reader :platform, :gem_list
|
13
|
+
|
12
14
|
def initialize(args = ["--github"])
|
13
|
-
options = Rcr::OptionParsing.parse(args)
|
14
|
-
@platform = options[:platform]
|
15
|
-
@
|
16
|
-
@dry_run = options[:dry_run]
|
17
|
-
@gem_list = options[:gem_list]
|
15
|
+
@options = Rcr::OptionParsing.parse(args)
|
16
|
+
@platform = @options[:platform]
|
17
|
+
@gem_list = @options[:gem_list]
|
18
18
|
system("gem env") if verbose?
|
19
19
|
end
|
20
20
|
|
@@ -25,11 +25,15 @@ module Rcr
|
|
25
25
|
end
|
26
26
|
|
27
27
|
def verbose?
|
28
|
-
@verbose
|
28
|
+
@options[:verbose]
|
29
|
+
end
|
30
|
+
|
31
|
+
def verbose_gem?
|
32
|
+
@options[:verbose_gem]
|
29
33
|
end
|
30
34
|
|
31
35
|
def dry_run?
|
32
|
-
@dry_run
|
36
|
+
@options[:dry_run]
|
33
37
|
end
|
34
38
|
|
35
39
|
def read_gem_list
|
@@ -37,15 +41,15 @@ module Rcr
|
|
37
41
|
end
|
38
42
|
|
39
43
|
def platform_matches?(gem)
|
40
|
-
if gem.platforms &&
|
41
|
-
gem.platforms.include?(
|
44
|
+
if gem.platforms && platform
|
45
|
+
gem.platforms.include?(platform)
|
42
46
|
else
|
43
47
|
true
|
44
48
|
end
|
45
49
|
end
|
46
50
|
|
47
51
|
def parse_gems
|
48
|
-
@gems = Rcr::GemParser.convert_gem_list(
|
52
|
+
@gems = Rcr::GemParser.convert_gem_list(gem_list)
|
49
53
|
end
|
50
54
|
|
51
55
|
def install_gems
|
@@ -78,6 +82,7 @@ module Rcr
|
|
78
82
|
def install_from_rubyforge(rubygem)
|
79
83
|
cmd = "gem install #{rubygem.name} --no-ri --no-rdoc"
|
80
84
|
cmd << " --version #{rubygem.version}" if rubygem.version
|
85
|
+
cmd << " --verbose" if verbose_gem?
|
81
86
|
run(cmd)
|
82
87
|
end
|
83
88
|
|
@@ -85,6 +90,7 @@ module Rcr
|
|
85
90
|
return unless rubygem.name.include?("-")
|
86
91
|
cmd = "gem install #{rubygem.name} --no-ri --no-rdoc"
|
87
92
|
cmd << " --version #{rubygem.version}" if rubygem.version
|
93
|
+
cmd << " --verbose" if verbose_gem?
|
88
94
|
cmd << " --source #{GITHUB}"
|
89
95
|
run(cmd)
|
90
96
|
end
|
data/lib/rcr/option_parsing.rb
CHANGED
@@ -22,6 +22,10 @@ module Rcr
|
|
22
22
|
options[:verbose] = o
|
23
23
|
end
|
24
24
|
|
25
|
+
opts.on('--verbose-gem', "Be verbose when calling gem commands") do |o|
|
26
|
+
options[:verbose_gem] = o
|
27
|
+
end
|
28
|
+
|
25
29
|
opts.on('-n', '--dry-run', 'Do a dry run without executing actions') do |o|
|
26
30
|
options[:dry_run] = o
|
27
31
|
end
|
data/lib/runcoderun_gems.txt
CHANGED
@@ -23,10 +23,12 @@ aws-s3
|
|
23
23
|
bacon
|
24
24
|
bcrypt-ruby (2.0.5, 2.0.3) +ruby_186
|
25
25
|
beanstalk-client
|
26
|
+
bmabey-fakefs
|
27
|
+
BRIMIL01-meetup_api
|
28
|
+
binarylogic-authlogic
|
26
29
|
bj
|
27
30
|
bmabey-email_spec
|
28
31
|
builder (2.1.2)
|
29
|
-
cache_money
|
30
32
|
camping (1.5)
|
31
33
|
capistrano
|
32
34
|
capistrano-ext
|
@@ -34,7 +36,6 @@ cgi_multipart_eof_fix (2.5.0)
|
|
34
36
|
chrisk-fakeweb
|
35
37
|
chronic
|
36
38
|
coderay
|
37
|
-
colors
|
38
39
|
configatron (2.2.2, 2.1.5)
|
39
40
|
configuration
|
40
41
|
context
|
@@ -59,7 +60,7 @@ dm-tags (0.9.11)
|
|
59
60
|
dm-validations (0.9.11)
|
60
61
|
dnsruby (1.26, 1.24, 1.2)
|
61
62
|
do_mysql +ruby_186 +ruby_191
|
62
|
-
echoe
|
63
|
+
echoe
|
63
64
|
editalign
|
64
65
|
erubis
|
65
66
|
eventmachine
|
@@ -72,11 +73,11 @@ facon
|
|
72
73
|
faker
|
73
74
|
fakeweb
|
74
75
|
fastercsv (1.4.0, 1.2.3)
|
75
|
-
fastthread (1.0.7, 1.0.1)
|
76
|
+
fastthread (1.0.7, 1.0.1) +ruby_186
|
76
77
|
fattr
|
77
78
|
feed-normalizer
|
78
79
|
feedvalidator
|
79
|
-
ferret
|
80
|
+
ferret +ruby_186
|
80
81
|
fireeagle
|
81
82
|
flay (1.3.0, 1.2.1)
|
82
83
|
flexmock
|
@@ -98,7 +99,7 @@ hashtostruct
|
|
98
99
|
heckle (1.4.2, 1.4.1)
|
99
100
|
highline (1.5.0, 1.4.0)
|
100
101
|
hoe (1.12.2, 1.8.3, 1.8.2, 1.7.0)
|
101
|
-
hpricot
|
102
|
+
hpricot +ruby_186 +ruby_191
|
102
103
|
htmlentities (4.0.0)
|
103
104
|
httparty
|
104
105
|
httpauth
|
@@ -148,10 +149,8 @@ merb-mailer (0.9.9)
|
|
148
149
|
merb-manage (0.4)
|
149
150
|
merb-more (0.9.9)
|
150
151
|
metaid (1.0)
|
151
|
-
metric_fu
|
152
152
|
mhennemeyer-output_catcher
|
153
153
|
mime-types (1.16, 1.15)
|
154
|
-
minitar
|
155
154
|
mislav-hanna
|
156
155
|
mislav-will_paginate (2.3.11, 2.3.4)
|
157
156
|
mixlib-cli
|
@@ -166,7 +165,7 @@ mongrel
|
|
166
165
|
mosquito (0.1.4, 0.1.3)
|
167
166
|
mwmitchell-rsolr
|
168
167
|
mwmitchell-material_girl
|
169
|
-
mysql
|
168
|
+
mysql +ruby_186 +ruby_191
|
170
169
|
nagoro
|
171
170
|
net-ssh (2.0.11, 2.0.4)
|
172
171
|
newgem
|
@@ -174,7 +173,7 @@ nokogiri (1.3.2)
|
|
174
173
|
oauth
|
175
174
|
obsidian
|
176
175
|
ohai
|
177
|
-
oniguruma
|
176
|
+
oniguruma +ruby_186
|
178
177
|
open4
|
179
178
|
opscode-ohai
|
180
179
|
opscode-mixlib-cli (1.0.4)
|
@@ -202,12 +201,12 @@ rake (0.8.7, 0.8.4, 0.8.3)
|
|
202
201
|
railroad
|
203
202
|
rc-rest
|
204
203
|
rdiscount
|
205
|
-
RedCloth (4.1.9, 4.1.1
|
204
|
+
RedCloth (4.1.9, 4.1.1) +ruby_186
|
205
|
+
RedCloth # latest version _should_ work on 191 and 186
|
206
206
|
redgreen
|
207
207
|
reek (1.1.3)
|
208
208
|
relevance-cap_gun
|
209
209
|
relevance-castronaut (0.3.6)
|
210
|
-
relevance-github_hook
|
211
210
|
relevance-grit
|
212
211
|
relevance-log_buddy
|
213
212
|
relevance-multi_rails
|
@@ -218,7 +217,6 @@ relevance-test-spec
|
|
218
217
|
remarkable
|
219
218
|
remarkable_activerecord
|
220
219
|
remarkable_rails
|
221
|
-
remarkably
|
222
220
|
rest-client (0.9.2, 0.7)
|
223
221
|
right_aws
|
224
222
|
rio
|
@@ -231,8 +229,8 @@ rspec (1.2.7, 1.2.4, 1.1.8, 1.1.4)
|
|
231
229
|
rspec-rails (1.2.7.1, 1.2.4, 1.2.2, 1.2.0, 1.1.12, 1.1.11)
|
232
230
|
rspec_hpricot_matchers
|
233
231
|
rubigen
|
234
|
-
ruby-aaws
|
235
|
-
ruby-debug
|
232
|
+
ruby-aaws +ruby_191 # ruby 187 and above only
|
233
|
+
ruby-debug
|
236
234
|
ruby-hmac (0.3.2)
|
237
235
|
ruby-json
|
238
236
|
ruby-net-ldap
|
@@ -243,13 +241,12 @@ rubygems-update
|
|
243
241
|
RubyInline (3.8.1, 3.7.0)
|
244
242
|
rubyzip
|
245
243
|
ruby_parser (2.0.3, 2.0.2)
|
246
|
-
ruby-xslt
|
244
|
+
ruby-xslt +ruby_186
|
247
245
|
rubyist-aasm
|
248
246
|
runcoderun-configatron
|
249
247
|
runcoderun-gem_sync
|
250
248
|
ruport
|
251
|
-
schacon-git
|
252
|
-
selenium
|
249
|
+
schacon-git
|
253
250
|
selenium-client
|
254
251
|
session
|
255
252
|
sexp_processor (3.0.1)
|
@@ -258,7 +255,6 @@ sinatra
|
|
258
255
|
spicycode-micronaut
|
259
256
|
spicycode-micronaut-rails
|
260
257
|
spork
|
261
|
-
sql-parser
|
262
258
|
sqlite3-ruby (1.2.4, 1.2.3, 1.2.1) +ruby_186 +ruby_191
|
263
259
|
starling
|
264
260
|
starling-starling
|
@@ -269,14 +265,12 @@ systemu (1.2.0)
|
|
269
265
|
system_timer +ruby_186 +ruby_191
|
270
266
|
taf2-curb
|
271
267
|
tagz
|
272
|
-
technicalpickles-echoe
|
273
268
|
technicalpickles-jeweler
|
274
269
|
term-ansicolor
|
275
|
-
termios
|
270
|
+
termios +ruby_186 # 0.9.4 gem does not build against 1.9.1 -- looks like it needs to be built from source
|
276
271
|
test-spec
|
277
272
|
test-unit (1.2.3) +ruby_191
|
278
273
|
thin
|
279
|
-
thinking_sphinx
|
280
274
|
thoughtbot-clearance
|
281
275
|
thoughtbot-factory_girl (1.2.1, 1.1.3)
|
282
276
|
thoughtbot-paperclip (2.3.0, 2.3.1)
|
@@ -300,6 +294,5 @@ xmlelements
|
|
300
294
|
xml-simple
|
301
295
|
yajl-ruby
|
302
296
|
yard
|
303
|
-
vizier
|
304
297
|
ym4r
|
305
298
|
ZenTest (4.0.0, 3.11.1, 3.10.0)
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: runcoderun-gem_sync
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Rob Sanheim
|
@@ -9,7 +9,7 @@ autorequire:
|
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
11
|
|
12
|
-
date: 2009-09-
|
12
|
+
date: 2009-09-09 00:00:00 -07:00
|
13
13
|
default_executable: gem_sync
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
@@ -52,7 +52,6 @@ files:
|
|
52
52
|
- lib/runcoderun_gems.txt
|
53
53
|
has_rdoc: false
|
54
54
|
homepage: http://github.com/runcoderun/gem_sync
|
55
|
-
licenses:
|
56
55
|
post_install_message:
|
57
56
|
rdoc_options:
|
58
57
|
- --charset=UTF-8
|
@@ -73,7 +72,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
73
72
|
requirements: []
|
74
73
|
|
75
74
|
rubyforge_project:
|
76
|
-
rubygems_version: 1.
|
75
|
+
rubygems_version: 1.2.0
|
77
76
|
signing_key:
|
78
77
|
specification_version: 3
|
79
78
|
summary: gem_sync
|