wright 0.3.2 → 0.4.0

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 (99) hide show
  1. checksums.yaml +4 -4
  2. data/NEWS.md +7 -0
  3. data/README.md +60 -54
  4. data/lib/wright/cli.rb +44 -18
  5. data/lib/wright/dry_run.rb +7 -0
  6. data/lib/wright/provider/directory.rb +26 -30
  7. data/lib/wright/provider/file.rb +34 -34
  8. data/lib/wright/provider/group/darwin_directory_service.rb +8 -7
  9. data/lib/wright/provider/group/gnu_passwd.rb +5 -5
  10. data/lib/wright/provider/group.rb +53 -36
  11. data/lib/wright/provider/package/apt.rb +32 -8
  12. data/lib/wright/provider/package/homebrew.rb +6 -5
  13. data/lib/wright/provider/package/yum.rb +39 -0
  14. data/lib/wright/provider/package.rb +30 -16
  15. data/lib/wright/provider/symlink.rb +32 -33
  16. data/lib/wright/provider/user/darwin_directory_service.rb +14 -17
  17. data/lib/wright/provider/user/gnu_passwd.rb +20 -21
  18. data/lib/wright/provider/user.rb +58 -41
  19. data/lib/wright/resource/group.rb +1 -0
  20. data/lib/wright/resource/package.rb +16 -3
  21. data/lib/wright/resource/user.rb +1 -0
  22. data/lib/wright/resource.rb +4 -2
  23. data/lib/wright/util/user.rb +34 -2
  24. data/lib/wright/version.rb +1 -1
  25. data/man/wright.1 +15 -11
  26. data/spec/cli_spec.rb +18 -0
  27. data/spec/provider/group/darwin_directory_service_spec.rb +76 -220
  28. data/spec/provider/group/gnu_passwd_spec.rb +36 -189
  29. data/spec/provider/group_spec.rb +180 -27
  30. data/spec/provider/package/apt/apt-cache_policy_dmenu.return +1 -0
  31. data/spec/provider/package/apt/apt-cache_policy_dmenu.stderr +0 -0
  32. data/spec/provider/package/apt/apt-cache_policy_dmenu.stdout +4 -0
  33. data/spec/provider/package/apt/apt-cache_policy_htop.stdout +3 -3
  34. data/spec/provider/package/apt/apt-cache_policy_linux-image-3.2.0-4-amd64.return +1 -0
  35. data/spec/provider/package/apt/apt-cache_policy_linux-image-3.2.0-4-amd64.stderr +0 -0
  36. data/spec/provider/package/apt/apt-cache_policy_linux-image-3.2.0-4-amd64.stdout +6 -0
  37. data/spec/provider/package/apt/apt-cache_policy_linux-image.return +1 -0
  38. data/spec/provider/package/apt/apt-cache_policy_linux-image.stderr +0 -0
  39. data/spec/provider/package/apt/apt-cache_policy_linux-image.stdout +4 -0
  40. data/spec/provider/package/apt/apt-cache_policy_suckless-tools.return +1 -0
  41. data/spec/provider/package/apt/apt-cache_policy_suckless-tools.stderr +0 -0
  42. data/spec/provider/package/apt/apt-cache_policy_suckless-tools.stdout +6 -0
  43. data/spec/provider/package/apt/apt-cache_showpkg_dmenu.return +1 -0
  44. data/spec/provider/package/apt/apt-cache_showpkg_dmenu.stderr +0 -0
  45. data/spec/provider/package/apt/apt-cache_showpkg_dmenu.stdout +9 -0
  46. data/spec/provider/package/apt/apt-cache_showpkg_htop.return +1 -0
  47. data/spec/provider/package/apt/apt-cache_showpkg_htop.stderr +0 -0
  48. data/spec/provider/package/apt/apt-cache_showpkg_htop.stdout +20 -0
  49. data/spec/provider/package/apt/apt-cache_showpkg_linux-image.return +1 -0
  50. data/spec/provider/package/apt/apt-cache_showpkg_linux-image.stderr +0 -0
  51. data/spec/provider/package/apt/apt-cache_showpkg_linux-image.stdout +11 -0
  52. data/spec/provider/package/apt/apt-cache_showpkg_not-a-real-package.return +1 -0
  53. data/spec/provider/package/apt/apt-cache_showpkg_not-a-real-package.stderr +0 -0
  54. data/spec/provider/package/apt/apt-cache_showpkg_not-a-real-package.stdout +1 -0
  55. data/spec/provider/package/apt/apt-cache_showpkg_suckless-tools.return +1 -0
  56. data/spec/provider/package/apt/apt-cache_showpkg_suckless-tools.stderr +0 -0
  57. data/spec/provider/package/apt/apt-cache_showpkg_suckless-tools.stdout +26 -0
  58. data/spec/provider/package/apt/apt-get_--purge_remove_-qy_abcde.return +1 -0
  59. data/spec/provider/package/apt/apt-get_--purge_remove_-qy_abcde.stderr +0 -0
  60. data/spec/provider/package/apt/apt-get_--purge_remove_-qy_abcde.stdout +15 -0
  61. data/spec/provider/package/apt_spec.rb +82 -14
  62. data/spec/provider/package/homebrew/brew_install_--with-default-names_gnu-units.return +1 -0
  63. data/spec/provider/package/homebrew/brew_install_--with-default-names_gnu-units.stderr +0 -0
  64. data/spec/provider/package/homebrew/brew_install_--with-default-names_gnu-units.stdout +7 -0
  65. data/spec/provider/package/homebrew/brew_uninstall_--force_lame.return +1 -0
  66. data/spec/provider/package/homebrew/brew_uninstall_--force_lame.stderr +0 -0
  67. data/spec/provider/package/homebrew/brew_uninstall_--force_lame.stdout +1 -0
  68. data/spec/provider/package/homebrew_spec.rb +33 -6
  69. data/spec/provider/package/yum/rpm_-q_httpd.return +1 -0
  70. data/spec/provider/package/yum/rpm_-q_httpd.stderr +0 -0
  71. data/spec/provider/package/yum/rpm_-q_httpd.stdout +1 -0
  72. data/spec/provider/package/yum/rpm_-q_zsh.return +1 -0
  73. data/spec/provider/package/yum/rpm_-q_zsh.stderr +0 -0
  74. data/spec/provider/package/yum/rpm_-q_zsh.stdout +1 -0
  75. data/spec/provider/package/yum/yum_install_-y_mc-4.8.7-8.el7.return +1 -0
  76. data/spec/provider/package/yum/yum_install_-y_mc-4.8.7-8.el7.stderr +0 -0
  77. data/spec/provider/package/yum/yum_install_-y_mc-4.8.7-8.el7.stdout +37 -0
  78. data/spec/provider/package/yum/yum_install_-y_nano.return +1 -0
  79. data/spec/provider/package/yum/yum_install_-y_nano.stderr +0 -0
  80. data/spec/provider/package/yum/yum_install_-y_nano.stdout +36 -0
  81. data/spec/provider/package/yum/yum_install_-y_not-a-real-package.return +1 -0
  82. data/spec/provider/package/yum/yum_install_-y_not-a-real-package.stderr +1 -0
  83. data/spec/provider/package/yum/yum_install_-y_not-a-real-package.stdout +6 -0
  84. data/spec/provider/package/yum/yum_install_with_options.return +1 -0
  85. data/spec/provider/package/yum/yum_install_with_options.stderr +0 -0
  86. data/spec/provider/package/yum/yum_install_with_options.stdout +53 -0
  87. data/spec/provider/package/yum/yum_remove_-y_screen.return +1 -0
  88. data/spec/provider/package/yum/yum_remove_-y_screen.stderr +0 -0
  89. data/spec/provider/package/yum/yum_remove_-y_screen.stdout +31 -0
  90. data/spec/provider/package/yum/yum_remove_with_options.return +1 -0
  91. data/spec/provider/package/yum/yum_remove_with_options.stderr +0 -0
  92. data/spec/provider/package/yum/yum_remove_with_options.stdout +30 -0
  93. data/spec/provider/package/yum_spec.rb +130 -0
  94. data/spec/provider/user/darwin_directory_service_spec.rb +12 -10
  95. data/spec/provider/user/gnu_passwd_spec.rb +9 -9
  96. data/spec/provider/user_spec.rb +26 -18
  97. data/spec/resource/package_spec.rb +8 -0
  98. data/spec/resource_spec.rb +17 -9
  99. metadata +153 -16
@@ -1,19 +1,13 @@
1
1
  require_relative '../spec_helper'
2
2
 
3
3
  require 'fakeetc'
4
+
4
5
  require 'wright/provider'
5
6
  require 'wright/provider/group'
6
7
 
7
8
  describe Wright::Provider::User do
8
9
  before(:each) do
9
- username = 'johndoe'
10
- @resource = OpenStruct.new(name: username)
11
- @create_message = "INFO: create user: '#{username}'\n"
12
- @create_message_dry = "INFO: (would) create user: '#{username}'\n"
13
- @create_message_debug = "DEBUG: user already created: '#{username}'\n"
14
- @remove_message = "INFO: remove user: '#{username}'\n"
15
- @remove_message_dry = "INFO: (would) remove user: '#{username}'\n"
16
- @remove_message_debug = "DEBUG: user already removed: '#{username}'\n"
10
+ @resource = OpenStruct.new(name: 'johndoe')
17
11
  end
18
12
 
19
13
  after(:each) do
@@ -186,11 +180,11 @@ describe Wright::Provider::User do
186
180
  end
187
181
  end
188
182
 
189
- describe '#add_user' do
183
+ describe '#create_user' do
190
184
  it 'should raise an exception' do
191
185
  provider = Wright::Provider::User.new(@resource)
192
186
  lambda do
193
- provider.send(:add_user)
187
+ provider.send(:create_user)
194
188
  end.must_raise NotImplementedError
195
189
  end
196
190
  end
@@ -204,16 +198,23 @@ describe Wright::Provider::User do
204
198
  end
205
199
  end
206
200
 
207
- describe '#delete_user' do
201
+ describe '#remove_user' do
208
202
  it 'should raise an exception' do
209
203
  provider = Wright::Provider::User.new(@resource)
210
204
  lambda do
211
- provider.send(:delete_user)
205
+ provider.send(:remove_user)
212
206
  end.must_raise NotImplementedError
213
207
  end
214
208
  end
215
209
 
216
210
  describe '#create' do
211
+ before(:each) do
212
+ username = @resource.name
213
+ @create_message = "INFO: create user: '#{username}'\n"
214
+ @create_message_dry = "INFO: (would) create user: '#{username}'\n"
215
+ @create_message_debug = "DEBUG: user already created: '#{username}'\n"
216
+ end
217
+
217
218
  it 'should set the update status when the user is up-to-date' do
218
219
  provider = Wright::Provider::User.new(@resource)
219
220
 
@@ -231,8 +232,8 @@ describe Wright::Provider::User do
231
232
  provider = Wright::Provider::User.new(@resource)
232
233
  mock_provider = Minitest::Mock.new
233
234
 
234
- mock_provider.expect(:add_user, nil)
235
- provider.stub :add_user, -> { mock_provider.add_user } do
235
+ mock_provider.expect(:create_user, nil)
236
+ provider.stub :create_user, -> { mock_provider.create_user } do
236
237
  FakeEtc do
237
238
  lambda do
238
239
  reset_logger
@@ -279,6 +280,13 @@ describe Wright::Provider::User do
279
280
  end
280
281
 
281
282
  describe '#remove' do
283
+ before(:each) do
284
+ username = @resource.name
285
+ @remove_message = "INFO: remove user: '#{username}'\n"
286
+ @remove_message_dry = "INFO: (would) remove user: '#{username}'\n"
287
+ @remove_message_debug = "DEBUG: user already removed: '#{username}'\n"
288
+ end
289
+
282
290
  it 'should set the update status when the user is already removed' do
283
291
  provider = Wright::Provider::User.new(@resource)
284
292
 
@@ -295,9 +303,9 @@ describe Wright::Provider::User do
295
303
  provider = Wright::Provider::User.new(@resource)
296
304
  mock_provider = Minitest::Mock.new
297
305
 
298
- mock_provider.expect(:delete_user, nil)
299
- provider.stub :delete_user, -> { mock_provider.delete_user } do
300
- FakeEtc.add_users('johndoe' => {})
306
+ mock_provider.expect(:remove_user, nil)
307
+ provider.stub :remove_user, -> { mock_provider.remove_user } do
308
+ FakeEtc.add_users(@resource.name => {})
301
309
  FakeEtc do
302
310
  lambda do
303
311
  reset_logger
@@ -313,7 +321,7 @@ describe Wright::Provider::User do
313
321
  provider = Wright::Provider::User.new(@resource)
314
322
 
315
323
  Wright.dry_run do
316
- FakeEtc.add_users('johndoe' => {})
324
+ FakeEtc.add_users(@resource.name => {})
317
325
  FakeEtc do
318
326
  lambda do
319
327
  reset_logger
@@ -17,6 +17,14 @@ describe Wright::Resource::Package do
17
17
  end
18
18
  end
19
19
 
20
+ describe '#installed?' do
21
+ it 'should ask the provider for the install status' do
22
+ @provider.expect(:installed?, nil)
23
+ @package.installed?
24
+ @provider.verify
25
+ end
26
+ end
27
+
20
28
  describe '#install' do
21
29
  it 'should ask the provider to install the package' do
22
30
  @provider.expect(:install, nil)
@@ -35,6 +35,10 @@ class Sample < Wright::Resource; end
35
35
 
36
36
  # resource with a single method to test update notification
37
37
  class Updater < Wright::Resource
38
+ def initialize(name = '')
39
+ super
40
+ end
41
+
38
42
  def do_something
39
43
  might_update_resource {}
40
44
  end
@@ -44,8 +48,6 @@ describe Wright::Resource do
44
48
  before(:each) do
45
49
  @config = Wright::Config.config_hash.clone
46
50
  Wright::Config.config_hash.clear
47
- @hello = 'Hello world'
48
- @say_hello = -> { print @hello }
49
51
  end
50
52
 
51
53
  after(:each) do
@@ -82,19 +84,24 @@ describe Wright::Resource do
82
84
  it 'should run update actions on updates' do
83
85
  provider = Wright::Provider::AlwaysUpdated
84
86
  Wright::Config[:resources] = { updater: { provider: provider.name } }
85
- resource = Updater.new
87
+ resource = Updater.new('sample_updater')
88
+ notification = "INFO: run update action for updater 'sample_updater'"
89
+ message = 'hello'
86
90
  lambda do
87
- resource.on_update = @say_hello
91
+ reset_logger
92
+ resource.on_update = -> { print message }
88
93
  assert resource.do_something
89
- end.must_output @hello
94
+ end.must_output "#{notification}\n#{message}"
90
95
  end
91
96
 
92
97
  it 'should not run update actions if there were no updates' do
93
98
  provider = Wright::Provider::NeverUpdated
94
99
  Wright::Config[:resources] = { updater: { provider: provider.name } }
95
100
  resource = Updater.new
101
+ message = 'hello'
96
102
  lambda do
97
- resource.on_update = @say_hello
103
+ reset_logger
104
+ resource.on_update = -> { print message }
98
105
  assert !resource.do_something
99
106
  end.must_be_silent
100
107
  end
@@ -106,12 +113,13 @@ describe Wright::Resource do
106
113
  name = :farnsworth
107
114
  resource = Updater.new(name)
108
115
  resource_info = "#{resource.resource_name} '#{name}'"
109
- output = "INFO: (would) run update action for #{resource_info}\n"
116
+ notification = "INFO: (would) run update action for #{resource_info}\n"
117
+ message = 'hello'
110
118
  lambda do
111
119
  reset_logger
112
- resource.on_update = @say_hello
120
+ resource.on_update = -> { print message }
113
121
  assert resource.do_something
114
- end.must_output output
122
+ end.must_output notification
115
123
  end
116
124
  end
117
125
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: wright
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.2
4
+ version: 0.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Sebastian Boehm
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-06-01 00:00:00.000000000 Z
11
+ date: 2015-06-11 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: minitest
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - ~>
18
18
  - !ruby/object:Gem::Version
19
- version: 5.6.0
19
+ version: 5.7.0
20
20
  type: :development
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - ~>
25
25
  - !ruby/object:Gem::Version
26
- version: 5.6.0
26
+ version: 5.7.0
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: minitest-stub-const
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -58,14 +58,14 @@ dependencies:
58
58
  requirements:
59
59
  - - ~>
60
60
  - !ruby/object:Gem::Version
61
- version: 0.2.0
61
+ version: 0.3.0
62
62
  type: :development
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
66
  - - ~>
67
67
  - !ruby/object:Gem::Version
68
- version: 0.2.0
68
+ version: 0.3.0
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: rake
71
71
  requirement: !ruby/object:Gem::Requirement
@@ -94,6 +94,20 @@ dependencies:
94
94
  - - ~>
95
95
  - !ruby/object:Gem::Version
96
96
  version: 0.8.7.6
97
+ - !ruby/object:Gem::Dependency
98
+ name: redcarpet
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - ~>
102
+ - !ruby/object:Gem::Version
103
+ version: 3.2.3
104
+ type: :development
105
+ prerelease: false
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - ~>
109
+ - !ruby/object:Gem::Version
110
+ version: 3.2.3
97
111
  - !ruby/object:Gem::Dependency
98
112
  name: simplecov
99
113
  requirement: !ruby/object:Gem::Requirement
@@ -128,16 +142,16 @@ dependencies:
128
142
  requirements:
129
143
  - - ~>
130
144
  - !ruby/object:Gem::Version
131
- version: 0.30.1
145
+ version: 0.32.0
132
146
  type: :development
133
147
  prerelease: false
134
148
  version_requirements: !ruby/object:Gem::Requirement
135
149
  requirements:
136
150
  - - ~>
137
151
  - !ruby/object:Gem::Version
138
- version: 0.30.1
152
+ version: 0.32.0
139
153
  description: |
140
- Wright is a lightweight configuration management library.
154
+ Wright is a lightweight configuration management tool.
141
155
  email:
142
156
  - sebastian@sometimesfood.org
143
157
  executables:
@@ -145,12 +159,6 @@ executables:
145
159
  extensions: []
146
160
  extra_rdoc_files: []
147
161
  files:
148
- - Rakefile
149
- - README.md
150
- - CONTRIBUTING.md
151
- - LICENSE
152
- - NEWS.md
153
- - man/wright.1
154
162
  - bin/wright
155
163
  - lib/wright/cli.rb
156
164
  - lib/wright/config.rb
@@ -164,6 +172,7 @@ files:
164
172
  - lib/wright/provider/group.rb
165
173
  - lib/wright/provider/package/apt.rb
166
174
  - lib/wright/provider/package/homebrew.rb
175
+ - lib/wright/provider/package/yum.rb
167
176
  - lib/wright/provider/package.rb
168
177
  - lib/wright/provider/symlink.rb
169
178
  - lib/wright/provider/user/darwin_directory_service.rb
@@ -260,12 +269,42 @@ files:
260
269
  - spec/provider/package/apt/apt-cache_policy_abcde.return
261
270
  - spec/provider/package/apt/apt-cache_policy_abcde.stderr
262
271
  - spec/provider/package/apt/apt-cache_policy_abcde.stdout
272
+ - spec/provider/package/apt/apt-cache_policy_dmenu.return
273
+ - spec/provider/package/apt/apt-cache_policy_dmenu.stderr
274
+ - spec/provider/package/apt/apt-cache_policy_dmenu.stdout
263
275
  - spec/provider/package/apt/apt-cache_policy_htop.return
264
276
  - spec/provider/package/apt/apt-cache_policy_htop.stderr
265
277
  - spec/provider/package/apt/apt-cache_policy_htop.stdout
278
+ - spec/provider/package/apt/apt-cache_policy_linux-image-3.2.0-4-amd64.return
279
+ - spec/provider/package/apt/apt-cache_policy_linux-image-3.2.0-4-amd64.stderr
280
+ - spec/provider/package/apt/apt-cache_policy_linux-image-3.2.0-4-amd64.stdout
281
+ - spec/provider/package/apt/apt-cache_policy_linux-image.return
282
+ - spec/provider/package/apt/apt-cache_policy_linux-image.stderr
283
+ - spec/provider/package/apt/apt-cache_policy_linux-image.stdout
266
284
  - spec/provider/package/apt/apt-cache_policy_not-a-real-package.return
267
285
  - spec/provider/package/apt/apt-cache_policy_not-a-real-package.stderr
268
286
  - spec/provider/package/apt/apt-cache_policy_not-a-real-package.stdout
287
+ - spec/provider/package/apt/apt-cache_policy_suckless-tools.return
288
+ - spec/provider/package/apt/apt-cache_policy_suckless-tools.stderr
289
+ - spec/provider/package/apt/apt-cache_policy_suckless-tools.stdout
290
+ - spec/provider/package/apt/apt-cache_showpkg_dmenu.return
291
+ - spec/provider/package/apt/apt-cache_showpkg_dmenu.stderr
292
+ - spec/provider/package/apt/apt-cache_showpkg_dmenu.stdout
293
+ - spec/provider/package/apt/apt-cache_showpkg_htop.return
294
+ - spec/provider/package/apt/apt-cache_showpkg_htop.stderr
295
+ - spec/provider/package/apt/apt-cache_showpkg_htop.stdout
296
+ - spec/provider/package/apt/apt-cache_showpkg_linux-image.return
297
+ - spec/provider/package/apt/apt-cache_showpkg_linux-image.stderr
298
+ - spec/provider/package/apt/apt-cache_showpkg_linux-image.stdout
299
+ - spec/provider/package/apt/apt-cache_showpkg_not-a-real-package.return
300
+ - spec/provider/package/apt/apt-cache_showpkg_not-a-real-package.stderr
301
+ - spec/provider/package/apt/apt-cache_showpkg_not-a-real-package.stdout
302
+ - spec/provider/package/apt/apt-cache_showpkg_suckless-tools.return
303
+ - spec/provider/package/apt/apt-cache_showpkg_suckless-tools.stderr
304
+ - spec/provider/package/apt/apt-cache_showpkg_suckless-tools.stdout
305
+ - spec/provider/package/apt/apt-get_--purge_remove_-qy_abcde.return
306
+ - spec/provider/package/apt/apt-get_--purge_remove_-qy_abcde.stderr
307
+ - spec/provider/package/apt/apt-get_--purge_remove_-qy_abcde.stdout
269
308
  - spec/provider/package/apt/apt-get_install_-qy_abcde=2.5.4-1.return
270
309
  - spec/provider/package/apt/apt-get_install_-qy_abcde=2.5.4-1.stderr
271
310
  - spec/provider/package/apt/apt-get_install_-qy_abcde=2.5.4-1.stdout
@@ -288,16 +327,47 @@ files:
288
327
  - spec/provider/package/homebrew/brew_info_--json=v1_not-a-real-package.return
289
328
  - spec/provider/package/homebrew/brew_info_--json=v1_not-a-real-package.stderr
290
329
  - spec/provider/package/homebrew/brew_info_--json=v1_not-a-real-package.stdout
330
+ - spec/provider/package/homebrew/brew_install_--with-default-names_gnu-units.return
331
+ - spec/provider/package/homebrew/brew_install_--with-default-names_gnu-units.stderr
332
+ - spec/provider/package/homebrew/brew_install_--with-default-names_gnu-units.stdout
291
333
  - spec/provider/package/homebrew/brew_install_cd-discid.return
292
334
  - spec/provider/package/homebrew/brew_install_cd-discid.stderr
293
335
  - spec/provider/package/homebrew/brew_install_cd-discid.stdout
294
336
  - spec/provider/package/homebrew/brew_install_not-a-real-package.return
295
337
  - spec/provider/package/homebrew/brew_install_not-a-real-package.stderr
296
338
  - spec/provider/package/homebrew/brew_install_not-a-real-package.stdout
339
+ - spec/provider/package/homebrew/brew_uninstall_--force_lame.return
340
+ - spec/provider/package/homebrew/brew_uninstall_--force_lame.stderr
341
+ - spec/provider/package/homebrew/brew_uninstall_--force_lame.stdout
297
342
  - spec/provider/package/homebrew/brew_uninstall_lame.return
298
343
  - spec/provider/package/homebrew/brew_uninstall_lame.stderr
299
344
  - spec/provider/package/homebrew/brew_uninstall_lame.stdout
300
345
  - spec/provider/package/homebrew_spec.rb
346
+ - spec/provider/package/yum/rpm_-q_httpd.return
347
+ - spec/provider/package/yum/rpm_-q_httpd.stderr
348
+ - spec/provider/package/yum/rpm_-q_httpd.stdout
349
+ - spec/provider/package/yum/rpm_-q_zsh.return
350
+ - spec/provider/package/yum/rpm_-q_zsh.stderr
351
+ - spec/provider/package/yum/rpm_-q_zsh.stdout
352
+ - spec/provider/package/yum/yum_install_-y_mc-4.8.7-8.el7.return
353
+ - spec/provider/package/yum/yum_install_-y_mc-4.8.7-8.el7.stderr
354
+ - spec/provider/package/yum/yum_install_-y_mc-4.8.7-8.el7.stdout
355
+ - spec/provider/package/yum/yum_install_-y_nano.return
356
+ - spec/provider/package/yum/yum_install_-y_nano.stderr
357
+ - spec/provider/package/yum/yum_install_-y_nano.stdout
358
+ - spec/provider/package/yum/yum_install_-y_not-a-real-package.return
359
+ - spec/provider/package/yum/yum_install_-y_not-a-real-package.stderr
360
+ - spec/provider/package/yum/yum_install_-y_not-a-real-package.stdout
361
+ - spec/provider/package/yum/yum_install_with_options.return
362
+ - spec/provider/package/yum/yum_install_with_options.stderr
363
+ - spec/provider/package/yum/yum_install_with_options.stdout
364
+ - spec/provider/package/yum/yum_remove_-y_screen.return
365
+ - spec/provider/package/yum/yum_remove_-y_screen.stderr
366
+ - spec/provider/package/yum/yum_remove_-y_screen.stdout
367
+ - spec/provider/package/yum/yum_remove_with_options.return
368
+ - spec/provider/package/yum/yum_remove_with_options.stderr
369
+ - spec/provider/package/yum/yum_remove_with_options.stdout
370
+ - spec/provider/package/yum_spec.rb
301
371
  - spec/provider/package_spec.rb
302
372
  - spec/provider/symlink_spec.rb
303
373
  - spec/provider/user/darwin_directory_service/dscl-delete-user.return
@@ -359,6 +429,12 @@ files:
359
429
  - spec/util/file_spec.rb
360
430
  - spec/util/user_spec.rb
361
431
  - spec/util_spec.rb
432
+ - man/wright.1
433
+ - Rakefile
434
+ - README.md
435
+ - CONTRIBUTING.md
436
+ - NEWS.md
437
+ - LICENSE
362
438
  homepage: https://github.com/sometimesfood/wright
363
439
  licenses:
364
440
  - MIT
@@ -382,7 +458,7 @@ rubyforge_project:
382
458
  rubygems_version: 2.0.14
383
459
  signing_key:
384
460
  specification_version: 4
385
- summary: A lightweight config management library
461
+ summary: A lightweight config management tool
386
462
  test_files:
387
463
  - spec/cli/shebang.rb
388
464
  - spec/cli_spec.rb
@@ -457,12 +533,42 @@ test_files:
457
533
  - spec/provider/package/apt/apt-cache_policy_abcde.return
458
534
  - spec/provider/package/apt/apt-cache_policy_abcde.stderr
459
535
  - spec/provider/package/apt/apt-cache_policy_abcde.stdout
536
+ - spec/provider/package/apt/apt-cache_policy_dmenu.return
537
+ - spec/provider/package/apt/apt-cache_policy_dmenu.stderr
538
+ - spec/provider/package/apt/apt-cache_policy_dmenu.stdout
460
539
  - spec/provider/package/apt/apt-cache_policy_htop.return
461
540
  - spec/provider/package/apt/apt-cache_policy_htop.stderr
462
541
  - spec/provider/package/apt/apt-cache_policy_htop.stdout
542
+ - spec/provider/package/apt/apt-cache_policy_linux-image-3.2.0-4-amd64.return
543
+ - spec/provider/package/apt/apt-cache_policy_linux-image-3.2.0-4-amd64.stderr
544
+ - spec/provider/package/apt/apt-cache_policy_linux-image-3.2.0-4-amd64.stdout
545
+ - spec/provider/package/apt/apt-cache_policy_linux-image.return
546
+ - spec/provider/package/apt/apt-cache_policy_linux-image.stderr
547
+ - spec/provider/package/apt/apt-cache_policy_linux-image.stdout
463
548
  - spec/provider/package/apt/apt-cache_policy_not-a-real-package.return
464
549
  - spec/provider/package/apt/apt-cache_policy_not-a-real-package.stderr
465
550
  - spec/provider/package/apt/apt-cache_policy_not-a-real-package.stdout
551
+ - spec/provider/package/apt/apt-cache_policy_suckless-tools.return
552
+ - spec/provider/package/apt/apt-cache_policy_suckless-tools.stderr
553
+ - spec/provider/package/apt/apt-cache_policy_suckless-tools.stdout
554
+ - spec/provider/package/apt/apt-cache_showpkg_dmenu.return
555
+ - spec/provider/package/apt/apt-cache_showpkg_dmenu.stderr
556
+ - spec/provider/package/apt/apt-cache_showpkg_dmenu.stdout
557
+ - spec/provider/package/apt/apt-cache_showpkg_htop.return
558
+ - spec/provider/package/apt/apt-cache_showpkg_htop.stderr
559
+ - spec/provider/package/apt/apt-cache_showpkg_htop.stdout
560
+ - spec/provider/package/apt/apt-cache_showpkg_linux-image.return
561
+ - spec/provider/package/apt/apt-cache_showpkg_linux-image.stderr
562
+ - spec/provider/package/apt/apt-cache_showpkg_linux-image.stdout
563
+ - spec/provider/package/apt/apt-cache_showpkg_not-a-real-package.return
564
+ - spec/provider/package/apt/apt-cache_showpkg_not-a-real-package.stderr
565
+ - spec/provider/package/apt/apt-cache_showpkg_not-a-real-package.stdout
566
+ - spec/provider/package/apt/apt-cache_showpkg_suckless-tools.return
567
+ - spec/provider/package/apt/apt-cache_showpkg_suckless-tools.stderr
568
+ - spec/provider/package/apt/apt-cache_showpkg_suckless-tools.stdout
569
+ - spec/provider/package/apt/apt-get_--purge_remove_-qy_abcde.return
570
+ - spec/provider/package/apt/apt-get_--purge_remove_-qy_abcde.stderr
571
+ - spec/provider/package/apt/apt-get_--purge_remove_-qy_abcde.stdout
466
572
  - spec/provider/package/apt/apt-get_install_-qy_abcde=2.5.4-1.return
467
573
  - spec/provider/package/apt/apt-get_install_-qy_abcde=2.5.4-1.stderr
468
574
  - spec/provider/package/apt/apt-get_install_-qy_abcde=2.5.4-1.stdout
@@ -485,16 +591,47 @@ test_files:
485
591
  - spec/provider/package/homebrew/brew_info_--json=v1_not-a-real-package.return
486
592
  - spec/provider/package/homebrew/brew_info_--json=v1_not-a-real-package.stderr
487
593
  - spec/provider/package/homebrew/brew_info_--json=v1_not-a-real-package.stdout
594
+ - spec/provider/package/homebrew/brew_install_--with-default-names_gnu-units.return
595
+ - spec/provider/package/homebrew/brew_install_--with-default-names_gnu-units.stderr
596
+ - spec/provider/package/homebrew/brew_install_--with-default-names_gnu-units.stdout
488
597
  - spec/provider/package/homebrew/brew_install_cd-discid.return
489
598
  - spec/provider/package/homebrew/brew_install_cd-discid.stderr
490
599
  - spec/provider/package/homebrew/brew_install_cd-discid.stdout
491
600
  - spec/provider/package/homebrew/brew_install_not-a-real-package.return
492
601
  - spec/provider/package/homebrew/brew_install_not-a-real-package.stderr
493
602
  - spec/provider/package/homebrew/brew_install_not-a-real-package.stdout
603
+ - spec/provider/package/homebrew/brew_uninstall_--force_lame.return
604
+ - spec/provider/package/homebrew/brew_uninstall_--force_lame.stderr
605
+ - spec/provider/package/homebrew/brew_uninstall_--force_lame.stdout
494
606
  - spec/provider/package/homebrew/brew_uninstall_lame.return
495
607
  - spec/provider/package/homebrew/brew_uninstall_lame.stderr
496
608
  - spec/provider/package/homebrew/brew_uninstall_lame.stdout
497
609
  - spec/provider/package/homebrew_spec.rb
610
+ - spec/provider/package/yum/rpm_-q_httpd.return
611
+ - spec/provider/package/yum/rpm_-q_httpd.stderr
612
+ - spec/provider/package/yum/rpm_-q_httpd.stdout
613
+ - spec/provider/package/yum/rpm_-q_zsh.return
614
+ - spec/provider/package/yum/rpm_-q_zsh.stderr
615
+ - spec/provider/package/yum/rpm_-q_zsh.stdout
616
+ - spec/provider/package/yum/yum_install_-y_mc-4.8.7-8.el7.return
617
+ - spec/provider/package/yum/yum_install_-y_mc-4.8.7-8.el7.stderr
618
+ - spec/provider/package/yum/yum_install_-y_mc-4.8.7-8.el7.stdout
619
+ - spec/provider/package/yum/yum_install_-y_nano.return
620
+ - spec/provider/package/yum/yum_install_-y_nano.stderr
621
+ - spec/provider/package/yum/yum_install_-y_nano.stdout
622
+ - spec/provider/package/yum/yum_install_-y_not-a-real-package.return
623
+ - spec/provider/package/yum/yum_install_-y_not-a-real-package.stderr
624
+ - spec/provider/package/yum/yum_install_-y_not-a-real-package.stdout
625
+ - spec/provider/package/yum/yum_install_with_options.return
626
+ - spec/provider/package/yum/yum_install_with_options.stderr
627
+ - spec/provider/package/yum/yum_install_with_options.stdout
628
+ - spec/provider/package/yum/yum_remove_-y_screen.return
629
+ - spec/provider/package/yum/yum_remove_-y_screen.stderr
630
+ - spec/provider/package/yum/yum_remove_-y_screen.stdout
631
+ - spec/provider/package/yum/yum_remove_with_options.return
632
+ - spec/provider/package/yum/yum_remove_with_options.stderr
633
+ - spec/provider/package/yum/yum_remove_with_options.stdout
634
+ - spec/provider/package/yum_spec.rb
498
635
  - spec/provider/package_spec.rb
499
636
  - spec/provider/symlink_spec.rb
500
637
  - spec/provider/user/darwin_directory_service/dscl-delete-user.return