wright 0.2.0 → 0.3.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (90) hide show
  1. checksums.yaml +4 -4
  2. data/NEWS.md +8 -0
  3. data/README.md +2 -0
  4. data/Rakefile +6 -0
  5. data/bin/wright +6 -0
  6. data/lib/wright/cli.rb +68 -0
  7. data/lib/wright/dsl.rb +1 -1
  8. data/lib/wright/provider/directory.rb +17 -12
  9. data/lib/wright/provider/file.rb +24 -17
  10. data/lib/wright/provider/group/darwin_directory_service.rb +1 -8
  11. data/lib/wright/provider/group/gnu_passwd.rb +0 -1
  12. data/lib/wright/provider/group.rb +6 -12
  13. data/lib/wright/provider/package/apt.rb +9 -21
  14. data/lib/wright/provider/package/homebrew.rb +5 -18
  15. data/lib/wright/provider/package.rb +22 -11
  16. data/lib/wright/provider/symlink.rb +17 -22
  17. data/lib/wright/provider/user/darwin_directory_service.rb +65 -0
  18. data/lib/wright/provider/user/gnu_passwd.rb +6 -7
  19. data/lib/wright/provider/user.rb +6 -12
  20. data/lib/wright/provider.rb +20 -2
  21. data/lib/wright/resource/directory.rb +19 -20
  22. data/lib/wright/resource/file.rb +19 -15
  23. data/lib/wright/resource/symlink.rb +1 -0
  24. data/lib/wright/resource/user.rb +2 -1
  25. data/lib/wright/resource.rb +1 -1
  26. data/lib/wright/util/file_owner.rb +61 -0
  27. data/lib/wright/util/file_permissions.rb +21 -30
  28. data/lib/wright/util/stolen_from_activesupport.rb +1 -1
  29. data/lib/wright/util/user.rb +48 -23
  30. data/lib/wright/util.rb +10 -6
  31. data/lib/wright/version.rb +1 -1
  32. data/lib/wright.rb +1 -0
  33. data/man/wright.1 +202 -0
  34. data/spec/cli/shebang.rb +3 -0
  35. data/spec/cli_spec.rb +64 -0
  36. data/spec/dsl_spec.rb +8 -3
  37. data/spec/provider/group/darwin_directory_service_spec.rb +3 -2
  38. data/spec/provider/package/apt/apt-cache_policy_abcde.stdout +7 -0
  39. data/spec/provider/package/apt/apt-cache_policy_htop.stdout +6 -0
  40. data/spec/provider/package/apt/apt-cache_policy_not-a-real-package.return +1 -0
  41. data/spec/provider/package/apt_spec.rb +17 -211
  42. data/spec/provider/package/homebrew_spec.rb +11 -164
  43. data/spec/provider/package_spec.rb +151 -7
  44. data/spec/provider/user/darwin_directory_service/dscl-delete-user.return +1 -0
  45. data/spec/provider/user/darwin_directory_service/dscl-delete-user.stderr +0 -0
  46. data/spec/provider/user/darwin_directory_service/dscl-delete-user.stdout +0 -0
  47. data/spec/provider/user/darwin_directory_service/dscl-new-user-full-name.return +1 -0
  48. data/spec/provider/user/darwin_directory_service/dscl-new-user-full-name.stderr +0 -0
  49. data/spec/provider/user/darwin_directory_service/dscl-new-user-full-name.stdout +0 -0
  50. data/spec/provider/user/darwin_directory_service/dscl-new-user-home.return +1 -0
  51. data/spec/provider/user/darwin_directory_service/dscl-new-user-home.stderr +0 -0
  52. data/spec/provider/user/darwin_directory_service/dscl-new-user-home.stdout +0 -0
  53. data/spec/provider/user/darwin_directory_service/dscl-new-user-password.return +1 -0
  54. data/spec/provider/user/darwin_directory_service/dscl-new-user-password.stderr +0 -0
  55. data/spec/provider/user/darwin_directory_service/dscl-new-user-password.stdout +0 -0
  56. data/spec/provider/user/darwin_directory_service/dscl-new-user-primary-group.return +1 -0
  57. data/spec/provider/user/darwin_directory_service/dscl-new-user-primary-group.stderr +0 -0
  58. data/spec/provider/user/darwin_directory_service/dscl-new-user-primary-group.stdout +0 -0
  59. data/spec/provider/user/darwin_directory_service/dscl-new-user-shell.return +1 -0
  60. data/spec/provider/user/darwin_directory_service/dscl-new-user-shell.stderr +0 -0
  61. data/spec/provider/user/darwin_directory_service/dscl-new-user-shell.stdout +0 -0
  62. data/spec/provider/user/darwin_directory_service/dscl-new-user-uid.return +1 -0
  63. data/spec/provider/user/darwin_directory_service/dscl-new-user-uid.stderr +0 -0
  64. data/spec/provider/user/darwin_directory_service/dscl-new-user-uid.stdout +0 -0
  65. data/spec/provider/user/darwin_directory_service_spec.rb +167 -0
  66. data/spec/provider/user/gnu_passwd_spec.rb +5 -5
  67. data/spec/resource/directory_spec.rb +17 -15
  68. data/spec/resource/file_spec.rb +17 -15
  69. data/spec/resource_spec.rb +1 -1
  70. data/spec/spec_helpers/test_coverage.rb +1 -1
  71. data/spec/util/file_owner_spec.rb +36 -0
  72. data/spec/util/file_permissions_spec.rb +6 -6
  73. data/spec/util/user_spec.rb +0 -17
  74. data/spec/util_spec.rb +64 -5
  75. metadata +91 -41
  76. data/spec/provider/package/apt/dpkg-query_-s_abcde.stdout +0 -23
  77. data/spec/provider/package/apt/dpkg-query_-s_htop.stdout +0 -19
  78. data/spec/provider/package/apt/dpkg-query_-s_not-a-real-package.return +0 -1
  79. data/spec/provider/package/apt/dpkg-query_-s_not-a-real-package.stderr +0 -3
  80. data/spec/provider/package/apt/dpkg-query_-s_vlc.return +0 -1
  81. data/spec/provider/package/apt/dpkg-query_-s_vlc.stderr +0 -3
  82. /data/spec/provider/group/darwin_directory_service/{dseditgroup_-o_create_-i_499_newgroup.return → dseditgroup_-o_create_-i_2_newgroup.return} +0 -0
  83. /data/spec/provider/group/darwin_directory_service/{dseditgroup_-o_create_-i_499_newgroup.stderr → dseditgroup_-o_create_-i_2_newgroup.stderr} +0 -0
  84. /data/spec/provider/group/darwin_directory_service/{dseditgroup_-o_create_-i_499_newgroup.stdout → dseditgroup_-o_create_-i_2_newgroup.stdout} +0 -0
  85. /data/spec/provider/package/apt/{dpkg-query_-s_abcde.return → apt-cache_policy_abcde.return} +0 -0
  86. /data/spec/provider/package/apt/{dpkg-query_-s_abcde.stderr → apt-cache_policy_abcde.stderr} +0 -0
  87. /data/spec/provider/package/apt/{dpkg-query_-s_htop.return → apt-cache_policy_htop.return} +0 -0
  88. /data/spec/provider/package/apt/{dpkg-query_-s_htop.stderr → apt-cache_policy_htop.stderr} +0 -0
  89. /data/spec/provider/package/apt/{dpkg-query_-s_not-a-real-package.stdout → apt-cache_policy_not-a-real-package.stderr} +0 -0
  90. /data/spec/provider/package/apt/{dpkg-query_-s_vlc.stdout → apt-cache_policy_not-a-real-package.stdout} +0 -0
@@ -86,21 +86,7 @@ describe Wright::Resource::Directory do
86
86
  end
87
87
  end
88
88
 
89
- it 'should support owner:group notation' do
90
- FakeFS do
91
- FileUtils.mkdir_p(@dirname)
92
- FileUtils.chown(23, 45, @dirname)
93
- owner = Etc.getpwuid(Process.uid).name
94
- group = Etc.getgrgid(Process.gid).name
95
- dir = Wright::Resource::Directory.new(@dirname)
96
- dir.owner = "#{owner}:#{group}"
97
- dir.create
98
- Wright::Util::File.file_owner(@dirname).must_equal Process.uid
99
- Wright::Util::File.file_group(@dirname).must_equal Process.gid
100
- end
101
- end
102
-
103
- it 'should raise an exception when setting an invalid owner or group' do
89
+ it 'should raise an exception when creating dirs with invalid owners' do
104
90
  dir = Wright::Resource::Directory.new(@dirname)
105
91
  user = 'this_user_doesnt_exist'
106
92
  group = 'this_group_doesnt_exist'
@@ -184,4 +170,20 @@ describe Wright::Resource::Directory do
184
170
  end
185
171
  end
186
172
  end
173
+
174
+ describe '#owner=' do
175
+ it 'should support owner:group notation' do
176
+ dir = Wright::Resource::Directory.new(@dirname)
177
+ dir.owner = 'foo:bar'
178
+ dir.owner.must_equal 'foo'
179
+ dir.group.must_equal 'bar'
180
+ dir.group = 'baz'
181
+ dir.group.must_equal 'baz'
182
+ end
183
+
184
+ it 'should reject owner:group strings with invalid notation' do
185
+ dir = Wright::Resource::Directory.new(@dirname)
186
+ -> { dir.owner = 'foo:bar:baz' }.must_raise ArgumentError
187
+ end
188
+ end
187
189
  end
@@ -104,21 +104,7 @@ describe Wright::Resource::File do
104
104
  end
105
105
  end
106
106
 
107
- it 'should support owner:group notation' do
108
- FakeFS do
109
- FileUtils.touch(@filename)
110
- FileUtils.chown(23, 45, @filename)
111
- owner = Etc.getpwuid(Process.uid).name
112
- group = Etc.getgrgid(Process.gid).name
113
- file = Wright::Resource::File.new(@filename)
114
- file.owner = "#{owner}:#{group}"
115
- file.create
116
- Wright::Util::File.file_owner(@filename).must_equal Process.uid
117
- Wright::Util::File.file_group(@filename).must_equal Process.gid
118
- end
119
- end
120
-
121
- it 'should raise an exception when setting invalid an owner/group' do
107
+ it 'should raise an exception when creating files with invalid owners' do
122
108
  file = Wright::Resource::File.new(@filename)
123
109
  user = 'this_user_doesnt_exist'
124
110
  group = 'this_group_doesnt_exist'
@@ -210,4 +196,20 @@ describe Wright::Resource::File do
210
196
  end
211
197
  end
212
198
  end
199
+
200
+ describe '#owner=' do
201
+ it 'should support owner:group notation' do
202
+ file = Wright::Resource::File.new(@filename)
203
+ file.owner = 'foo:bar'
204
+ file.owner.must_equal 'foo'
205
+ file.group.must_equal 'bar'
206
+ file.group = 'baz'
207
+ file.group.must_equal 'baz'
208
+ end
209
+
210
+ it 'should reject owner:group strings with invalid notation' do
211
+ file = Wright::Resource::File.new(@filename)
212
+ -> { file.owner = 'foo:bar:baz' }.must_raise ArgumentError
213
+ end
214
+ end
213
215
  end
@@ -106,7 +106,7 @@ describe Wright::Resource do
106
106
  name = :farnsworth
107
107
  resource = Updater.new(name)
108
108
  resource_info = "#{resource.resource_name} '#{name}'"
109
- output = "INFO: Would trigger update action for #{resource_info}\n"
109
+ output = "INFO: (would) run update action for #{resource_info}\n"
110
110
  lambda do
111
111
  reset_logger
112
112
  resource.on_update = @say_hello
@@ -22,5 +22,5 @@ def measure_coverage
22
22
 
23
23
  ignored_directories = ['/spec/', '/vendor/', '/.bundle/']
24
24
  SimpleCov.formatter = SimpleCov::Formatter::MultiFormatter[*formatters]
25
- SimpleCov.start { ignored_directories.each { |dir| add_filter(dir) } }
25
+ SimpleCov.start { add_filter(ignored_directories) }
26
26
  end
@@ -0,0 +1,36 @@
1
+ require_relative '../spec_helper'
2
+
3
+ require 'wright/util/file_owner'
4
+
5
+ describe Wright::Util::FileOwner do
6
+ before(:each) do
7
+ @owner = Wright::Util::FileOwner.new
8
+ end
9
+
10
+ describe '#user_and_group=' do
11
+ it 'should set the user' do
12
+ @owner.group = 'group'
13
+ @owner.user_and_group = 'user'
14
+ @owner.user.must_equal 'user'
15
+ @owner.group.must_equal 'group'
16
+ end
17
+
18
+ it 'should set the user when given a uid' do
19
+ @owner.user_and_group = 23
20
+ @owner.user.must_equal 23
21
+ end
22
+
23
+ it 'should support user:group notation' do
24
+ @owner.user_and_group = 'user:group'
25
+ @owner.user.must_equal 'user'
26
+ @owner.group.must_equal 'group'
27
+ end
28
+
29
+ it 'should reject user:group strings with invalid notation' do
30
+ invalid_owner = 'user:group:something:else'
31
+ invalid_call = -> { @owner.user_and_group = invalid_owner }
32
+ e = invalid_call.must_raise ArgumentError
33
+ e.message.must_equal "Invalid owner: '#{invalid_owner}'"
34
+ end
35
+ end
36
+ end
@@ -82,12 +82,12 @@ describe FilePermissions do
82
82
  FakeFS do
83
83
  FileUtils.touch(@file_permissions.filename)
84
84
  FileUtils.chown(user1.name, nil, @file_permissions.filename)
85
- @file_permissions.current_owner.must_equal user1.uid
86
- @file_permissions.owner = user2.name
85
+ @file_permissions.current_uid.must_equal user1.uid
86
+ @file_permissions.uid = user2.uid
87
87
  @file_permissions.uptodate?.must_equal false
88
88
  @file_permissions.update
89
89
  @file_permissions.uptodate?.must_equal true
90
- @file_permissions.current_owner.must_equal user2.uid
90
+ @file_permissions.current_uid.must_equal user2.uid
91
91
  end
92
92
  end
93
93
 
@@ -97,12 +97,12 @@ describe FilePermissions do
97
97
  FakeFS do
98
98
  FileUtils.touch(@file_permissions.filename)
99
99
  FileUtils.chown(nil, group1.name, @file_permissions.filename)
100
- @file_permissions.current_group.must_equal group1.gid
101
- @file_permissions.group = group2.name
100
+ @file_permissions.current_gid.must_equal group1.gid
101
+ @file_permissions.gid = group2.gid
102
102
  @file_permissions.uptodate?.must_equal false
103
103
  @file_permissions.update
104
104
  @file_permissions.uptodate?.must_equal true
105
- @file_permissions.current_group.must_equal group2.gid
105
+ @file_permissions.current_gid.must_equal group2.gid
106
106
  end
107
107
  end
108
108
 
@@ -28,21 +28,4 @@ describe Util::User do
28
28
  Util::User.group_to_gid(group.name).must_equal group.gid
29
29
  end
30
30
  end
31
-
32
- describe 'owner_to_owner_group' do
33
- it 'should return non-string owners unmodified' do
34
- Util::User.owner_to_owner_group(23).must_equal [23, nil]
35
- end
36
-
37
- it 'should convert owner strings to [owner, group] arrays' do
38
- Util::User.owner_to_owner_group('foo').must_equal ['foo', nil]
39
- Util::User.owner_to_owner_group('foo:bar').must_equal %w(foo bar)
40
- end
41
-
42
- it 'should raise exceptions for invalid owner strings' do
43
- lambda do
44
- Util::User.owner_to_owner_group('foo:bar:baz')
45
- end.must_raise ArgumentError
46
- end
47
- end
48
31
  end
data/spec/util_spec.rb CHANGED
@@ -3,13 +3,31 @@ require_relative 'spec_helper'
3
3
  require 'minitest/stub_const'
4
4
  require 'wright/util'
5
5
 
6
- def stub_os(target_os)
7
- RbConfig.stub_const(:CONFIG, 'target_os' => target_os) do
8
- yield
6
+ describe Wright::Util do
7
+ def stub_os(target_os)
8
+ RbConfig.stub_const(:CONFIG, 'target_os' => target_os) do
9
+ yield
10
+ end
11
+ end
12
+
13
+ def without_bundler
14
+ if defined?(Bundler)
15
+ Object.stub_remove_const(:Bundler) { yield }
16
+ else
17
+ yield
18
+ end
19
+ end
20
+
21
+ def with_bundler
22
+ if defined?(Bundler)
23
+ yield
24
+ else
25
+ fake_bundler = Class.new
26
+ def fake_bundler.with_clean_env; end
27
+ Object.stub_const(:Bundler, fake_bundler) { yield }
28
+ end
9
29
  end
10
- end
11
30
 
12
- describe Wright::Util do
13
31
  describe 'filename_to_classname' do
14
32
  it 'should convert filenames to class names' do
15
33
  classname = Wright::Util.filename_to_classname('foo_bar/baz')
@@ -44,6 +62,18 @@ ID=ubuntu
44
62
  ID_LIKE=debian
45
63
  PRETTY_NAME="Ubuntu precise (12.04.4 LTS)"
46
64
  VERSION_ID="12.04"
65
+ EOS
66
+ @centos_os_release = <<EOS
67
+ NAME="CentOS Linux"
68
+ VERSION="7 (Core)"
69
+ ID="centos"
70
+ ID_LIKE="rhel fedora"
71
+ VERSION_ID="7"
72
+ PRETTY_NAME="CentOS Linux 7 (Core)"
73
+ ANSI_COLOR="0;31"
74
+ CPE_NAME="cpe:/o:centos:centos:7"
75
+ HOME_URL="https://www.centos.org/"
76
+ BUG_REPORT_URL="https://bugs.centos.org/"
47
77
  EOS
48
78
  end
49
79
 
@@ -67,6 +97,9 @@ EOS
67
97
 
68
98
  File.write('/etc/os-release', @ubuntu_os_release)
69
99
  Wright::Util.os_family.must_equal 'debian'
100
+
101
+ File.write('/etc/os-release', @centos_os_release)
102
+ Wright::Util.os_family.must_equal 'rhel'
70
103
  end
71
104
  end
72
105
  end
@@ -77,4 +110,30 @@ EOS
77
110
  end
78
111
  end
79
112
  end
113
+
114
+ describe 'bundler_clean_env' do
115
+ it 'should call a block when not using bundler' do
116
+ mock = Minitest::Mock.new
117
+
118
+ mock.expect(:inside_block, [])
119
+ without_bundler do
120
+ Wright::Util.bundler_clean_env { mock.inside_block }
121
+ end
122
+ mock.verify
123
+ end
124
+
125
+ it 'should call a block using Bundler.with_clean_env when using bundler' do
126
+ mock = Minitest::Mock.new
127
+ with_clean_env_stub = -> { mock.with_clean_env }
128
+
129
+ mock.expect(:with_clean_env, [])
130
+ mock.expect(:inside_block, [])
131
+ with_bundler do
132
+ Bundler.stub(:with_clean_env, with_clean_env_stub) do
133
+ Wright::Util.bundler_clean_env { mock.inside_block }
134
+ end
135
+ end
136
+ mock.verify
137
+ end
138
+ end
80
139
  end
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.2.0
4
+ version: 0.3.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-03-13 00:00:00.000000000 Z
11
+ date: 2015-04-23 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: minitest
@@ -16,28 +16,28 @@ dependencies:
16
16
  requirements:
17
17
  - - ~>
18
18
  - !ruby/object:Gem::Version
19
- version: 5.5.1
19
+ version: 5.6.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.5.1
26
+ version: 5.6.0
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: minitest-stub-const
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - ~>
32
32
  - !ruby/object:Gem::Version
33
- version: '0.3'
33
+ version: '0.4'
34
34
  type: :development
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - ~>
39
39
  - !ruby/object:Gem::Version
40
- version: '0.3'
40
+ version: '0.4'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: fakefs
43
43
  requirement: !ruby/object:Gem::Requirement
@@ -100,14 +100,14 @@ dependencies:
100
100
  requirements:
101
101
  - - ~>
102
102
  - !ruby/object:Gem::Version
103
- version: 0.9.2
103
+ version: 0.10.0
104
104
  type: :development
105
105
  prerelease: false
106
106
  version_requirements: !ruby/object:Gem::Requirement
107
107
  requirements:
108
108
  - - ~>
109
109
  - !ruby/object:Gem::Version
110
- version: 0.9.2
110
+ version: 0.10.0
111
111
  - !ruby/object:Gem::Dependency
112
112
  name: pry
113
113
  requirement: !ruby/object:Gem::Requirement
@@ -128,19 +128,20 @@ dependencies:
128
128
  requirements:
129
129
  - - ~>
130
130
  - !ruby/object:Gem::Version
131
- version: 0.29.1
131
+ version: 0.30.1
132
132
  type: :development
133
133
  prerelease: false
134
134
  version_requirements: !ruby/object:Gem::Requirement
135
135
  requirements:
136
136
  - - ~>
137
137
  - !ruby/object:Gem::Version
138
- version: 0.29.1
138
+ version: 0.30.1
139
139
  description: |
140
140
  Wright is a lightweight configuration management library.
141
141
  email:
142
142
  - sebastian@sometimesfood.org
143
- executables: []
143
+ executables:
144
+ - wright
144
145
  extensions: []
145
146
  extra_rdoc_files: []
146
147
  files:
@@ -149,6 +150,9 @@ files:
149
150
  - CONTRIBUTING.md
150
151
  - LICENSE
151
152
  - NEWS.md
153
+ - man/wright.1
154
+ - bin/wright
155
+ - lib/wright/cli.rb
152
156
  - lib/wright/config.rb
153
157
  - lib/wright/dry_run.rb
154
158
  - lib/wright/dsl.rb
@@ -162,6 +166,7 @@ files:
162
166
  - lib/wright/provider/package/homebrew.rb
163
167
  - lib/wright/provider/package.rb
164
168
  - lib/wright/provider/symlink.rb
169
+ - lib/wright/provider/user/darwin_directory_service.rb
165
170
  - lib/wright/provider/user/gnu_passwd.rb
166
171
  - lib/wright/provider/user.rb
167
172
  - lib/wright/provider.rb
@@ -174,6 +179,7 @@ files:
174
179
  - lib/wright/resource.rb
175
180
  - lib/wright/util/color.rb
176
181
  - lib/wright/util/file.rb
182
+ - lib/wright/util/file_owner.rb
177
183
  - lib/wright/util/file_permissions.rb
178
184
  - lib/wright/util/recursive_autoloader.rb
179
185
  - lib/wright/util/stolen_from_activesupport.rb
@@ -181,6 +187,8 @@ files:
181
187
  - lib/wright/util.rb
182
188
  - lib/wright/version.rb
183
189
  - lib/wright.rb
190
+ - spec/cli/shebang.rb
191
+ - spec/cli_spec.rb
184
192
  - spec/config_spec.rb
185
193
  - spec/dsl_spec.rb
186
194
  - spec/logger_spec.rb
@@ -198,9 +206,9 @@ files:
198
206
  - spec/provider/group/darwin_directory_service/dseditgroup_-o_create_-i_1234_newgroup.return
199
207
  - spec/provider/group/darwin_directory_service/dseditgroup_-o_create_-i_1234_newgroup.stderr
200
208
  - spec/provider/group/darwin_directory_service/dseditgroup_-o_create_-i_1234_newgroup.stdout
201
- - spec/provider/group/darwin_directory_service/dseditgroup_-o_create_-i_499_newgroup.return
202
- - spec/provider/group/darwin_directory_service/dseditgroup_-o_create_-i_499_newgroup.stderr
203
- - spec/provider/group/darwin_directory_service/dseditgroup_-o_create_-i_499_newgroup.stdout
209
+ - spec/provider/group/darwin_directory_service/dseditgroup_-o_create_-i_2_newgroup.return
210
+ - spec/provider/group/darwin_directory_service/dseditgroup_-o_create_-i_2_newgroup.stderr
211
+ - spec/provider/group/darwin_directory_service/dseditgroup_-o_create_-i_2_newgroup.stdout
204
212
  - spec/provider/group/darwin_directory_service/dseditgroup_-o_create_-i_ERROR_newgroup.return
205
213
  - spec/provider/group/darwin_directory_service/dseditgroup_-o_create_-i_ERROR_newgroup.stderr
206
214
  - spec/provider/group/darwin_directory_service/dseditgroup_-o_create_-i_ERROR_newgroup.stdout
@@ -249,6 +257,15 @@ files:
249
257
  - spec/provider/group/gnu_passwd/groupmod_-g_ERROR_foobar.stdout
250
258
  - spec/provider/group/gnu_passwd_spec.rb
251
259
  - spec/provider/group_spec.rb
260
+ - spec/provider/package/apt/apt-cache_policy_abcde.return
261
+ - spec/provider/package/apt/apt-cache_policy_abcde.stderr
262
+ - spec/provider/package/apt/apt-cache_policy_abcde.stdout
263
+ - spec/provider/package/apt/apt-cache_policy_htop.return
264
+ - spec/provider/package/apt/apt-cache_policy_htop.stderr
265
+ - spec/provider/package/apt/apt-cache_policy_htop.stdout
266
+ - spec/provider/package/apt/apt-cache_policy_not-a-real-package.return
267
+ - spec/provider/package/apt/apt-cache_policy_not-a-real-package.stderr
268
+ - spec/provider/package/apt/apt-cache_policy_not-a-real-package.stdout
252
269
  - spec/provider/package/apt/apt-get_install_-qy_abcde=2.5.4-1.return
253
270
  - spec/provider/package/apt/apt-get_install_-qy_abcde=2.5.4-1.stderr
254
271
  - spec/provider/package/apt/apt-get_install_-qy_abcde=2.5.4-1.stdout
@@ -261,18 +278,6 @@ files:
261
278
  - spec/provider/package/apt/apt-get_remove_-qy_abcde.return
262
279
  - spec/provider/package/apt/apt-get_remove_-qy_abcde.stderr
263
280
  - spec/provider/package/apt/apt-get_remove_-qy_abcde.stdout
264
- - spec/provider/package/apt/dpkg-query_-s_abcde.return
265
- - spec/provider/package/apt/dpkg-query_-s_abcde.stderr
266
- - spec/provider/package/apt/dpkg-query_-s_abcde.stdout
267
- - spec/provider/package/apt/dpkg-query_-s_htop.return
268
- - spec/provider/package/apt/dpkg-query_-s_htop.stderr
269
- - spec/provider/package/apt/dpkg-query_-s_htop.stdout
270
- - spec/provider/package/apt/dpkg-query_-s_not-a-real-package.return
271
- - spec/provider/package/apt/dpkg-query_-s_not-a-real-package.stderr
272
- - spec/provider/package/apt/dpkg-query_-s_not-a-real-package.stdout
273
- - spec/provider/package/apt/dpkg-query_-s_vlc.return
274
- - spec/provider/package/apt/dpkg-query_-s_vlc.stderr
275
- - spec/provider/package/apt/dpkg-query_-s_vlc.stdout
276
281
  - spec/provider/package/apt_spec.rb
277
282
  - spec/provider/package/homebrew/brew_info_--json=v1_cd-discid.return
278
283
  - spec/provider/package/homebrew/brew_info_--json=v1_cd-discid.stderr
@@ -295,6 +300,28 @@ files:
295
300
  - spec/provider/package/homebrew_spec.rb
296
301
  - spec/provider/package_spec.rb
297
302
  - spec/provider/symlink_spec.rb
303
+ - spec/provider/user/darwin_directory_service/dscl-delete-user.return
304
+ - spec/provider/user/darwin_directory_service/dscl-delete-user.stderr
305
+ - spec/provider/user/darwin_directory_service/dscl-delete-user.stdout
306
+ - spec/provider/user/darwin_directory_service/dscl-new-user-full-name.return
307
+ - spec/provider/user/darwin_directory_service/dscl-new-user-full-name.stderr
308
+ - spec/provider/user/darwin_directory_service/dscl-new-user-full-name.stdout
309
+ - spec/provider/user/darwin_directory_service/dscl-new-user-home.return
310
+ - spec/provider/user/darwin_directory_service/dscl-new-user-home.stderr
311
+ - spec/provider/user/darwin_directory_service/dscl-new-user-home.stdout
312
+ - spec/provider/user/darwin_directory_service/dscl-new-user-password.return
313
+ - spec/provider/user/darwin_directory_service/dscl-new-user-password.stderr
314
+ - spec/provider/user/darwin_directory_service/dscl-new-user-password.stdout
315
+ - spec/provider/user/darwin_directory_service/dscl-new-user-primary-group.return
316
+ - spec/provider/user/darwin_directory_service/dscl-new-user-primary-group.stderr
317
+ - spec/provider/user/darwin_directory_service/dscl-new-user-primary-group.stdout
318
+ - spec/provider/user/darwin_directory_service/dscl-new-user-shell.return
319
+ - spec/provider/user/darwin_directory_service/dscl-new-user-shell.stderr
320
+ - spec/provider/user/darwin_directory_service/dscl-new-user-shell.stdout
321
+ - spec/provider/user/darwin_directory_service/dscl-new-user-uid.return
322
+ - spec/provider/user/darwin_directory_service/dscl-new-user-uid.stderr
323
+ - spec/provider/user/darwin_directory_service/dscl-new-user-uid.stdout
324
+ - spec/provider/user/darwin_directory_service_spec.rb
298
325
  - spec/provider/user/gnu_passwd/useradd_johndoe.return
299
326
  - spec/provider/user/gnu_passwd/useradd_johndoe.stderr
300
327
  - spec/provider/user/gnu_passwd/useradd_johndoe.stdout
@@ -327,6 +354,7 @@ files:
327
354
  - spec/spec_helpers/fake_capture3.rb
328
355
  - spec/spec_helpers/test_coverage.rb
329
356
  - spec/util/activesupport_spec.rb
357
+ - spec/util/file_owner_spec.rb
330
358
  - spec/util/file_permissions_spec.rb
331
359
  - spec/util/file_spec.rb
332
360
  - spec/util/user_spec.rb
@@ -356,6 +384,8 @@ signing_key:
356
384
  specification_version: 4
357
385
  summary: A lightweight config management library
358
386
  test_files:
387
+ - spec/cli/shebang.rb
388
+ - spec/cli_spec.rb
359
389
  - spec/config_spec.rb
360
390
  - spec/dsl_spec.rb
361
391
  - spec/logger_spec.rb
@@ -373,9 +403,9 @@ test_files:
373
403
  - spec/provider/group/darwin_directory_service/dseditgroup_-o_create_-i_1234_newgroup.return
374
404
  - spec/provider/group/darwin_directory_service/dseditgroup_-o_create_-i_1234_newgroup.stderr
375
405
  - spec/provider/group/darwin_directory_service/dseditgroup_-o_create_-i_1234_newgroup.stdout
376
- - spec/provider/group/darwin_directory_service/dseditgroup_-o_create_-i_499_newgroup.return
377
- - spec/provider/group/darwin_directory_service/dseditgroup_-o_create_-i_499_newgroup.stderr
378
- - spec/provider/group/darwin_directory_service/dseditgroup_-o_create_-i_499_newgroup.stdout
406
+ - spec/provider/group/darwin_directory_service/dseditgroup_-o_create_-i_2_newgroup.return
407
+ - spec/provider/group/darwin_directory_service/dseditgroup_-o_create_-i_2_newgroup.stderr
408
+ - spec/provider/group/darwin_directory_service/dseditgroup_-o_create_-i_2_newgroup.stdout
379
409
  - spec/provider/group/darwin_directory_service/dseditgroup_-o_create_-i_ERROR_newgroup.return
380
410
  - spec/provider/group/darwin_directory_service/dseditgroup_-o_create_-i_ERROR_newgroup.stderr
381
411
  - spec/provider/group/darwin_directory_service/dseditgroup_-o_create_-i_ERROR_newgroup.stdout
@@ -424,6 +454,15 @@ test_files:
424
454
  - spec/provider/group/gnu_passwd/groupmod_-g_ERROR_foobar.stdout
425
455
  - spec/provider/group/gnu_passwd_spec.rb
426
456
  - spec/provider/group_spec.rb
457
+ - spec/provider/package/apt/apt-cache_policy_abcde.return
458
+ - spec/provider/package/apt/apt-cache_policy_abcde.stderr
459
+ - spec/provider/package/apt/apt-cache_policy_abcde.stdout
460
+ - spec/provider/package/apt/apt-cache_policy_htop.return
461
+ - spec/provider/package/apt/apt-cache_policy_htop.stderr
462
+ - spec/provider/package/apt/apt-cache_policy_htop.stdout
463
+ - spec/provider/package/apt/apt-cache_policy_not-a-real-package.return
464
+ - spec/provider/package/apt/apt-cache_policy_not-a-real-package.stderr
465
+ - spec/provider/package/apt/apt-cache_policy_not-a-real-package.stdout
427
466
  - spec/provider/package/apt/apt-get_install_-qy_abcde=2.5.4-1.return
428
467
  - spec/provider/package/apt/apt-get_install_-qy_abcde=2.5.4-1.stderr
429
468
  - spec/provider/package/apt/apt-get_install_-qy_abcde=2.5.4-1.stdout
@@ -436,18 +475,6 @@ test_files:
436
475
  - spec/provider/package/apt/apt-get_remove_-qy_abcde.return
437
476
  - spec/provider/package/apt/apt-get_remove_-qy_abcde.stderr
438
477
  - spec/provider/package/apt/apt-get_remove_-qy_abcde.stdout
439
- - spec/provider/package/apt/dpkg-query_-s_abcde.return
440
- - spec/provider/package/apt/dpkg-query_-s_abcde.stderr
441
- - spec/provider/package/apt/dpkg-query_-s_abcde.stdout
442
- - spec/provider/package/apt/dpkg-query_-s_htop.return
443
- - spec/provider/package/apt/dpkg-query_-s_htop.stderr
444
- - spec/provider/package/apt/dpkg-query_-s_htop.stdout
445
- - spec/provider/package/apt/dpkg-query_-s_not-a-real-package.return
446
- - spec/provider/package/apt/dpkg-query_-s_not-a-real-package.stderr
447
- - spec/provider/package/apt/dpkg-query_-s_not-a-real-package.stdout
448
- - spec/provider/package/apt/dpkg-query_-s_vlc.return
449
- - spec/provider/package/apt/dpkg-query_-s_vlc.stderr
450
- - spec/provider/package/apt/dpkg-query_-s_vlc.stdout
451
478
  - spec/provider/package/apt_spec.rb
452
479
  - spec/provider/package/homebrew/brew_info_--json=v1_cd-discid.return
453
480
  - spec/provider/package/homebrew/brew_info_--json=v1_cd-discid.stderr
@@ -470,6 +497,28 @@ test_files:
470
497
  - spec/provider/package/homebrew_spec.rb
471
498
  - spec/provider/package_spec.rb
472
499
  - spec/provider/symlink_spec.rb
500
+ - spec/provider/user/darwin_directory_service/dscl-delete-user.return
501
+ - spec/provider/user/darwin_directory_service/dscl-delete-user.stderr
502
+ - spec/provider/user/darwin_directory_service/dscl-delete-user.stdout
503
+ - spec/provider/user/darwin_directory_service/dscl-new-user-full-name.return
504
+ - spec/provider/user/darwin_directory_service/dscl-new-user-full-name.stderr
505
+ - spec/provider/user/darwin_directory_service/dscl-new-user-full-name.stdout
506
+ - spec/provider/user/darwin_directory_service/dscl-new-user-home.return
507
+ - spec/provider/user/darwin_directory_service/dscl-new-user-home.stderr
508
+ - spec/provider/user/darwin_directory_service/dscl-new-user-home.stdout
509
+ - spec/provider/user/darwin_directory_service/dscl-new-user-password.return
510
+ - spec/provider/user/darwin_directory_service/dscl-new-user-password.stderr
511
+ - spec/provider/user/darwin_directory_service/dscl-new-user-password.stdout
512
+ - spec/provider/user/darwin_directory_service/dscl-new-user-primary-group.return
513
+ - spec/provider/user/darwin_directory_service/dscl-new-user-primary-group.stderr
514
+ - spec/provider/user/darwin_directory_service/dscl-new-user-primary-group.stdout
515
+ - spec/provider/user/darwin_directory_service/dscl-new-user-shell.return
516
+ - spec/provider/user/darwin_directory_service/dscl-new-user-shell.stderr
517
+ - spec/provider/user/darwin_directory_service/dscl-new-user-shell.stdout
518
+ - spec/provider/user/darwin_directory_service/dscl-new-user-uid.return
519
+ - spec/provider/user/darwin_directory_service/dscl-new-user-uid.stderr
520
+ - spec/provider/user/darwin_directory_service/dscl-new-user-uid.stdout
521
+ - spec/provider/user/darwin_directory_service_spec.rb
473
522
  - spec/provider/user/gnu_passwd/useradd_johndoe.return
474
523
  - spec/provider/user/gnu_passwd/useradd_johndoe.stderr
475
524
  - spec/provider/user/gnu_passwd/useradd_johndoe.stdout
@@ -502,6 +551,7 @@ test_files:
502
551
  - spec/spec_helpers/fake_capture3.rb
503
552
  - spec/spec_helpers/test_coverage.rb
504
553
  - spec/util/activesupport_spec.rb
554
+ - spec/util/file_owner_spec.rb
505
555
  - spec/util/file_permissions_spec.rb
506
556
  - spec/util/file_spec.rb
507
557
  - spec/util/user_spec.rb
@@ -1,23 +0,0 @@
1
- Package: abcde
2
- Status: install ok installed
3
- Priority: optional
4
- Section: sound
5
- Installed-Size: 282
6
- Maintainer: Jesus Climent <jesus.climent@hispalinux.es>
7
- Architecture: all
8
- Version: 2.5.3-1
9
- Depends: cd-discid, wget, cdparanoia | icedax, vorbis-tools (>= 1.0beta4-1) | lame | flac | bladeenc | speex
10
- Recommends: vorbis-tools, libmusicbrainz-discid-perl, libwebservice-musicbrainz-perl, libdigest-sha-perl, mailx
11
- Suggests: eject, distmp3, id3 (>= 0.12), id3v2, eyed3, normalize-audio, vorbisgain, mkcue, mp3gain, atomicparsley
12
- Conffiles:
13
- /etc/abcde.conf 6123bcbdb6204f9a2193f560e2cf5014
14
- Description: A Better CD Encoder
15
- A frontend program to cdparanoia, wget, cd-discid, id3, and your favorite
16
- Ogg/Vorbis, MP3, FLAC, Ogg/Speex and/or MPP/MP+(Musepack) encoder (defaults
17
- to oggenc). Grabs an entire CD and converts each track to the specified
18
- formats and then comments or ID3-tags each file, with one command.
19
- .
20
- With abcde you can encode several formats with one single command, using a
21
- single CD read operation. It also allows you to read and encode while not
22
- on the internet, and later query a CDDB server to tag your files.
23
- Homepage: http://code.google.com/p/abcde/
@@ -1,19 +0,0 @@
1
- Package: htop
2
- Status: deinstall ok config-files
3
- Priority: optional
4
- Section: utils
5
- Installed-Size: 211
6
- Maintainer: Eugene V. Lyubimkin <jackyf@debian.org>
7
- Architecture: amd64
8
- Version: 1.0.1-1
9
- Config-Version: 1.0.1-1
10
- Depends: libc6 (>= 2.3.4), libncursesw5 (>= 5.6+20070908), libtinfo5
11
- Suggests: strace, ltrace
12
- Description: interactive processes viewer
13
- Htop is an ncursed-based process viewer similar to top, but it
14
- allows one to scroll the list vertically and horizontally to see
15
- all processes and their full command lines.
16
- .
17
- Tasks related to processes (killing, renicing) can be done without
18
- entering their PIDs.
19
- Homepage: http://htop.sourceforge.net
@@ -1,3 +0,0 @@
1
- dpkg-query: package 'not-a-real-package' is not installed and no information is available
2
- Use dpkg --info (= dpkg-deb --info) to examine archive files,
3
- and dpkg --contents (= dpkg-deb --contents) to list their contents.
@@ -1,3 +0,0 @@
1
- dpkg-query: package 'vlc' is not installed and no information is available
2
- Use dpkg --info (= dpkg-deb --info) to examine archive files,
3
- and dpkg --contents (= dpkg-deb --contents) to list their contents.