rubycut-babushka 0.10.6

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 (171) hide show
  1. data/Gemfile +8 -0
  2. data/Gemfile.lock +31 -0
  3. data/README.markdown +246 -0
  4. data/Rakefile +26 -0
  5. data/bin/babushka +11 -0
  6. data/deps/babushka.rb +101 -0
  7. data/deps/dev.rb +12 -0
  8. data/deps/fhs.rb +31 -0
  9. data/deps/git.rb +29 -0
  10. data/deps/homebrew.rb +30 -0
  11. data/deps/os_x.rb +33 -0
  12. data/deps/packages.rb +22 -0
  13. data/deps/pkg_managers.rb +110 -0
  14. data/deps/ruby.rb +23 -0
  15. data/deps/rubygems.rb +24 -0
  16. data/deps/system.rb +10 -0
  17. data/deps/templates/app.rb +68 -0
  18. data/deps/templates/external.rb +12 -0
  19. data/deps/templates/installer.rb +31 -0
  20. data/deps/templates/managed.rb +105 -0
  21. data/deps/templates/ppa.rb +24 -0
  22. data/deps/templates/src.rb +42 -0
  23. data/deps/templates/tmbundle.rb +15 -0
  24. data/lib/babushka.rb +28 -0
  25. data/lib/babushka/accepts_block_for.rb +72 -0
  26. data/lib/babushka/accepts_list_for.rb +49 -0
  27. data/lib/babushka/accepts_value_for.rb +24 -0
  28. data/lib/babushka/base.rb +78 -0
  29. data/lib/babushka/bug_reporter.rb +55 -0
  30. data/lib/babushka/cmdline.rb +133 -0
  31. data/lib/babushka/cmdline/handler.rb +41 -0
  32. data/lib/babushka/cmdline/helpers.rb +127 -0
  33. data/lib/babushka/cmdline/parser.rb +69 -0
  34. data/lib/babushka/colorizer.rb +59 -0
  35. data/lib/babushka/core_patches/array.rb +171 -0
  36. data/lib/babushka/core_patches/blank.rb +22 -0
  37. data/lib/babushka/core_patches/bytes.rb +52 -0
  38. data/lib/babushka/core_patches/hash.rb +107 -0
  39. data/lib/babushka/core_patches/hashish.rb +14 -0
  40. data/lib/babushka/core_patches/integer.rb +25 -0
  41. data/lib/babushka/core_patches/io.rb +8 -0
  42. data/lib/babushka/core_patches/numeric.rb +16 -0
  43. data/lib/babushka/core_patches/object.rb +27 -0
  44. data/lib/babushka/core_patches/string.rb +116 -0
  45. data/lib/babushka/core_patches/symbol.rb +12 -0
  46. data/lib/babushka/core_patches/try.rb +15 -0
  47. data/lib/babushka/core_patches/uri.rb +24 -0
  48. data/lib/babushka/dep.rb +470 -0
  49. data/lib/babushka/dep_context.rb +18 -0
  50. data/lib/babushka/dep_definer.rb +115 -0
  51. data/lib/babushka/dep_pool.rb +49 -0
  52. data/lib/babushka/dep_runner.rb +85 -0
  53. data/lib/babushka/dsl.rb +26 -0
  54. data/lib/babushka/git_repo.rb +185 -0
  55. data/lib/babushka/helpers/git_helpers.rb +32 -0
  56. data/lib/babushka/helpers/log_helpers.rb +176 -0
  57. data/lib/babushka/helpers/path_helpers.rb +34 -0
  58. data/lib/babushka/helpers/run_helpers.rb +145 -0
  59. data/lib/babushka/helpers/shell_helpers.rb +229 -0
  60. data/lib/babushka/helpers/suggest_helpers.rb +16 -0
  61. data/lib/babushka/helpers/uri_helpers.rb +36 -0
  62. data/lib/babushka/ip.rb +160 -0
  63. data/lib/babushka/lambda_chooser.rb +40 -0
  64. data/lib/babushka/levenshtein.rb +125 -0
  65. data/lib/babushka/meta_dep.rb +65 -0
  66. data/lib/babushka/meta_dep_context.rb +15 -0
  67. data/lib/babushka/parameter.rb +143 -0
  68. data/lib/babushka/pkg_helper.rb +81 -0
  69. data/lib/babushka/pkg_helpers/apt_helper.rb +61 -0
  70. data/lib/babushka/pkg_helpers/base_helper.rb +19 -0
  71. data/lib/babushka/pkg_helpers/binpkgsrc_helper.rb +48 -0
  72. data/lib/babushka/pkg_helpers/binports_helper.rb +34 -0
  73. data/lib/babushka/pkg_helpers/brew_helper.rb +110 -0
  74. data/lib/babushka/pkg_helpers/gem_helper.rb +120 -0
  75. data/lib/babushka/pkg_helpers/macports_helper.rb +22 -0
  76. data/lib/babushka/pkg_helpers/npm_helper.rb +45 -0
  77. data/lib/babushka/pkg_helpers/pacman_helper.rb +27 -0
  78. data/lib/babushka/pkg_helpers/pip_helper.rb +45 -0
  79. data/lib/babushka/pkg_helpers/src_helper.rb +16 -0
  80. data/lib/babushka/pkg_helpers/yum_helper.rb +25 -0
  81. data/lib/babushka/popen.rb +40 -0
  82. data/lib/babushka/prompt.rb +176 -0
  83. data/lib/babushka/renderable.rb +67 -0
  84. data/lib/babushka/resource.rb +215 -0
  85. data/lib/babushka/run_reporter.rb +60 -0
  86. data/lib/babushka/shell.rb +108 -0
  87. data/lib/babushka/source.rb +216 -0
  88. data/lib/babushka/source_pool.rb +146 -0
  89. data/lib/babushka/system_definitions.rb +97 -0
  90. data/lib/babushka/system_profile.rb +210 -0
  91. data/lib/babushka/task.rb +142 -0
  92. data/lib/babushka/vars.rb +108 -0
  93. data/lib/babushka/version_of.rb +65 -0
  94. data/lib/babushka/version_str.rb +57 -0
  95. data/lib/babushka/xml_string.rb +28 -0
  96. data/lib/components.rb +82 -0
  97. data/lib/fancypath/fancypath.rb +200 -0
  98. data/lib/inkan/inkan.rb +76 -0
  99. data/spec/acceptance/acceptance.rb +43 -0
  100. data/spec/acceptance_helper.rb +113 -0
  101. data/spec/archives/Blah.app.zip +0 -0
  102. data/spec/archives/archive.tar +0 -0
  103. data/spec/archives/archive.tar.bz2 +0 -0
  104. data/spec/archives/archive.tar.gz +0 -0
  105. data/spec/archives/archive.tbz2 +0 -0
  106. data/spec/archives/archive.tgz +0 -0
  107. data/spec/archives/archive.zip +0 -0
  108. data/spec/archives/content.txt +5 -0
  109. data/spec/archives/invalid_archive +5 -0
  110. data/spec/archives/nested archive/content.txt +5 -0
  111. data/spec/archives/nested_archive.tar +0 -0
  112. data/spec/archives/really_a_gzip.zip +0 -0
  113. data/spec/archives/test-0.3.1.tgz +0 -0
  114. data/spec/archives/tgz_archive +0 -0
  115. data/spec/archives/zip_without_extension +0 -0
  116. data/spec/babushka/accepts_for_spec.rb +174 -0
  117. data/spec/babushka/accepts_for_support.rb +72 -0
  118. data/spec/babushka/cmdline/console_spec.rb +11 -0
  119. data/spec/babushka/cmdline/help_spec.rb +61 -0
  120. data/spec/babushka/cmdline/version_spec.rb +10 -0
  121. data/spec/babushka/core_patches_spec.rb +171 -0
  122. data/spec/babushka/dep_context_spec.rb +58 -0
  123. data/spec/babushka/dep_definer_spec.rb +152 -0
  124. data/spec/babushka/dep_definer_support.rb +36 -0
  125. data/spec/babushka/dep_spec.rb +567 -0
  126. data/spec/babushka/dep_support.rb +29 -0
  127. data/spec/babushka/deps_spec.rb +113 -0
  128. data/spec/babushka/gem_helper_spec.rb +90 -0
  129. data/spec/babushka/git_repo_spec.rb +396 -0
  130. data/spec/babushka/ip_spec.rb +131 -0
  131. data/spec/babushka/lambda_chooser_spec.rb +115 -0
  132. data/spec/babushka/meta_dep_definer_spec.rb +127 -0
  133. data/spec/babushka/meta_dep_wrapper_spec.rb +32 -0
  134. data/spec/babushka/parameter_spec.rb +135 -0
  135. data/spec/babushka/path_helpers_spec.rb +102 -0
  136. data/spec/babushka/prompt_spec.rb +188 -0
  137. data/spec/babushka/renderable_spec.rb +100 -0
  138. data/spec/babushka/resource_spec.rb +141 -0
  139. data/spec/babushka/run_helpers_spec.rb +26 -0
  140. data/spec/babushka/shell_helpers_spec.rb +244 -0
  141. data/spec/babushka/shell_spec.rb +19 -0
  142. data/spec/babushka/source_pool_spec.rb +320 -0
  143. data/spec/babushka/source_pool_support.rb +31 -0
  144. data/spec/babushka/source_spec.rb +382 -0
  145. data/spec/babushka/source_support.rb +17 -0
  146. data/spec/babushka/system_profile_spec.rb +61 -0
  147. data/spec/babushka/task_spec.rb +141 -0
  148. data/spec/babushka/uri_spec.rb +13 -0
  149. data/spec/babushka/vars_spec.rb +59 -0
  150. data/spec/babushka/version_of_spec.rb +110 -0
  151. data/spec/babushka/version_str_spec.rb +130 -0
  152. data/spec/babushka/version_str_support.rb +37 -0
  153. data/spec/babushka/xml_string_spec.rb +98 -0
  154. data/spec/deps/bad/broken.rb +7 -0
  155. data/spec/deps/bad/working.rb +3 -0
  156. data/spec/deps/good/meta.rb +14 -0
  157. data/spec/deps/good/test.rb +11 -0
  158. data/spec/deps/outer/deps.rb +19 -0
  159. data/spec/deps/outer/more deps.rb +11 -0
  160. data/spec/deps/params/params.rb +10 -0
  161. data/spec/fancypath/fancypath_spec.rb +272 -0
  162. data/spec/fancypath_support.rb +10 -0
  163. data/spec/inkan/inkan_spec.rb +217 -0
  164. data/spec/renderable/different_example.conf.erb +4 -0
  165. data/spec/renderable/example.conf.erb +3 -0
  166. data/spec/renderable/example.sh +6 -0
  167. data/spec/renderable/with_binding.conf.erb +4 -0
  168. data/spec/renderable/xml_example.conf.erb +8 -0
  169. data/spec/repos/remote.git.tgz +0 -0
  170. data/spec/spec_helper.rb +87 -0
  171. metadata +238 -0
@@ -0,0 +1,10 @@
1
+ $TESTING=true
2
+ $:.push File.join(File.dirname(__FILE__), '..', 'lib/fancypath')
3
+
4
+ require 'fancypath'
5
+
6
+ TMP_DIR = __FILE__.to_fancypath.dirname/'..'/'tmp'/'fancypath'
7
+
8
+ def Fancypath path
9
+ Fancypath.new path
10
+ end
@@ -0,0 +1,217 @@
1
+ require 'spec_helper'
2
+
3
+ describe "Inkan" do
4
+ describe '.legitimate?' do
5
+ context "without a hashbang" do
6
+ let(:content) { 'foo bar baz' }
7
+
8
+ it "returns true if the file contents match the SHA" do
9
+ open('/tmp/spec.txt', 'w') do |file|
10
+ file.puts "# Generated by Inkan: #{Digest::SHA1.hexdigest(content)}"
11
+ file.print content
12
+ end
13
+
14
+ Inkan.legitimate?('/tmp/spec.txt').should be_true
15
+ end
16
+
17
+ it "returns false if the file contents don't match the SHA" do
18
+ open('/tmp/spec.txt', 'w') do |file|
19
+ file.puts "# Generated by Inkan: #{Digest::SHA1.hexdigest(content)}"
20
+ file.puts content
21
+ end
22
+
23
+ Inkan.legitimate?('/tmp/spec.txt').should be_false
24
+ end
25
+
26
+ it "returns false if there is no SHA" do
27
+ open('/tmp/spec.txt', 'w') do |file|
28
+ file.print content
29
+ end
30
+
31
+ Inkan.legitimate?('/tmp/spec.txt').should be_false
32
+ end
33
+ end
34
+ context "with a hashbang" do
35
+ let(:content) { "#!/bin/sh\nfoo bar baz" }
36
+
37
+ it "returns true if the file contents match the SHA" do
38
+ open('/tmp/spec.txt', 'w') do |file|
39
+ file.puts '#!/bin/sh'
40
+ file.puts "# Generated by Inkan: #{Digest::SHA1.hexdigest(content)}"
41
+ file.print 'foo bar baz'
42
+ end
43
+
44
+ Inkan.legitimate?('/tmp/spec.txt').should be_true
45
+ end
46
+
47
+ it "returns false if the file contents don't match the SHA" do
48
+ open('/tmp/spec.txt', 'w') do |file|
49
+ file.puts '#!/bin/sh'
50
+ file.puts "# Generated by Inkan: #{Digest::SHA1.hexdigest(content)}"
51
+ file.puts 'foo bar baz'
52
+ end
53
+
54
+ Inkan.legitimate?('/tmp/spec.txt').should be_false
55
+ end
56
+
57
+ it "returns false if there is no SHA" do
58
+ open('/tmp/spec.txt', 'w') do |file|
59
+ file.print content
60
+ end
61
+
62
+ Inkan.legitimate?('/tmp/spec.txt').should be_false
63
+ end
64
+ end
65
+ end
66
+
67
+ describe '.seal' do
68
+ it "should write the file after closing the block" do
69
+ Inkan.seal('/tmp/spec.txt') do |inkan|
70
+ inkan.print 'foo bar baz'
71
+ end
72
+
73
+ contents = open('/tmp/spec.txt').read
74
+ contents.should match(/foo bar baz$/)
75
+ contents.should match(/^# Generated by Inkan/)
76
+ end
77
+ end
78
+
79
+ describe '.render' do
80
+ it "should return the result after closing the block" do
81
+ result = Inkan.render do |inkan|
82
+ inkan.print 'foo bar baz'
83
+ end
84
+
85
+ result.should match(/foo bar baz$/)
86
+ result.should match(/^# Generated by Inkan/)
87
+ end
88
+ end
89
+
90
+ describe '#seal' do
91
+ let(:inkan) { Inkan.new('/tmp/spec.txt') }
92
+
93
+ it "writes out the contents of the buffer" do
94
+ inkan.print "foo bar baz"
95
+ inkan.seal
96
+
97
+ open('/tmp/spec.txt').read.should match(/foo bar baz$/)
98
+ end
99
+
100
+ it "adds the credit line to the top of the file" do
101
+ inkan.print "foo bar baz"
102
+ inkan.seal
103
+
104
+ open('/tmp/spec.txt').read.should match(/^# Generated by Inkan/)
105
+ end
106
+
107
+ it "adds the SHA to the top of the file" do
108
+ inkan.print "foo bar baz"
109
+ inkan.seal
110
+
111
+ sha = Digest::SHA1.hexdigest("foo bar baz")
112
+
113
+ open('/tmp/spec.txt').read.should match(/#{sha}/)
114
+ end
115
+ end
116
+
117
+ describe '#render' do
118
+ let(:inkan) { Inkan.new(nil) }
119
+
120
+ before { shell "rm -f /tmp/spec.txt" }
121
+
122
+ it "writes out the contents of the buffer" do
123
+ inkan.print "foo bar baz"
124
+ inkan.render.should match(/foo bar baz$/)
125
+ end
126
+
127
+ context "when there is no hashbang" do
128
+ before { inkan.print "foo bar baz" }
129
+ it "adds the credit line to the top of the output" do
130
+ inkan.render.split("\n").first.should match(/^# Generated by Inkan/)
131
+ end
132
+ it "adds the SHA to the top of the output" do
133
+ sha = Digest::SHA1.hexdigest("foo bar baz")
134
+ inkan.render.split("\n").first.should match(/#{sha}/)
135
+ end
136
+ end
137
+
138
+ context "when there is a hashbang" do
139
+ before { inkan.print "#!/bin/sh\nfoo bar baz" }
140
+ it "leaves the hashbang at the top of the file" do
141
+ inkan.render.split("\n")[0].should == '#!/bin/sh'
142
+ end
143
+ it "adds the credit line to the top of the output below the hashbang" do
144
+ inkan.render.split("\n")[1].should match(/^# Generated by Inkan/)
145
+ end
146
+ it "adds the SHA to the top of the output below the hashbang" do
147
+ sha = Digest::SHA1.hexdigest("#!/bin/sh\nfoo bar baz")
148
+ inkan.render.split("\n")[1].should match(/#{sha}/)
149
+ end
150
+ end
151
+
152
+ it "doesn't write the file" do
153
+ inkan.print "foo bar baz"
154
+ inkan.render
155
+ File.exists?('/tmp/spec.txt').should be_false
156
+ end
157
+ end
158
+
159
+ describe '#puts' do
160
+ let(:inkan) { Inkan.new('/tmp/spec.txt') }
161
+
162
+ it "adds an extra new line to the output" do
163
+ inkan.puts "foo bar baz"
164
+ inkan.seal
165
+
166
+ open('/tmp/spec.txt').read.should match(/foo bar baz\n$/)
167
+ end
168
+ end
169
+
170
+ describe '#credit' do
171
+ let(:inkan) { Inkan.new('/tmp/spec.txt') }
172
+
173
+ it "defaults to 'Generated by Inkan'" do
174
+ inkan.credit.should == 'Generated by Inkan'
175
+ end
176
+
177
+ it "should pass through changes to the file comment" do
178
+ inkan.credit = "Pat's Magic Code"
179
+ inkan.print "foo bar baz"
180
+ inkan.seal
181
+
182
+ open('/tmp/spec.txt').read.should match(/^# Pat's Magic Code/)
183
+ end
184
+ end
185
+
186
+ describe '#comment' do
187
+ let(:inkan) { Inkan.new('/tmp/spec.txt') }
188
+
189
+ it "defaults to a hash symbol" do
190
+ inkan.comment.should == '#'
191
+ end
192
+
193
+ it "should pass through changes to the file credit" do
194
+ inkan.comment = "//"
195
+ inkan.print "foo bar baz"
196
+ inkan.seal
197
+
198
+ open('/tmp/spec.txt').read.should match(/^\/\/ Generated by Inkan/)
199
+ end
200
+ end
201
+
202
+ describe '#comment_suffix' do
203
+ let(:inkan) { Inkan.new('/tmp/spec.txt') }
204
+
205
+ it "defaults to a blank string" do
206
+ inkan.comment_suffix.should == ''
207
+ end
208
+
209
+ it "should pass through changes to the file comment" do
210
+ inkan.comment_suffix = "*/"
211
+ inkan.print "foo bar baz"
212
+ inkan.seal
213
+
214
+ open('/tmp/spec.txt').read.should match(/\*\/\n/)
215
+ end
216
+ end
217
+ end
@@ -0,0 +1,4 @@
1
+ server {
2
+ root <%= tmp_prefix %>;
3
+ passenger_enabled on;
4
+ }
@@ -0,0 +1,3 @@
1
+ server {
2
+ root <%= tmp_prefix %>;
3
+ }
@@ -0,0 +1,6 @@
1
+ #!/bin/bash
2
+
3
+ cd .. # up from .git/
4
+ unset GIT_DIR # otherwise `git` commands can't see other repos
5
+ [[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm" # so we run against the right ruby
6
+ babushka 'benhoskings:up to date.repo' repo_path='.' git_ref_data="$(cat /dev/stdin)"
@@ -0,0 +1,4 @@
1
+ server {
2
+ root <%= custom_renderable_path %>;
3
+ passenger_enabled on;
4
+ }
@@ -0,0 +1,8 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
3
+ <plist version="1.0">
4
+ <dict>
5
+ <key>Lol</key>
6
+ <true/>
7
+ </dict>
8
+ </plist>
Binary file
@@ -0,0 +1,87 @@
1
+ # coding: utf-8
2
+
3
+ $:.concat %w[spec/babushka spec/fancypath spec/inkan .]
4
+
5
+ require 'lib/babushka'
6
+ include Babushka
7
+ include Babushka::DSL
8
+
9
+ require 'rubygems'
10
+ require 'rspec'
11
+
12
+ # RSpec::Core::Example.send :include, Babushka::Helpers
13
+ RSpec::Core::ExampleGroup.send :include, Babushka::LogHelpers
14
+ RSpec::Core::ExampleGroup.send :include, Babushka::ShellHelpers
15
+ RSpec::Core::ExampleGroup.send :include, Babushka::PathHelpers
16
+
17
+ class Object
18
+ # Log and return unmodified in the same manner as #tapp, but escape the
19
+ # output to be HTML safe and easily readable. For example,
20
+ # #<Object:0x00000100bda208>
21
+ # becomes
22
+ # #&lt;Object:0x00000100bda208><br />
23
+ def taph
24
+ tap {
25
+ puts "<pre>" +
26
+ "#{File.basename caller[2]}: #{self.inspect}".gsub('&', '&amp;').gsub('<', '&lt;') +
27
+ "</pre>"
28
+ }
29
+ end
30
+ end
31
+
32
+ puts "babushka@#{`git rev-parse --short HEAD`.strip} | ruby-#{RUBY_VERSION} | rspec-#{RSpec::Version::STRING}"
33
+
34
+ def tmp_prefix
35
+ "#{'/private' if Base.host.osx?}/tmp/rspec/its_ok_if_a_test_deletes_this/babushka"
36
+ end
37
+
38
+ `rm -rf '#{tmp_prefix}'` if File.exists? tmp_prefix
39
+ `mkdir -p '#{tmp_prefix}'` unless File.exists? tmp_prefix
40
+
41
+ module Babushka
42
+ class Resource
43
+ def archive_prefix
44
+ tmp_prefix / 'archives'
45
+ end
46
+ end
47
+
48
+ class Source
49
+ def remove!
50
+ !cloneable? || !File.exists?(path) || `rm -rf '#{path}'`
51
+ end
52
+ private
53
+ def self.sources_yml
54
+ tmp_prefix / 'sources.yml'
55
+ end
56
+ def self.source_prefix
57
+ tmp_prefix / 'sources'
58
+ end
59
+ def self.for_remote name
60
+ Source.new(default_remote_for(name), :name => name).tap {|source|
61
+ source.stub!(:update!) # don't hit the network to update sources during specs.
62
+ }
63
+ end
64
+ end
65
+
66
+ class VersionOf
67
+ # VersionOf#== should return false in testing unless other is also a VersionOf.
68
+ def == other
69
+ if other.is_a? VersionOf
70
+ name == other.name &&
71
+ version == other.version
72
+ end
73
+ end
74
+ end
75
+
76
+ class Logging
77
+ def self.print_log message, printable
78
+ # Don't log while running specs.
79
+ end
80
+ end
81
+
82
+ class BugReporter
83
+ def self.report dep
84
+ # Don't report exceptions during tests.
85
+ end
86
+ end
87
+ end
metadata ADDED
@@ -0,0 +1,238 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: rubycut-babushka
3
+ version: !ruby/object:Gem::Version
4
+ hash: 59
5
+ prerelease:
6
+ segments:
7
+ - 0
8
+ - 10
9
+ - 6
10
+ version: 0.10.6
11
+ platform: ruby
12
+ authors:
13
+ - Ben Hoskings
14
+ - Rubycut
15
+ autorequire:
16
+ bindir: bin
17
+ cert_chain: []
18
+
19
+ date: 2011-11-13 00:00:00 Z
20
+ dependencies: []
21
+
22
+ description: Babushka is a tool for finding, running, writing and sharing recipies to automate things.
23
+ email:
24
+ - ben@hoskings.net
25
+ - ruby.cutter@gmail.com
26
+ executables:
27
+ - babushka
28
+ extensions: []
29
+
30
+ extra_rdoc_files: []
31
+
32
+ files:
33
+ - lib/inkan/inkan.rb
34
+ - lib/components.rb
35
+ - lib/babushka.rb
36
+ - lib/babushka/cmdline.rb
37
+ - lib/babushka/renderable.rb
38
+ - lib/babushka/meta_dep_context.rb
39
+ - lib/babushka/colorizer.rb
40
+ - lib/babushka/lambda_chooser.rb
41
+ - lib/babushka/dep.rb
42
+ - lib/babushka/pkg_helper.rb
43
+ - lib/babushka/source_pool.rb
44
+ - lib/babushka/task.rb
45
+ - lib/babushka/run_reporter.rb
46
+ - lib/babushka/prompt.rb
47
+ - lib/babushka/bug_reporter.rb
48
+ - lib/babushka/parameter.rb
49
+ - lib/babushka/accepts_list_for.rb
50
+ - lib/babushka/pkg_helpers/base_helper.rb
51
+ - lib/babushka/pkg_helpers/gem_helper.rb
52
+ - lib/babushka/pkg_helpers/pacman_helper.rb
53
+ - lib/babushka/pkg_helpers/brew_helper.rb
54
+ - lib/babushka/pkg_helpers/apt_helper.rb
55
+ - lib/babushka/pkg_helpers/pip_helper.rb
56
+ - lib/babushka/pkg_helpers/yum_helper.rb
57
+ - lib/babushka/pkg_helpers/binports_helper.rb
58
+ - lib/babushka/pkg_helpers/macports_helper.rb
59
+ - lib/babushka/pkg_helpers/npm_helper.rb
60
+ - lib/babushka/pkg_helpers/src_helper.rb
61
+ - lib/babushka/pkg_helpers/binpkgsrc_helper.rb
62
+ - lib/babushka/dep_pool.rb
63
+ - lib/babushka/version_of.rb
64
+ - lib/babushka/source.rb
65
+ - lib/babushka/cmdline/handler.rb
66
+ - lib/babushka/cmdline/parser.rb
67
+ - lib/babushka/cmdline/helpers.rb
68
+ - lib/babushka/base.rb
69
+ - lib/babushka/helpers/run_helpers.rb
70
+ - lib/babushka/helpers/uri_helpers.rb
71
+ - lib/babushka/helpers/shell_helpers.rb
72
+ - lib/babushka/helpers/path_helpers.rb
73
+ - lib/babushka/helpers/suggest_helpers.rb
74
+ - lib/babushka/helpers/git_helpers.rb
75
+ - lib/babushka/helpers/log_helpers.rb
76
+ - lib/babushka/meta_dep.rb
77
+ - lib/babushka/vars.rb
78
+ - lib/babushka/levenshtein.rb
79
+ - lib/babushka/system_profile.rb
80
+ - lib/babushka/system_definitions.rb
81
+ - lib/babushka/popen.rb
82
+ - lib/babushka/dep_runner.rb
83
+ - lib/babushka/core_patches/bytes.rb
84
+ - lib/babushka/core_patches/hashish.rb
85
+ - lib/babushka/core_patches/string.rb
86
+ - lib/babushka/core_patches/integer.rb
87
+ - lib/babushka/core_patches/hash.rb
88
+ - lib/babushka/core_patches/object.rb
89
+ - lib/babushka/core_patches/symbol.rb
90
+ - lib/babushka/core_patches/blank.rb
91
+ - lib/babushka/core_patches/try.rb
92
+ - lib/babushka/core_patches/uri.rb
93
+ - lib/babushka/core_patches/io.rb
94
+ - lib/babushka/core_patches/numeric.rb
95
+ - lib/babushka/core_patches/array.rb
96
+ - lib/babushka/dsl.rb
97
+ - lib/babushka/resource.rb
98
+ - lib/babushka/shell.rb
99
+ - lib/babushka/version_str.rb
100
+ - lib/babushka/xml_string.rb
101
+ - lib/babushka/accepts_value_for.rb
102
+ - lib/babushka/git_repo.rb
103
+ - lib/babushka/accepts_block_for.rb
104
+ - lib/babushka/dep_definer.rb
105
+ - lib/babushka/ip.rb
106
+ - lib/babushka/dep_context.rb
107
+ - lib/fancypath/fancypath.rb
108
+ - deps/templates/ppa.rb
109
+ - deps/templates/managed.rb
110
+ - deps/templates/installer.rb
111
+ - deps/templates/external.rb
112
+ - deps/templates/src.rb
113
+ - deps/templates/app.rb
114
+ - deps/templates/tmbundle.rb
115
+ - deps/system.rb
116
+ - deps/fhs.rb
117
+ - deps/babushka.rb
118
+ - deps/git.rb
119
+ - deps/os_x.rb
120
+ - deps/rubygems.rb
121
+ - deps/dev.rb
122
+ - deps/pkg_managers.rb
123
+ - deps/ruby.rb
124
+ - deps/packages.rb
125
+ - deps/homebrew.rb
126
+ - README.markdown
127
+ - spec/repos/remote.git.tgz
128
+ - spec/inkan/inkan_spec.rb
129
+ - spec/spec_helper.rb
130
+ - spec/renderable/example.sh
131
+ - spec/renderable/with_binding.conf.erb
132
+ - spec/renderable/different_example.conf.erb
133
+ - spec/renderable/xml_example.conf.erb
134
+ - spec/renderable/example.conf.erb
135
+ - spec/acceptance/acceptance.rb
136
+ - spec/babushka/system_profile_spec.rb
137
+ - spec/babushka/uri_spec.rb
138
+ - spec/babushka/source_support.rb
139
+ - spec/babushka/meta_dep_wrapper_spec.rb
140
+ - spec/babushka/xml_string_spec.rb
141
+ - spec/babushka/accepts_for_spec.rb
142
+ - spec/babushka/accepts_for_support.rb
143
+ - spec/babushka/meta_dep_definer_spec.rb
144
+ - spec/babushka/deps_spec.rb
145
+ - spec/babushka/ip_spec.rb
146
+ - spec/babushka/shell_spec.rb
147
+ - spec/babushka/dep_context_spec.rb
148
+ - spec/babushka/shell_helpers_spec.rb
149
+ - spec/babushka/dep_support.rb
150
+ - spec/babushka/git_repo_spec.rb
151
+ - spec/babushka/dep_spec.rb
152
+ - spec/babushka/renderable_spec.rb
153
+ - spec/babushka/run_helpers_spec.rb
154
+ - spec/babushka/cmdline/help_spec.rb
155
+ - spec/babushka/cmdline/version_spec.rb
156
+ - spec/babushka/cmdline/console_spec.rb
157
+ - spec/babushka/gem_helper_spec.rb
158
+ - spec/babushka/prompt_spec.rb
159
+ - spec/babushka/version_of_spec.rb
160
+ - spec/babushka/resource_spec.rb
161
+ - spec/babushka/lambda_chooser_spec.rb
162
+ - spec/babushka/source_pool_support.rb
163
+ - spec/babushka/version_str_support.rb
164
+ - spec/babushka/dep_definer_support.rb
165
+ - spec/babushka/path_helpers_spec.rb
166
+ - spec/babushka/source_pool_spec.rb
167
+ - spec/babushka/task_spec.rb
168
+ - spec/babushka/parameter_spec.rb
169
+ - spec/babushka/dep_definer_spec.rb
170
+ - spec/babushka/vars_spec.rb
171
+ - spec/babushka/source_spec.rb
172
+ - spec/babushka/core_patches_spec.rb
173
+ - spec/babushka/version_str_spec.rb
174
+ - spec/deps/good/test.rb
175
+ - spec/deps/good/meta.rb
176
+ - spec/deps/outer/more deps.rb
177
+ - spec/deps/outer/deps.rb
178
+ - spec/deps/params/params.rb
179
+ - spec/deps/bad/working.rb
180
+ - spec/deps/bad/broken.rb
181
+ - spec/acceptance_helper.rb
182
+ - spec/fancypath_support.rb
183
+ - spec/fancypath/fancypath_spec.rb
184
+ - spec/archives/content.txt
185
+ - spec/archives/zip_without_extension
186
+ - spec/archives/tgz_archive
187
+ - spec/archives/archive.zip
188
+ - spec/archives/archive.tar.gz
189
+ - spec/archives/Blah.app.zip
190
+ - spec/archives/archive.tbz2
191
+ - spec/archives/nested archive/content.txt
192
+ - spec/archives/test-0.3.1.tgz
193
+ - spec/archives/archive.tar
194
+ - spec/archives/nested_archive.tar
195
+ - spec/archives/archive.tgz
196
+ - spec/archives/archive.tar.bz2
197
+ - spec/archives/really_a_gzip.zip
198
+ - spec/archives/invalid_archive
199
+ - Rakefile
200
+ - Gemfile
201
+ - Gemfile.lock
202
+ - bin/babushka
203
+ homepage: https://github.com/rubycut/babushka
204
+ licenses: []
205
+
206
+ post_install_message:
207
+ rdoc_options: []
208
+
209
+ require_paths:
210
+ - lib
211
+ required_ruby_version: !ruby/object:Gem::Requirement
212
+ none: false
213
+ requirements:
214
+ - - ">="
215
+ - !ruby/object:Gem::Version
216
+ hash: 3
217
+ segments:
218
+ - 0
219
+ version: "0"
220
+ required_rubygems_version: !ruby/object:Gem::Requirement
221
+ none: false
222
+ requirements:
223
+ - - ">="
224
+ - !ruby/object:Gem::Version
225
+ hash: 3
226
+ segments:
227
+ - 0
228
+ version: "0"
229
+ requirements: []
230
+
231
+ rubyforge_project:
232
+ rubygems_version: 1.8.11
233
+ signing_key:
234
+ specification_version: 3
235
+ summary: Test-driven sysadmin.
236
+ test_files: []
237
+
238
+ has_rdoc: