wright 0.2.0 → 0.3.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.
- checksums.yaml +4 -4
- data/NEWS.md +8 -0
- data/README.md +2 -0
- data/Rakefile +6 -0
- data/bin/wright +6 -0
- data/lib/wright/cli.rb +68 -0
- data/lib/wright/dsl.rb +1 -1
- data/lib/wright/provider/directory.rb +17 -12
- data/lib/wright/provider/file.rb +24 -17
- data/lib/wright/provider/group/darwin_directory_service.rb +1 -8
- data/lib/wright/provider/group/gnu_passwd.rb +0 -1
- data/lib/wright/provider/group.rb +6 -12
- data/lib/wright/provider/package/apt.rb +9 -21
- data/lib/wright/provider/package/homebrew.rb +5 -18
- data/lib/wright/provider/package.rb +22 -11
- data/lib/wright/provider/symlink.rb +17 -22
- data/lib/wright/provider/user/darwin_directory_service.rb +65 -0
- data/lib/wright/provider/user/gnu_passwd.rb +6 -7
- data/lib/wright/provider/user.rb +6 -12
- data/lib/wright/provider.rb +20 -2
- data/lib/wright/resource/directory.rb +19 -20
- data/lib/wright/resource/file.rb +19 -15
- data/lib/wright/resource/symlink.rb +1 -0
- data/lib/wright/resource/user.rb +2 -1
- data/lib/wright/resource.rb +1 -1
- data/lib/wright/util/file_owner.rb +61 -0
- data/lib/wright/util/file_permissions.rb +21 -30
- data/lib/wright/util/stolen_from_activesupport.rb +1 -1
- data/lib/wright/util/user.rb +48 -23
- data/lib/wright/util.rb +10 -6
- data/lib/wright/version.rb +1 -1
- data/lib/wright.rb +1 -0
- data/man/wright.1 +202 -0
- data/spec/cli/shebang.rb +3 -0
- data/spec/cli_spec.rb +64 -0
- data/spec/dsl_spec.rb +8 -3
- data/spec/provider/group/darwin_directory_service_spec.rb +3 -2
- data/spec/provider/package/apt/apt-cache_policy_abcde.stdout +7 -0
- data/spec/provider/package/apt/apt-cache_policy_htop.stdout +6 -0
- data/spec/provider/package/apt/apt-cache_policy_not-a-real-package.return +1 -0
- data/spec/provider/package/apt_spec.rb +17 -211
- data/spec/provider/package/homebrew_spec.rb +11 -164
- data/spec/provider/package_spec.rb +151 -7
- data/spec/provider/user/darwin_directory_service/dscl-delete-user.return +1 -0
- data/spec/provider/user/darwin_directory_service/dscl-delete-user.stderr +0 -0
- data/spec/provider/user/darwin_directory_service/dscl-delete-user.stdout +0 -0
- data/spec/provider/user/darwin_directory_service/dscl-new-user-full-name.return +1 -0
- data/spec/provider/user/darwin_directory_service/dscl-new-user-full-name.stderr +0 -0
- data/spec/provider/user/darwin_directory_service/dscl-new-user-full-name.stdout +0 -0
- data/spec/provider/user/darwin_directory_service/dscl-new-user-home.return +1 -0
- data/spec/provider/user/darwin_directory_service/dscl-new-user-home.stderr +0 -0
- data/spec/provider/user/darwin_directory_service/dscl-new-user-home.stdout +0 -0
- data/spec/provider/user/darwin_directory_service/dscl-new-user-password.return +1 -0
- data/spec/provider/user/darwin_directory_service/dscl-new-user-password.stderr +0 -0
- data/spec/provider/user/darwin_directory_service/dscl-new-user-password.stdout +0 -0
- data/spec/provider/user/darwin_directory_service/dscl-new-user-primary-group.return +1 -0
- data/spec/provider/user/darwin_directory_service/dscl-new-user-primary-group.stderr +0 -0
- data/spec/provider/user/darwin_directory_service/dscl-new-user-primary-group.stdout +0 -0
- data/spec/provider/user/darwin_directory_service/dscl-new-user-shell.return +1 -0
- data/spec/provider/user/darwin_directory_service/dscl-new-user-shell.stderr +0 -0
- data/spec/provider/user/darwin_directory_service/dscl-new-user-shell.stdout +0 -0
- data/spec/provider/user/darwin_directory_service/dscl-new-user-uid.return +1 -0
- data/spec/provider/user/darwin_directory_service/dscl-new-user-uid.stderr +0 -0
- data/spec/provider/user/darwin_directory_service/dscl-new-user-uid.stdout +0 -0
- data/spec/provider/user/darwin_directory_service_spec.rb +167 -0
- data/spec/provider/user/gnu_passwd_spec.rb +5 -5
- data/spec/resource/directory_spec.rb +17 -15
- data/spec/resource/file_spec.rb +17 -15
- data/spec/resource_spec.rb +1 -1
- data/spec/spec_helpers/test_coverage.rb +1 -1
- data/spec/util/file_owner_spec.rb +36 -0
- data/spec/util/file_permissions_spec.rb +6 -6
- data/spec/util/user_spec.rb +0 -17
- data/spec/util_spec.rb +64 -5
- metadata +91 -41
- data/spec/provider/package/apt/dpkg-query_-s_abcde.stdout +0 -23
- data/spec/provider/package/apt/dpkg-query_-s_htop.stdout +0 -19
- data/spec/provider/package/apt/dpkg-query_-s_not-a-real-package.return +0 -1
- data/spec/provider/package/apt/dpkg-query_-s_not-a-real-package.stderr +0 -3
- data/spec/provider/package/apt/dpkg-query_-s_vlc.return +0 -1
- data/spec/provider/package/apt/dpkg-query_-s_vlc.stderr +0 -3
- /data/spec/provider/group/darwin_directory_service/{dseditgroup_-o_create_-i_499_newgroup.return → dseditgroup_-o_create_-i_2_newgroup.return} +0 -0
- /data/spec/provider/group/darwin_directory_service/{dseditgroup_-o_create_-i_499_newgroup.stderr → dseditgroup_-o_create_-i_2_newgroup.stderr} +0 -0
- /data/spec/provider/group/darwin_directory_service/{dseditgroup_-o_create_-i_499_newgroup.stdout → dseditgroup_-o_create_-i_2_newgroup.stdout} +0 -0
- /data/spec/provider/package/apt/{dpkg-query_-s_abcde.return → apt-cache_policy_abcde.return} +0 -0
- /data/spec/provider/package/apt/{dpkg-query_-s_abcde.stderr → apt-cache_policy_abcde.stderr} +0 -0
- /data/spec/provider/package/apt/{dpkg-query_-s_htop.return → apt-cache_policy_htop.return} +0 -0
- /data/spec/provider/package/apt/{dpkg-query_-s_htop.stderr → apt-cache_policy_htop.stderr} +0 -0
- /data/spec/provider/package/apt/{dpkg-query_-s_not-a-real-package.stdout → apt-cache_policy_not-a-real-package.stderr} +0 -0
- /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
|
|
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
|
data/spec/resource/file_spec.rb
CHANGED
|
@@ -104,21 +104,7 @@ describe Wright::Resource::File do
|
|
|
104
104
|
end
|
|
105
105
|
end
|
|
106
106
|
|
|
107
|
-
it 'should
|
|
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
|
data/spec/resource_spec.rb
CHANGED
|
@@ -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:
|
|
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 {
|
|
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.
|
|
86
|
-
@file_permissions.
|
|
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.
|
|
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.
|
|
101
|
-
@file_permissions.
|
|
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.
|
|
105
|
+
@file_permissions.current_gid.must_equal group2.gid
|
|
106
106
|
end
|
|
107
107
|
end
|
|
108
108
|
|
data/spec/util/user_spec.rb
CHANGED
|
@@ -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
|
-
|
|
7
|
-
|
|
8
|
-
|
|
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.
|
|
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-
|
|
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.
|
|
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.
|
|
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.
|
|
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.
|
|
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.
|
|
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.
|
|
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.
|
|
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.
|
|
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_-
|
|
202
|
-
- spec/provider/group/darwin_directory_service/dseditgroup_-o_create_-
|
|
203
|
-
- spec/provider/group/darwin_directory_service/dseditgroup_-o_create_-
|
|
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_-
|
|
377
|
-
- spec/provider/group/darwin_directory_service/dseditgroup_-o_create_-
|
|
378
|
-
- spec/provider/group/darwin_directory_service/dseditgroup_-o_create_-
|
|
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 +0,0 @@
|
|
|
1
|
-
1
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
1
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
/data/spec/provider/package/apt/{dpkg-query_-s_abcde.return → apt-cache_policy_abcde.return}
RENAMED
|
File without changes
|
/data/spec/provider/package/apt/{dpkg-query_-s_abcde.stderr → apt-cache_policy_abcde.stderr}
RENAMED
|
File without changes
|